Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkhussey2006-05-05 19:36:07 +0000
committerkhussey2006-05-05 19:36:07 +0000
commit03fbed8ddda4305dfeae4157f5cb966d606ba7a7 (patch)
treefbd21a7c4f0259030469bbbb4c1130b67b48b8ca
parente42e20ea9b2c01baf27f5456801e0440028a52e8 (diff)
downloadorg.eclipse.uml2.test-03fbed8ddda4305dfeae4157f5cb966d606ba7a7.tar.gz
org.eclipse.uml2.test-03fbed8ddda4305dfeae4157f5cb966d606ba7a7.tar.xz
org.eclipse.uml2.test-03fbed8ddda4305dfeae4157f5cb966d606ba7a7.zip
[80315] Regenerating with latest source model.
-rw-r--r--plugins/org.eclipse.uml2.uml/model/Ecore.uml160
-rw-r--r--plugins/org.eclipse.uml2.uml/model/Infrastructure.uml320
-rw-r--r--plugins/org.eclipse.uml2.uml/model/L1.uml2
-rw-r--r--plugins/org.eclipse.uml2.uml/model/L2.uml2
-rw-r--r--plugins/org.eclipse.uml2.uml/model/L3.uml2
-rw-r--r--plugins/org.eclipse.uml2.uml/model/Superstructure.uml1379
-rw-r--r--plugins/org.eclipse.uml2.uml/model/UML.ecore284
-rw-r--r--plugins/org.eclipse.uml2.uml/model/UML.merged.uml15086
-rw-r--r--plugins/org.eclipse.uml2.uml/model/UML.uml10
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Actor.java6
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/AggregationKind.java12
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/CallConcurrencyKind.java10
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Component.java4
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ConnectorKind.java9
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/GeneralizationSet.java6
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/MessageKind.java10
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/MessageSort.java14
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/NamedElement.java4
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ParameterDirectionKind.java17
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/PseudostateKind.java25
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ReadLinkAction.java4
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Transition.java4
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/TransitionKind.java11
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/impl/uml.ecore284
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/BehaviorOperations.java6
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/TransitionOperations.java4
26 files changed, 8466 insertions, 9209 deletions
diff --git a/plugins/org.eclipse.uml2.uml/model/Ecore.uml b/plugins/org.eclipse.uml2.uml/model/Ecore.uml
index fd37add5..b24c14ac 100644
--- a/plugins/org.eclipse.uml2.uml/model/Ecore.uml
+++ b/plugins/org.eclipse.uml2.uml/model/Ecore.uml
@@ -488,84 +488,84 @@
<appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
</profileApplication>
</uml:Model>
- <Ecore:EPackage xmi:id="_WTl40MWCEdqI1bY5Lwi8Hg" base_Package="439EC3AE03B5" packageName="ecore" nsPrefix="ecore" nsURI="http://www.eclipse.org/emf/2002/Ecore" basePackage="org.eclipse.emf" prefix="Ecore"/>
- <Ecore:EAttribute xmi:id="_WTl40cWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B53D98A349020A"/>
- <Ecore:EReference xmi:id="_WTl40sWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53D5D261200E9"/>
- <Ecore:EAttribute xmi:id="_WTl408WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B53CF6636F001D"/>
- <Ecore:EAttribute xmi:id="_WTl41MWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B53D0616AE039B"/>
- <Ecore:EReference xmi:id="_WTl41cWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B539D6BD4C0061"/>
- <Ecore:EReference xmi:id="_WTl41sWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B539D6BD8A010A"/>
- <Ecore:EReference xmi:id="_WTl418WCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B539D7678D02EF"/>
- <Ecore:EReference xmi:id="_WTvp0MWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B539DE157703CC"/>
- <Ecore:EReference xmi:id="_WTvp0cWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53AF07CB900F8"/>
- <Ecore:EReference xmi:id="_WTvp0sWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53AF87E2E006C"/>
- <Ecore:EReference xmi:id="_WTvp08WCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53CD7CA8D0078"/>
- <Ecore:EReference xmi:id="_WTvp1MWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53D0618C600DE"/>
- <Ecore:EReference xmi:id="_WTvp1cWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53DDF795201B1"/>
- <Ecore:EAttribute xmi:id="_WTvp1sWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B53B0F0B800186"/>
- <Ecore:EAttribute xmi:id="_WTvp18WCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53CA8BD1C01FA"/>
- <Ecore:EAttribute xmi:id="_WTvp2MWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53D3C1AEE014B"/>
- <Ecore:EReference xmi:id="_WTvp2cWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_439EC3AE03B53A7DAB6D0239"/>
- <Ecore:EAttribute xmi:id="_WTvp2sWCEdqI1bY5Lwi8Hg" isTransient="true" isUnsettable="true" base_Property="_439EC3AE03B53D2DB8A701BE"/>
- <Ecore:EAttribute xmi:id="_WTvp28WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B5430B327502D1"/>
- <Ecore:EReference xmi:id="_WTvp3MWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_439EC3AE03B53ACCDD3C00FE"/>
- <Ecore:EReference xmi:id="_WTvp3cWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_439EC3AE03B53A773F5B00D7"/>
- <Ecore:EAttribute xmi:id="_WTvp3sWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B53B65CCCF0007"/>
- <Ecore:EReference xmi:id="_WTvp38WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_439EC3AE03B53904D81303AD"/>
- <Ecore:EAttribute xmi:id="_WT5a0MWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B539EB787703D8"/>
- <Ecore:EAttribute xmi:id="_WT5a0cWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B53A773FA4026D"/>
- <Ecore:EReference xmi:id="_WT5a0sWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_439EC3AE03B53A773F5B00CD"/>
- <Ecore:EReference xmi:id="_WT5a08WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_439EC3AE03B53C06C4F203B1"/>
- <Ecore:EReference xmi:id="_WT5a1MWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_439EC3AE03B53B4DFCAC02CB"/>
- <Ecore:EAttribute xmi:id="_WT5a1cWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53D5D254701DE"/>
- <Ecore:EReference xmi:id="_WT5a1sWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53D5D2A6100E7"/>
- <Ecore:EClass xmi:id="_WT5a18WCEdqI1bY5Lwi8Hg" instanceClassName="java.util.Map$Entry" base_Class="_439EC3AE03B53DA69D3C00F6"/>
- <Ecore:EAttribute xmi:id="_WT5a2MWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B53DA69D3C00F8"/>
- <Ecore:EAttribute xmi:id="_WT5a2cWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B53DA69D3C00F9"/>
- <Ecore:EAttribute xmi:id="_WT5a2sWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B539EB782D01D4"/>
- <Ecore:EAttribute xmi:id="_WT5a28WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B539EB78210280"/>
- <Ecore:EAttribute xmi:id="_WT5a3MWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B53B5F07A60290"/>
- <Ecore:EAttribute xmi:id="_WT5a3cWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53CA44568000B"/>
- <Ecore:EAttribute xmi:id="_WT5a3sWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B53E37C5F603D4"/>
- <Ecore:EAttribute xmi:id="_WT5a38WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B53FC61EC301EE"/>
- <Ecore:EReference xmi:id="_WT5a4MWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_439EC3AE03B53F72EF6B0212"/>
- <Ecore:EAttribute xmi:id="_WUCkwMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_439EC3AE03B53F5E13E90031"/>
- <Ecore:EAttribute xmi:id="_WUCkwcWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53F5E13FC0150"/>
- <Ecore:EAttribute xmi:id="_WUCkwsWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53F5E14050212"/>
- <Ecore:EDataType xmi:id="_WUCkw8WCEdqI1bY5Lwi8Hg" instanceClassName="java.math.BigDecimal" base_PrimitiveType="_439EC3AE03B53FC6252D01C7"/>
- <Ecore:EDataType xmi:id="_WUCkxMWCEdqI1bY5Lwi8Hg" instanceClassName="java.math.BigInteger" base_PrimitiveType="_439EC3AE03B53FC625080137"/>
- <Ecore:EDataType xmi:id="_WUCkxcWCEdqI1bY5Lwi8Hg" instanceClassName="boolean" base_PrimitiveType="_439EC3AE03B53D0672EC0024"/>
- <Ecore:EDataType xmi:id="_WUCkxsWCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.Boolean" base_PrimitiveType="_439EC3AE03B539EB7E1202AF"/>
- <Ecore:EDataType xmi:id="_WUCkx8WCEdqI1bY5Lwi8Hg" instanceClassName="byte" base_PrimitiveType="_439EC3AE03B53D06745301D9"/>
- <Ecore:EDataType xmi:id="_WUCkyMWCEdqI1bY5Lwi8Hg" instanceClassName="byte[]" base_PrimitiveType="_439EC3AE03B53FC62489001C"/>
- <Ecore:EDataType xmi:id="_WUCkycWCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.Byte" base_PrimitiveType="_439EC3AE03B53D0672FE0070"/>
- <Ecore:EDataType xmi:id="_WUCkysWCEdqI1bY5Lwi8Hg" instanceClassName="char" base_PrimitiveType="_439EC3AE03B53D06731003B5"/>
- <Ecore:EDataType xmi:id="_WUCky8WCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.Character" base_PrimitiveType="_439EC3AE03B539EB7E480148"/>
- <Ecore:EDataType xmi:id="_WUCkzMWCEdqI1bY5Lwi8Hg" instanceClassName="java.util.Date" base_PrimitiveType="_439EC3AE03B53FC625DC038B"/>
- <Ecore:EDataType xmi:id="_WUCkzcWCEdqI1bY5Lwi8Hg" instanceClassName="org.eclipse.emf.common.util.DiagnosticChain" base_PrimitiveType="_439EC3AE03B540916FF702ED"/>
- <Ecore:EDataType xmi:id="_WUCkzsWCEdqI1bY5Lwi8Hg" instanceClassName="double" base_PrimitiveType="_439EC3AE03B53D06745D0364"/>
- <Ecore:EDataType xmi:id="_WUCkz8WCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.Double" base_PrimitiveType="_439EC3AE03B53A68EBB8012A"/>
- <Ecore:EDataType xmi:id="_WUCk0MWCEdqI1bY5Lwi8Hg" instanceClassName="org.eclipse.emf.common.util.EList" base_PrimitiveType="_439EC3AE03B53AD37E40003D"/>
- <Ecore:EDataType xmi:id="_WUCk0cWCEdqI1bY5Lwi8Hg" instanceClassName="org.eclipse.emf.common.util.Enumerator" base_PrimitiveType="_439EC3AE03B53D2DB651020A"/>
- <Ecore:EDataType xmi:id="_WUCk0sWCEdqI1bY5Lwi8Hg" instanceClassName="org.eclipse.emf.ecore.util.FeatureMap" base_PrimitiveType="_439EC3AE03B53FC6258F00C3"/>
- <Ecore:EDataType xmi:id="_WUCk08WCEdqI1bY5Lwi8Hg" instanceClassName="org.eclipse.emf.ecore.util.FeatureMap$Entry" base_PrimitiveType="_439EC3AE03B53F44E79E02B2"/>
- <Ecore:EDataType xmi:id="_WUMVwMWCEdqI1bY5Lwi8Hg" instanceClassName="float" base_PrimitiveType="_439EC3AE03B53D067469025C"/>
- <Ecore:EDataType xmi:id="_WUMVwcWCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.Float" base_PrimitiveType="_439EC3AE03B539EB7E2600BB"/>
- <Ecore:EDataType xmi:id="_WUMVwsWCEdqI1bY5Lwi8Hg" instanceClassName="int" base_PrimitiveType="_439EC3AE03B53D0674720115"/>
- <Ecore:EDataType xmi:id="_WUMVw8WCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.Integer" base_PrimitiveType="_439EC3AE03B539EB7E0702AF"/>
- <Ecore:EDataType xmi:id="_WUMVxMWCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.Class" base_PrimitiveType="_439EC3AE03B53B1531690285"/>
- <Ecore:EDataType xmi:id="_WUMVxcWCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.Object" base_PrimitiveType="_439EC3AE03B53ACDF8200182"/>
- <Ecore:EDataType xmi:id="_WUMVxsWCEdqI1bY5Lwi8Hg" instanceClassName="long" base_PrimitiveType="_439EC3AE03B53D06747C0390"/>
- <Ecore:EDataType xmi:id="_WUMVx8WCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.Long" base_PrimitiveType="_439EC3AE03B53A68EBAB02DA"/>
- <Ecore:EDataType xmi:id="_WUMVyMWCEdqI1bY5Lwi8Hg" instanceClassName="java.util.Map" base_PrimitiveType="_439EC3AE03B54091704001A5"/>
- <Ecore:EDataType xmi:id="_WUMVycWCEdqI1bY5Lwi8Hg" instanceClassName="org.eclipse.emf.ecore.resource.Resource" base_PrimitiveType="_439EC3AE03B53C4F231001FC"/>
- <Ecore:EDataType xmi:id="_WUMVysWCEdqI1bY5Lwi8Hg" instanceClassName="org.eclipse.emf.ecore.resource.ResourceSet" base_PrimitiveType="_439EC3AE03B53FC6255C012E"/>
- <Ecore:EDataType xmi:id="_WUMVy8WCEdqI1bY5Lwi8Hg" instanceClassName="short" base_PrimitiveType="_439EC3AE03B53D06748601FA"/>
- <Ecore:EDataType xmi:id="_WUMVzMWCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.Short" base_PrimitiveType="_439EC3AE03B53A971C630333"/>
- <Ecore:EDataType xmi:id="_WUMVzcWCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.String" base_PrimitiveType="_439EC3AE03B539EB7E000186"/>
- <Ecore:EDataType xmi:id="_WUMVzsWCEdqI1bY5Lwi8Hg" instanceClassName="org.eclipse.emf.common.util.TreeIterator" base_PrimitiveType="_439EC3AE03B53D08E8A002C4"/>
- <Ecore:EReference xmi:id="_WUMVz8WCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B539D6BD4C006B"/>
- <Ecore:EReference xmi:id="_WUMV0MWCEdqI1bY5Lwi8Hg" isVolatile="true" base_Property="_439EC3AE03B539DE15780002"/>
- <Ecore:EReference xmi:id="_WUMV0cWCEdqI1bY5Lwi8Hg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B539D6BD8A0114"/>
- <Ecore:EReference xmi:id="_WUWGwMWCEdqI1bY5Lwi8Hg" isVolatile="true" base_Property="_439EC3AE03B539D7678D0303"/>
+ <Ecore:EPackage xmi:id="_fjG4UNxrEdqEPrOCkNZ5Vg" base_Package="439EC3AE03B5" packageName="ecore" nsPrefix="ecore" nsURI="http://www.eclipse.org/emf/2002/Ecore" basePackage="org.eclipse.emf" prefix="Ecore"/>
+ <Ecore:EAttribute xmi:id="_fjG4UdxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B53D98A349020A"/>
+ <Ecore:EReference xmi:id="_fjG4UtxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53D5D261200E9"/>
+ <Ecore:EAttribute xmi:id="_fjG4U9xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B53CF6636F001D"/>
+ <Ecore:EAttribute xmi:id="_fjG4VNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B53D0616AE039B"/>
+ <Ecore:EReference xmi:id="_fjG4VdxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B539D6BD4C0061"/>
+ <Ecore:EReference xmi:id="_fjG4VtxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B539D6BD8A010A"/>
+ <Ecore:EReference xmi:id="_fjG4V9xrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B539D7678D02EF"/>
+ <Ecore:EReference xmi:id="_fjG4WNxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B539DE157703CC"/>
+ <Ecore:EReference xmi:id="_fjG4WdxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53AF07CB900F8"/>
+ <Ecore:EReference xmi:id="_fjG4WtxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53AF87E2E006C"/>
+ <Ecore:EReference xmi:id="_fjG4W9xrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53CD7CA8D0078"/>
+ <Ecore:EReference xmi:id="_fjG4XNxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53D0618C600DE"/>
+ <Ecore:EReference xmi:id="_fjG4XdxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53DDF795201B1"/>
+ <Ecore:EAttribute xmi:id="_fjG4XtxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B53B0F0B800186"/>
+ <Ecore:EAttribute xmi:id="_fjG4X9xrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53CA8BD1C01FA"/>
+ <Ecore:EAttribute xmi:id="_fjQpUNxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53D3C1AEE014B"/>
+ <Ecore:EReference xmi:id="_fjQpUdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_439EC3AE03B53A7DAB6D0239"/>
+ <Ecore:EAttribute xmi:id="_fjQpUtxrEdqEPrOCkNZ5Vg" isTransient="true" isUnsettable="true" base_Property="_439EC3AE03B53D2DB8A701BE"/>
+ <Ecore:EAttribute xmi:id="_fjQpU9xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B5430B327502D1"/>
+ <Ecore:EReference xmi:id="_fjQpVNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_439EC3AE03B53ACCDD3C00FE"/>
+ <Ecore:EReference xmi:id="_fjQpVdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_439EC3AE03B53A773F5B00D7"/>
+ <Ecore:EAttribute xmi:id="_fjQpVtxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B53B65CCCF0007"/>
+ <Ecore:EReference xmi:id="_fjQpV9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_439EC3AE03B53904D81303AD"/>
+ <Ecore:EAttribute xmi:id="_fjQpWNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B539EB787703D8"/>
+ <Ecore:EAttribute xmi:id="_fjQpWdxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B53A773FA4026D"/>
+ <Ecore:EReference xmi:id="_fjQpWtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_439EC3AE03B53A773F5B00CD"/>
+ <Ecore:EReference xmi:id="_fjQpW9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_439EC3AE03B53C06C4F203B1"/>
+ <Ecore:EReference xmi:id="_fjQpXNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_439EC3AE03B53B4DFCAC02CB"/>
+ <Ecore:EAttribute xmi:id="_fjQpXdxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53D5D254701DE"/>
+ <Ecore:EReference xmi:id="_fjQpXtxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53D5D2A6100E7"/>
+ <Ecore:EClass xmi:id="_fjQpX9xrEdqEPrOCkNZ5Vg" instanceClassName="java.util.Map$Entry" base_Class="_439EC3AE03B53DA69D3C00F6"/>
+ <Ecore:EAttribute xmi:id="_fjQpYNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B53DA69D3C00F8"/>
+ <Ecore:EAttribute xmi:id="_fjQpYdxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B53DA69D3C00F9"/>
+ <Ecore:EAttribute xmi:id="_fjQpYtxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B539EB782D01D4"/>
+ <Ecore:EAttribute xmi:id="_fjQpY9xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B539EB78210280"/>
+ <Ecore:EAttribute xmi:id="_fjQpZNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B53B5F07A60290"/>
+ <Ecore:EAttribute xmi:id="_fjQpZdxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53CA44568000B"/>
+ <Ecore:EAttribute xmi:id="_fjQpZtxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B53E37C5F603D4"/>
+ <Ecore:EAttribute xmi:id="_fjQpZ9xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B53FC61EC301EE"/>
+ <Ecore:EReference xmi:id="_fjQpaNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_439EC3AE03B53F72EF6B0212"/>
+ <Ecore:EAttribute xmi:id="_fjZzQNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_439EC3AE03B53F5E13E90031"/>
+ <Ecore:EAttribute xmi:id="_fjZzQdxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53F5E13FC0150"/>
+ <Ecore:EAttribute xmi:id="_fjZzQtxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B53F5E14050212"/>
+ <Ecore:EDataType xmi:id="_fjZzQ9xrEdqEPrOCkNZ5Vg" instanceClassName="java.math.BigDecimal" base_PrimitiveType="_439EC3AE03B53FC6252D01C7"/>
+ <Ecore:EDataType xmi:id="_fjZzRNxrEdqEPrOCkNZ5Vg" instanceClassName="java.math.BigInteger" base_PrimitiveType="_439EC3AE03B53FC625080137"/>
+ <Ecore:EDataType xmi:id="_fjZzRdxrEdqEPrOCkNZ5Vg" instanceClassName="boolean" base_PrimitiveType="_439EC3AE03B53D0672EC0024"/>
+ <Ecore:EDataType xmi:id="_fjZzRtxrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.Boolean" base_PrimitiveType="_439EC3AE03B539EB7E1202AF"/>
+ <Ecore:EDataType xmi:id="_fjZzR9xrEdqEPrOCkNZ5Vg" instanceClassName="byte" base_PrimitiveType="_439EC3AE03B53D06745301D9"/>
+ <Ecore:EDataType xmi:id="_fjZzSNxrEdqEPrOCkNZ5Vg" instanceClassName="byte[]" base_PrimitiveType="_439EC3AE03B53FC62489001C"/>
+ <Ecore:EDataType xmi:id="_fjZzSdxrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.Byte" base_PrimitiveType="_439EC3AE03B53D0672FE0070"/>
+ <Ecore:EDataType xmi:id="_fjZzStxrEdqEPrOCkNZ5Vg" instanceClassName="char" base_PrimitiveType="_439EC3AE03B53D06731003B5"/>
+ <Ecore:EDataType xmi:id="_fjZzS9xrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.Character" base_PrimitiveType="_439EC3AE03B539EB7E480148"/>
+ <Ecore:EDataType xmi:id="_fjZzTNxrEdqEPrOCkNZ5Vg" instanceClassName="java.util.Date" base_PrimitiveType="_439EC3AE03B53FC625DC038B"/>
+ <Ecore:EDataType xmi:id="_fjZzTdxrEdqEPrOCkNZ5Vg" instanceClassName="org.eclipse.emf.common.util.DiagnosticChain" base_PrimitiveType="_439EC3AE03B540916FF702ED"/>
+ <Ecore:EDataType xmi:id="_fjZzTtxrEdqEPrOCkNZ5Vg" instanceClassName="double" base_PrimitiveType="_439EC3AE03B53D06745D0364"/>
+ <Ecore:EDataType xmi:id="_fjZzT9xrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.Double" base_PrimitiveType="_439EC3AE03B53A68EBB8012A"/>
+ <Ecore:EDataType xmi:id="_fjZzUNxrEdqEPrOCkNZ5Vg" instanceClassName="org.eclipse.emf.common.util.EList" base_PrimitiveType="_439EC3AE03B53AD37E40003D"/>
+ <Ecore:EDataType xmi:id="_fjZzUdxrEdqEPrOCkNZ5Vg" instanceClassName="org.eclipse.emf.common.util.Enumerator" base_PrimitiveType="_439EC3AE03B53D2DB651020A"/>
+ <Ecore:EDataType xmi:id="_fjZzUtxrEdqEPrOCkNZ5Vg" instanceClassName="org.eclipse.emf.ecore.util.FeatureMap" base_PrimitiveType="_439EC3AE03B53FC6258F00C3"/>
+ <Ecore:EDataType xmi:id="_fjZzU9xrEdqEPrOCkNZ5Vg" instanceClassName="org.eclipse.emf.ecore.util.FeatureMap$Entry" base_PrimitiveType="_439EC3AE03B53F44E79E02B2"/>
+ <Ecore:EDataType xmi:id="_fjZzVNxrEdqEPrOCkNZ5Vg" instanceClassName="float" base_PrimitiveType="_439EC3AE03B53D067469025C"/>
+ <Ecore:EDataType xmi:id="_fjZzVdxrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.Float" base_PrimitiveType="_439EC3AE03B539EB7E2600BB"/>
+ <Ecore:EDataType xmi:id="_fjZzVtxrEdqEPrOCkNZ5Vg" instanceClassName="int" base_PrimitiveType="_439EC3AE03B53D0674720115"/>
+ <Ecore:EDataType xmi:id="_fjZzV9xrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.Integer" base_PrimitiveType="_439EC3AE03B539EB7E0702AF"/>
+ <Ecore:EDataType xmi:id="_fjZzWNxrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.Class" base_PrimitiveType="_439EC3AE03B53B1531690285"/>
+ <Ecore:EDataType xmi:id="_fjZzWdxrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.Object" base_PrimitiveType="_439EC3AE03B53ACDF8200182"/>
+ <Ecore:EDataType xmi:id="_fjZzWtxrEdqEPrOCkNZ5Vg" instanceClassName="long" base_PrimitiveType="_439EC3AE03B53D06747C0390"/>
+ <Ecore:EDataType xmi:id="_fjZzW9xrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.Long" base_PrimitiveType="_439EC3AE03B53A68EBAB02DA"/>
+ <Ecore:EDataType xmi:id="_fjZzXNxrEdqEPrOCkNZ5Vg" instanceClassName="java.util.Map" base_PrimitiveType="_439EC3AE03B54091704001A5"/>
+ <Ecore:EDataType xmi:id="_fjZzXdxrEdqEPrOCkNZ5Vg" instanceClassName="org.eclipse.emf.ecore.resource.Resource" base_PrimitiveType="_439EC3AE03B53C4F231001FC"/>
+ <Ecore:EDataType xmi:id="_fjZzXtxrEdqEPrOCkNZ5Vg" instanceClassName="org.eclipse.emf.ecore.resource.ResourceSet" base_PrimitiveType="_439EC3AE03B53FC6255C012E"/>
+ <Ecore:EDataType xmi:id="_fjZzX9xrEdqEPrOCkNZ5Vg" instanceClassName="short" base_PrimitiveType="_439EC3AE03B53D06748601FA"/>
+ <Ecore:EDataType xmi:id="_fjjkQNxrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.Short" base_PrimitiveType="_439EC3AE03B53A971C630333"/>
+ <Ecore:EDataType xmi:id="_fjjkQdxrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.String" base_PrimitiveType="_439EC3AE03B539EB7E000186"/>
+ <Ecore:EDataType xmi:id="_fjjkQtxrEdqEPrOCkNZ5Vg" instanceClassName="org.eclipse.emf.common.util.TreeIterator" base_PrimitiveType="_439EC3AE03B53D08E8A002C4"/>
+ <Ecore:EReference xmi:id="_fjjkQ9xrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B539D6BD4C006B"/>
+ <Ecore:EReference xmi:id="_fjjkRNxrEdqEPrOCkNZ5Vg" isVolatile="true" base_Property="_439EC3AE03B539DE15780002"/>
+ <Ecore:EReference xmi:id="_fjjkRdxrEdqEPrOCkNZ5Vg" isTransient="true" isVolatile="true" base_Property="_439EC3AE03B539D6BD8A0114"/>
+ <Ecore:EReference xmi:id="_fjjkRtxrEdqEPrOCkNZ5Vg" isVolatile="true" base_Property="_439EC3AE03B539D7678D0303"/>
</xmi:XMI>
diff --git a/plugins/org.eclipse.uml2.uml/model/Infrastructure.uml b/plugins/org.eclipse.uml2.uml/model/Infrastructure.uml
index ce057532..dceb9f1f 100644
--- a/plugins/org.eclipse.uml2.uml/model/Infrastructure.uml
+++ b/plugins/org.eclipse.uml2.uml/model/Infrastructure.uml
@@ -98,7 +98,7 @@
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_rRgG9BTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>(self.name->isEmpty() or self.allNamespaces()->select(ns | ns.name->isEmpty())->notEmpty())&#xA;&#xA; implies self.qualifiedName->isEmpty()</body>
+ <body>(self.name->isEmpty() or self.allNamespaces()->select(ns | ns.name->isEmpty())->notEmpty())&#xD;&#xA; implies self.qualifiedName->isEmpty()</body>
</specification>
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_rRgG_BTaEdqZu-3Jy1-uYg" name="has_qualified_name" constrainedElement="_3ADC7B74022D3CA0071C02FD">
@@ -580,14 +580,10 @@
<packageImport xmi:type="uml:PackageImport" xmi:id="_3ADC7B74022D3DE6A40C0270" importedPackage="_3ADC7B74022D3CAB68D00279"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CA0320C02DB" name="InstanceSpecification">
<ownedComment xmi:type="uml:Comment" xmi:id="_rVrcXhTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CA0320C02DB">
- <body>An instance specification specifies existence of an entity in a modeled system and completely or partially describes the entity. The description includes:
-
- - Classification of the entity by one or more classifiers of which the entity is an instance. If the only classifier specified is abstract, then the instance specification only partially describes the entity.
-
- - The kind of instance, based on its classifier or classifiers: for example, an instance specification whose classifier is a class describes an object of that class, while an instance specification whose classifier is an association describes a link of that association.
-
- - Specification of values of structural features of the entity. Not all structural features of all classifiers of the instance specification need be represented by slots, in which case the instance specification is a partial description.
-
+ <body>An instance specification specifies existence of an entity in a modeled system and completely or partially describes the entity. The description includes:&#xD;
+ - Classification of the entity by one or more classifiers of which the entity is an instance. If the only classifier specified is abstract, then the instance specification only partially describes the entity.&#xD;
+ - The kind of instance, based on its classifier or classifiers: for example, an instance specification whose classifier is a class describes an object of that class, while an instance specification whose classifier is an association describes a link of that association.&#xD;
+ - Specification of values of structural features of the entity. Not all structural features of all classifiers of the instance specification need be represented by slots, in which case the instance specification is a partial description.&#xD;
- Specification of how to compute, derive or construct the instance (optional). InstanceSpecification is a concrete class.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_rV0mQxTaEdqZu-3Jy1-uYg" name="slots_are_defined" constrainedElement="_3ADC7B74022D3CA0320C02DB">
@@ -977,8 +973,7 @@
<packageImport xmi:type="uml:PackageImport" xmi:id="_m_pwAD9HEdqjIv4r4xIGZw" importedPackage="_3ADC7B74022D3CA002E901AD"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CA099F902D0" name="Constraint">
<ownedComment xmi:type="uml:Comment" xmi:id="_rY8yxhTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CA099F902D0">
- <body>Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.
-
+ <body>Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.&#xD;
Constraint is a condition (a Boolean expression) that restricts the extension of the associated element beyond what is imposed by the other language constructs applied to the element. Constraint contains an optional name, although they are commonly unnamed.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_rY8yzxTaEdqZu-3Jy1-uYg" name="not_apply_to_self" constrainedElement="_3ADC7B74022D3CA099F902D0">
@@ -1108,14 +1103,10 @@ Constraint is a condition (a Boolean expression) that restricts the extension of
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CAD9E0F01D0" name="VisibilityKind">
<ownedComment xmi:type="uml:Comment" xmi:id="_raJsoRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAD9E0F01D0">
- <body>VisibilityKind is an enumeration of the following literal values:
-
- - public
-
- - private
-
- - protected
-
+ <body>VisibilityKind is an enumeration of the following literal values:&#xD;
+ - public&#xD;
+ - private&#xD;
+ - protected&#xD;
- package</body>
</ownedComment>
<ownedOperation xmi:type="uml:Operation" xmi:id="_3ADC7B74022D3E107BB80139" name="bestVisibility" isQuery="true" bodyCondition="_raJsqhTaEdqZu-3Jy1-uYg">
@@ -1710,14 +1701,10 @@ Constraint is a condition (a Boolean expression) that restricts the extension of
</packagedElement>
<packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3CA010AC0090" name="Boolean">
<ownedComment xmi:type="uml:Comment" xmi:id="_rd3vARTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CA010AC0090">
- <body>Boolean is an instance of PrimitiveType. In the metamodel, Boolean defines an enumeration that denotes a logical condition. Its enumeration literals are:
-
- - true: The Boolean condition is satisfied.
-
- - false: The Boolean condition is not satisfied.
-
-
-
+ <body>Boolean is an instance of PrimitiveType. In the metamodel, Boolean defines an enumeration that denotes a logical condition. Its enumeration literals are:&#xD;
+ - true = The Boolean condition is satisfied.&#xD;
+ - false = The Boolean condition is not satisfied.&#xD;
+&#xD;
It is used for Boolean attribute and Boolean expressions in the metamodel, such as OCL expression.</body>
</ownedComment>
</packagedElement>
@@ -2941,10 +2928,8 @@ It is used for Boolean attribute and Boolean expressions in the metamodel, such
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DE6E15D033A" name="Association">
<ownedComment xmi:type="uml:Comment" xmi:id="_rmXjwRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DE6E15D033A">
- <body>An association specifies a semantic relationship that can occur between typed instances. It has at least two ends represented by properties, each of which is connected to the type of the end. More than one end of an association may have the same type.
-
-
-
+ <body>An association specifies a semantic relationship that can occur between typed instances. It has at least two ends represented by properties, each of which is connected to the type of the end. More than one end of an association may have the same type.&#xD;
+&#xD;
An end property of an association that is owned by an end class or that is a navigable owned end of the association indicates that the association is navigable from the opposite ends, otherwise the association is not navigable from the opposite ends.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_rmXjyxTaEdqZu-3Jy1-uYg" name="association_ends" constrainedElement="_3ADC7B74022D3DE6E15D033A">
@@ -3047,10 +3032,8 @@ An end property of an association that is owned by an end class or that is a nav
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DE6D57500AC" name="Property">
<ownedComment xmi:type="uml:Comment" xmi:id="_rmgtsxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DE6D57500AC">
- <body>Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association.
-
-
-
+ <body>Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association.&#xD;
+&#xD;
Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_rmqepxTaEdqZu-3Jy1-uYg" name="multiplicity_of_composite" constrainedElement="_3ADC7B74022D3DE6D57500AC">
@@ -3271,10 +3254,8 @@ Property is indirectly a subclass of Constructs::TypedElement. The range of vali
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DE6D25202A6" name="DataType">
<ownedComment xmi:type="uml:Comment" xmi:id="_rnHKkxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DE6D25202A6">
- <body>A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.
-
-
-
+ <body>A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.&#xD;
+&#xD;
A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3DEE7FF2011D" general="_3ADC7B74022D3DE6C8630317"/>
@@ -3314,10 +3295,8 @@ A typical use of data types would be to represent programming language primitive
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DE6D2750152" name="Enumeration">
<ownedComment xmi:type="uml:Comment" xmi:id="_rnHKohTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DE6D2750152">
- <body>Enumeration is a kind of data type, whose instances may be any of a number of predefined enumeration literals.
-
-It is possible to extend the set of applicable enumeration literals in other packages or profiles.
-
+ <body>Enumeration is a kind of data type, whose instances may be any of a number of predefined enumeration literals.&#xD;
+It is possible to extend the set of applicable enumeration literals in other packages or profiles.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3DE6D2D7038E" general="_3ADC7B74022D3DE6D25202A6"/>
@@ -3350,8 +3329,7 @@ It is possible to extend the set of applicable enumeration literals in other pac
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DE766450007" name="Constraint">
<ownedComment xmi:type="uml:Comment" xmi:id="_rnQUhBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DE766450007">
- <body>Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.
-
+ <body>Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.&#xD;
Constraint is a condition (a Boolean expression) that restricts the extension of the associated element beyond what is imposed by the other language constructs applied to the element. Constraint contains an optional name, although they are commonly unnamed.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_rnQUjRTaEdqZu-3Jy1-uYg" name="not_apply_to_self" constrainedElement="_3ADC7B74022D3DE766450007">
@@ -3382,8 +3360,7 @@ Constraint is a condition (a Boolean expression) that restricts the extension of
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3DFCC88D0337" name="specification" type="_3ADC7B74022D3DE6C7F30294" aggregation="composite" subsettedProperty="_3ADC7B74022D3DFCA80700B4" association="_3ADC7B74022D3DFCC88D0157">
<ownedComment xmi:type="uml:Comment" xmi:id="_rseLsxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DFCC88D0337">
- <body>A condition that must be true when evaluated in order for the constraint to be satisfied.
-
+ <body>A condition that must be true when evaluated in order for the constraint to be satisfied.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_rseLtxTaEdqZu-3Jy1-uYg" value="1"/>
@@ -3885,14 +3862,10 @@ Constraint is a condition (a Boolean expression) that restricts the extension of
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DEE8DFE0290" name="PackageMerge">
<ownedComment xmi:type="uml:Comment" xmi:id="_rowJbRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DEE8DFE0290">
- <body>A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both.
-
-
-
-This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.
-
-
-
+ <body>A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both.&#xD;
+&#xD;
+This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.&#xD;
+&#xD;
Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3DEE8EAA032E" general="_3ADC7B74022D3DE6C82E03E4"/>
@@ -3948,7 +3921,7 @@ Conceptually, a package merge can be viewed as an operation that takes the conte
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_ro5TWxTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>(self.name->isEmpty() or self.allNamespaces()->select(ns | ns.name->isEmpty())->notEmpty())&#xA;&#xA; implies self.qualifiedName->isEmpty()</body>
+ <body>(self.name->isEmpty() or self.allNamespaces()->select(ns | ns.name->isEmpty())->notEmpty())&#xD;&#xA; implies self.qualifiedName->isEmpty()</body>
</specification>
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_rpDEQxTaEdqZu-3Jy1-uYg" name="has_qualified_name" constrainedElement="_3ADC7B74022D3DE6BC6B01BD">
@@ -4087,17 +4060,11 @@ Conceptually, a package merge can be viewed as an operation that takes the conte
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D4161A8F100CC" name="ParameterDirectionKind">
<ownedComment xmi:type="uml:Comment" xmi:id="_rpM1XRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D4161A8F100CC">
- <body>ParameterDirectionKind is an enumeration of the following literal values:
-
- - in Indicates that parameter values are passed into the behavioral element by the caller.
-
- - inout Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.
-
- - out Indicates that parameter values are passed from a behavioral element out to the caller.
-
- - return Indicates that parameter values are passed as return values from a behavioral element back to the caller.
-
-</body>
+ <body>ParameterDirectionKind is an enumeration of the following literal values:&#xD;
+ - in = Indicates that parameter values are passed into the behavioral element by the caller.&#xD;
+ - inout = Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.&#xD;
+ - out = Indicates that parameter values are passed from a behavioral element out to the caller.&#xD;
+ - return = Indicates that parameter values are passed as return values from a behavioral element back to the caller.</body>
</ownedComment>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_3ADC7B74022D4161A93C01BC" name="in">
<ownedComment xmi:type="uml:Comment" xmi:id="_rpM1YRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D4161A93C01BC">
@@ -4122,14 +4089,10 @@ Conceptually, a package merge can be viewed as an operation that takes the conte
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D41C2D6020188" name="VisibilityKind">
<ownedComment xmi:type="uml:Comment" xmi:id="_rpfwPBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D41C2D6020188">
- <body>VisibilityKind is an enumeration of the following literal values:
-
- - public
-
- - private
-
- - protected
-
+ <body>VisibilityKind is an enumeration of the following literal values:&#xD;
+ - public&#xD;
+ - private&#xD;
+ - protected&#xD;
- package</body>
</ownedComment>
<ownedOperation xmi:type="uml:Operation" xmi:id="_3ADC7B74022D42EE305C00E3" name="bestVisibility" isQuery="true" bodyCondition="_rpfwRRTaEdqZu-3Jy1-uYg">
@@ -4420,14 +4383,10 @@ Conceptually, a package merge can be viewed as an operation that takes the conte
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CA186E10085" name="Profile">
<ownedComment xmi:type="uml:Comment" xmi:id="_rt-AmBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CA186E10085">
- <body>A Profile is a kind of Package that extends a reference metamodel. The primary extension construct is the Stereotype, which are defined as part of Profiles.
-
-
-
-A profile introduces several constraints, or restrictions, on ordinary metamodeling through the use of the metaclasses defined in this package.
-
-
-
+ <body>A Profile is a kind of Package that extends a reference metamodel. The primary extension construct is the Stereotype, which are defined as part of Profiles.&#xD;
+&#xD;
+A profile introduces several constraints, or restrictions, on ordinary metamodeling through the use of the metaclasses defined in this package.&#xD;
+&#xD;
A profile is a restricted form of a metamodel that must always be related to a reference metamodel, such as UML, as described below. A profile cannot be used without its reference metamodel, and defines a limited capability to extendmetaclasses of the reference metamodel. The extensions are defined as stereotypes that apply to existing metaclasses.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_dCELMDakEdqq1tCaRkgBQQ" name="metaclass_reference_not_specialized" constrainedElement="_3ADC7B74022D3CA186E10085">
@@ -4436,7 +4395,7 @@ A profile is a restricted form of a metamodel that must always be related to a r
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_dCELMTakEdqq1tCaRkgBQQ">
<language>OCL</language>
- <body>self.metaclassReference.importedElement->&#xA;&#xA; select(c | c.oclIsKindOf(Classifier) and&#xA;&#xA; (c.generalization.namespace = self or&#xA;&#xA; (c.specialization.namespace = self) )->isEmpty()</body>
+ <body>self.metaclassReference.importedElement->&#xD;&#xA; select(c | c.oclIsKindOf(Classifier) and&#xD;&#xA; (c.generalization.namespace = self or&#xD;&#xA; (c.specialization.namespace = self) )->isEmpty()</body>
</specification>
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_ichowDakEdqq1tCaRkgBQQ" name="references_same_metamodel" constrainedElement="_3ADC7B74022D3CA186E10085">
@@ -4445,7 +4404,7 @@ A profile is a restricted form of a metamodel that must always be related to a r
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_ichowTakEdqq1tCaRkgBQQ">
<language>OCL</language>
- <body>self.metamodelReference.importedPackage.elementImport.importedElement.allOwningPackages())->&#xA;&#xA; union(self.metaclassReference.importedElement.allOwningPackages() )->notEmpty()</body>
+ <body>self.metamodelReference.importedPackage.elementImport.importedElement.allOwningPackages())->&#xD;&#xA; union(self.metaclassReference.importedElement.allOwningPackages() )->notEmpty()</body>
</specification>
</ownedRule>
<generalization xmi:type="uml:Generalization" xmi:id="_bC_LMEfCEdq0rbStTpEubg" general="_3ADC7B74022D3DE6D5DA0183"/>
@@ -4639,8 +4598,7 @@ A profile is a restricted form of a metamodel that must always be related to a r
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_InW3ADajEdqq1tCaRkgBQQ" name="lowerBound" isQuery="true" redefinedOperation="_3ADC7B74022D42EE305C00C6" bodyCondition="_ZWJvkDajEdqq1tCaRkgBQQ">
<ownedComment xmi:type="uml:Comment" xmi:id="_YkFZcDajEdqq1tCaRkgBQQ" annotatedElement="_InW3ADajEdqq1tCaRkgBQQ">
- <body>The query lowerBound() returns the lower bound of the multiplicity as an Integer. This is a redefinition of the default
-
+ <body>The query lowerBound() returns the lower bound of the multiplicity as an Integer. This is a redefinition of the default&#xD;
lower bound, which normally, for MultiplicityElements, evaluates to 1 if empty.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_ZWJvkDajEdqq1tCaRkgBQQ" name="spec" constrainedElement="_InW3ADajEdqq1tCaRkgBQQ">
@@ -4673,10 +4631,8 @@ lower bound, which normally, for MultiplicityElements, evaluates to 1 if empty.<
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_P1lH4HGhEdqziYxiZo0YtA" name="format" type="_3ADC7B74022D3CA010B103C3">
<ownedComment xmi:type="uml:Comment" xmi:id="_EbshsHGlEdqziYxiZo0YtA" annotatedElement="_P1lH4HGhEdqziYxiZo0YtA">
- <body>This indicates the format of the content - which is how the string content should be interpreted. The following values are reserved: SVG, GIF, PNG, JPG, WMF, EMF, BMP.
-
-
-
+ <body>This indicates the format of the content - which is how the string content should be interpreted. The following values are reserved: SVG, GIF, PNG, JPG, WMF, EMF, BMP.&#xD;
+&#xD;
In addition the prefix 'MIME: ' is also reserved. This option can be used as an alternative to express the reserved values above, for example &quot;SVG&quot; could instead be expressed as &quot;MIME: image/svg+xml&quot;.</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Ssj8EXGhEdqziYxiZo0YtA" value="1"/>
@@ -4766,95 +4722,95 @@ In addition the prefix 'MIME: ' is also reserved. This option can be used as an
<appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
</profileApplication>
</uml:Model>
- <Ecore:EReference xmi:id="_aBH6gMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CADCD85009B"/>
- <Ecore:EReference xmi:id="_aBREcMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CADCD8500A5"/>
- <Ecore:EAttribute xmi:id="_aBREccWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3CA0080E03C3" isID="true"/>
- <Ecore:EAttribute xmi:id="_aBREcsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CA008400375"/>
- <Ecore:EReference xmi:id="_aBREc8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CA008A2036C"/>
- <Ecore:EOperation xmi:id="_aBREdMWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D3E1065EF023E" operationName="getQualifiedName"/>
- <Ecore:EReference xmi:id="_aBREdcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CA008A20358"/>
- <Ecore:EReference xmi:id="_aBREdsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CA0098401B9"/>
- <Ecore:EReference xmi:id="_aBREd8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CA00B92018D"/>
- <Ecore:EReference xmi:id="_aBREeMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CA00B920183"/>
- <Ecore:EAttribute xmi:id="_aBREecWCEdqI1bY5Lwi8Hg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D41AE11E501C8"/>
- <Ecore:EAttribute xmi:id="_aBREesWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D41AE120C0319"/>
- <Ecore:EAttribute xmi:id="_aBREe8WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3E555C7702E8"/>
- <Ecore:EAttribute xmi:id="_aBREfMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DF78F1C034C"/>
- <Ecore:EAttribute xmi:id="_aBREfcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DF78F2B0290"/>
- <Ecore:EOperation xmi:id="_aBREfsWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D3E140A3102FA" operationName="getLower"/>
- <Ecore:EOperation xmi:id="_aBREf8WCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D3E140A6C013C" operationName="getUpper"/>
- <Ecore:EReference xmi:id="_aBa1cMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CA02BDB0015"/>
- <Ecore:EReference xmi:id="_aBa1ccWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CA01B20019D"/>
- <Ecore:EReference xmi:id="_aBa1csWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CADABFE01E3"/>
- <Ecore:EReference xmi:id="_aBa1c8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DF65B8D0134"/>
- <Ecore:EOperation xmi:id="_aBa1dMWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D3E105DC8003E" operationName="getGenerals"/>
- <Ecore:EAttribute xmi:id="_aBa1dcWCEdqI1bY5Lwi8Hg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D3CAC072502E2"/>
- <Ecore:EReference xmi:id="_aBa1dsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DE6A15F02E3"/>
- <Ecore:EReference xmi:id="_aBa1d8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DE6A1830227"/>
- <Ecore:EReference xmi:id="_aBa1eMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3D7A3113026A"/>
- <Ecore:EReference xmi:id="_aBa1ecWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41B9C1A000D5"/>
- <Ecore:EReference xmi:id="_aBa1esWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41B9EF3300FA"/>
- <Ecore:EReference xmi:id="_aBa1e8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41B9C1A000FD"/>
- <Ecore:EAttribute xmi:id="_aBa1fMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3CADC5B702BE"/>
- <Ecore:EReference xmi:id="_aBkmcMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DF65A9D02E0"/>
- <Ecore:EOperation xmi:id="_aBkmccWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D3E10722C00E4" operationName="getInheritedMembers"/>
- <Ecore:EAttribute xmi:id="_aBkmcsWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3CB5A28802FF"/>
- <Ecore:EDataType xmi:id="_aBkmc8WCEdqI1bY5Lwi8Hg" instanceClassName="int" base_PrimitiveType="_3ADC7B74022D3CA010A4007B"/>
- <Ecore:EDataType xmi:id="_aBkmdMWCEdqI1bY5Lwi8Hg" instanceClassName="boolean" base_PrimitiveType="_3ADC7B74022D3CA010AC0090"/>
- <Ecore:EDataType xmi:id="_aBkmdcWCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.String" base_PrimitiveType="_3ADC7B74022D3CA010B103C3"/>
- <Ecore:EDataType xmi:id="_aBkmdsWCEdqI1bY5Lwi8Hg" instanceClassName="int" base_PrimitiveType="_3ADC7B74022D3DE6A93C0003"/>
- <Ecore:EAttribute xmi:id="_aBkmd8WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3DE6AC4701DA"/>
- <Ecore:EAttribute xmi:id="_aBkmeMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3DE6A6EE0069" isID="true"/>
- <Ecore:EAttribute xmi:id="_aBtwYMWCEdqI1bY5Lwi8Hg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D417820CB0110"/>
- <Ecore:EReference xmi:id="_aBtwYcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DE6E42E034A"/>
- <Ecore:EReference xmi:id="_aBtwYsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFCBE7F0246"/>
- <Ecore:EReference xmi:id="_aBtwY8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D4304A13201D9"/>
- <Ecore:EOperation xmi:id="_aBtwZMWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D42EE305C00D9" operationName="getGenerals"/>
- <Ecore:EOperation xmi:id="_aBtwZcWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D42EE305C00F1" operationName="getInheritedMembers"/>
- <Ecore:EReference xmi:id="_aBtwZsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFCAC7900D9"/>
- <Ecore:EReference xmi:id="_aBtwZ8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFCACAF0090"/>
- <Ecore:EReference xmi:id="_aBtwaMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFCA80700B4"/>
- <Ecore:EReference xmi:id="_aBtwacWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFCA80700BE"/>
- <Ecore:EReference xmi:id="_aBtwasWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFCBE7F025A"/>
- <Ecore:EReference xmi:id="_aB3hYMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DEE234B0163"/>
- <Ecore:EReference xmi:id="_aB3hYcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFCB8650177"/>
- <Ecore:EReference xmi:id="_aB3hYsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFCB82F00DA"/>
- <Ecore:EOperation xmi:id="_aB3hY8WCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D3E142ABF004B" operationName="getImportedMembers"/>
- <Ecore:EReference xmi:id="_aB3hZMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFCBDBD028D"/>
- <Ecore:EReference xmi:id="_aB3hZcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFCBE1F00FD"/>
- <Ecore:EReference xmi:id="_aB3hZsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFCAC2F019B"/>
- <Ecore:EReference xmi:id="_aB3hZ8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DE75D87003B"/>
- <Ecore:EAttribute xmi:id="_aB3haMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D4201104A02AF"/>
- <Ecore:EReference xmi:id="_aB3hacWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DE6E76603BD"/>
- <Ecore:EOperation xmi:id="_aB3hasWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D3E14246901E3" operationName="getOpposite"/>
- <Ecore:EAttribute xmi:id="_aB3ha8WCEdqI1bY5Lwi8Hg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D41FC52E503B5"/>
- <Ecore:EAttribute xmi:id="_aB3hbMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D41FC52EF0215"/>
- <Ecore:EAttribute xmi:id="_aCArUMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E03284C0289"/>
- <Ecore:EAttribute xmi:id="_aCArUcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E032859015B"/>
- <Ecore:EAttribute xmi:id="_aCArUsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E0328B001D9"/>
- <Ecore:EAttribute xmi:id="_aCArU8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E0328710341"/>
- <Ecore:EReference xmi:id="_aCArVMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DEE7BDA017A"/>
- <Ecore:EOperation xmi:id="_aCArVcWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D3E142F3E03CB" operationName="lowerBound"/>
- <Ecore:EOperation xmi:id="_aCArVsWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D3E142F7500B3" operationName="upperBound"/>
- <Ecore:EOperation xmi:id="_aCArV8WCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D3E142FBB01EA" operationName="getType"/>
- <Ecore:EAttribute xmi:id="_aCArWMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3DE7647D021E"/>
- <Ecore:EAttribute xmi:id="_aCArWcWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3DEE875F0333"/>
- <Ecore:EReference xmi:id="_aCArWsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DEE344701CC"/>
- <Ecore:EReference xmi:id="_aCArW8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DEE6FD3029F"/>
- <Ecore:EReference xmi:id="_aCArXMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DEE6FD302F9"/>
- <Ecore:EReference xmi:id="_aCArXcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DEE344701FE"/>
- <Ecore:EAttribute xmi:id="_aCArXsWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3DE6BF540255" isID="true"/>
- <Ecore:EAttribute xmi:id="_aCArX8WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D41C2D63E00EE"/>
- <Ecore:EReference xmi:id="_aCArYMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFCB86501A0"/>
- <Ecore:EAttribute xmi:id="_aCArYcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_7-d1kIa_EdqhgMOAOWpjfQ"/>
- <Ecore:EOperation xmi:id="_aCKcUMWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D42EE305C00A6" operationName="getQualifiedName"/>
- <Ecore:EAttribute xmi:id="_aCKcUcWCEdqI1bY5Lwi8Hg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D41BDD0260325"/>
- <Ecore:EReference xmi:id="_aCKcUsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CB24B21030C"/>
- <Ecore:EReference xmi:id="_aCKcU8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CBDA7FB03DD"/>
- <Ecore:EAttribute xmi:id="_aCKcVMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CBDA7B50011"/>
- <Ecore:EReference xmi:id="_aCKcVcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CBDA7FB03E7"/>
- <Ecore:EOperation xmi:id="_aCKcVsWCEdqI1bY5Lwi8Hg" base_Operation="_Ccgo4DakEdqq1tCaRkgBQQ" operationName="getMetaclass"/>
- <Ecore:EAttribute xmi:id="_aCKcV8WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_GgC74HGhEdqziYxiZo0YtA"/>
- <Ecore:EAttribute xmi:id="_aCKcWMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_LCBSQHGhEdqziYxiZo0YtA"/>
- <Ecore:EAttribute xmi:id="_aCKcWcWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_P1lH4HGhEdqziYxiZo0YtA"/>
+ <Ecore:EReference xmi:id="_YvGN4NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CADCD85009B"/>
+ <Ecore:EReference xmi:id="_YvGN4dxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CADCD8500A5"/>
+ <Ecore:EAttribute xmi:id="_YvGN4txrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3CA0080E03C3"/>
+ <Ecore:EAttribute xmi:id="_YvGN49xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CA008400375"/>
+ <Ecore:EReference xmi:id="_YvGN5NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CA008A2036C"/>
+ <Ecore:EOperation xmi:id="_YvGN5dxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D3E1065EF023E" operationName="getQualifiedName"/>
+ <Ecore:EReference xmi:id="_YvGN5txrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CA008A20358"/>
+ <Ecore:EReference xmi:id="_YvGN59xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CA0098401B9"/>
+ <Ecore:EReference xmi:id="_YvGN6NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CA00B92018D"/>
+ <Ecore:EReference xmi:id="_YvGN6dxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CA00B920183"/>
+ <Ecore:EAttribute xmi:id="_YvGN6txrEdqEPrOCkNZ5Vg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D41AE11E501C8"/>
+ <Ecore:EAttribute xmi:id="_YvGN69xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D41AE120C0319"/>
+ <Ecore:EAttribute xmi:id="_YvP-4NxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3E555C7702E8"/>
+ <Ecore:EAttribute xmi:id="_YvP-4dxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DF78F1C034C"/>
+ <Ecore:EAttribute xmi:id="_YvP-4txrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DF78F2B0290"/>
+ <Ecore:EOperation xmi:id="_YvP-49xrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D3E140A3102FA" operationName="getLower"/>
+ <Ecore:EOperation xmi:id="_YvP-5NxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D3E140A6C013C" operationName="getUpper"/>
+ <Ecore:EReference xmi:id="_YvP-5dxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CA02BDB0015"/>
+ <Ecore:EReference xmi:id="_YvP-5txrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CA01B20019D"/>
+ <Ecore:EReference xmi:id="_YvP-59xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CADABFE01E3"/>
+ <Ecore:EReference xmi:id="_YvP-6NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DF65B8D0134"/>
+ <Ecore:EOperation xmi:id="_YvP-6dxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D3E105DC8003E" operationName="getGenerals"/>
+ <Ecore:EAttribute xmi:id="_YvP-6txrEdqEPrOCkNZ5Vg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D3CAC072502E2"/>
+ <Ecore:EReference xmi:id="_YvP-69xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DE6A15F02E3"/>
+ <Ecore:EReference xmi:id="_YvP-7NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DE6A1830227"/>
+ <Ecore:EReference xmi:id="_YvP-7dxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3D7A3113026A"/>
+ <Ecore:EReference xmi:id="_YvP-7txrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41B9C1A000D5"/>
+ <Ecore:EReference xmi:id="_YvP-79xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41B9EF3300FA"/>
+ <Ecore:EReference xmi:id="_YvP-8NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41B9C1A000FD"/>
+ <Ecore:EAttribute xmi:id="_YvP-8dxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3CADC5B702BE"/>
+ <Ecore:EReference xmi:id="_YvZv4NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DF65A9D02E0"/>
+ <Ecore:EOperation xmi:id="_YvZv4dxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D3E10722C00E4" operationName="getInheritedMembers"/>
+ <Ecore:EAttribute xmi:id="_YvZv4txrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3CB5A28802FF"/>
+ <Ecore:EDataType xmi:id="_YvZv49xrEdqEPrOCkNZ5Vg" instanceClassName="int" base_PrimitiveType="_3ADC7B74022D3CA010A4007B"/>
+ <Ecore:EDataType xmi:id="_YvZv5NxrEdqEPrOCkNZ5Vg" instanceClassName="boolean" base_PrimitiveType="_3ADC7B74022D3CA010AC0090"/>
+ <Ecore:EDataType xmi:id="_YvZv5dxrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.String" base_PrimitiveType="_3ADC7B74022D3CA010B103C3"/>
+ <Ecore:EDataType xmi:id="_YvZv5txrEdqEPrOCkNZ5Vg" instanceClassName="int" base_PrimitiveType="_3ADC7B74022D3DE6A93C0003"/>
+ <Ecore:EAttribute xmi:id="_YvZv59xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3DE6AC4701DA"/>
+ <Ecore:EAttribute xmi:id="_YvZv6NxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3DE6A6EE0069"/>
+ <Ecore:EAttribute xmi:id="_YvZv6dxrEdqEPrOCkNZ5Vg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D417820CB0110"/>
+ <Ecore:EReference xmi:id="_YvZv6txrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DE6E42E034A"/>
+ <Ecore:EReference xmi:id="_YvZv69xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFCBE7F0246"/>
+ <Ecore:EReference xmi:id="_YvZv7NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D4304A13201D9"/>
+ <Ecore:EOperation xmi:id="_YvZv7dxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D42EE305C00D9" operationName="getGenerals"/>
+ <Ecore:EOperation xmi:id="_YvZv7txrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D42EE305C00F1" operationName="getInheritedMembers"/>
+ <Ecore:EReference xmi:id="_YvZv79xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFCAC7900D9"/>
+ <Ecore:EReference xmi:id="_YvZv8NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFCACAF0090"/>
+ <Ecore:EReference xmi:id="_Yvi50NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFCA80700B4"/>
+ <Ecore:EReference xmi:id="_Yvi50dxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFCA80700BE"/>
+ <Ecore:EReference xmi:id="_Yvi50txrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFCBE7F025A"/>
+ <Ecore:EReference xmi:id="_Yvi509xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DEE234B0163"/>
+ <Ecore:EReference xmi:id="_Yvi51NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFCB8650177"/>
+ <Ecore:EReference xmi:id="_Yvi51dxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFCB82F00DA"/>
+ <Ecore:EOperation xmi:id="_Yvi51txrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D3E142ABF004B" operationName="getImportedMembers"/>
+ <Ecore:EReference xmi:id="_Yvi519xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFCBDBD028D"/>
+ <Ecore:EReference xmi:id="_Yvi52NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFCBE1F00FD"/>
+ <Ecore:EReference xmi:id="_Yvi52dxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFCAC2F019B"/>
+ <Ecore:EReference xmi:id="_Yvi52txrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DE75D87003B"/>
+ <Ecore:EAttribute xmi:id="_Yvi529xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D4201104A02AF"/>
+ <Ecore:EReference xmi:id="_Yvi53NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DE6E76603BD"/>
+ <Ecore:EOperation xmi:id="_Yvi53dxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D3E14246901E3" operationName="getOpposite"/>
+ <Ecore:EAttribute xmi:id="_Yvi53txrEdqEPrOCkNZ5Vg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D41FC52E503B5"/>
+ <Ecore:EAttribute xmi:id="_Yvi539xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D41FC52EF0215"/>
+ <Ecore:EAttribute xmi:id="_Yvi54NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E03284C0289"/>
+ <Ecore:EAttribute xmi:id="_Yvsq0NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E032859015B"/>
+ <Ecore:EAttribute xmi:id="_Yvsq0dxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E0328B001D9"/>
+ <Ecore:EAttribute xmi:id="_Yvsq0txrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E0328710341"/>
+ <Ecore:EReference xmi:id="_Yvsq09xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DEE7BDA017A"/>
+ <Ecore:EOperation xmi:id="_Yvsq1NxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D3E142F3E03CB" operationName="lowerBound"/>
+ <Ecore:EOperation xmi:id="_Yvsq1dxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D3E142F7500B3" operationName="upperBound"/>
+ <Ecore:EOperation xmi:id="_Yvsq1txrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D3E142FBB01EA" operationName="getType"/>
+ <Ecore:EAttribute xmi:id="_Yvsq19xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3DE7647D021E"/>
+ <Ecore:EAttribute xmi:id="_Yvsq2NxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3DEE875F0333"/>
+ <Ecore:EReference xmi:id="_Yvsq2dxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DEE344701CC"/>
+ <Ecore:EReference xmi:id="_Yvsq2txrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DEE6FD3029F"/>
+ <Ecore:EReference xmi:id="_Yvsq29xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DEE6FD302F9"/>
+ <Ecore:EReference xmi:id="_Yvsq3NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DEE344701FE"/>
+ <Ecore:EAttribute xmi:id="_Yvsq3dxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3DE6BF540255"/>
+ <Ecore:EAttribute xmi:id="_Yvsq3txrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D41C2D63E00EE"/>
+ <Ecore:EReference xmi:id="_Yvsq39xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFCB86501A0"/>
+ <Ecore:EAttribute xmi:id="_Yvsq4NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_7-d1kIa_EdqhgMOAOWpjfQ"/>
+ <Ecore:EOperation xmi:id="_Yvsq4dxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D42EE305C00A6" operationName="getQualifiedName"/>
+ <Ecore:EAttribute xmi:id="_Yvsq4txrEdqEPrOCkNZ5Vg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D41BDD0260325"/>
+ <Ecore:EReference xmi:id="_Yv2b0NxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CB24B21030C"/>
+ <Ecore:EReference xmi:id="_Yv2b0dxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CBDA7FB03DD"/>
+ <Ecore:EAttribute xmi:id="_Yv2b0txrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CBDA7B50011"/>
+ <Ecore:EReference xmi:id="_Yv2b09xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CBDA7FB03E7"/>
+ <Ecore:EOperation xmi:id="_Yv2b1NxrEdqEPrOCkNZ5Vg" base_Operation="_Ccgo4DakEdqq1tCaRkgBQQ" operationName="getMetaclass"/>
+ <Ecore:EAttribute xmi:id="_Yv2b1dxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_GgC74HGhEdqziYxiZo0YtA"/>
+ <Ecore:EAttribute xmi:id="_Yv2b1txrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_LCBSQHGhEdqziYxiZo0YtA"/>
+ <Ecore:EAttribute xmi:id="_Yv2b19xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_P1lH4HGhEdqziYxiZo0YtA"/>
</xmi:XMI>
diff --git a/plugins/org.eclipse.uml2.uml/model/L1.uml b/plugins/org.eclipse.uml2.uml/model/L1.uml
index 64c065ae..f76d4aba 100644
--- a/plugins/org.eclipse.uml2.uml/model/L1.uml
+++ b/plugins/org.eclipse.uml2.uml/model/L1.uml
@@ -41,5 +41,5 @@
<appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
</profileApplication>
</uml:Model>
- <Ecore:EPackage xmi:id="_cE_2wMWCEdqI1bY5Lwi8Hg" base_Package="_BWooUBmMEdqvcs97umGEYQ" nsPrefix="uml" nsURI="http://schema.omg.org/spec/UML/2.1/uml.xml"/>
+ <Ecore:EPackage xmi:id="_aIgQ0NxrEdqEPrOCkNZ5Vg" base_Package="_BWooUBmMEdqvcs97umGEYQ" nsPrefix="uml" nsURI="http://schema.omg.org/spec/UML/2.1/uml.xml"/>
</xmi:XMI>
diff --git a/plugins/org.eclipse.uml2.uml/model/L2.uml b/plugins/org.eclipse.uml2.uml/model/L2.uml
index b8ffb5fb..3a586cf1 100644
--- a/plugins/org.eclipse.uml2.uml/model/L2.uml
+++ b/plugins/org.eclipse.uml2.uml/model/L2.uml
@@ -53,5 +53,5 @@
<appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
</profileApplication>
</uml:Model>
- <Ecore:EPackage xmi:id="_bD4YAMWCEdqI1bY5Lwi8Hg" base_Package="_CTvJwBmMEdqvcs97umGEYQ" nsPrefix="uml" nsURI="http://schema.omg.org/spec/UML/2.1/uml.xml"/>
+ <Ecore:EPackage xmi:id="_bS3LINxrEdqEPrOCkNZ5Vg" base_Package="_CTvJwBmMEdqvcs97umGEYQ" nsPrefix="uml" nsURI="http://schema.omg.org/spec/UML/2.1/uml.xml"/>
</xmi:XMI>
diff --git a/plugins/org.eclipse.uml2.uml/model/L3.uml b/plugins/org.eclipse.uml2.uml/model/L3.uml
index ce0a0cf6..58f04f0d 100644
--- a/plugins/org.eclipse.uml2.uml/model/L3.uml
+++ b/plugins/org.eclipse.uml2.uml/model/L3.uml
@@ -53,5 +53,5 @@
<appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
</profileApplication>
</uml:Model>
- <Ecore:EPackage xmi:id="_XnyroMWCEdqI1bY5Lwi8Hg" base_Package="_EBtHcBmMEdqvcs97umGEYQ" nsPrefix="uml" nsURI="http://schema.omg.org/spec/UML/2.1/uml.xml"/>
+ <Ecore:EPackage xmi:id="_eHw7sNxrEdqEPrOCkNZ5Vg" base_Package="_EBtHcBmMEdqvcs97umGEYQ" nsPrefix="uml" nsURI="http://schema.omg.org/spec/UML/2.1/uml.xml"/>
</xmi:XMI>
diff --git a/plugins/org.eclipse.uml2.uml/model/Superstructure.uml b/plugins/org.eclipse.uml2.uml/model/Superstructure.uml
index ebb1def1..6af16aad 100644
--- a/plugins/org.eclipse.uml2.uml/model/Superstructure.uml
+++ b/plugins/org.eclipse.uml2.uml/model/Superstructure.uml
@@ -259,8 +259,7 @@
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3D03F9C80242" name="LinkEndData">
<ownedComment xmi:type="uml:Comment" xmi:id="_srW13hTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D03F9C80242">
- <body>LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.
-
+ <body>LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_srW15hTaEdqZu-3Jy1-uYg" name="qualifiers" constrainedElement="_3ADC7B74022D3D03F9C80242">
@@ -708,8 +707,7 @@
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sss5oxTaEdqZu-3Jy1-uYg" name="multiplicity_of_result" constrainedElement="_3ADC7B74022D40F19F8103B3">
<ownedComment xmi:type="uml:Comment" xmi:id="_ssjIyBTaEdqZu-3Jy1-uYg" annotatedElement="_sss5oxTaEdqZu-3Jy1-uYg">
- <body>The multiplicity of each result output pin must be compatible with the multiplicity of the corresponding structural features of the unmarshall classifier.
-
+ <body>The multiplicity of each result output pin must be compatible with the multiplicity of the corresponding structural features of the unmarshall classifier.&#xD;
</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_sss5pBTaEdqZu-3Jy1-uYg">
@@ -1204,8 +1202,7 @@
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3DF40A55039C" general="_3ADC7B74022D3DF3DB6F036B"/>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D395CFBA10125" name="result" type="_3ADC7B74022D384B2387039A" aggregation="composite" subsettedProperty="_3ADC7B74022D3D716DC100E9" association="_3ADC7B74022D395CFBA0032C">
<ownedComment xmi:type="uml:Comment" xmi:id="_sw3oDRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D395CFBA10125">
- <body>Gives the output pin on which the hosting object is placed.
-
+ <body>Gives the output pin on which the hosting object is placed.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sw3oERTaEdqZu-3Jy1-uYg" value="1"/>
@@ -1271,8 +1268,7 @@
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D38DC073A03E2" name="object" type="_3ADC7B74022D384B237E021A" aggregation="composite" subsettedProperty="_3ADC7B74022D3D716DF5031E" association="_3ADC7B74022D38DC073A0161">
<ownedComment xmi:type="uml:Comment" xmi:id="_sxBY-hTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D38DC073A03E2">
- <body>Gives the input pin from which the object whose structural feature is to be read or written is obtained.
-
+ <body>Gives the input pin from which the object whose structural feature is to be read or written is obtained.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sxBY_hTaEdqZu-3Jy1-uYg" value="1"/>
@@ -1349,18 +1345,14 @@
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3A7870670003" name="RemoveStructuralFeatureValueAction">
<ownedComment xmi:type="uml:Comment" xmi:id="_svYaMBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3A7870670003">
- <body>The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.
-
-
-
-Structural features are potentially multi-valued and ordered, and may support duplicates, so the action supports specification of removal points for new values. It also supports the removal of all duplicate values.
-
+ <body>The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.&#xD;
+&#xD;
+Structural features are potentially multi-valued and ordered, and may support duplicates, so the action supports specification of removal points for new values. It also supports the removal of all duplicate values.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_svYaORTaEdqZu-3Jy1-uYg" name="non_unique_removal" constrainedElement="_3ADC7B74022D3A7870670003">
<ownedComment xmi:type="uml:Comment" xmi:id="_svYaNRTaEdqZu-3Jy1-uYg" annotatedElement="_svYaORTaEdqZu-3Jy1-uYg">
- <body>Actions removing a value from ordered nonunique structural features must have a single removeAt input pin if isRemoveDuplicates is false. It must be of type Unlimited Natural with multiplicity 1..1. Otherwise, the action has no removeAt input pin.
-
+ <body>Actions removing a value from ordered nonunique structural features must have a single removeAt input pin if isRemoveDuplicates is false. It must be of type Unlimited Natural with multiplicity 1..1. Otherwise, the action has no removeAt input pin.&#xD;
</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_svYaOhTaEdqZu-3Jy1-uYg">
@@ -1386,12 +1378,9 @@ Structural features are potentially multi-valued and ordered, and may support du
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3A787176007B" name="AddStructuralFeatureValueAction">
<ownedComment xmi:type="uml:Comment" xmi:id="_svYaQxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3A787176007B">
- <body>Structural Features are potentially multi-valued and ordered, so the action supports specification of insertion points for new values. It also supports the removal of existing values of the structural feature before the new value is added.
-
-
-
-The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.
-
+ <body>Structural Features are potentially multi-valued and ordered, so the action supports specification of insertion points for new values. It also supports the removal of existing values of the structural feature before the new value is added.&#xD;
+&#xD;
+The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_svYaTBTaEdqZu-3Jy1-uYg" name="unlimited_natural_and_multiplicity" constrainedElement="_3ADC7B74022D3A787176007B">
@@ -1527,7 +1516,7 @@ The object to access is specified dynamically, by referring to an input pin on w
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D395CD503027E" name="ReadLinkAction">
<ownedComment xmi:type="uml:Comment" xmi:id="_sv1GIRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D395CD503027E">
- <body>This action navigates an association towards one end, which is the end that does not have an input pin to take its object (the “open” end). The objects put on the result output pin are the ones participating in the association at the open end, conforming to the specified qualifiers, in order if the end is ordered. The semantics is undefined for reading a link that violates the navigability or visibility of the open end.</body>
+ <body>This action navigates an association towards one end, which is the end that does not have an input pin to take its object (the open end). The objects put on the result output pin are the ones participating in the association at the open end, conforming to the specified qualifiers, in order if the end is ordered. The semantics is undefined for reading a link that violates the navigability or visibility of the open end.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sv1GKhTaEdqZu-3Jy1-uYg" name="one_open_end" constrainedElement="_3ADC7B74022D395CD503027E">
<ownedComment xmi:type="uml:Comment" xmi:id="_sv1GJhTaEdqZu-3Jy1-uYg" annotatedElement="_sv1GKhTaEdqZu-3Jy1-uYg">
@@ -1577,8 +1566,7 @@ The object to access is specified dynamically, by referring to an input pin on w
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D395CD51203AC" general="_3ADC7B74022D38DC038F0193"/>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D395CD52102DB" name="result" type="_3ADC7B74022D384B2387039A" aggregation="composite" subsettedProperty="_3ADC7B74022D3D716DC100E9" association="_3ADC7B74022D395CD521012D">
<ownedComment xmi:type="uml:Comment" xmi:id="_sxUT8xTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D395CD52102DB">
- <body>The pin on which are put the objects participating in the association at the end not specified by the inputs.
-
+ <body>The pin on which are put the objects participating in the association at the end not specified by the inputs.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sxUT9xTaEdqZu-3Jy1-uYg" value="1"/>
@@ -1587,10 +1575,8 @@ The object to access is specified dynamically, by referring to an input pin on w
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D393AD8B602EE" name="LinkEndCreationData">
<ownedComment xmi:type="uml:Comment" xmi:id="_sv-3OxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D393AD8B602EE">
- <body>This class is required when using CreateLinkAction, to specify insertion points for ordered ends and for replacing all links at end. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, as required. This requires more than one piece of data, namely, the statically-specified end in the user model, the object on the end, and the qualifier values for that end. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.
-
-
-
+ <body>This class is required when using CreateLinkAction, to specify insertion points for ordered ends and for replacing all links at end. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, as required. This requires more than one piece of data, namely, the statically-specified end in the user model, the object on the end, and the qualifier values for that end. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xD;
+&#xD;
Qualifier values are used in CompleteActions to identify links to create.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sv-3RBTaEdqZu-3Jy1-uYg" name="create_link_action" constrainedElement="_3ADC7B74022D393AD8B602EE">
@@ -1629,8 +1615,7 @@ Qualifier values are used in CompleteActions to identify links to create.</body>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3745C9F20140" name="CreateLinkAction">
<ownedComment xmi:type="uml:Comment" xmi:id="_swIBHxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3745C9F20140">
- <body>This action can be used to create links and link objects. There is no return value in either case. This is so that no change of the action is required if the association is changed to an association class or vice versa. CreateLinkAction uses a specialization of LinkEndData called LinkEndCreationData, to support ordered associations. The insertion point is specified at runtime by an additional input pin, which is required for ordered association ends and omitted for unordered ends. The insertion point is a positive integer giving the position to insert the link, or unlimited, to insert at the end. Reinserting an existing end at a new position in an ordered unique structural feature moves the end to that position. CreateLinkAction also uses LinkEndCreationData to support the destruction of existing links of the association that connect any of the objects of the new link. When the link is created, this option is available on an end-by-end basis, and causes all links of the association emanating from the
-
+ <body>This action can be used to create links and link objects. There is no return value in either case. This is so that no change of the action is required if the association is changed to an association class or vice versa. CreateLinkAction uses a specialization of LinkEndData called LinkEndCreationData, to support ordered associations. The insertion point is specified at runtime by an additional input pin, which is required for ordered association ends and omitted for unordered ends. The insertion point is a positive integer giving the position to insert the link, or unlimited, to insert at the end. Reinserting an existing end at a new position in an ordered unique structural feature moves the end to that position. CreateLinkAction also uses LinkEndCreationData to support the destruction of existing links of the association that connect any of the objects of the new link. When the link is created, this option is available on an end-by-end basis, and causes all links of the association emanating from the &#xD;
specified ends to be destroyed before the new link is created.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_swIBKBTaEdqZu-3Jy1-uYg" name="association_not_abstract" constrainedElement="_3ADC7B74022D3745C9F20140">
@@ -1653,16 +1638,11 @@ specified ends to be destroyed before the new link is created.</body>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3745CA190280" name="DestroyLinkAction">
<ownedComment xmi:type="uml:Comment" xmi:id="_swIBLRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3745CA190280">
- <body>This action destroys a link or a link object. Link objects can also be destroyed with DestroyObjectAction. The link is specified in the same way as link creation, even for link objects. This allows actions to remain unchanged when their associations are transformed from ordinary ones to association classes and vice versa.
-
-
-
-DestroyLinkAction uses a specialization of LinkEndData, called LinkEndDestructionData, to support ordered nonunique associations. The position of the link to be destroyed is specified at runtime by an additional input pin, which is required for ordered nonunique association ends and omitted for other kinds of ends. This is a positive integer giving the position of the link to destroy.
-
-
-
-DestroyLinkAction also uses LinkEndDestructionData to support the destruction of duplicate links of the association on ends that are nonunique. This option is available on an end-by-end basis, and causes all duplicate links of the association emanating from the specified ends to be destroyed.
-
+ <body>This action destroys a link or a link object. Link objects can also be destroyed with DestroyObjectAction. The link is specified in the same way as link creation, even for link objects. This allows actions to remain unchanged when their associations are transformed from ordinary ones to association classes and vice versa.&#xD;
+&#xD;
+DestroyLinkAction uses a specialization of LinkEndData, called LinkEndDestructionData, to support ordered nonunique associations. The position of the link to be destroyed is specified at runtime by an additional input pin, which is required for ordered nonunique association ends and omitted for other kinds of ends. This is a positive integer giving the position of the link to destroy.&#xD;
+&#xD;
+DestroyLinkAction also uses LinkEndDestructionData to support the destruction of duplicate links of the association on ends that are nonunique. This option is available on an end-by-end basis, and causes all duplicate links of the association emanating from the specified ends to be destroyed.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3907702E02A1" general="_3ADC7B74022D39076FFD0233"/>
@@ -1780,10 +1760,8 @@ DestroyLinkAction also uses LinkEndDestructionData to support the destruction of
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D40F9B109007B" name="LinkEndDestructionData">
<ownedComment xmi:type="uml:Comment" xmi:id="_swa8FhTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D40F9B109007B">
- <body>This class is required when using DestroyLinkAction, to specify links to destroy for nonunique ordered ends. A link cannot be passed as a runtime value to or from an action.
-
-
-
+ <body>This class is required when using DestroyLinkAction, to specify links to destroy for nonunique ordered ends. A link cannot be passed as a runtime value to or from an action.&#xD;
+&#xD;
Qualifier values are used in CompleteActions to identify links to destroy.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_swa8HxTaEdqZu-3Jy1-uYg" name="destroy_link_action" constrainedElement="_3ADC7B74022D40F9B109007B">
@@ -2170,10 +2148,8 @@ Qualifier values are used in CompleteActions to identify links to destroy.</body
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3DF12EFA009C" general="_3ADC7B74022D3DF129D8035B"/>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3E54F8A40273" name="isSynchronous">
<ownedComment xmi:type="uml:Comment" xmi:id="_syzhqxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E54F8A40273">
- <body>If true, the call is synchronous and the caller waits for completion of the invoked behavior.
-
-If false, the call is asynchronous and the caller proceeds immediately and does not expect a return values.
-
+ <body>If true, the call is synchronous and the caller waits for completion of the invoked behavior.&#xD;
+If false, the call is asynchronous and the caller proceeds immediately and does not expect a return values.&#xD;
</body>
</ownedComment>
<type xmi:type="uml:PrimitiveType" href="Infrastructure.uml#_3ADC7B74022D3CA010AC0090"/>
@@ -2249,8 +2225,7 @@ If false, the call is asynchronous and the caller proceeds immediately and does
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_szHDoxTaEdqZu-3Jy1-uYg" name="type_ordering_multiplicity" constrainedElement="_3ADC7B74022D3AA6D36700D2">
<ownedComment xmi:type="uml:Comment" xmi:id="_sy9StRTaEdqZu-3Jy1-uYg" annotatedElement="_szHDoxTaEdqZu-3Jy1-uYg">
- <body>The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding owned parameter of the operation.
-
+ <body>The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding owned parameter of the operation.&#xD;
</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_szHDpBTaEdqZu-3Jy1-uYg">
@@ -2307,8 +2282,7 @@ If false, the call is asynchronous and the caller proceeds immediately and does
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_szQNkxTaEdqZu-3Jy1-uYg" name="type_ordering_multiplicity" constrainedElement="_3ADC7B74022D3CB5CA3200A1">
<ownedComment xmi:type="uml:Comment" xmi:id="_szHDyBTaEdqZu-3Jy1-uYg" annotatedElement="_szQNkxTaEdqZu-3Jy1-uYg">
- <body>The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding parameter of the behavior.
-
+ <body>The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding parameter of the behavior.&#xD;
</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_szQNlBTaEdqZu-3Jy1-uYg">
@@ -2805,8 +2779,7 @@ If false, the call is asynchronous and the caller proceeds immediately and does
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_r3phARTaEdqZu-3Jy1-uYg" name="compatible_types" constrainedElement="_3ADC7B74022D3B72DADB0283">
<ownedComment xmi:type="uml:Comment" xmi:id="_r3pg_RTaEdqZu-3Jy1-uYg" annotatedElement="_r3phARTaEdqZu-3Jy1-uYg">
- <body>Object nodes connected by an object flow, with optionally intervening control nodes, must have compatible types. In particular, the downstream object node type must be the same or a supertype of the upstream object node type.
-
+ <body>Object nodes connected by an object flow, with optionally intervening control nodes, must have compatible types. In particular, the downstream object node type must be the same or a supertype of the upstream object node type.&#xD;
</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_r3phAhTaEdqZu-3Jy1-uYg">
@@ -2857,10 +2830,8 @@ If false, the call is asynchronous and the caller proceeds immediately and does
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3C7C22F8028E" name="ActivityGroup" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_r3zSBRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3C7C22F8028E">
- <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.
-
-They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.
-
+ <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.&#xD;
+They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_r3zSDRTaEdqZu-3Jy1-uYg" name="nodes_and_edges" constrainedElement="_3ADC7B74022D3C7C22F8028E">
@@ -2931,8 +2902,7 @@ They have no inherent semantics and can be used for various purposes. Subclasses
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_r4GM7BTaEdqZu-3Jy1-uYg" name="no_incoming_edges" constrainedElement="_3ADC7B74022D3DF4B90C0266">
<ownedComment xmi:type="uml:Comment" xmi:id="_r4GM6BTaEdqZu-3Jy1-uYg" annotatedElement="_r4GM7BTaEdqZu-3Jy1-uYg">
- <body>Activity parameter object nodes with no incoming edges and one or more outgoing edges must have a parameter with in or inout direction.
-
+ <body>Activity parameter object nodes with no incoming edges and one or more outgoing edges must have a parameter with in or inout direction.&#xD;
</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_r4GM7RTaEdqZu-3Jy1-uYg">
@@ -2942,8 +2912,7 @@ They have no inherent semantics and can be used for various purposes. Subclasses
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_r4GM9RTaEdqZu-3Jy1-uYg" name="no_outgoing_edges" constrainedElement="_3ADC7B74022D3DF4B90C0266">
<ownedComment xmi:type="uml:Comment" xmi:id="_r4GM8RTaEdqZu-3Jy1-uYg" annotatedElement="_r4GM9RTaEdqZu-3Jy1-uYg">
- <body>Activity parameter object nodes with no outgoing edges and one or more incoming edges must have a parameter with out, inout, or return direction.
-
+ <body>Activity parameter object nodes with no outgoing edges and one or more incoming edges must have a parameter with out, inout, or return direction.&#xD;
</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_r4GM9hTaEdqZu-3Jy1-uYg">
@@ -3004,22 +2973,14 @@ They have no inherent semantics and can be used for various purposes. Subclasses
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D410D113D0024" name="Activity">
<ownedComment xmi:type="uml:Comment" xmi:id="_r4P95hTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D410D113D0024">
- <body>An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked.
-
-
-
-Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:
-
-- occurrences of primitive functions, such as arithmetic functions.
-
-- invocations of behavior, such as activities.
-
-- communication actions, such as sending of signals.
-
-- manipulations of objects, such as reading or writing attributes or associations.
-
-
-
+ <body>An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked. &#xD;
+&#xD;
+Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:&#xD;
+- occurrences of primitive functions, such as arithmetic functions.&#xD;
+- invocations of behavior, such as activities.&#xD;
+- communication actions, such as sending of signals.&#xD;
+- manipulations of objects, such as reading or writing attributes or associations.&#xD;
+&#xD;
Actions have no further decomposition in the activity containing them. However, the execution of a single action may induce the execution of many other actions. For example, a call action invokes an operation which is implemented by an activity containing actions that execute before the call action completes.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_r4P97xTaEdqZu-3Jy1-uYg" name="activity_parameter_node" constrainedElement="_3ADC7B74022D410D113D0024">
@@ -3352,10 +3313,8 @@ Actions have no further decomposition in the activity containing them. However,
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D41B9C8DC02E1" name="ActivityGroup" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_r5vLshTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D41B9C8DC02E1">
- <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.
-
-They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.
-
+ <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.&#xD;
+They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.&#xD;
</body>
</ownedComment>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D41B9A15A02F4" name="containedNode" type="_3ADC7B74022D3E82C8060069" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_3ADC7B74022D41B9A15A00DF">
@@ -3380,22 +3339,14 @@ They have no inherent semantics and can be used for various purposes. Subclasses
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_TCCGEDdnEdqq1tCaRkgBQQ" name="Activity">
<ownedComment xmi:type="uml:Comment" xmi:id="_YOSBIDdqEdqq1tCaRkgBQQ" annotatedElement="_TCCGEDdnEdqq1tCaRkgBQQ">
- <body>An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked.
-
-
-
-Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:
-
-- occurrences of primitive functions, such as arithmetic functions.
-
-- invocations of behavior, such as activities.
-
-- communication actions, such as sending of signals.
-
-- manipulations of objects, such as reading or writing attributes or associations.
-
-
-
+ <body>An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked. &#xD;
+&#xD;
+Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:&#xD;
+- occurrences of primitive functions, such as arithmetic functions.&#xD;
+- invocations of behavior, such as activities.&#xD;
+- communication actions, such as sending of signals.&#xD;
+- manipulations of objects, such as reading or writing attributes or associations.&#xD;
+&#xD;
Actions have no further decomposition in the activity containing them. However, the execution of a single action may induce the execution of many other actions. For example, a call action invokes an operation which is implemented by an activity containing actions that execute before the call action completes.</body>
</ownedComment>
<ownedAttribute xmi:type="uml:Property" xmi:id="_XFxBQTdnEdqq1tCaRkgBQQ" name="partition" type="_3ADC7B74022D337DA4DE0212" subsettedProperty="_f58-QTdoEdqq1tCaRkgBQQ" association="_XFxBQDdnEdqq1tCaRkgBQQ">
@@ -3475,7 +3426,7 @@ Actions have no further decomposition in the activity containing them. However,
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_r6ojhRTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>(self.incoming.select(e | e.isTypeOf(ObjectFlow)->notEmpty() implies&#xA;&#xA; self.outgoing.isTypeOf(ObjectFlow)) and&#xA;&#xA; (self.incoming.select(e | e.isTypeOf(ObjectFlow)->empty() implies&#xA;&#xA; self.outgoing.isTypeOf(ControlFlow))</body>
+ <body>(self.incoming.select(e | e.isTypeOf(ObjectFlow)->notEmpty() implies&#xD;&#xA; self.outgoing.isTypeOf(ObjectFlow)) and&#xD;&#xA; (self.incoming.select(e | e.isTypeOf(ObjectFlow)->empty() implies&#xD;&#xA; self.outgoing.isTypeOf(ControlFlow))</body>
</specification>
</ownedRule>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D41B0C4E70337" general="_3ADC7B74022D3B72D6550115"/>
@@ -3600,10 +3551,8 @@ Actions have no further decomposition in the activity containing them. However,
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3D027FAE021D" name="ObjectNode" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_r67ehhTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D027FAE021D">
- <body>An object node is an activity node that indicates an instance of a particular classifier, possibly in a particular state, may be available at a particular point in the activity. Object nodes can be used in a variety of ways, depending on where objects are flowing from and to, as described in the semantics section.
-
-Complete object nodes add support for token selection, limitation on the number of tokens, specifying the state required for tokens, and carrying control values.
-
+ <body>An object node is an activity node that indicates an instance of a particular classifier, possibly in a particular state, may be available at a particular point in the activity. Object nodes can be used in a variety of ways, depending on where objects are flowing from and to, as described in the semantics section.&#xD;
+Complete object nodes add support for token selection, limitation on the number of tokens, specifying the state required for tokens, and carrying control values.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_r7FPgRTaEdqZu-3Jy1-uYg" name="selection_behavior" constrainedElement="_3ADC7B74022D3D027FAE021D">
@@ -3709,22 +3658,14 @@ Complete object nodes add support for token selection, limitation on the number
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DF2911C0251" name="Activity">
<ownedComment xmi:type="uml:Comment" xmi:id="_r7YKYRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DF2911C0251">
- <body>An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked.
-
-
-
-Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:
-
-- occurrences of primitive functions, such as arithmetic functions.
-
-- invocations of behavior, such as activities.
-
-- communication actions, such as sending of signals.
-
-- manipulations of objects, such as reading or writing attributes or associations.
-
-
-
+ <body>An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked. &#xD;
+&#xD;
+Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:&#xD;
+- occurrences of primitive functions, such as arithmetic functions.&#xD;
+- invocations of behavior, such as activities.&#xD;
+- communication actions, such as sending of signals.&#xD;
+- manipulations of objects, such as reading or writing attributes or associations.&#xD;
+&#xD;
Actions have no further decomposition in the activity containing them. However, the execution of a single action may induce the execution of many other actions. For example, a call action invokes an operation which is implemented by an activity containing actions that execute before the call action completes.</body>
</ownedComment>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3DF291A30186" name="isSingleExecution">
@@ -3830,8 +3771,7 @@ Actions have no further decomposition in the activity containing them. However,
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_r-Nb_RTaEdqZu-3Jy1-uYg" name="interrupting_edges" constrainedElement="_3ADC7B74022D3E00BB3F010F">
<ownedComment xmi:type="uml:Comment" xmi:id="_r-Nb-RTaEdqZu-3Jy1-uYg" annotatedElement="_r-Nb_RTaEdqZu-3Jy1-uYg">
- <body>Interrupting edges of a region must have their source node in the region and their target node outside the region in the same activity containing the region.
-
+ <body>Interrupting edges of a region must have their source node in the region and their target node outside the region in the same activity containing the region.&#xD;
</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_r-Nb_hTaEdqZu-3Jy1-uYg">
@@ -3924,10 +3864,8 @@ Actions have no further decomposition in the activity containing them. However,
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D41BDACBB01D3" name="ActivityGroup" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_r-Wl9hTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D41BDACBB01D3">
- <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.
-
-They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.
-
+ <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.&#xD;
+They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.&#xD;
</body>
</ownedComment>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D41BDACD9026C" name="containedNode" type="_3ADC7B74022D3E00BBF703BC" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_3ADC7B74022D41BDACD802CF">
@@ -4032,12 +3970,9 @@ They have no inherent semantics and can be used for various purposes. Subclasses
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_GzRZ4RTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D410D001C03C2"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D380F459F0348" name="Variable">
<ownedComment xmi:type="uml:Comment" xmi:id="_r_i4uRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D380F459F0348">
- <body>A variable specifies data storage shared by the actions within a group. There are actions to write and read variables. These actions are treated as side effecting actions, similar to the actions to write and read object attributes and associations. There are no sequencing constraints among actions that access the same variable. Such actions must be explicitly coordinated by control flows or other constraints.
-
-
-
-Any values contained by a variable must conform to the type of the variable and have cardinalities allowed by the multiplicity of the variable.
-
+ <body>A variable specifies data storage shared by the actions within a group. There are actions to write and read variables. These actions are treated as side effecting actions, similar to the actions to write and read object attributes and associations. There are no sequencing constraints among actions that access the same variable. Such actions must be explicitly coordinated by control flows or other constraints.&#xD;
+&#xD;
+Any values contained by a variable must conform to the type of the variable and have cardinalities allowed by the multiplicity of the variable.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_r_sptBTaEdqZu-3Jy1-uYg" name="owned" constrainedElement="_3ADC7B74022D380F459F0348">
@@ -4067,8 +4002,7 @@ Any values contained by a variable must conform to the type of the variable and
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_3ADC7B74022D4300AD92009C" name="isAccessibleBy" isQuery="true" bodyCondition="_r_spvhTaEdqZu-3Jy1-uYg">
<ownedComment xmi:type="uml:Comment" xmi:id="_r_spuRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D4300AD92009C">
- <body>The isAccessibleBy() operation is not defined in standard UML. Implementations should define it to specify which actions can access a variable.
-
+ <body>The isAccessibleBy() operation is not defined in standard UML. Implementations should define it to specify which actions can access a variable.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_r_spvhTaEdqZu-3Jy1-uYg" name="spec" constrainedElement="_3ADC7B74022D4300AD92009C">
@@ -4085,12 +4019,9 @@ Any values contained by a variable must conform to the type of the variable and
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DF29688033C" name="StructuredActivityNode">
<ownedComment xmi:type="uml:Comment" xmi:id="_r_spwxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DF29688033C">
- <body>A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins when merged with CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.
-
-
-
-Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.
-
+ <body>A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins when merged with CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.&#xD;
+&#xD;
+Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3DF296E300AB" general="_3ADC7B74022D41BCC7B10055"/>
@@ -4120,18 +4051,12 @@ Note - Any required isolation may be achieved using a locking mechanisms, or it
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DF2982700FA" name="ConditionalNode">
<ownedComment xmi:type="uml:Comment" xmi:id="_r_2asRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DF2982700FA">
- <body>A conditional node consists of one or more clauses. Each clause consists of a test section and a body section. When the conditional node begins execution, the test sections of the clauses are executed. If one or more test sections yield a true value, one of the corresponding body sections will be executed. If more than one test section yields a true value, only one body section will be executed. The choice is nondeterministic unless the test sequence of clauses is specified. If no test section yields a true value, then no body section is executed; this may be a semantic error if output values are expected from the conditional node.
-
-
-
-In general, test section may be executed in any order, including simultaneously (if the underlying execution architecture supports it). The result may therefore be nondeterministic if more than one test section can be true concurrently. To enforce ordering of evaluation, sequencing constraints may be specified among clauses. One frequent case is a total ordering of clauses, in which case the clause execution order is determinate. If it is impossible for more than one test section to evaluate true simultaneously, the result is deterministic and it is unnecessary to order the clauses, as ordering may impose undesirable and unnecessary restrictions on implementation. Note that, although evaluation of test sections may be specified as concurrent, this does not require that the implementation evaluate them in parallel; it merely means that the model does not impose any order on evaluation.
-
-
-
-An &quot;else&quot; clause is a clause that is a successor to all other clauses in the conditional and whose test part always returns true.
-
-
-
+ <body>A conditional node consists of one or more clauses. Each clause consists of a test section and a body section. When the conditional node begins execution, the test sections of the clauses are executed. If one or more test sections yield a true value, one of the corresponding body sections will be executed. If more than one test section yields a true value, only one body section will be executed. The choice is nondeterministic unless the test sequence of clauses is specified. If no test section yields a true value, then no body section is executed; this may be a semantic error if output values are expected from the conditional node.&#xD;
+&#xD;
+In general, test section may be executed in any order, including simultaneously (if the underlying execution architecture supports it). The result may therefore be nondeterministic if more than one test section can be true concurrently. To enforce ordering of evaluation, sequencing constraints may be specified among clauses. One frequent case is a total ordering of clauses, in which case the clause execution order is determinate. If it is impossible for more than one test section to evaluate true simultaneously, the result is deterministic and it is unnecessary to order the clauses, as ordering may impose undesirable and unnecessary restrictions on implementation. Note that, although evaluation of test sections may be specified as concurrent, this does not require that the implementation evaluate them in parallel; it merely means that the model does not impose any order on evaluation.&#xD;
+&#xD;
+An &quot;else&quot; clause is a clause that is a successor to all other clauses in the conditional and whose test part always returns true.&#xD;
+&#xD;
Output values created in the test or body section of a clause are potentially available for use outside the conditional. However, any value used outside the conditional must be created in every clause, otherwise an undefined value would be accessed if a clause not defining the value were executed.</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3DF298A400FA" general="_3ADC7B74022D3DF29688033C"/>
@@ -4258,22 +4183,14 @@ If false, the body is executed once before the test is performed.
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3E82C61F002C" name="Activity">
<ownedComment xmi:type="uml:Comment" xmi:id="_r__kpBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E82C61F002C">
- <body>An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked.
-
-
-
-Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:
-
-- occurrences of primitive functions, such as arithmetic functions.
-
-- invocations of behavior, such as activities.
-
-- communication actions, such as sending of signals.
-
-- manipulations of objects, such as reading or writing attributes or associations.
-
-
-
+ <body>An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked. &#xD;
+&#xD;
+Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:&#xD;
+- occurrences of primitive functions, such as arithmetic functions.&#xD;
+- invocations of behavior, such as activities.&#xD;
+- communication actions, such as sending of signals.&#xD;
+- manipulations of objects, such as reading or writing attributes or associations.&#xD;
+&#xD;
Actions have no further decomposition in the activity containing them. However, the execution of a single action may induce the execution of many other actions. For example, a call action invokes an operation which is implemented by an activity containing actions that execute before the call action completes.</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D41B8AF8E0041" general="_3ADC7B74022D3B9A6F4F0008"/>
@@ -4369,10 +4286,8 @@ Actions have no further decomposition in the activity containing them. However,
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D41BCC7B10055" name="ActivityGroup" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_sATGpBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D41BCC7B10055">
- <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.
-
-They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.
-
+ <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.&#xD;
+They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D41BD95D60199" general="_3ADC7B74022D3CAAEC0D0176"/>
@@ -4495,18 +4410,12 @@ They have no inherent semantics and can be used for various purposes. Subclasses
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DF29BFE01A5" name="ExpansionRegion">
<ownedComment xmi:type="uml:Comment" xmi:id="_sByUZhTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DF29BFE01A5">
- <body>An expansion region is a strictly nested region of an activity with explicit input and outputs (modeled as ExpansionNodes). Each input is a collection of values. If there are multiple inputs, each of them must hold the same kind of collection, although the types of the elements in the different collections may vary. The expansion region is executed once for each element (or position) in the input collection.
-
-
-
-The number of output collections can differ from the number of input collections. On each execution of the region, an output value from the region is inserted into an output collection at the same position as the input elements. If the region execution ends with no output, then nothing is added to the output collection. When this happens the output collection will not have the same number of elements as the input collections, the region acts as a filter. If all the executions provide an output to the collection, then the output collections will have the same number of elements as the input collections.
-
-
-
-The inputs and outputs to an expansion region are modeled as ExpansionNodes. From &quot;outside&quot; of the region, the values on these nodes appear as collections. From &quot;inside&quot; the region the values appear as elements of the collections. Object flow edges connect pins outside the region to input and output expansion nodes as collections. Object flow edges connect pins inside the region to input and output expansion nodes as individual elements. From the inside of the region, these nodes are visible as individual values. If an expansion node has a name, it is the name of the individual element within the region.
-
-
-
+ <body>An expansion region is a strictly nested region of an activity with explicit input and outputs (modeled as ExpansionNodes). Each input is a collection of values. If there are multiple inputs, each of them must hold the same kind of collection, although the types of the elements in the different collections may vary. The expansion region is executed once for each element (or position) in the input collection.&#xD;
+&#xD;
+The number of output collections can differ from the number of input collections. On each execution of the region, an output value from the region is inserted into an output collection at the same position as the input elements. If the region execution ends with no output, then nothing is added to the output collection. When this happens the output collection will not have the same number of elements as the input collections, the region acts as a filter. If all the executions provide an output to the collection, then the output collections will have the same number of elements as the input collections.&#xD;
+&#xD;
+The inputs and outputs to an expansion region are modeled as ExpansionNodes. From &quot;outside&quot; of the region, the values on these nodes appear as collections. From &quot;inside&quot; the region the values appear as elements of the collections. Object flow edges connect pins outside the region to input and output expansion nodes as collections. Object flow edges connect pins inside the region to input and output expansion nodes as individual elements. From the inside of the region, these nodes are visible as individual values. If an expansion node has a name, it is the name of the individual element within the region.&#xD;
+&#xD;
Any object flow edges that cross the boundary of the region, without passing through expansion nodes, provide values that are fixed within the different executions of the region.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sByUbxTaEdqZu-3Jy1-uYg" name="expansion_nodes" constrainedElement="_3ADC7B74022D3DF29BFE01A5">
@@ -4521,14 +4430,10 @@ Any object flow edges that cross the boundary of the region, without passing thr
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3DF29C26008C" general="_3ADC7B74022D3DF29688033C"/>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3DF29D1D0167" name="mode" type="_3ADC7B74022D3DF29C100119">
<ownedComment xmi:type="uml:Comment" xmi:id="_sByUdBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DF29D1D0167">
- <body>The way in which the executions interact:
-
-parallel: all interactions are independent
-
-iterative: the interactions occur in order of the elements
-
-stream: a stream of values flows into a single execution
-
+ <body>The way in which the executions interact:&#xD;
+parallel: all interactions are independent&#xD;
+iterative: the interactions occur in order of the elements&#xD;
+stream: a stream of values flows into a single execution&#xD;
</body>
</ownedComment>
<defaultValue xmi:type="uml:InstanceValue" xmi:id="_w1h48GgYEdqfYrlcy8iLFA" type="_3ADC7B74022D3DF29C100119" instance="_3ADC7B74022D3DF29CF3006D"/>
@@ -4671,18 +4576,12 @@ stream: a stream of values flows into a single execution
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_G1p_ghTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D3DF124E700CB"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DF41CE2026E" name="ConditionalNode">
<ownedComment xmi:type="uml:Comment" xmi:id="_sCh7SBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DF41CE2026E">
- <body>A conditional node consists of one or more clauses. Each clause consists of a test section and a body section. When the conditional node begins execution, the test sections of the clauses are executed. If one or more test sections yield a true value, one of the corresponding body sections will be executed. If more than one test section yields a true value, only one body section will be executed. The choice is nondeterministic unless the test sequence of clauses is specified. If no test section yields a true value, then no body section is executed; this may be a semantic error if output values are expected from the conditional node.
-
-
-
-In general, test section may be executed in any order, including simultaneously (if the underlying execution architecture supports it). The result may therefore be nondeterministic if more than one test section can be true concurrently. To enforce ordering of evaluation, sequencing constraints may be specified among clauses. One frequent case is a total ordering of clauses, in which case the clause execution order is determinate. If it is impossible for more than one test section to evaluate true simultaneously, the result is deterministic and it is unnecessary to order the clauses, as ordering may impose undesirable and unnecessary restrictions on implementation. Note that, although evaluation of test sections may be specified as concurrent, this does not require that the implementation evaluate them in parallel; it merely means that the model does not impose any order on evaluation.
-
-
-
-An &quot;else&quot; clause is a clause that is a successor to all other clauses in the conditional and whose test part always returns true.
-
-
-
+ <body>A conditional node consists of one or more clauses. Each clause consists of a test section and a body section. When the conditional node begins execution, the test sections of the clauses are executed. If one or more test sections yield a true value, one of the corresponding body sections will be executed. If more than one test section yields a true value, only one body section will be executed. The choice is nondeterministic unless the test sequence of clauses is specified. If no test section yields a true value, then no body section is executed; this may be a semantic error if output values are expected from the conditional node.&#xD;
+&#xD;
+In general, test section may be executed in any order, including simultaneously (if the underlying execution architecture supports it). The result may therefore be nondeterministic if more than one test section can be true concurrently. To enforce ordering of evaluation, sequencing constraints may be specified among clauses. One frequent case is a total ordering of clauses, in which case the clause execution order is determinate. If it is impossible for more than one test section to evaluate true simultaneously, the result is deterministic and it is unnecessary to order the clauses, as ordering may impose undesirable and unnecessary restrictions on implementation. Note that, although evaluation of test sections may be specified as concurrent, this does not require that the implementation evaluate them in parallel; it merely means that the model does not impose any order on evaluation.&#xD;
+&#xD;
+An &quot;else&quot; clause is a clause that is a successor to all other clauses in the conditional and whose test part always returns true.&#xD;
+&#xD;
Output values created in the test or body section of a clause are potentially available for use outside the conditional. However, any value used outside the conditional must be created in every clause, otherwise an undefined value would be accessed if a clause not defining the value were executed.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_XToE0DdsEdqq1tCaRkgBQQ" name="result_no_incoming" constrainedElement="_3ADC7B74022D3DF41CE2026E">
@@ -4705,16 +4604,11 @@ Output values created in the test or body section of a clause are potentially av
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DF42BDA0369" name="StructuredActivityNode">
<ownedComment xmi:type="uml:Comment" xmi:id="_sCh7TRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DF42BDA0369">
- <body>A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins in CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.
-
-
-
-Because of the concurrent nature of the execution of actions within and across activities, it can be difficult to guarantee the consistent access and modification of object memory. In order to avoid race conditions or other concurrency-related problems, it is sometimes necessary to isolate the effects of a group of actions from the effects of actions outside the group. This may be indicated by setting the mustIsolate attribute to true on a structured activity node. If a structured activity node is &quot;isolated,&quot; then any object used by an action within the node cannot be accessed by any action outside the node until the structured activity node as a whole completes. Any concurrent actions that would result in accessing such objects are required to have their execution deferred until the completion of the node.
-
-
-
-Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.
-
+ <body>A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins in CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.&#xD;
+&#xD;
+Because of the concurrent nature of the execution of actions within and across activities, it can be difficult to guarantee the consistent access and modification of object memory. In order to avoid race conditions or other concurrency-related problems, it is sometimes necessary to isolate the effects of a group of actions from the effects of actions outside the group. This may be indicated by setting the mustIsolate attribute to true on a structured activity node. If a structured activity node is &quot;isolated,&quot; then any object used by an action within the node cannot be accessed by any action outside the node until the structured activity node as a whole completes. Any concurrent actions that would result in accessing such objects are required to have their execution deferred until the completion of the node.&#xD;
+&#xD;
+Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sCh7VhTaEdqZu-3Jy1-uYg" name="edges" constrainedElement="_3ADC7B74022D3DF42BDA0369">
@@ -4857,10 +4751,8 @@ Note - Any required isolation may be achieved using a locking mechanisms, or it
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D41BDADCB01FC" name="ActivityGroup" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_sCrsWRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D41BDADCB01FC">
- <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.
-
-They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.
-
+ <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.&#xD;
+They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.&#xD;
</body>
</ownedComment>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D41BDADE90322" name="containedEdge" type="_3ADC7B74022D3E82C75A00F8" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_3ADC7B74022D41BDADE90032">
@@ -4921,22 +4813,14 @@ They have no inherent semantics and can be used for various purposes. Subclasses
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_G186cxTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D410C264F010C"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DF281CE00BB" name="Activity">
<ownedComment xmi:type="uml:Comment" xmi:id="_sDbTKxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DF281CE00BB">
- <body>An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked.
-
-
-
-Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:
-
-- occurrences of primitive functions, such as arithmetic functions.
-
-- invocations of behavior, such as activities.
-
-- communication actions, such as sending of signals.
-
-- manipulations of objects, such as reading or writing attributes or associations.
-
-
-
+ <body>An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked. &#xD;
+&#xD;
+Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:&#xD;
+- occurrences of primitive functions, such as arithmetic functions.&#xD;
+- invocations of behavior, such as activities.&#xD;
+- communication actions, such as sending of signals.&#xD;
+- manipulations of objects, such as reading or writing attributes or associations.&#xD;
+&#xD;
Actions have no further decomposition in the activity containing them. However, the execution of a single action may induce the execution of many other actions. For example, a call action invokes an operation which is implemented by an activity containing actions that execute before the call action completes.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_HIFVMDdqEdqq1tCaRkgBQQ" name="no_supergroups" constrainedElement="_3ADC7B74022D3DF281CE00BB">
@@ -4966,10 +4850,8 @@ Actions have no further decomposition in the activity containing them. However,
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D410D03520266" name="ActivityGroup" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_sDbTMBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D410D03520266">
- <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.
-
-They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.
-
+ <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.&#xD;
+They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D410D08D30226" general="_3ADC7B74022D3CAAEC0D0176"/>
@@ -5065,8 +4947,7 @@ They have no inherent semantics and can be used for various purposes. Subclasses
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_HQUiQhTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D3C9FD9B900CF"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3D0CE6480229" name="InformationItem">
<ownedComment xmi:type="uml:Comment" xmi:id="_skW19xTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D0CE6480229">
- <body>An information item is an abstraction of all kinds of information that can be exchanged between objects. It is a kind of classifier intended for representing information in a very abstract way, one which cannot be instantiated. One purpose of InformationItems is to be able to define preliminary models, before having made detailed modeling decisions on types or structures. One other purpose of information items and information flows is to abstract complex models by a less precise but more general representation of the information exchanged betwen entities of a system.
-
+ <body>An information item is an abstraction of all kinds of information that can be exchanged between objects. It is a kind of classifier intended for representing information in a very abstract way, one which cannot be instantiated. One purpose of InformationItems is to be able to define preliminary models, before having made detailed modeling decisions on types or structures. One other purpose of information items and information flows is to abstract complex models by a less precise but more general representation of the information exchanged betwen entities of a system.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_skW2ABTaEdqZu-3Jy1-uYg" name="sources_and_targets" constrainedElement="_3ADC7B74022D3D0CE6480229">
@@ -5075,7 +4956,7 @@ They have no inherent semantics and can be used for various purposes. Subclasses
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_skW2ARTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>(self.represented->select(p | p->oclIsKindOf(InformationItem))->forAll(p |&#xA;&#xA; p.informationFlow.source->forAll(q | self.informationFlow.source->include(q)) and&#xA;&#xA; p.informationFlow.target->forAll(q | self.informationFlow.target->include(q)))) and&#xA;&#xA; (self.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface) or&#xA;&#xA; oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component)))</body>
+ <body>(self.represented->select(p | p->oclIsKindOf(InformationItem))->forAll(p |&#xD;&#xA; p.informationFlow.source->forAll(q | self.informationFlow.source->include(q)) and&#xD;&#xA; p.informationFlow.target->forAll(q | self.informationFlow.target->include(q)))) and&#xD;&#xA; (self.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface) or&#xD;&#xA; oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component)))</body>
</specification>
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_skW2CRTaEdqZu-3Jy1-uYg" name="has_no" constrainedElement="_3ADC7B74022D3D0CE6480229">
@@ -5115,7 +4996,7 @@ They have no inherent semantics and can be used for various purposes. Subclasses
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_skf_8xTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>(self.source->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xA;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xA;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xA;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xA;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification))) and&#xA;&#xA; (self.target->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xA;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xA;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xA;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xA;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification)))</body>
+ <body>(self.source->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xD;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xD;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xD;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xD;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification))) and&#xD;&#xA; (self.target->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xD;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xD;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xD;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xD;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification)))</body>
</specification>
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_skf_-xTaEdqZu-3Jy1-uYg" name="must_conform" constrainedElement="_3ADC7B74022D3D0CE6480246">
@@ -5129,13 +5010,12 @@ They have no inherent semantics and can be used for various purposes. Subclasses
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_skgABBTaEdqZu-3Jy1-uYg" name="convey_classifiers" constrainedElement="_3ADC7B74022D3D0CE6480246">
<ownedComment xmi:type="uml:Comment" xmi:id="_skgAABTaEdqZu-3Jy1-uYg" annotatedElement="_skgABBTaEdqZu-3Jy1-uYg">
- <body>An information flow can only convey classifiers that are allowed to represent an information item.
-
+ <body>An information flow can only convey classifiers that are allowed to represent an information item.&#xD;
</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_skgABRTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>self.conveyed.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface)&#xA;&#xA; or oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component))</body>
+ <body>self.conveyed.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface)&#xD;&#xA; or oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component))</body>
</specification>
</ownedRule>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3DD3DD1A0288" general="_3ADC7B74022D3CAAEC1902BE"/>
@@ -5401,8 +5281,7 @@ define a collating sequence between operands and subexpressions).
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_3ADC7B74022D430B689101A4" name="stringValue" isQuery="true" redefinedOperation="_3ADC7B74022D4300DDFE009C" bodyCondition="_slZXxRTaEdqZu-3Jy1-uYg">
<ownedComment xmi:type="uml:Comment" xmi:id="_slZXwRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D430B689101A4">
- <body>The query stringValue() returns the string that concatenates, in order, all the component string literals of all the subexpressions that are part of the StringExpression.
-
+ <body>The query stringValue() returns the string that concatenates, in order, all the component string literals of all the subexpressions that are part of the StringExpression.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_slZXxRTaEdqZu-3Jy1-uYg" name="spec" constrainedElement="_3ADC7B74022D430B689101A4">
@@ -5555,10 +5434,8 @@ define a collating sequence between operands and subexpressions).
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3E3126A90208" name="ParameterableElement" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_sljI3xTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E3126A90208">
- <body>A ParameterableElement can be referenced by a TemplateParameter when defining a formal template parameter for a template. A ParameterableElement can be referenced by a TemplateParameterSubstitution when used as an actual parameter in a binding of a template.
-
-ParameterableElement is an abstract metaclass.
-
+ <body>A ParameterableElement can be referenced by a TemplateParameter when defining a formal template parameter for a template. A ParameterableElement can be referenced by a TemplateParameterSubstitution when used as an actual parameter in a binding of a template.&#xD;
+ParameterableElement is an abstract metaclass.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3E3746AB03BD" general="_3ADC7B74022D3CAAEC0D0176"/>
@@ -5616,15 +5493,14 @@ ParameterableElement is an abstract metaclass.
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_sohkShTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>(isAttribute(self) and (templateParameterSubstitution->notEmpty())&#xA;&#xA; implies (templateParameterSubstitution->forAll(ts | isAttribute(ts.formal)))</body>
+ <body>(isAttribute(self) and (templateParameterSubstitution->notEmpty())&#xD;&#xA; implies (templateParameterSubstitution->forAll(ts | isAttribute(ts.formal)))</body>
</specification>
</ownedRule>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3E33F5F100C8" general="_3ADC7B74022D3E3126A90208"/>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3E33F5F7009F" general="_3ADC7B74022D3E31269A001C"/>
<ownedOperation xmi:type="uml:Operation" xmi:id="_aNBzYGdaEdqCCpdUvbQY5w" name="isCompatibleWith" isQuery="true" redefinedOperation="_3ADC7B74022D4300AEC9029F" bodyCondition="_aNBzZGdaEdqCCpdUvbQY5w">
<ownedComment xmi:type="uml:Comment" xmi:id="_aNBzYWdaEdqCCpdUvbQY5w" annotatedElement="_aNBzYGdaEdqCCpdUvbQY5w">
- <body>The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for properties, the type must be conformant with the type of the specified parameterable element.
-
+ <body>The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for properties, the type must be conformant with the type of the specified parameterable element.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_aNBzZGdaEdqCCpdUvbQY5w" name="spec" constrainedElement="_aNBzYGdaEdqCCpdUvbQY5w">
@@ -5646,8 +5522,7 @@ ParameterableElement is an abstract metaclass.
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3E33F6170221" general="_3ADC7B74022D3E3126A90208"/>
<ownedOperation xmi:type="uml:Operation" xmi:id="_3ADC7B74022D430B6A2C0385" name="isCompatibleWith" isQuery="true" redefinedOperation="_3ADC7B74022D4300AEC9029F" bodyCondition="_sorVSRTaEdqZu-3Jy1-uYg">
<ownedComment xmi:type="uml:Comment" xmi:id="_sorVRBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D430B6A2C0385">
- <body>The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for ValueSpecification, the type must be conformant with the type of the specified parameterable element.
-
+ <body>The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for ValueSpecification, the type must be conformant with the type of the specified parameterable element.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sorVSRTaEdqZu-3Jy1-uYg" name="spec" constrainedElement="_3ADC7B74022D430B6A2C0385">
@@ -5834,10 +5709,8 @@ ParameterableElement is an abstract metaclass.
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3E4900540335" name="ConnectableElement" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_so-QRBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E4900540335">
- <body>ConnectableElement is the connectable element of a ConnectableElementTemplateParameter.
-
-The ConnectableElements attached as role to each ConnectorEnd owned by a Connector must be roles of the classifier that owned the Connector, or they must be ports of such roles.
-
+ <body>ConnectableElement is the connectable element of a ConnectableElementTemplateParameter.&#xD;
+The ConnectableElements attached as role to each ConnectorEnd owned by a Connector must be roles of the classifier that owned the Connector, or they must be ports of such roles. &#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3E4900700187" general="_3ADC7B74022D3E3126A90208"/>
@@ -6096,7 +5969,7 @@ The ConnectableElements attached as role to each ConnectorEnd owned by a Connect
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_sJ-nHhTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>(self.name->isEmpty() or self.allNamespaces()->select(ns | ns.name->isEmpty())->notEmpty())&#xA;&#xA; implies self.qualifiedName->isEmpty()</body>
+ <body>(self.name->isEmpty() or self.allNamespaces()->select(ns | ns.name->isEmpty())->notEmpty())&#xD;&#xA; implies self.qualifiedName->isEmpty()</body>
</specification>
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sKIYFxTaEdqZu-3Jy1-uYg" name="has_qualified_name" constrainedElement="_3ADC7B74022D3CAAECB901B0">
@@ -6208,10 +6081,8 @@ The ConnectableElements attached as role to each ConnectorEnd owned by a Connect
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAAF87D0107" name="OpaqueExpression">
<ownedComment xmi:type="uml:Comment" xmi:id="_sK3-8hTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAAF87D0107">
- <body>An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.
-
-One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.
-
+ <body>An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xD;
+One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_7a71wDdiEdqq1tCaRkgBQQ" name="language_body_size" constrainedElement="_3ADC7B74022D3CAAF87D0107">
@@ -6234,8 +6105,7 @@ One predefined language for specifying expressions is OCL. Natural language or p
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D41AF3484006A" name="language" isOrdered="true" aggregation="composite">
<ownedComment xmi:type="uml:Comment" xmi:id="_sXih-RTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D41AF3484006A">
- <body>Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the languages. If the languages are unspecified, they might be implicit from the expression body or the context. Languages are matched to body strings by order.
-
+ <body>Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the languages. If the languages are unspecified, they might be implicit from the expression body or the context. Languages are matched to body strings by order.&#xD;
</body>
</ownedComment>
<type xmi:type="uml:PrimitiveType" href="Infrastructure.uml#_3ADC7B74022D3CA010B103C3"/>
@@ -6489,8 +6359,7 @@ One predefined language for specifying expressions is OCL. Natural language or p
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAAED67023C" name="Constraint">
<ownedComment xmi:type="uml:Comment" xmi:id="_sLnl5hTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAAED67023C">
- <body>Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.
-
+ <body>Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.&#xD;
Constraint is a condition (a Boolean expression) that restricts the extension of the associated element beyond what is imposed by the other language constructs applied to that element. Constraint contains an optional name, although they are commonly unnamed.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sLnl7xTaEdqZu-3Jy1-uYg" name="boolean_value" constrainedElement="_3ADC7B74022D3CAAED67023C">
@@ -6828,10 +6697,8 @@ Constraint is a condition (a Boolean expression) that restricts the extension of
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAAFD3A006B" name="TypedElement" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_sMqHoBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAAFD3A006B">
- <body>A typed element is an element that has a type that serves as a constraint on the range of values the element can represent.
-
-Typed element is an abstract metaclass.
-
+ <body>A typed element is an element that has a type that serves as a constraint on the range of values the element can represent.&#xD;
+Typed element is an abstract metaclass.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3E1BF7D20048" general="_3ADC7B74022D3CAAECB901B0"/>
@@ -6845,12 +6712,9 @@ Typed element is an abstract metaclass.
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAAECE80199" name="Classifier" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_sMqHpRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAAECE80199">
- <body>A classifier is a namespace whose members can include features. Classifier is an abstract metaclass.
-
-A classifier is a type and can own generalizations, thereby making it possible to define generalization relationships to other classifiers. A classifier can specify a generalization hierarchy by referencing its general classifiers.
-
-A classifier is a redefinable element, meaning that it is possible to redefine nested classifiers.
-
+ <body>A classifier is a namespace whose members can include features. Classifier is an abstract metaclass.&#xD;
+A classifier is a type and can own generalizations, thereby making it possible to define generalization relationships to other classifiers. A classifier can specify a generalization hierarchy by referencing its general classifiers.&#xD;
+A classifier is a redefinable element, meaning that it is possible to redefine nested classifiers.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sMz4qhTaEdqZu-3Jy1-uYg" name="generalization_hierarchies" constrainedElement="_3ADC7B74022D3CAAECE80199">
@@ -6876,8 +6740,7 @@ A classifier is a redefinable element, meaning that it is possible to redefine n
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3E59237902C0" general="_3ADC7B74022D3E5920C2014E"/>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3CAB025C02CD" name="isAbstract">
<ownedComment xmi:type="uml:Comment" xmi:id="_sNQkkBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAB025C02CD">
- <body>If true, the Classifier does not provide a complete declaration and can typically not be instantiated. An abstract classifier is intended to be used by other classifiers e.g. as the target of general metarelationships or generalization relationships.
-
+ <body>If true, the Classifier does not provide a complete declaration and can typically not be instantiated. An abstract classifier is intended to be used by other classifiers e.g. as the target of general metarelationships or generalization relationships.&#xD;
</body>
</ownedComment>
<type xmi:type="uml:PrimitiveType" href="Infrastructure.uml#_3ADC7B74022D3CA010AC0090"/>
@@ -7202,10 +7065,8 @@ A classifier is a redefinable element, meaning that it is possible to redefine n
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAAECEF0149" name="Generalization">
<ownedComment xmi:type="uml:Comment" xmi:id="_sNZupBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAAECEF0149">
- <body>A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.
-
-A generalization can be designated as being a member of a particular generalization set.
-
+ <body>A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.&#xD;
+A generalization can be designated as being a member of a particular generalization set.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3CAB01D20012" general="_3ADC7B74022D3CAAEC1902BE"/>
@@ -7234,10 +7095,8 @@ A generalization can be designated as being a member of a particular generalizat
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAAFD470326" name="BehavioralFeature" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_sNjfhBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAAFD470326">
- <body>A behavioral feature specifies that an instance of a classifier will respond to a designated request by invoking a behavior.
-
-BehavioralFeature is an abstract metaclass specializing Feature and Namespace. Kinds of behavioral aspects are modeled by subclasses of BehavioralFeature.
-
+ <body>A behavioral feature specifies that an instance of a classifier will respond to a designated request by invoking a behavior.&#xD;
+BehavioralFeature is an abstract metaclass specializing Feature and Namespace. Kinds of behavioral aspects are modeled by subclasses of BehavioralFeature.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3CAB09740397" general="_3ADC7B74022D3CAAFD220337"/>
@@ -7327,24 +7186,15 @@ By specializing multiplicity element, it supports a multiplicity that specifies
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAB11A7010A" name="InstanceSpecification">
<ownedComment xmi:type="uml:Comment" xmi:id="_sNtQlBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAB11A7010A">
- <body>An instance specification specifies existence of an entity in a modeled system and completely or partially describes the entity.
-
-The description may include:
-
-
-
-- Classification of the entity by one or more classifiers of which the entity is an instance. If the only classifier specified is abstract, then the instance specification only partially describes the entity.
-
-- The kind of instance, based on its classifier or classifiers -- for example, an instance specification whose classifier is a class describes an object of that class, while an instance specification whose classifier is an association describes a link of that association.
-
-- Specification of values of structural features of the entity. Not all structural features of all classifiers of the instance specification need be represented by slots, in which case the instance specification is a partial description.
-
-- Specification of how to compute, derive or construct the instance (optional).
-
-
-
-InstanceSpecification is a concrete class.
-
+ <body>An instance specification specifies existence of an entity in a modeled system and completely or partially describes the entity.&#xD;
+The description may include:&#xD;
+&#xD;
+- Classification of the entity by one or more classifiers of which the entity is an instance. If the only classifier specified is abstract, then the instance specification only partially describes the entity.&#xD;
+- The kind of instance, based on its classifier or classifiers -- for example, an instance specification whose classifier is a class describes an object of that class, while an instance specification whose classifier is an association describes a link of that association.&#xD;
+- Specification of values of structural features of the entity. Not all structural features of all classifiers of the instance specification need be represented by slots, in which case the instance specification is a partial description.&#xD;
+- Specification of how to compute, derive or construct the instance (optional).&#xD;
+&#xD;
+InstanceSpecification is a concrete class.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sN2acxTaEdqZu-3Jy1-uYg" name="defining_feature" constrainedElement="_3ADC7B74022D3CAB11A7010A">
@@ -7417,10 +7267,8 @@ InstanceSpecification is a concrete class.
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAB1D7E0162" name="Package">
<ownedComment xmi:type="uml:Comment" xmi:id="_sN2ahhTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAB1D7E0162">
- <body>A package is a namespace for its members, and may contain other packages. Only packageable elements can be owned members of a package. By virtue of being a namespace, a package can import either individual members of other packages, or all the members of other packages.
-
-In addition a package can be merged with other packages.
-
+ <body>A package is a namespace for its members, and may contain other packages. Only packageable elements can be owned members of a package. By virtue of being a namespace, a package can import either individual members of other packages, or all the members of other packages.&#xD;
+In addition a package can be merged with other packages.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sOALdRTaEdqZu-3Jy1-uYg" name="elements_public_or_private" constrainedElement="_3ADC7B74022D3CAB1D7E0162">
@@ -7617,12 +7465,9 @@ In addition a package can be merged with other packages.
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAB1D790101" name="Property">
<ownedComment xmi:type="uml:Comment" xmi:id="_sOTGcBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAB1D790101">
- <body>A property is a structural feature.
-
-A property related to a classifier by ownedAttribute represents an attribute, and it may also represent an association end. It relates an instance of the class to a value or collection of values of the type of the attribute.
-
-A property related to an Association by memberEnd or its specializations represents an end of the association. The type of property is the type of the end of the association.
-
+ <body>A property is a structural feature.&#xD;
+A property related to a classifier by ownedAttribute represents an attribute, and it may also represent an association end. It relates an instance of the class to a value or collection of values of the type of the attribute.&#xD;
+A property related to an Association by memberEnd or its specializations represents an end of the association. The type of property is the type of the end of the association.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sOc3YxTaEdqZu-3Jy1-uYg" name="multiplicity_of_composite" constrainedElement="_3ADC7B74022D3CAB1D790101">
@@ -7649,7 +7494,7 @@ A property related to an Association by memberEnd or its specializations represe
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_sOc3dhTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>if (redefinedProperty->notEmpty()) then&#xA;&#xA; (redefinitionContext->notEmpty() and&#xA;&#xA; redefinedProperty->forAll(rp|&#xA;&#xA; ((redefinitionContext->collect(fc|&#xA;&#xA; fc.allParents()))->asSet())->collect(c| c.allFeatures())->asSet()->includes(rp))</body>
+ <body>if (redefinedProperty->notEmpty()) then&#xD;&#xA; (redefinitionContext->notEmpty() and&#xD;&#xA; redefinedProperty->forAll(rp|&#xD;&#xA; ((redefinitionContext->collect(fc|&#xD;&#xA; fc.allParents()))->asSet())->collect(c| c.allFeatures())->asSet()->includes(rp))</body>
</specification>
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sOc3fhTaEdqZu-3Jy1-uYg" name="subsetting_rules" constrainedElement="_3ADC7B74022D3CAB1D790101">
@@ -7762,8 +7607,7 @@ A property related to an Association by memberEnd or its specializations represe
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3CAB56E2011B" name="datatype" type="_3ADC7B74022D3CAB1D9C03C8" subsettedProperty="_3ADC7B74022D3CAAF0B00232 _3ADC7B74022D3CAB047902F3 _3ADC7B74022D3CAB21AF036E" association="_3ADC7B74022D3CAB56E102C8">
<ownedComment xmi:type="uml:Comment" xmi:id="_sU3BehTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAB56E2011B">
- <body>The DataType that owns this Property.
-
+ <body>The DataType that owns this Property.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sVALUxTaEdqZu-3Jy1-uYg" value="1"/>
@@ -7891,10 +7735,8 @@ A property related to an Association by memberEnd or its specializations represe
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAB1D710164" name="Operation">
<ownedComment xmi:type="uml:Comment" xmi:id="_sPCtShTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAB1D710164">
- <body>An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.
-
-One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.
-
+ <body>An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xD;
+One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sPCtUxTaEdqZu-3Jy1-uYg" name="at_most_one_return" constrainedElement="_3ADC7B74022D3CAB1D710164">
@@ -8034,8 +7876,7 @@ One predefined language for specifying expressions is OCL. Natural language or p
</ownedOperation>
<ownedOperation xmi:type="uml:Operation" xmi:id="_3ADC7B74022D4300D859009C" name="isUnique" isQuery="true" bodyCondition="_sPMeTBTaEdqZu-3Jy1-uYg">
<ownedComment xmi:type="uml:Comment" xmi:id="_sPMeSBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D4300D859009C">
- <body>If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.
-
+ <body>If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sPMeTBTaEdqZu-3Jy1-uYg" name="spec" constrainedElement="_3ADC7B74022D4300D859009C _3ADC7B74022D3E04B1BD0137">
@@ -8050,8 +7891,7 @@ One predefined language for specifying expressions is OCL. Natural language or p
</ownedOperation>
<ownedOperation xmi:type="uml:Operation" xmi:id="_3ADC7B74022D4300D86401A5" name="lower" isQuery="true" bodyCondition="_sPMeVxTaEdqZu-3Jy1-uYg">
<ownedComment xmi:type="uml:Comment" xmi:id="_sPMeURTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D4300D86401A5">
- <body>If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.
-
+ <body>If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sPMeVxTaEdqZu-3Jy1-uYg" name="spec" constrainedElement="_3ADC7B74022D4300D86401A5 _3ADC7B74022D3E04B1CF009D">
@@ -8066,8 +7906,7 @@ One predefined language for specifying expressions is OCL. Natural language or p
</ownedOperation>
<ownedOperation xmi:type="uml:Operation" xmi:id="_3ADC7B74022D4300D86A03D8" name="upper" isQuery="true" bodyCondition="_sPMeYhTaEdqZu-3Jy1-uYg">
<ownedComment xmi:type="uml:Comment" xmi:id="_sPMeXBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D4300D86A03D8">
- <body>If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.
-
+ <body>If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sPMeYhTaEdqZu-3Jy1-uYg" name="spec" constrainedElement="_3ADC7B74022D4300D86A03D8 _3ADC7B74022D3E04B1C20171">
@@ -8131,10 +7970,8 @@ One predefined language for specifying expressions is OCL. Natural language or p
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAB1D9C03C8" name="DataType">
<ownedComment xmi:type="uml:Comment" xmi:id="_sPpKMxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAB1D9C03C8">
- <body>A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.
-
-A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.
-
+ <body>A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.&#xD;
+A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3CBC61120274" general="_3ADC7B74022D3CAAECE80199"/>
@@ -8155,10 +7992,8 @@ A typical use of data types would be to represent programming language primitive
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAB1DC0026C" name="Enumeration">
<ownedComment xmi:type="uml:Comment" xmi:id="_sPpKOBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAB1DC0026C">
- <body>Enumeration is a kind of data type, whose instances may be any of a number of user-defined enumeration literals.
-
-It is possible to extend the set of applicable enumeration literals in other packages or profiles.
-
+ <body>Enumeration is a kind of data type, whose instances may be any of a number of user-defined enumeration literals.&#xD;
+It is possible to extend the set of applicable enumeration literals in other packages or profiles.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3CAB576C02FA" general="_3ADC7B74022D3CAB1D9C03C8"/>
@@ -8191,10 +8026,8 @@ It is possible to extend the set of applicable enumeration literals in other pac
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAB1DD70016" name="Association">
<ownedComment xmi:type="uml:Comment" xmi:id="_sPyUIBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAB1DD70016">
- <body>An association specifies a semantic relationship that can occur between typed instances. It has at least two ends represented by properties, each of which is connected to the type of the end. More than one end of an association may have the same type.
-
-
-
+ <body>An association specifies a semantic relationship that can occur between typed instances. It has at least two ends represented by properties, each of which is connected to the type of the end. More than one end of an association may have the same type.&#xD;
+&#xD;
An end property of an association that is owned by an end class or that is a navigable owned end of the association indicates that the association is navigable from the opposite ends, otherwise the association is not navigable from the opposite ends.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sPyUKhTaEdqZu-3Jy1-uYg" name="specialized_end_number" constrainedElement="_3ADC7B74022D3CAB1DD70016">
@@ -8288,18 +8121,12 @@ An end property of an association that is owned by an end class or that is a nav
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CAAECC502DA" name="Namespace" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_sP8FNxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAAECC502DA">
- <body>A namespace is a named element that can own other named elements. Each named element may be owned by at most one namespace. A namespace provides a means for identifying named elements by name. Named elements can be identified by name in a namespace either by being directly owned by the namespace or by being introduced into the namespace by other means e.g. importing or inheriting. Namespace is an abstract metaclass.
-
-
-
-A namespace can own constraints. The constraint does not necessarily apply to the namespace itself, but may also apply to elements in the namespace.
-
-
-
-A namespace has the ability to import either individual members or all members of a package, thereby making it possible to refer to those named elements without qualification in the importing namespace. In the case of conflicts, it is necessary to use qualified names or aliases to disambiguate the referenced elements.
-
-
-
+ <body>A namespace is a named element that can own other named elements. Each named element may be owned by at most one namespace. A namespace provides a means for identifying named elements by name. Named elements can be identified by name in a namespace either by being directly owned by the namespace or by being introduced into the namespace by other means e.g. importing or inheriting. Namespace is an abstract metaclass.&#xD;
+&#xD;
+A namespace can own constraints. The constraint does not necessarily apply to the namespace itself, but may also apply to elements in the namespace.&#xD;
+&#xD;
+A namespace has the ability to import either individual members or all members of a package, thereby making it possible to refer to those named elements without qualification in the importing namespace. In the case of conflicts, it is necessary to use qualified names or aliases to disambiguate the referenced elements.&#xD;
+&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sQF2IxTaEdqZu-3Jy1-uYg" name="members_distinguishable" constrainedElement="_3ADC7B74022D3CAAECC502DA">
@@ -8539,12 +8366,9 @@ A namespace has the ability to import either individual members or all members o
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3D623A8601AB" name="PackageMerge">
<ownedComment xmi:type="uml:Comment" xmi:id="_sQiiLxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D623A8601AB">
- <body>A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both. This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.
-
-
-
-Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.
-
+ <body>A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both. This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.&#xD;
+&#xD;
+Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3D623AB503A7" general="_3ADC7B74022D3CAAEC1902BE"/>
@@ -8670,12 +8494,10 @@ Conceptually, a package merge can be viewed as an operation that takes the conte
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3DFFC6AB0253" name="AggregationKind">
<ownedComment xmi:type="uml:Comment" xmi:id="_sQrsBBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DFFC6AB0253">
- <body>AggregationKind is an enumeration of the following literal values:
-• none Indicates that the property has no aggregation.
-• shared Indicates that the property has a shared aggregation.
-• composite Indicates that the property is aggregated compositely, i.e., the composite object has
-responsibility for the existence and storage of the composed objects (parts).
-</body>
+ <body>AggregationKind is an enumeration of the following literal values:&#xD;
+ - none = Indicates that the property has no aggregation.&#xD;
+ - shared = Indicates that the property has a shared aggregation.&#xD;
+ - composite = Indicates that the property is aggregated compositely, i.e., the composite object has responsibility for the existence and storage of the composed objects (parts).</body>
</ownedComment>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_3ADC7B74022D3DFFC6C0009A" name="none">
<ownedComment xmi:type="uml:Comment" xmi:id="_sQrsCBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DFFC6C0009A">
@@ -8695,12 +8517,11 @@ responsibility for the existence and storage of the composed objects (parts).
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CEE419F03B0" name="ParameterDirectionKind">
<ownedComment xmi:type="uml:Comment" xmi:id="_sQPAHxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CEE419F03B0">
- <body>ParameterDirectionKind is an enumeration of the following literal values:
-• in Indicates that parameter values are passed into the behavioral element by the caller.
-• inout Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.
-• out Indicates that parameter values are passed from a behavioral element out to the caller.
-• return Indicates that parameter values are passed as return values from a behavioral element back to the caller.
-</body>
+ <body>ParameterDirectionKind is an enumeration of the following literal values:&#xD;
+ - in = Indicates that parameter values are passed into the behavioral element by the caller.&#xD;
+ - inout = Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.&#xD;
+ - out = Indicates that parameter values are passed from a behavioral element out to the caller.&#xD;
+ - return = Indicates that parameter values are passed as return values from a behavioral element back to the caller.</body>
</ownedComment>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_3ADC7B74022D3CEE41D00126" name="in">
<ownedComment xmi:type="uml:Comment" xmi:id="_sQPAIxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CEE41D00126">
@@ -8721,14 +8542,10 @@ responsibility for the existence and storage of the composed objects (parts).
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CAAF25600F8" name="VisibilityKind">
<ownedComment xmi:type="uml:Comment" xmi:id="_sKuN-BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAAF25600F8">
- <body>VisibilityKind is an enumeration of the following literal values:
-
- - public
-
- - private
-
- - protected
-
+ <body>VisibilityKind is an enumeration of the following literal values:&#xD;
+ - public&#xD;
+ - private&#xD;
+ - protected&#xD;
- package</body>
</ownedComment>
<ownedOperation xmi:type="uml:Operation" xmi:id="_3ADC7B74022D4300DE4E0167" name="bestVisibility" isQuery="true" precondition="_sKuOARTaEdqZu-3Jy1-uYg" bodyCondition="_sKuOAxTaEdqZu-3Jy1-uYg">
@@ -9051,10 +8868,8 @@ responsibility for the existence and storage of the composed objects (parts).
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_HAhywhTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D335C122001A4"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3342A195014D" name="Interface">
<ownedComment xmi:type="uml:Comment" xmi:id="_sYb50RTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3342A195014D">
- <body>An interface is a kind of classifier that represents a declaration of a set of coherent public features and obligations. An interface specifies a contract; any instance of a classifier that realizes the interface must fulfill that contract. The obligations that may be associated with an interface are in the form of various kinds of constraints (such as pre- and post-conditions) or protocol specifications, which may impose ordering restrictions on interactions through the interface.
-
-Since interfaces are declarations, they are not instantiable. Instead, an interface specification is implemented by an instance of an instantiable classifier, which means that the instantiable classifier presents a public facade that conforms to the interface specification. Note that a given classifier may implement more than one interface and that an interface may be implemented by a number of different classifiers.
-
+ <body>An interface is a kind of classifier that represents a declaration of a set of coherent public features and obligations. An interface specifies a contract; any instance of a classifier that realizes the interface must fulfill that contract. The obligations that may be associated with an interface are in the form of various kinds of constraints (such as pre- and post-conditions) or protocol specifications, which may impose ordering restrictions on interactions through the interface.&#xD;
+Since interfaces are declarations, they are not instantiable. Instead, an interface specification is implemented by an instance of an instantiable classifier, which means that the instantiable classifier presents a public facade that conforms to the interface specification. Note that a given classifier may implement more than one interface and that an interface may be implemented by a number of different classifiers.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sYb52hTaEdqZu-3Jy1-uYg" name="visibility" constrainedElement="_3ADC7B74022D3342A195014D">
@@ -9186,8 +9001,7 @@ Since interfaces are declarations, they are not instantiable. Instead, an interf
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_HBbKoxTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D3C9FD9B900CF"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D33E8FEF701E0" name="Usage">
<ownedComment xmi:type="uml:Comment" xmi:id="_sZBvtRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D33E8FEF701E0">
- <body>A usage is a relationship in which one element requires another element (or set of elements) for its full implementation or operation. In the metamodel, a Usage is a Dependency in which the client requires the presence of the supplier.
-
+ <body>A usage is a relationship in which one element requires another element (or set of elements) for its full implementation or operation. In the metamodel, a Usage is a Dependency in which the client requires the presence of the supplier.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D33E8FF070082" general="_3ADC7B74022D327A646F00E6"/>
@@ -9250,12 +9064,9 @@ Since interfaces are declarations, they are not instantiable. Instead, an interf
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CC0E3C1013D" name="Classifier" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_sZLguRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CC0E3C1013D">
- <body>A classifier is a namespace whose members can include features. Classifier is an abstract metaclass.
-
-A classifier is a type and can own generalizations, thereby making it possible to define generalization relationships to other classifiers. A classifier can specify a generalization hierarchy by referencing its general classifiers.
-
-A classifier is a redefinable element, meaning that it is possible to redefine nested classifiers.
-
+ <body>A classifier is a namespace whose members can include features. Classifier is an abstract metaclass.&#xD;
+A classifier is a type and can own generalizations, thereby making it possible to define generalization relationships to other classifiers. A classifier can specify a generalization hierarchy by referencing its general classifiers.&#xD;
+A classifier is a redefinable element, meaning that it is possible to redefine nested classifiers.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3E1D453C0393" general="_3ADC7B74022D3CC0E4E5029C"/>
@@ -9367,7 +9178,9 @@ A classifier is a redefinable element, meaning that it is possible to redefine n
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3D76566502E1" general="_3ADC7B74022D3CB1F3A0024D"/>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3D7656240161" name="isCovering">
<ownedComment xmi:type="uml:Comment" xmi:id="_sZ7HmBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D7656240161">
- <body>Indicates (via the associated Generalizations) whether or not the set of specific Classifiers are covering for a particular general classifier. When isCovering is true, every instance of a particular general Classifier is also an instance of at least one of its specific Classifiers for the GeneralizationSet. When isCovering is false, there are one or more instances of the particular general Classifier that are not instances of at least one of its specific Classifiers defined for the GeneralizationSet. For example, Person could have two Generalization relationships each with a different specific Classifier: Male Person and Female Person. This GeneralizationSet would be covering because every instance of Person would be an instance of Male Person or Female Person. In contrast, Person could have a three Generalization relationships involving three specific Classifiers: North American Person, Asian Person, and European Person. This GeneralizationSet would not be covering because there are instances of Person for which these three specific Classifiers do not apply. The first example, then, could be read: any Person would be specialized as either being a Male Person or a Female Person—and nothing else; the second could be read: any Person would be specialized as being North American Person, Asian Person, European Person, or something else.</body>
+ <body>Indicates (via the associated Generalizations) whether or not the set of specific Classifiers are covering for a particular general classifier. When isCovering is true, every instance of a particular general Classifier is also an instance of at least one of its specific Classifiers for the GeneralizationSet. When isCovering is false, there are one or more instances of the particular general Classifier that are not instances of at least one of its specific Classifiers defined for the GeneralizationSet.&#xD;
+&#xD;
+For example, Person could have two Generalization relationships each with a different specific Classifier: Male Person and Female Person. This GeneralizationSet would be covering because every instance of Person would be an instance of Male Person or Female Person. In contrast, Person could have a three Generalization relationships involving three specific Classifiers: North American Person, Asian Person, and European Person. This GeneralizationSet would not be covering because there are instances of Person for which these three specific Classifiers do not apply. The first example, then, could be read: any Person would be specialized as either being a Male Person or a Female Person and nothing else; the second could be read: any Person would be specialized as being North American Person, Asian Person, European Person, or something else.</body>
</ownedComment>
<type xmi:type="uml:PrimitiveType" href="Infrastructure.uml#_3ADC7B74022D3CA010AC0090"/>
<defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_8Rz5kGgZEdqfYrlcy8iLFA">
@@ -9400,12 +9213,9 @@ A classifier is a redefinable element, meaning that it is possible to redefine n
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3D7655C4007B" name="Classifier" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_sZ7HoBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D7655C4007B">
- <body>A classifier is a namespace whose members can include features. Classifier is an abstract metaclass.
-
-A classifier is a type and can own generalizations, thereby making it possible to define generalization relationships to other classifiers. A classifier can specify a generalization hierarchy by referencing its general classifiers.
-
-A classifier is a redefinable element, meaning that it is possible to redefine nested classifiers.
-
+ <body>A classifier is a namespace whose members can include features. Classifier is an abstract metaclass.&#xD;
+A classifier is a type and can own generalizations, thereby making it possible to define generalization relationships to other classifiers. A classifier can specify a generalization hierarchy by referencing its general classifiers.&#xD;
+A classifier is a redefinable element, meaning that it is possible to redefine nested classifiers.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sZ7HqBTaEdqZu-3Jy1-uYg" name="maps_to_generalization_set" constrainedElement="_3ADC7B74022D3D7655C4007B">
@@ -9427,10 +9237,8 @@ A classifier is a redefinable element, meaning that it is possible to redefine n
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3D765705003F" name="Generalization">
<ownedComment xmi:type="uml:Comment" xmi:id="_sZ7HrRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D765705003F">
- <body>A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.
-
-
-
+ <body>A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.&#xD;
+&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_saE4lxTaEdqZu-3Jy1-uYg" name="generalization_same_classifier" constrainedElement="_3ADC7B74022D3D765705003F">
@@ -9488,8 +9296,7 @@ A classifier is a redefinable element, meaning that it is possible to redefine n
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3CC0DAE103AD" name="Property">
<ownedComment xmi:type="uml:Comment" xmi:id="_saXzkRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CC0DAE103AD">
- <body>Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association. Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.
-
+ <body>Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association. Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D41B0D86E03CC" general="_3ADC7B74022D3CAB08ED000D"/>
@@ -9725,17 +9532,10 @@ A classifier is a redefinable element, meaning that it is possible to redefine n
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D33F0EC2002BC" name="CallConcurrencyKind">
<ownedComment xmi:type="uml:Comment" xmi:id="_rz7ekBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D33F0EC2002BC">
- <body>CallConcurrencyKind is an enumeration with the following literals:
-
-• sequential No concurrency management mechanism is associated with the operation and, therefore, concurrency conflicts may occur. Instances that invoke a behavioral feature need to coordinate so that only one invocation to a target on any behavioral feature occurs at once.
-
-• guarded Multiple invocations of a behavioral feature may occur simultaneously to one instance, but only one is allowed to commence. The others are blocked until the performance of the first behavioral feature is complete. It is the responsibility of the system designer to ensure that deadlocks do not occur due to simultaneous blocks.
-
-• concurrent Multiple invocations of a behavioral feature may occur simultaneously to one instance and all of them may proceed concurrently.
-
-
-
-</body>
+ <body>CallConcurrencyKind is an enumeration with the following literals:&#xD;
+ - sequential = No concurrency management mechanism is associated with the operation and, therefore, concurrency conflicts may occur. Instances that invoke a behavioral feature need to coordinate so that only one invocation to a target on any behavioral feature occurs at once.&#xD;
+ - guarded = Multiple invocations of a behavioral feature may occur simultaneously to one instance, but only one is allowed to commence. The others are blocked until the performance of the first behavioral feature is complete. It is the responsibility of the system designer to ensure that deadlocks do not occur due to simultaneous blocks.&#xD;
+ - concurrent = Multiple invocations of a behavioral feature may occur simultaneously to one instance and all of them may proceed concurrently.</body>
</ownedComment>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_3ADC7B74022D3B9A6A9A033A" name="sequential">
<ownedComment xmi:type="uml:Comment" xmi:id="_rz7elBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B9A6A9A033A">
@@ -9824,22 +9624,14 @@ A classifier is a redefinable element, meaning that it is possible to redefine n
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_Gp4NURTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D3C9FD9B900CF"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3B9A6F4F0008" name="Behavior" isAbstract="true">
<ownedComment xmi:type="uml:Comment" xmi:id="_r0-AZRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B9A6F4F0008">
- <body>Behavior is a specification of how its context classifier changes state over time. This specification may be either a definition of possible behavior execution or emergent behavior, or a selective illustration of an interesting subset of possible executions. The latter form is typically used for capturing examples, such as a trace of a particular execution.
-
-
-
-A classifier behavior is always a definition of behavior and not an illustration. It describes the sequence of state changes an instance of a classifier may undergo in the course of its lifetime. Its precise semantics depends on the kind of classifier. For example, the classifier behavior of a collaboration represents emergent behavior of all the parts, whereas the classifier behavior of a class is just the behavior of instances of the class separated from the behaviors of any of its parts.
-
-When a behavior is associated as the method of a behavioral feature, it defines the implementation of that feature; i.e., the computation that generates the effects of the behavioral feature.
-
-
-
-As a classifier, a behavior can be specialized. Instantiating a behavior is referred to as &quot;invoking&quot; the behavior, an instantiated behavior is also called a behavior &quot;execution.&quot; A behavior may be invoked directly or its invocation may be the result of invoking the behavioral feature that specifies this behavior. A behavior can also be instantiated as an object in virtue of it being a class. The specification of a behavior can take a number of forms, as described in the subclasses of Behavior. Behavior is an abstract metaclass factoring out the commonalities of these different specification mechanisms.
-
-
-
-When a behavior is invoked, its execution receives a set of input values that are used to affect the course of execution and as a result of its execution it produces a set of output values which are returned, as specified by its parameters. The observable effects of a behavior execution may include changes of values of various objects involved in the execution, the creation and destruction of objects, generation of communications between objects, as well as an explicit set of output values.
-
+ <body>Behavior is a specification of how its context classifier changes state over time. This specification may be either a definition of possible behavior execution or emergent behavior, or a selective illustration of an interesting subset of possible executions. The latter form is typically used for capturing examples, such as a trace of a particular execution.&#xD;
+&#xD;
+A classifier behavior is always a definition of behavior and not an illustration. It describes the sequence of state changes an instance of a classifier may undergo in the course of its lifetime. Its precise semantics depends on the kind of classifier. For example, the classifier behavior of a collaboration represents emergent behavior of all the parts, whereas the classifier behavior of a class is just the behavior of instances of the class separated from the behaviors of any of its parts.&#xD;
+When a behavior is associated as the method of a behavioral feature, it defines the implementation of that feature; i.e., the computation that generates the effects of the behavioral feature.&#xD;
+&#xD;
+As a classifier, a behavior can be specialized. Instantiating a behavior is referred to as &quot;invoking&quot; the behavior, an instantiated behavior is also called a behavior &quot;execution.&quot; A behavior may be invoked directly or its invocation may be the result of invoking the behavioral feature that specifies this behavior. A behavior can also be instantiated as an object in virtue of it being a class. The specification of a behavior can take a number of forms, as described in the subclasses of Behavior. Behavior is an abstract metaclass factoring out the commonalities of these different specification mechanisms.&#xD;
+&#xD;
+When a behavior is invoked, its execution receives a set of input values that are used to affect the course of execution and as a result of its execution it produces a set of output values which are returned, as specified by its parameters. The observable effects of a behavior execution may include changes of values of various objects involved in the execution, the creation and destruction of objects, generation of communications between objects, as well as an explicit set of output values.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_r0-AbhTaEdqZu-3Jy1-uYg" name="parameters_match" constrainedElement="_3ADC7B74022D3B9A6F4F0008">
@@ -9904,8 +9696,7 @@ When a behavior is invoked, its execution receives a set of input values that ar
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3CFADFD20213" name="ownedParameter" type="_3ADC7B74022D3CAB0B3D0362" isOrdered="true" aggregation="composite" subsettedProperty="_3ADC7B74022D3CAAF0B00228" association="_3ADC7B74022D3CFADFD20211">
<ownedComment xmi:type="uml:Comment" xmi:id="_r1tnSxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CFADFD20213">
- <body>References a list of parameters to the behavior which describes the order and type of arguments that can be given when the behavior is invoked and of the values which will be returned when the behavior completes its execution.
-
+ <body>References a list of parameters to the behavior which describes the order and type of arguments that can be given when the behavior is invoked and of the values which will be returned when the behavior completes its execution.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_r1tnTxTaEdqZu-3Jy1-uYg" value="*"/>
@@ -9966,7 +9757,7 @@ When a behavior is invoked, its execution receives a set of input values that ar
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_r1Q7WhTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>self.behavior.notEmpty() implies&#xA;&#xA; self.behavior.ownedParameters->select(p | p.direction&lt;>#return)->isEmpty()</body>
+ <body>self.behavior.notEmpty() implies&#xD;&#xA; self.behavior.ownedParameters->select(p | p.direction&lt;>#return)->isEmpty()</body>
</specification>
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_r1Q7YhTaEdqZu-3Jy1-uYg" name="one_return_result_parameter" constrainedElement="_3ADC7B74022D3CEB52F70346">
@@ -9975,7 +9766,7 @@ When a behavior is invoked, its execution receives a set of input values that ar
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_r1Q7YxTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>self.behavior.notEmpty() implies&#xA;&#xA; self.behavior.ownedParameter->select(p | p.direction=#return)->size() = 1</body>
+ <body>self.behavior.notEmpty() implies&#xD;&#xA; self.behavior.ownedParameter->select(p | p.direction=#return)->size() = 1</body>
</specification>
</ownedRule>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3D06C90B02AF" name="result" type="_3ADC7B74022D3CAB0B3D0362" isReadOnly="true" isDerived="true" association="_3ADC7B74022D3D06C90B0043">
@@ -10046,7 +9837,7 @@ When a behavior is invoked, its execution receives a set of input values that ar
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_r1asYhTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>self.ownedParameters->&#xA;&#xA; select(p | p.direction=#out or p.direction=#inout or p.direction=#return)->size() >= 1</body>
+ <body>self.ownedParameters->&#xD;&#xA; select(p | p.direction=#out or p.direction=#inout or p.direction=#return)->size() >= 1</body>
</specification>
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_r1asahTaEdqZu-3Jy1-uYg" name="types_of_parameters" constrainedElement="_3ADC7B74022D411FC13F033A">
@@ -10055,7 +9846,7 @@ When a behavior is invoked, its execution receives a set of input values that ar
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_r1asaxTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>def: hasAllDataTypeAttributes(d : DataType) : Boolean =&#xA;&#xA; d.ownedAttribute->forAll(a |&#xA;&#xA; a.type.oclIsTypeOf(DataType) and&#xA;&#xA; hasAllDataTypeAttributes(a.type))&#xA;&#xA;self.ownedParameters->forAll(p | p.type.notEmpty() and&#xA;&#xA; p.oclIsTypeOf(DataType) and hasAllDataTypeAttributes(p))</body>
+ <body>def: hasAllDataTypeAttributes(d : DataType) : Boolean =&#xD;&#xA; d.ownedAttribute->forAll(a |&#xD;&#xA; a.type.oclIsTypeOf(DataType) and&#xD;&#xA; hasAllDataTypeAttributes(a.type))&#xD;&#xA;self.ownedParameters->forAll(p | p.type.notEmpty() and&#xD;&#xA; p.oclIsTypeOf(DataType) and hasAllDataTypeAttributes(p))</body>
</specification>
</ownedRule>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D411FC15C013D" general="_3ADC7B74022D410D8B4000F6"/>
@@ -10231,7 +10022,7 @@ When a behavior is invoked, its execution receives a set of input values that ar
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_y_SvQXIzEdqziYxiZo0YtA">
<language>OCL</language>
- <body>if (constrainedElement->size() =2)&#xA;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)</body>
+ <body>if (constrainedElement->size() =2)&#xD;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)</body>
</specification>
</ownedRule>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3DE4B6A7001D" general="_3ADC7B74022D3DE4B5F002CD"/>
@@ -10347,7 +10138,7 @@ When a behavior is invoked, its execution receives a set of input values that ar
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_ceaRYXI1EdqziYxiZo0YtA">
<language>OCL</language>
- <body>if (event->size() = 2)&#xA;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)</body>
+ <body>if (event->size() = 2)&#xD;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)</body>
</specification>
</ownedRule>
<generalization xmi:type="uml:Generalization" xmi:id="_E5i1sHIxEdqziYxiZo0YtA" general="_WKlVIHIwEdqziYxiZo0YtA"/>
@@ -10433,12 +10224,9 @@ When a behavior is invoked, its execution receives a set of input values that ar
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_HCKxgBTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D3E0251EF01F0"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3E0251CD020F" name="Component">
<ownedComment xmi:type="uml:Comment" xmi:id="_sahkihTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E0251CD020F">
- <body>A component is a subtype of Class which provides for a Component having attributes and operations, and being able to participate in Associations and Generalizations. A Component may form the abstraction for a set of realizingClassifiers that realize its behavior. In addition, because a Class itself is a subtype of an EncapsulatedClassifier, a Component may optionally have an internal structure and own a set of Ports that formalize its interaction points.
-
-
-
-A component has a number of provided and required Interfaces, that form the basis for wiring components together, either using Dependencies, or by using Connectors. A provided Interface is one that is either implemented directly by the component or one of its realizingClassifiers, or it is the type of a provided Port of the Component. A required interface is designated by a Usage Dependency from the Component or one of its realizingClassifiers, or it is the type of a required Port.
-
+ <body>A component is a subtype of Class which provides for a Component having attributes and operations, and being able to participate in Associations and Generalizations. A Component may form the abstraction for a set of realizingClassifiers that realize its behavior. In addition, because a Class itself is a subtype of an EncapsulatedClassifier, a Component may optionally have an internal structure and own a set of Ports that formalize its interaction points.&#xD;
+&#xD;
+A component has a number of provided and required Interfaces, that form the basis for wiring components together, either using Dependencies, or by using Connectors. A provided Interface is one that is either implemented directly by the component or one of its realizingClassifiers, or it is the type of a provided Port of the Component. A required interface is designated by a Usage Dependency from the Component or one of its realizingClassifiers, or it is the type of a required Port.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_T33SMEfLEdq0rbStTpEubg" general="_3ADC7B74022D3CAAECC502DA"/>
@@ -10463,19 +10251,16 @@ A component has a number of provided and required Interfaces, that form the basi
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_HCKxghTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D3D5EC5B702B8"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3E0251F50022" name="Component">
<ownedComment xmi:type="uml:Comment" xmi:id="_saqueBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E0251F50022">
- <body>A component is a subtype of Class which provides for a Component having attributes and operations, and being able to participate in Associations and Generalizations. A Component may form the abstraction for a set of realizingClassifiers that realize its behavior. In addition, because a Class itself is a subtype of an EncapsulatedClassifier, a Component may optionally have an internal structure and own a set of Ports that formalize its interaction points.
-
-
-
-A component has a number of provided and required Interfaces, that form the basis for wiring components together, either using Dependencies, or by using Connectors. A provided Interface is one that is either implemented directly by the component or one of its realizingClassifiers, or it is the type of a provided Port of the Component. A required interface is designated by a Usage Dependency from the Component or one of its realizingClassifiers, or it is the type of a required Port.
-
+ <body>A component is a subtype of Class which provides for a Component having attributes and operations, and being able to participate in Associations and Generalizations. A Component may form the abstraction for a set of realizingClassifiers that realize its behavior. In addition, because a Class itself is a subtype of an EncapsulatedClassifier, a Component may optionally have an internal structure and own a set of Ports that formalize its interaction points.&#xD;
+&#xD;
+A component has a number of provided and required Interfaces, that form the basis for wiring components together, either using Dependencies, or by using Connectors. A provided Interface is one that is either implemented directly by the component or one of its realizingClassifiers, or it is the type of a provided Port of the Component. A required interface is designated by a Usage Dependency from the Component or one of its realizingClassifiers, or it is the type of a required Port.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3E02522B02DC" general="_3ADC7B74022D3D5EC6DD001C"/>
<generalization xmi:type="uml:Generalization" xmi:id="_rdzBwEcHEdq0rbStTpEubg" general="_3ADC7B74022D3CC0E4E5029C"/>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3E02573803AE" name="isIndirectlyInstantiated">
<ownedComment xmi:type="uml:Comment" xmi:id="_saqujxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E02573803AE">
- <body>The kind of instantiation that applies to a Component. If false, the component is instantiated as an addressable object. If true, the Component is defined at design-time, but at runtime (or execution-time) an object specified by the Component does not exist, that is, the component is instantiated indirectly, through the instantiation of its realizing classifiers or parts. Several standard stereotypes use this meta attribute, e.g. «specification, «focus», «subsystem».</body>
+ <body>The kind of instantiation that applies to a Component. If false, the component is instantiated as an addressable object. If true, the Component is defined at design-time, but at runtime (or execution-time) an object specified by the Component does not exist, that is, the component is instantiated indirectly, through the instantiation of its realizing classifiers or parts. Several standard stereotypes use this meta attribute, e.g. «specification», «focus», «subsystem».</body>
</ownedComment>
<type xmi:type="uml:PrimitiveType" href="Infrastructure.uml#_3ADC7B74022D3CA010AC0090"/>
<defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_5bDVEF0nEdq3-fC14hmVtA" value="true"/>
@@ -10537,7 +10322,7 @@ A component has a number of provided and required Interfaces, that form the basi
<ownedRule xmi:type="uml:Constraint" xmi:id="_YjOdoDZ-Edqq1tCaRkgBQQ" name="spec" constrainedElement="_xc4UQDZ9Edqq1tCaRkgBQQ">
<specification xmi:type="uml:OpaqueExpression" xmi:id="_YjOdoTZ-Edqq1tCaRkgBQQ">
<language>OCL</language>
- <body>result = let usedInterfaces = UsedInterfaces(self) and&#xA;&#xA; let realizingClassifierUsedInterfaces = UsedInterfaces(self.realizingClassifier) and&#xA;&#xA; let typesOfUsedPorts = self.ownedPort.required in&#xA;&#xA; ((usedInterfaces->union(realizingClassifierUsedInterfaces))->&#xA;&#xA; union(typesOfUsedPorts))->asSet()</body>
+ <body>result = let usedInterfaces = UsedInterfaces(self) and&#xD;&#xA; let realizingClassifierUsedInterfaces = UsedInterfaces(self.realizingClassifier) and&#xD;&#xA; let typesOfUsedPorts = self.ownedPort.required in&#xD;&#xA; ((usedInterfaces->union(realizingClassifierUsedInterfaces))->&#xD;&#xA; union(typesOfUsedPorts))->asSet()</body>
</specification>
</ownedRule>
<ownedParameter xmi:type="uml:Parameter" xmi:id="_4GmaQDZ9Edqq1tCaRkgBQQ" type="_3ADC7B74022D3342A195014D" direction="return">
@@ -10549,7 +10334,7 @@ A component has a number of provided and required Interfaces, that form the basi
<ownedRule xmi:type="uml:Constraint" xmi:id="_-L2r0DZ-Edqq1tCaRkgBQQ" name="spec" constrainedElement="_2cFjwDZ-Edqq1tCaRkgBQQ">
<specification xmi:type="uml:OpaqueExpression" xmi:id="_-L2r0TZ-Edqq1tCaRkgBQQ">
<language>OCL</language>
- <body>result = let implementedInterfaces = self.implementation->collect(impl|impl.contract) and&#xA;&#xA; let realizedInterfaces = RealizedInterfaces(self) and&#xA;&#xA; let realizingClassifierInterfaces = RealizedInterfaces(self.realizingClassifier) and&#xA;&#xA; let typesOfRequiredPorts = self.ownedPort.provided in&#xA;&#xA; (((implementedInterfaces->union(realizedInterfaces)->union(realizingClassifierInterfaces))->&#xA;&#xA; union(typesOfRequiredPorts))->asSet()</body>
+ <body>result = let implementedInterfaces = self.implementation->collect(impl|impl.contract) and&#xD;&#xA; let realizedInterfaces = RealizedInterfaces(self) and&#xD;&#xA; let realizingClassifierInterfaces = RealizedInterfaces(self.realizingClassifier) and&#xD;&#xA; let typesOfRequiredPorts = self.ownedPort.provided in&#xD;&#xA; (((implementedInterfaces->union(realizedInterfaces)->union(realizingClassifierInterfaces))->&#xD;&#xA; union(typesOfRequiredPorts))->asSet()</body>
</specification>
</ownedRule>
<ownedParameter xmi:type="uml:Parameter" xmi:id="_5L7OIDZ-Edqq1tCaRkgBQQ" type="_3ADC7B74022D3342A195014D" direction="return">
@@ -10644,10 +10429,9 @@ A component has a number of provided and required Interfaces, that form the basi
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3E025A1801EA" name="ConnectorKind">
<ownedComment xmi:type="uml:Comment" xmi:id="_sa9pgBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E025A1801EA">
- <body>ConnectorKind is an enumeration of the following literal values:
-• assembly Indicates that the connector is an assembly connector.
-• delegation Indicates that the connector is a delegation connector.
-</body>
+ <body>ConnectorKind is an enumeration of the following literal values:&#xD;
+ - assembly = Indicates that the connector is an assembly connector.&#xD;
+ - delegation = Indicates that the connector is a delegation connector.</body>
</ownedComment>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_3ADC7B74022D3E025A2C004E" name="assembly">
<ownedComment xmi:type="uml:Comment" xmi:id="_sa9phBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E025A2C004E">
@@ -10697,12 +10481,9 @@ A component has a number of provided and required Interfaces, that form the basi
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_GmwA0BTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D3BAE542B0121"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3B8851380231" name="CollaborationUse">
<ownedComment xmi:type="uml:Comment" xmi:id="_rvAiUxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B8851380231">
- <body>A collaboration use represents one particular use of a collaboration to explain the relationships between the properties of a classifier. A collaboration use shows how the pattern described by a collaboration is applied in a given context, by binding specific entities from that context to the roles of the collaboration. Depending on the context, these entities could be structural features of a classifier, instance specifications, or even roles in some containing collaboration. There may be multiple occurrences of a given collaboration within a classifier, each involving a different set of roles and connectors. A given role or connector may be involved in multiple occurrences of the same or different collaborations.
-
-
-
-Associated dependencies map features of the collaboration type to features in the classifier. These dependencies indicate which role in the classifier plays which role in the collaboration.
-
+ <body>A collaboration use represents one particular use of a collaboration to explain the relationships between the properties of a classifier. A collaboration use shows how the pattern described by a collaboration is applied in a given context, by binding specific entities from that context to the roles of the collaboration. Depending on the context, these entities could be structural features of a classifier, instance specifications, or even roles in some containing collaboration. There may be multiple occurrences of a given collaboration within a classifier, each involving a different set of roles and connectors. A given role or connector may be involved in multiple occurrences of the same or different collaborations.&#xD;
+&#xD;
+Associated dependencies map features of the collaboration type to features in the classifier. These dependencies indicate which role in the classifier plays which role in the collaboration.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_rvAiXBTaEdqZu-3Jy1-uYg" name="client_elements" constrainedElement="_3ADC7B74022D3B8851380231">
@@ -10742,8 +10523,7 @@ Associated dependencies map features of the collaboration type to features in th
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3B885138027F" name="roleBinding" type="_3ADC7B74022D327A646F00E6" aggregation="composite" subsettedProperty="_3ADC7B74022D3CAAEEA60187" association="_3ADC7B74022D3B885138027E">
<ownedComment xmi:type="uml:Comment" xmi:id="_rvTdQhTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B885138027F">
- <body>A mapping between features of the collaboration type and features of the classifier or operation. This mapping indicates which connectable element of the classifier or operation plays which role(s) in the collaboration. A connectable element may be bound to multiple roles in the same collaboration use (that is, it may play multiple roles).
-
+ <body>A mapping between features of the collaboration type and features of the classifier or operation. This mapping indicates which connectable element of the classifier or operation plays which role(s) in the collaboration. A connectable element may be bound to multiple roles in the same collaboration use (that is, it may play multiple roles).&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_rvTdRhTaEdqZu-3Jy1-uYg" value="*"/>
@@ -10752,12 +10532,9 @@ Associated dependencies map features of the collaboration type to features in th
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D337A47290078" name="Collaboration">
<ownedComment xmi:type="uml:Comment" xmi:id="_rvAicxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D337A47290078">
- <body>A collaboration is represented as a kind of classifier and defines a set of cooperating entities to be played by instances (its roles), as well as a set of connectors that define communication paths between the participating instances. The cooperating entities are the properties of the collaboration.
-
-
-
-A collaboration specifies a view (or projection) of a set of cooperating classifiers. It describes the required links between instances that play the roles of the collaboration, as well as the features required of the classifiers that specify the participating instances. Several collaborations may describe different projections of the same set of classifiers.
-
+ <body>A collaboration is represented as a kind of classifier and defines a set of cooperating entities to be played by instances (its roles), as well as a set of connectors that define communication paths between the participating instances. The cooperating entities are the properties of the collaboration.&#xD;
+&#xD;
+A collaboration specifies a view (or projection) of a set of cooperating classifiers. It describes the required links between instances that play the roles of the collaboration, as well as the features required of the classifiers that specify the participating instances. Several collaborations may describe different projections of the same set of classifiers.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3CCB577200C8" general="_3ADC7B74022D3CC1A6A70282"/>
@@ -10850,12 +10627,9 @@ A collaboration specifies a view (or projection) of a set of cooperating classif
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_GnC7wxTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D3CFC224902BF"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3BAFE2B3012C" name="Port">
<ownedComment xmi:type="uml:Comment" xmi:id="_rw8cERTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3BAFE2B3012C">
- <body>Ports represent interaction points between a classifier and its environment. The interfaces associated with a port specify the nature of the interactions that may occur over a port. The required interfaces of a port characterize the requests which may be made from the classifier to its environment through this port. The provided interfaces of a port characterize requests to the classifier that its environment may make through this port.
-
-
-
-A port has the ability to specify that any requests arriving at this port are handled by the behavior of the instance of the owning classifier, rather than being forwarded to any contained instances, if any.
-
+ <body>Ports represent interaction points between a classifier and its environment. The interfaces associated with a port specify the nature of the interactions that may occur over a port. The required interfaces of a port characterize the requests which may be made from the classifier to its environment through this port. The provided interfaces of a port characterize requests to the classifier that its environment may make through this port.&#xD;
+&#xD;
+A port has the ability to specify that any requests arriving at this port are handled by the behavior of the instance of the owning classifier, rather than being forwarded to any contained instances, if any.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_rxGNCBTaEdqZu-3Jy1-uYg" name="required_interfaces" constrainedElement="_3ADC7B74022D3BAFE2B3012C">
@@ -10925,8 +10699,7 @@ A port has the ability to specify that any requests arriving at this port are ha
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3D03D15C008B" name="provided" type="_3ADC7B74022D3342A195014D" isReadOnly="true" isDerived="true" association="_3ADC7B74022D3D03D15B01DE">
<ownedComment xmi:type="uml:Comment" xmi:id="_rxi48xTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D03D15C008B">
- <body>References the interfaces specifying the set of operations and receptions which the classifier offers to its environment, and which it will handle either directly or by forwarding it to a part of its internal structure. This association is derived from the interfaces realized by the type of the port or by the type of the port, if the port was typed by an interface.
-
+ <body>References the interfaces specifying the set of operations and receptions which the classifier offers to its environment, and which it will handle either directly or by forwarding it to a part of its internal structure. This association is derived from the interfaces realized by the type of the port or by the type of the port, if the port was typed by an interface.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_rxi49xTaEdqZu-3Jy1-uYg" value="*"/>
@@ -11083,8 +10856,7 @@ A port has the ability to specify that any requests arriving at this port are ha
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3DFFB5D6036F" general="_3ADC7B74022D3CAAFD5202DC"/>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3E22160503E3" name="definingEnd" type="_3ADC7B74022D3B99825E03B4" isReadOnly="true" isDerived="true" association="_3ADC7B74022D3E2216050202">
<ownedComment xmi:type="uml:Comment" xmi:id="_ryvL4BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E22160503E3">
- <body>A derived association referencing the corresponding association end on the association which types the connector owing this connector end. This association is derived by selecting the association end at the same place in the ordering of association ends as this connector end.
-
+ <body>A derived association referencing the corresponding association end on the association which types the connector owing this connector end. This association is derived by selecting the association end at the same place in the ordering of association ends as this connector end.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ry4VsxTaEdqZu-3Jy1-uYg" value="1"/>
@@ -11092,8 +10864,7 @@ A port has the ability to specify that any requests arriving at this port are ha
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3E2216A30141" name="role" type="_3ADC7B74022D3CC16F5A00A4" association="_3ADC7B74022D3E2216A2021C">
<ownedComment xmi:type="uml:Comment" xmi:id="_ry4VwRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E2216A30141">
- <body>The connectable element attached at this connector end. When an instance of the containing classifier is created, a link may (depending on the multiplicities) be created to an instance of the classifier that types this connectable element.
-
+ <body>The connectable element attached at this connector end. When an instance of the containing classifier is created, a link may (depending on the multiplicities) be created to an instance of the classifier that types this connectable element.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ry4VxRTaEdqZu-3Jy1-uYg" value="1"/>
@@ -11141,8 +10912,7 @@ A port has the ability to specify that any requests arriving at this port are ha
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3E2214450172" name="redefinedConnector" type="_3ADC7B74022D3B6D7514038E" subsettedProperty="_3ADC7B74022D3E026DFA035B" association="_3ADC7B74022D3E22144300E2">
<ownedComment xmi:type="uml:Comment" xmi:id="_ryvLzBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E2214450172">
- <body>A connector may be redefined when its containing classifier is specialized. The redefining connector may have a type that specializes the type of the redefined connector.
-
+ <body>A connector may be redefined when its containing classifier is specialized. The redefining connector may have a type that specializes the type of the redefined connector.&#xD;
The types of the connector ends of the redefining connector may specialize the types of the connector ends of the redefined connector. The properties of the connector ends of the redefining connector may be replaced.</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ryvL0BTaEdqZu-3Jy1-uYg" value="*"/>
@@ -11335,7 +11105,7 @@ The types of the connector ends of the redefining connector may specialize the t
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_sbaVaxTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>self.deployment->forAll (d | d.location.deployedElements->forAll (de |&#xA;&#xA; de.oclIsKindOf(Component)))</body>
+ <body>self.deployment->forAll (d | d.location.deployedElements->forAll (de |&#xD;&#xA; de.oclIsKindOf(Component)))</body>
</specification>
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sbkGVRTaEdqZu-3Jy1-uYg" name="deployment_target" constrainedElement="_3ADC7B74022D3E0237DD0301">
@@ -11573,10 +11343,8 @@ The types of the connector ends of the redefining connector may specialize the t
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3E0451AB01AC" name="nestedArtifact" type="_3ADC7B74022D3E0235DA036F" aggregation="composite" subsettedProperty="_3ADC7B74022D3CAAF0B00228" association="_3ADC7B74022D3E0451A20268">
<ownedComment xmi:type="uml:Comment" xmi:id="_scmoOhTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E0451AB01AC">
- <body>The Artifacts that are defined (nested) within the Artifact.
-
-The association is a specialization of the ownedMember association from Namespace to NamedElement.
-
+ <body>The Artifacts that are defined (nested) within the Artifact.&#xD;
+The association is a specialization of the ownedMember association from Namespace to NamedElement.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_scwZIxTaEdqZu-3Jy1-uYg" value="*"/>
@@ -11598,10 +11366,8 @@ The association is a specialization of the ownedMember association from Namespac
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3E0AF84C029D" name="ownedAttribute" type="_3ADC7B74022D3CAB1D790101" isOrdered="true" aggregation="composite" subsettedProperty="_3ADC7B74022D3CAB21AF0364 _3ADC7B74022D3CAAF0B00228" association="_3ADC7B74022D3E0AF84A034E">
<ownedComment xmi:type="uml:Comment" xmi:id="_sc6KMxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E0AF84C029D">
- <body>The attributes or association ends defined for the Artifact.
-
-The association is a specialization of the ownedMember association.
-
+ <body>The attributes or association ends defined for the Artifact.&#xD;
+The association is a specialization of the ownedMember association.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sc6KNxTaEdqZu-3Jy1-uYg" value="*"/>
@@ -11791,8 +11557,7 @@ The association is a specialization of the ownedMember association.
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D33DBAE5E005A" name="Message">
<ownedComment xmi:type="uml:Comment" xmi:id="_sEUD9BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D33DBAE5E005A">
- <body>A Message is a NamedElement that defines a particular communication between Lifelines of an Interaction. A communication can be e.g. raising a signal, invoking an Operation, creating or destroying an Instance. The Message specifies not only the kind of communication given by the dispatching ExecutionSpecification, but also the sender and the receiver. A Message associates normally two OccurrenceSpecifications - one sending OccurrenceSpecification and one receiving OccurrenceSpecification.
-
+ <body>A Message is a NamedElement that defines a particular communication between Lifelines of an Interaction. A communication can be e.g. raising a signal, invoking an Operation, creating or destroying an Instance. The Message specifies not only the kind of communication given by the dispatching ExecutionSpecification, but also the sender and the receiver. A Message associates normally two OccurrenceSpecifications - one sending OccurrenceSpecification and one receiving OccurrenceSpecification.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sEUD_RTaEdqZu-3Jy1-uYg" name="sending_receiving_message_event" constrainedElement="_3ADC7B74022D33DBAE5E005A">
@@ -11971,12 +11736,9 @@ v) attributes of the class owning the Interaction
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3C6F946503C8" name="OccurrenceSpecification">
<ownedComment xmi:type="uml:Comment" xmi:id="_sEwv6hTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3C6F946503C8">
- <body>An OccurrenceSpecification is the basic semantic unit of Interactions. The sequences of occurrences specified by them are the meanings of Interactions.
-
-OccurrenceSpecifications are ordered along a Lifeline.
-
-The namespace of an OccurrenceSpecification is the Interaction in which it is contained.
-
+ <body>An OccurrenceSpecification is the basic semantic unit of Interactions. The sequences of occurrences specified by them are the meanings of Interactions.&#xD;
+OccurrenceSpecifications are ordered along a Lifeline.&#xD;
+The namespace of an OccurrenceSpecification is the Interaction in which it is contained.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3CC3010700E0" general="_3ADC7B74022D38A3F9F00280"/>
@@ -11989,8 +11751,7 @@ The namespace of an OccurrenceSpecification is the Interaction in which it is co
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3C472195038C" name="toAfter" type="_3ADC7B74022D3C47215102B2" association="_3ADC7B74022D3C472194024A">
<ownedComment xmi:type="uml:Comment" xmi:id="_sF9CwxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3C472195038C">
- <body>References the GeneralOrderings that specify EventOcurrences that must occur after this OccurrenceSpecification
-
+ <body>References the GeneralOrderings that specify EventOcurrences that must occur after this OccurrenceSpecification&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sF9CxxTaEdqZu-3Jy1-uYg" value="*"/>
@@ -11998,8 +11759,7 @@ The namespace of an OccurrenceSpecification is the Interaction in which it is co
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3C4721FE0328" name="toBefore" type="_3ADC7B74022D3C47215102B2" association="_3ADC7B74022D3C4721FE0102">
<ownedComment xmi:type="uml:Comment" xmi:id="_sF9CyhTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3C4721FE0328">
- <body>References the GeneralOrderings that specify EventOcurrences that must occur before this OccurrenceSpecification
-
+ <body>References the GeneralOrderings that specify EventOcurrences that must occur before this OccurrenceSpecification&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sGGzsxTaEdqZu-3Jy1-uYg" value="*"/>
@@ -12198,15 +11958,11 @@ The namespace of an OccurrenceSpecification is the Interaction in which it is co
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3D05BBDA038F" name="MessageKind">
<ownedComment xmi:type="uml:Comment" xmi:id="_sEwv9BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D05BBDA038F">
- <body>MessageKind is an enumeration of the following values:
-
-- complete = sendEvent and receiveEvent are present
-
-- lost = sendEvent present and receiveEvent absent
-
-- found = sendEvent absent and receiveEvent present
-
-- unknown = sendEvent and receiveEvent absent (should not appear)</body>
+ <body>MessageKind is an enumeration of the following values:&#xD;
+ - complete = sendEvent and receiveEvent are present&#xD;
+ - lost = sendEvent present and receiveEvent absent&#xD;
+ - found = sendEvent absent and receiveEvent present&#xD;
+ - unknown = sendEvent and receiveEvent absent (should not appear)</body>
</ownedComment>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_3ADC7B74022D3D05BBFF0003" name="complete">
<ownedComment xmi:type="uml:Comment" xmi:id="_sEwv-BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D05BBFF0003">
@@ -12231,19 +11987,13 @@ The namespace of an OccurrenceSpecification is the Interaction in which it is co
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3D621AD300F4" name="MessageSort">
<ownedComment xmi:type="uml:Comment" xmi:id="_sE6g8BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D621AD300F4">
- <body>MessageSort is an enumeration of the following values:
-
-- synchCall = the message was generated by a synchronous call to an operation
-
-- asynchCall = the message was generated by an asynchronous call to an operation; i.e., a CallAction with isSynchronous= false
-
-- asynchSignal = the message was generated by an asynchronous send action
-
-- createMessage = the message designating the creation of another lifeline object
-
-- deleteMessage = the message designating the termination of anther lifeline
-
-- reply = the message is a reply message to an operation call</body>
+ <body>MessageSort is an enumeration of the following values:&#xD;
+ - synchCall = the message was generated by a synchronous call to an operation&#xD;
+ - asynchCall = the message was generated by an asynchronous call to an operation; i.e., a CallAction for which isSynchronous is false&#xD;
+ - asynchSignal = the message was generated by an asynchronous send action&#xD;
+ - createMessage = the message designating the creation of another lifeline object&#xD;
+ - deleteMessage = the message designating the termination of anther lifeline&#xD;
+ - reply = the message is a reply message to an operation call</body>
</ownedComment>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_3ADC7B74022D3D621AFC00CB" name="synchCall">
<ownedComment xmi:type="uml:Comment" xmi:id="_sE6g9BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D621AFC00CB">
@@ -12252,10 +12002,8 @@ The namespace of an OccurrenceSpecification is the Interaction in which it is co
</ownedLiteral>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_3ADC7B74022D3D621B2A0370" name="asynchCall">
<ownedComment xmi:type="uml:Comment" xmi:id="_sE6g-BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D621B2A0370">
- <body>The message was generated by an asynchronous call to an operation; i.e., a CallAction with isSynchronous
-
-= false.
-
+ <body>The message was generated by an asynchronous call to an operation; i.e., a CallAction with isSynchronous&#xD;
+= false.&#xD;
</body>
</ownedComment>
</ownedLiteral>
@@ -12453,12 +12201,9 @@ The namespace of an OccurrenceSpecification is the Interaction in which it is co
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_G340IBTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D3388DA6E014A"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D38A3FDEF012C" name="InteractionUse">
<ownedComment xmi:type="uml:Comment" xmi:id="_sHTGhhTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D38A3FDEF012C">
- <body>An InteractionUse refers to an Interaction. The InteractionUse is a shorthand for copying the contents of the referred Interaction where the InteractionUse is. To be accurate the copying must take into account substituting parameters with arguments and connect the formal gates with the actual ones.
-
-
-
-It is common to want to share portions of an interaction between several other interactions. An InteractionUse allows multiple interactions to reference an interaction that represents a common portion of their specification.
-
+ <body>An InteractionUse refers to an Interaction. The InteractionUse is a shorthand for copying the contents of the referred Interaction where the InteractionUse is. To be accurate the copying must take into account substituting parameters with arguments and connect the formal gates with the actual ones.&#xD;
+&#xD;
+It is common to want to share portions of an interaction between several other interactions. An InteractionUse allows multiple interactions to reference an interaction that represents a common portion of their specification.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sHc3gxTaEdqZu-3Jy1-uYg" name="gates_match" constrainedElement="_3ADC7B74022D38A3FDEF012C">
@@ -12522,16 +12267,11 @@ It is common to want to share portions of an interaction between several other i
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3A641F9802FA" name="PartDecomposition">
<ownedComment xmi:type="uml:Comment" xmi:id="_sHc3oxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3A641F9802FA">
- <body>PartDecomposition is a description of the internal interactions of one Lifeline relative to an Interaction.
-
-
-
-A Lifeline has a class associated as the type of the ConnectableElement that the Lifeline represents. That class may have an internal structure and the PartDecomposition is an Interaction that describes the behavior of that internal structure relative to the Interaction where the decomposition is referenced.
-
-
-
-A PartDecomposition is a specialization of InteractionUse. It associates with the ConnectableElement that it decomposes.
-
+ <body>PartDecomposition is a description of the internal interactions of one Lifeline relative to an Interaction.&#xD;
+&#xD;
+A Lifeline has a class associated as the type of the ConnectableElement that the Lifeline represents. That class may have an internal structure and the PartDecomposition is an Interaction that describes the behavior of that internal structure relative to the Interaction where the decomposition is referenced.&#xD;
+&#xD;
+A PartDecomposition is a specialization of InteractionUse. It associates with the ConnectableElement that it decomposes.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sHmBcxTaEdqZu-3Jy1-uYg" name="parts_of_internal_structures" constrainedElement="_3ADC7B74022D3A641F9802FA">
@@ -12545,16 +12285,11 @@ A PartDecomposition is a specialization of InteractionUse. It associates with th
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sHmBfBTaEdqZu-3Jy1-uYg" name="assume" constrainedElement="_3ADC7B74022D3A641F9802FA">
<ownedComment xmi:type="uml:Comment" xmi:id="_sHmBeBTaEdqZu-3Jy1-uYg" annotatedElement="_sHmBfBTaEdqZu-3Jy1-uYg">
- <body>Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Within X there is a sequence of constructs along L (such constructs are CombinedFragments, InteractionUse and (plain) OccurrenceSpecifications). Then a corresponding sequence of constructs must appear within D, matched one-to-one in the same order.
-
-
-
-i) CombinedFragment covering L are matched with an extra-global CombinedFragment in D
-
-ii) An InteractionUse covering L are matched with a global (i.e. covering all Lifelines) InteractionUse in D.
-
-iii) A plain OccurrenceSpecification on L is considered an actualGate that must be matched by a formalGate of D
-
+ <body>Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Within X there is a sequence of constructs along L (such constructs are CombinedFragments, InteractionUse and (plain) OccurrenceSpecifications). Then a corresponding sequence of constructs must appear within D, matched one-to-one in the same order.&#xD;
+&#xD;
+i) CombinedFragment covering L are matched with an extra-global CombinedFragment in D&#xD;
+ii) An InteractionUse covering L are matched with a global (i.e. covering all Lifelines) InteractionUse in D.&#xD;
+iii) A plain OccurrenceSpecification on L is considered an actualGate that must be matched by a formalGate of D&#xD;
</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_sHmBfRTaEdqZu-3Jy1-uYg">
@@ -12564,10 +12299,8 @@ iii) A plain OccurrenceSpecification on L is considered an actualGate that must
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sHmBhRTaEdqZu-3Jy1-uYg" name="commutativity_of_decomposition" constrainedElement="_3ADC7B74022D3A641F9802FA">
<ownedComment xmi:type="uml:Comment" xmi:id="_sHmBgRTaEdqZu-3Jy1-uYg" annotatedElement="_sHmBhRTaEdqZu-3Jy1-uYg">
- <body>Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Assume also that there is within X an
-
-InteractionUse (say) U that covers L. According to the constraint above U will have a counterpart CU within D. Within the Interaction referenced by U, L should also be decomposed, and the decomposition should reference CU. (This rule is called commutativity of decomposition)
-
+ <body>Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Assume also that there is within X an&#xD;
+InteractionUse (say) U that covers L. According to the constraint above U will have a counterpart CU within D. Within the Interaction referenced by U, L should also be decomposed, and the decomposition should reference CU. (This rule is called commutativity of decomposition)&#xD;
</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_sHmBhhTaEdqZu-3Jy1-uYg">
@@ -12579,20 +12312,13 @@ InteractionUse (say) U that covers L. According to the constraint above U will h
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3A4CAC51006F" name="InteractionOperand">
<ownedComment xmi:type="uml:Comment" xmi:id="_sHmBihTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3A4CAC51006F">
- <body>An InteractionOperand is contained in a CombinedFragment. An InteractionOperand represents one operand of the expression given by the enclosing CombinedFragment.
-
-
-
-An InteractionOperand is an InteractionFragment with an optional guard expression. An InteractionOperand may be
-
-guarded by a InteractionConstraint. Only InteractionOperands with a guard that evaluates to true at this point in the interaction will be considered for the production of the traces for the enclosing CombinedFragment.
-
-
-
-InteractionOperand contains an ordered set of InteractionFragments.
-
-
-
+ <body>An InteractionOperand is contained in a CombinedFragment. An InteractionOperand represents one operand of the expression given by the enclosing CombinedFragment. &#xD;
+&#xD;
+An InteractionOperand is an InteractionFragment with an optional guard expression. An InteractionOperand may be&#xD;
+guarded by a InteractionConstraint. Only InteractionOperands with a guard that evaluates to true at this point in the interaction will be considered for the production of the traces for the enclosing CombinedFragment.&#xD;
+&#xD;
+InteractionOperand contains an ordered set of InteractionFragments.&#xD;
+&#xD;
In Sequence Diagrams these InteractionFragments are ordered according to their geometrical position vertically. The geometrical position of the InteractionFragment is given by the topmost vertical coordinate of its contained OccurrenceSpecifications or symbols.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sHvycxTaEdqZu-3Jy1-uYg" name="guard_directly_prior" constrainedElement="_3ADC7B74022D3A4CAC51006F">
@@ -12797,8 +12523,7 @@ In Sequence Diagrams these InteractionFragments are ordered according to their g
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D41B0C1390242" general="_3ADC7B74022D3B9A6F4F0008"/>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3B9AA23A0296" name="formalGate" type="_3ADC7B74022D38A3FD2A006E" aggregation="composite" subsettedProperty="_3ADC7B74022D3CAAF0B00228" association="_3ADC7B74022D3B9AA23A005B">
<ownedComment xmi:type="uml:Comment" xmi:id="_sI8FUxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B9AA23A0296">
- <body>Specifies the gates that form the message interface between this Interaction and any InteractionUses which reference it.
-
+ <body>Specifies the gates that form the message interface between this Interaction and any InteractionUses which reference it.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sI8FVxTaEdqZu-3Jy1-uYg" value="*"/>
@@ -12807,16 +12532,11 @@ In Sequence Diagrams these InteractionFragments are ordered according to their g
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3DE35C7C0043" name="Lifeline">
<ownedComment xmi:type="uml:Comment" xmi:id="_sIVoWBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DE35C7C0043">
- <body>A lifeline represents an individual participant in the Interaction. While Parts and StructuralFeatures may have multiplicity greater than 1, Lifelines represent only one interacting entity. Lifeline is a specialization of NamedElement.
-
-
-
-If the referenced ConnectableElement is multivalued (i.e. has a multiplicity > 1), then the Lifeline may have an expression (the 'selector') that specifies which particular part is represented by this Lifeline.
-
-
-
-If the selector is omitted this means that an arbitrary representative of the multivalued ConnectableElement is chosen.
-
+ <body>A lifeline represents an individual participant in the Interaction. While Parts and StructuralFeatures may have multiplicity greater than 1, Lifelines represent only one interacting entity. Lifeline is a specialization of NamedElement.&#xD;
+&#xD;
+If the referenced ConnectableElement is multivalued (i.e. has a multiplicity > 1), then the Lifeline may have an expression (the 'selector') that specifies which particular part is represented by this Lifeline.&#xD;
+&#xD;
+If the selector is omitted this means that an arbitrary representative of the multivalued ConnectableElement is chosen.&#xD;
</body>
</ownedComment>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3B97C62D00A9" name="decomposedAs" type="_3ADC7B74022D3A641F9802FA" association="_3ADC7B74022D3B97C62C0288">
@@ -13054,18 +12774,12 @@ If the selector is omitted this means that an arbitrary representative of the mu
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_HJUiYBTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D3CFC224902BF"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D327D9E410186" name="StateMachine">
<ownedComment xmi:type="uml:Comment" xmi:id="_seZX5BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D327D9E410186">
- <body>A state machine owns one or more regions, which in turn own vertices and transitions.
-
-The behaviored classifier context owning a state machine defines which signal and call triggers are defined for the state machine, and which attributes and operations are available in activities of the state machine. Signal triggers and call triggers for the state machine are defined according to the receptions and operations of this classifier.
-
-
-
-As a kind of behavior, a state machine may have an associated behavioral feature (specification) and be the method of this behavioral feature. In this case the state machine specifies the behavior of this behavioral feature. The parameters of the state machine in this case match the parameters of the behavioral feature and provide the means for accessing (within the state machine) the behavioral feature parameters.
-
-
-
-A state machine without a context classifier may use triggers that are independent of receptions or operations of a classifier, i.e. either just signal triggers or call triggers based upon operation template parameters of the (parameterized) statemachine.
-
+ <body>A state machine owns one or more regions, which in turn own vertices and transitions.&#xD;
+The behaviored classifier context owning a state machine defines which signal and call triggers are defined for the state machine, and which attributes and operations are available in activities of the state machine. Signal triggers and call triggers for the state machine are defined according to the receptions and operations of this classifier.&#xD;
+&#xD;
+As a kind of behavior, a state machine may have an associated behavioral feature (specification) and be the method of this behavioral feature. In this case the state machine specifies the behavior of this behavioral feature. The parameters of the state machine in this case match the parameters of the behavioral feature and provide the means for accessing (within the state machine) the behavioral feature parameters.&#xD;
+&#xD;
+A state machine without a context classifier may use triggers that are independent of receptions or operations of a classifier, i.e. either just signal triggers or call triggers based upon operation template parameters of the (parameterized) statemachine.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_seZX7RTaEdqZu-3Jy1-uYg" name="classifier_context" constrainedElement="_3ADC7B74022D327D9E410186">
@@ -13150,8 +12864,7 @@ A state machine without a context classifier may use triggers that are independe
</ownedOperation>
<ownedOperation xmi:type="uml:Operation" xmi:id="_3ADC7B74022D4300F7D601A5" name="ancestor" isQuery="true" bodyCondition="_seih-RTaEdqZu-3Jy1-uYg">
<ownedComment xmi:type="uml:Comment" xmi:id="_seih8xTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D4300F7D601A5">
- <body>The query ancestor(s1, s2) checks whether s2 is an ancestor state of state s1. context StateMachine::ancestor (s1 : State, s2 : State) : Boolean
-
+ <body>The query ancestor(s1, s2) checks whether s2 is an ancestor state of state s1. context StateMachine::ancestor (s1 : State, s2 : State) : Boolean&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_seih-RTaEdqZu-3Jy1-uYg" name="spec" constrainedElement="_3ADC7B74022D4300F7D601A5">
@@ -13200,60 +12913,33 @@ A state machine without a context classifier may use triggers that are independe
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3287F81C0136" name="State">
<ownedComment xmi:type="uml:Comment" xmi:id="_sesS4BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3287F81C0136">
- <body>A state models a situation during which some (usually implicit) invariant condition holds. The invariant may represent a static situation such as an object waiting for some external event to occur. However, it can also model dynamic conditions such as the process of performing some behavior (i.e., the model element under consideration enters the state when the behavior commences and leaves it as soon as the behavior is completed). The following kinds of states are distinguished:
-
-o Simple state,
-
-o composite state, and
-
-o submachine state.
-
-A composite state is either a simple composite state (with just one region) or an orthogonal state (with more than one region).
-
-
-
-Simple state
-
-A simple state is a state that does not have substates, i.e. it has no regions and it has no submachine state machine.
-
-
-
-Composite state
-
-A composite state either contains one region or is decomposed into two or more orthogonal regions. Each region has a set of mutually exclusive disjoint subvertices and a set of transitions. A given state may only be decomposed in one of these two ways.
-
-Any state enclosed within a region of a composite state is called a substate of that composite state. It is called a direct substate when it is not contained by any other state; otherwise it is referred to as a indirect substate.
-
-Each region of a composite state may have an initial pseudostate and a final state. A transition to the enclosing state represents a transition to the initial pseudostate in each region. A newly-created object takes it's topmost default transitions, originating from the topmost initial pseudostates of each region.
-
-
-
-A transition to a final state represents the completion of behavior in the enclosing region. Completion of behavior in all orthogonal regions represents completion of behavior by the enclosing state and triggers a completion event on the enclosing state. Completion of the topmost regions of an object corresponds to its termination.
-
-
-
-An entry pseudostate is used to join an external transition terminating on that entry point to an internal transition emanating from that entry point. An exit pseudostate is used to join an internal transition terminating on that exit point to an external transition emanating from that exit point. The main purpose of such entry and exit points is to execute the state entry and exit actions respectively in between the actions that are associated with the joined transitions.
-
-
-
-Semantic variation point (default entry rule)
-
-If a transition terminates on an enclosing state and the enclosed regions do not have an initial pseudostate, the interpretation of this situation is a semantic variation point. In some interpretations, this is considered an ill-formed model. That is, in those cases the initial pseudostate is mandatory.
-
-An alternative interpretation allows this situation and it means that, when such a transition is taken, the state machine stays in the composite state, without entering any of the regions or their substates.
-
-
-
-Submachine state
-
-A submachine state specifies the insertion of the specification of a submachine state machine. The state machine that contains the submachine state is called the containing state machine. The same state machine may be a submachine more than once in the context of a single containing state machine.
-
-
-
-A submachine state is semantically equivalent to a composite state. The regions of the submachine state machine are the regions of the composite state. The entry, exit and behavior actions, and internal transitions, are defined as part of the state. Submachine state is a decomposition mechanism that allows factoring of common behaviors and their reuse.
-
-Transitions in the containing state machine can have entry/exit points of the inserted state machine as targets/sources.
-
+ <body>A state models a situation during which some (usually implicit) invariant condition holds. The invariant may represent a static situation such as an object waiting for some external event to occur. However, it can also model dynamic conditions such as the process of performing some behavior (i.e., the model element under consideration enters the state when the behavior commences and leaves it as soon as the behavior is completed). The following kinds of states are distinguished:&#xD;
+o Simple state,&#xD;
+o composite state, and&#xD;
+o submachine state.&#xD;
+A composite state is either a simple composite state (with just one region) or an orthogonal state (with more than one region).&#xD;
+&#xD;
+Simple state&#xD;
+A simple state is a state that does not have substates, i.e. it has no regions and it has no submachine state machine.&#xD;
+&#xD;
+Composite state&#xD;
+A composite state either contains one region or is decomposed into two or more orthogonal regions. Each region has a set of mutually exclusive disjoint subvertices and a set of transitions. A given state may only be decomposed in one of these two ways. &#xD;
+Any state enclosed within a region of a composite state is called a substate of that composite state. It is called a direct substate when it is not contained by any other state; otherwise it is referred to as a indirect substate. &#xD;
+Each region of a composite state may have an initial pseudostate and a final state. A transition to the enclosing state represents a transition to the initial pseudostate in each region. A newly-created object takes it's topmost default transitions, originating from the topmost initial pseudostates of each region.&#xD;
+&#xD;
+A transition to a final state represents the completion of behavior in the enclosing region. Completion of behavior in all orthogonal regions represents completion of behavior by the enclosing state and triggers a completion event on the enclosing state. Completion of the topmost regions of an object corresponds to its termination.&#xD;
+&#xD;
+An entry pseudostate is used to join an external transition terminating on that entry point to an internal transition emanating from that entry point. An exit pseudostate is used to join an internal transition terminating on that exit point to an external transition emanating from that exit point. The main purpose of such entry and exit points is to execute the state entry and exit actions respectively in between the actions that are associated with the joined transitions.&#xD;
+&#xD;
+Semantic variation point (default entry rule)&#xD;
+If a transition terminates on an enclosing state and the enclosed regions do not have an initial pseudostate, the interpretation of this situation is a semantic variation point. In some interpretations, this is considered an ill-formed model. That is, in those cases the initial pseudostate is mandatory. &#xD;
+An alternative interpretation allows this situation and it means that, when such a transition is taken, the state machine stays in the composite state, without entering any of the regions or their substates.&#xD;
+&#xD;
+Submachine state&#xD;
+A submachine state specifies the insertion of the specification of a submachine state machine. The state machine that contains the submachine state is called the containing state machine. The same state machine may be a submachine more than once in the context of a single containing state machine.&#xD;
+&#xD;
+A submachine state is semantically equivalent to a composite state. The regions of the submachine state machine are the regions of the composite state. The entry, exit and behavior actions, and internal transitions, are defined as part of the state. Submachine state is a decomposition mechanism that allows factoring of common behaviors and their reuse.&#xD;
+Transitions in the containing state machine can have entry/exit points of the inserted state machine as targets/sources.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_se2D0xTaEdqZu-3Jy1-uYg" name="submachine_states" constrainedElement="_3ADC7B74022D3287F81C0136">
@@ -13271,7 +12957,7 @@ Transitions in the containing state machine can have entry/exit points of the in
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_se2D3RTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>self.isSubmachineState implies (self.connection->forAll (cp |&#xA;&#xA;cp.entry->forAll (p | p.statemachine = self.submachine) and&#xA;&#xA;cp.exit->forAll (p | p.statemachine = self.submachine)))</body>
+ <body>self.isSubmachineState implies (self.connection->forAll (cp |&#xD;&#xA;cp.entry->forAll (p | p.statemachine = self.submachine) and&#xD;&#xA;cp.exit->forAll (p | p.statemachine = self.submachine)))</body>
</specification>
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_se2D5RTaEdqZu-3Jy1-uYg" name="submachine_or_regions" constrainedElement="_3ADC7B74022D3287F81C0136">
@@ -13377,8 +13063,7 @@ Transitions in the containing state machine can have entry/exit points of the in
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3DFF235A01E8" name="stateInvariant" type="_3ADC7B74022D3CAAED67023C" aggregation="composite" subsettedProperty="_3ADC7B74022D3CAAEEA60187" association="_3ADC7B74022D3DFF235701F7">
<ownedComment xmi:type="uml:Comment" xmi:id="_sia8QRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DFF235A01E8">
- <body>Specifies conditions that are always true when this state is the current state. In protocol state machines, state invariants are additional conditions to the preconditions of the outgoing transitions, and to the postcondition of the incoming transitions.
-
+ <body>Specifies conditions that are always true when this state is the current state. In protocol state machines, state invariants are additional conditions to the preconditions of the outgoing transitions, and to the postcondition of the incoming transitions.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sia8RRTaEdqZu-3Jy1-uYg" value="1"/>
@@ -13386,8 +13071,7 @@ Transitions in the containing state machine can have entry/exit points of the in
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D410DA7800057" name="entry" type="_3ADC7B74022D3B9A6F4F0008" aggregation="composite" subsettedProperty="_3ADC7B74022D3CAAEEA60187" association="_3ADC7B74022D410DA77F0006">
<ownedComment xmi:type="uml:Comment" xmi:id="_sia8VRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D410DA7800057">
- <body>An optional behavior that is executed whenever this state is entered regardless of the transition taken to reach the state. If defined, entry actions are always executed to completion prior to any internal behavior or transitions performed within the state.
-
+ <body>An optional behavior that is executed whenever this state is entered regardless of the transition taken to reach the state. If defined, entry actions are always executed to completion prior to any internal behavior or transitions performed within the state.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sia8WRTaEdqZu-3Jy1-uYg" value="1"/>
@@ -13416,8 +13100,7 @@ Transitions in the containing state machine can have entry/exit points of the in
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D4162AE0F02CD" name="deferrableTrigger" type="_3ADC7B74022D3B9D229602A5" aggregation="composite" association="_3ADC7B74022D4162AE0E0361">
<ownedComment xmi:type="uml:Comment" xmi:id="_sikGUxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D4162AE0F02CD">
- <body>A list of triggers that are candidates to be retained by the state machine if they trigger no transitions out of the state (not consumed). A deferred trigger is retained until the state machine reaches a state configuration where it is no longer deferred.
-
+ <body>A list of triggers that are candidates to be retained by the state machine if they trigger no transitions out of the state (not consumed). A deferred trigger is retained until the state machine reaches a state configuration where it is no longer deferred.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sit3MxTaEdqZu-3Jy1-uYg" value="*"/>
@@ -13585,7 +13268,7 @@ Transitions in the containing state machine can have entry/exit points of the in
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sflqvBTaEdqZu-3Jy1-uYg" name="initial_transition" constrainedElement="_3ADC7B74022D3288D70A0212">
<ownedComment xmi:type="uml:Comment" xmi:id="_sflquBTaEdqZu-3Jy1-uYg" annotatedElement="_sflqvBTaEdqZu-3Jy1-uYg">
- <body>An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype “create”.</body>
+ <body>An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype «create».</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_sflqvRTaEdqZu-3Jy1-uYg">
<language>OCL</language>
@@ -13594,8 +13277,7 @@ Transitions in the containing state machine can have entry/exit points of the in
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sflqxRTaEdqZu-3Jy1-uYg" name="signatures_compatible" constrainedElement="_3ADC7B74022D3288D70A0212">
<ownedComment xmi:type="uml:Comment" xmi:id="_sflqwRTaEdqZu-3Jy1-uYg" annotatedElement="_sflqxRTaEdqZu-3Jy1-uYg">
- <body>In case of more than one trigger, the signatures of these must be compatible in case the parameters of the signal are assigned to local variables/attributes.
-
+ <body>In case of more than one trigger, the signatures of these must be compatible in case the parameters of the signal are assigned to local variables/attributes.&#xD;
</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_sflqxhTaEdqZu-3Jy1-uYg">
@@ -13686,7 +13368,7 @@ Transitions in the containing state machine can have entry/exit points of the in
<ownedRule xmi:type="uml:Constraint" xmi:id="_sflq2BTaEdqZu-3Jy1-uYg" name="spec" constrainedElement="_3ADC7B74022D4300F9C70261">
<specification xmi:type="uml:OpaqueExpression" xmi:id="_sflq2RTaEdqZu-3Jy1-uYg">
<language>OCL</language>
- <body>result = (redefinee.oclIsKindOf(Transition) and&#xA;&#xA; let trans: Transition = redefinee.oclAsType(Transition) in&#xA;&#xA; (source() = trans.source() and trigger() = tran.trigger())</body>
+ <body>result = (redefinee.oclIsKindOf(Transition) and&#xD;&#xA; let trans: Transition = redefinee.oclAsType(Transition) in&#xD;&#xA; (source() = trans.source() and trigger() = tran.trigger())</body>
</specification>
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_tZ6x8DZ5Edqq1tCaRkgBQQ" constrainedElement="_3ADC7B74022D4300F9C70261">
@@ -13834,7 +13516,7 @@ Transitions in the containing state machine can have entry/exit points of the in
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_fhQwgTavEdqq1tCaRkgBQQ">
<language>OCL</language>
- <body>(self.kind = #initial) implies (self.outgoing.guard->isEmpty()&#xA;&#xA; and self.outgoing.trigger->isEmpty())</body>
+ <body>(self.kind = #initial) implies (self.outgoing.guard->isEmpty()&#xD;&#xA; and self.outgoing.trigger->isEmpty())</body>
</specification>
</ownedRule>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D328A4901001E" general="_3ADC7B74022D328A484303D4"/>
@@ -14119,18 +13801,17 @@ Transitions in the containing state machine can have entry/exit points of the in
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3B94B827009C" name="PseudostateKind">
<ownedComment xmi:type="uml:Comment" xmi:id="_sgVRuBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B94B827009C">
- <body>PseudoStateKind is an enumeration of the following literal values:
-• initial
-• deepHistory
-• shallowHistory
-• join
-• fork
-• junction
-• choice
-• entryPoint
-• exitPoint
-• terminate
-</body>
+ <body>PseudoStateKind is an enumeration of the following literal values:&#xD;
+ - initial&#xD;
+ - deepHistory&#xD;
+ - shallowHistory&#xD;
+ - join&#xD;
+ - fork&#xD;
+ - junction&#xD;
+ - choice&#xD;
+ - entryPoint&#xD;
+ - exitPoint&#xD;
+ - terminate</body>
</ownedComment>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_3ADC7B74022D3B94B8BB0059" name="initial">
<ownedComment xmi:type="uml:Comment" xmi:id="_sgebgxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B94B8BB0059">
@@ -14154,14 +13835,13 @@ Transitions in the containing state machine can have entry/exit points of the in
</ownedLiteral>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_3ADC7B74022D3B94B91D03C1" name="fork">
<ownedComment xmi:type="uml:Comment" xmi:id="_sgebkxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B94B91D03C1">
- <body>Fork vertices serve to split an incoming transition into two or more transitions terminating on orthogonal target vertices
-
+ <body>Fork vertices serve to split an incoming transition into two or more transitions terminating on orthogonal target vertices&#xD;
(i.e. vertices in different regions of a composite state). The segments outgoing from a fork vertex must not have guards or triggers.</body>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_3ADC7B74022D3B94B9320259" name="junction">
<ownedComment xmi:type="uml:Comment" xmi:id="_sgeblxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B94B9320259">
- <body>Junction vertices are semantic-free vertices that are used to chain together multiple transitions. They are used to construct compound transition paths between states. For example, a junction can be used to converge multiple incoming transitions into a single outgoing transition representing a shared transition path (this is known as an merge). Conversely, they can be used to split an incoming transition into multiple outgoing transition segments with different guard conditions. This realizes a static conditional branch. (In the latter case, outgoing transitions whose guard conditions evaluate to false are disabled. A predefined guard denoted “else” may be defined for at most one outgoing transition. This transition is enabled if all the guards labeling the other transitions are false.) Static conditional branches are distinct from dynamic conditional branches that are realized by choice vertices (described below).</body>
+ <body>Junction vertices are semantic-free vertices that are used to chain together multiple transitions. They are used to construct compound transition paths between states. For example, a junction can be used to converge multiple incoming transitions into a single outgoing transition representing a shared transition path (this is known as an merge). Conversely, they can be used to split an incoming transition into multiple outgoing transition segments with different guard conditions. This realizes a static conditional branch. (In the latter case, outgoing transitions whose guard conditions evaluate to false are disabled. A predefined guard denoted 'else' may be defined for at most one outgoing transition. This transition is enabled if all the guards labeling the other transitions are false.) Static conditional branches are distinct from dynamic conditional branches that are realized by choice vertices (described below).</body>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_3ADC7B74022D3B94B95A03D3" name="choice">
@@ -14187,11 +13867,10 @@ Transitions in the containing state machine can have entry/exit points of the in
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3E5B99180230" name="TransitionKind">
<ownedComment xmi:type="uml:Comment" xmi:id="_sg7HghTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E5B99180230">
- <body>TransitionKind is an enumeration of the following literal values:
-• external
-• internal
-• local
-</body>
+ <body>TransitionKind is an enumeration of the following literal values:&#xD;
+ - external&#xD;
+ - internal&#xD;
+ - local</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_SCBXQDZ6Edqq1tCaRkgBQQ" name="state_is_local" constrainedElement="_3ADC7B74022D3E5B99180230">
<ownedComment xmi:type="uml:Comment" xmi:id="_hy09kDZ6Edqq1tCaRkgBQQ" annotatedElement="_SCBXQDZ6Edqq1tCaRkgBQQ">
@@ -14374,16 +14053,11 @@ Transitions in the containing state machine can have entry/exit points of the in
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_HPusYxTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D3BAF164701DA"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3BCAE87800C1" name="ProtocolConformance">
<ownedComment xmi:type="uml:Comment" xmi:id="_sjAyKhTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3BCAE87800C1">
- <body>Protocol state machines can be redefined into more specific protocol state machines, or into behavioral state machines.
-
-
-
-Protocol conformance declares that the specific protocol state machine specifies a protocol that conforms to the general state machine one, or that the specific behavioral state machine abide by the protocol of the general protocol state machine.
-
-
-
-A protocol state machine is owned by a classifier. The classifiers owning a general state machine and an associated specific state machine are generally also connected by a generalization or a realization link.
-
+ <body>Protocol state machines can be redefined into more specific protocol state machines, or into behavioral state machines.&#xD;
+&#xD;
+Protocol conformance declares that the specific protocol state machine specifies a protocol that conforms to the general state machine one, or that the specific behavioral state machine abide by the protocol of the general protocol state machine.&#xD;
+&#xD;
+A protocol state machine is owned by a classifier. The classifiers owning a general state machine and an associated specific state machine are generally also connected by a generalization or a realization link.&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3E1D396902DC" general="_3ADC7B74022D3CAAEC1902BE"/>
@@ -14429,12 +14103,9 @@ A protocol state machine is owned by a classifier. The classifiers owning a gene
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3B208BE80384" name="ProtocolTransition">
<ownedComment xmi:type="uml:Comment" xmi:id="_sjKjIRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B208BE80384">
- <body>A protocol transition (transition as specialized in the ProtocolStateMachines package) specifies a legal transition for an operation. Transitions of protocol state machines have the following information: a pre condition (guard), on trigger, and a post condition. Every protocol transition is associated to zero or one operation (referred BehavioralFeature) that belongs to the context classifier of the protocol state machine.
-
-
-
-The protocol transition specifies that the associated (referred) operation can be called for an instance in the origin state under the initial condition (guard), and that at the end of the transition, the destination state will be reached under the final condition (post).
-
+ <body>A protocol transition (transition as specialized in the ProtocolStateMachines package) specifies a legal transition for an operation. Transitions of protocol state machines have the following information: a pre condition (guard), on trigger, and a post condition. Every protocol transition is associated to zero or one operation (referred BehavioralFeature) that belongs to the context classifier of the protocol state machine.&#xD;
+&#xD;
+The protocol transition specifies that the associated (referred) operation can be called for an instance in the origin state under the initial condition (guard), and that at the end of the transition, the destination state will be reached under the final condition (post).&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sjKjKhTaEdqZu-3Jy1-uYg" name="belongs_to_psm" constrainedElement="_3ADC7B74022D3B208BE80384">
@@ -14467,8 +14138,7 @@ The protocol transition specifies that the associated (referred) operation can b
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3E11ED8200A0" general="_3ADC7B74022D3288D70A0212"/>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3CE2B1F701C6" name="postCondition" type="_3ADC7B74022D3CAAED67023C" aggregation="composite" subsettedProperty="_3ADC7B74022D3CAAF5A9017E" association="_3ADC7B74022D3CE2B1F60356">
<ownedComment xmi:type="uml:Comment" xmi:id="_sjnPIBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CE2B1F701C6">
- <body>Specifies the post condition of the transition which is the condition that should be obtained once the transition is triggered. This post condition is part of the post condition of the operation connected to the transition.
-
+ <body>Specifies the post condition of the transition which is the condition that should be obtained once the transition is triggered. This post condition is part of the post condition of the operation connected to the transition.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sjnPJBTaEdqZu-3Jy1-uYg" value="1"/>
@@ -14622,13 +14292,10 @@ The protocol transition specifies that the associated (referred) operation can b
<packageMerge xmi:type="uml:PackageMerge" xmi:id="_HISAkBTbEdqZu-3Jy1-uYg" mergedPackage="_3ADC7B74022D335C122001A4"/>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D33656C0B017C" name="Actor">
<ownedComment xmi:type="uml:Comment" xmi:id="_sdDUGRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D33656C0B017C">
- <body>An Actor models a type of role played by an entity that interacts with the subject (e.g., by exchanging signals and data), but which is external to the subject (i.e., in the sense that an instance of an actor is not a part of the instance of its corresponding subject). Actors may represent roles played by human users, external hardware, or other subjects. Note that an actor does not necessarily represent a specific physical entity but merely a particular facet (i.e., “role”) of some entity that is relevant to the specification of its associated use cases. Thus, a single physical instance may play the role of several different actors and, conversely, a given actor may be played by multiple different instances.
-
-
-
-Since an actor is external to the subject, it is typically defined in the same classifier or package that incorporates the subject classifier.
-
-</body>
+ <body>An Actor models a type of role played by an entity that interacts with the subject (e.g., by exchanging signals and data), but which is external to the subject (i.e., in the sense that an instance of an actor is not a part of the instance of its corresponding subject). Actors may represent roles played by human users, external hardware, or other subjects. &#xD;
+Note that an actor does not necessarily represent a specific physical entity but merely a particular facet (i.e., role) of some entity that is relevant to the specification of its associated use cases. Thus, a single physical instance may play the role of several different actors and, conversely, a given actor may be played by multiple different instances.&#xD;
+&#xD;
+Since an actor is external to the subject, it is typically defined in the same classifier or package that incorporates the subject classifier.</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sdDUIhTaEdqZu-3Jy1-uYg" name="associations" constrainedElement="_3ADC7B74022D33656C0B017C">
<ownedComment xmi:type="uml:Comment" xmi:id="_sdDUHhTaEdqZu-3Jy1-uYg" annotatedElement="_sdDUIhTaEdqZu-3Jy1-uYg">
@@ -14652,24 +14319,17 @@ Since an actor is external to the subject, it is typically defined in the same c
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D35FDD683021C" name="Extend">
<ownedComment xmi:type="uml:Comment" xmi:id="_sdNFGRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D35FDD683021C">
- <body>This relationship specifies that the behavior of a use case may be extended by the behavior of another (usually supplementary) use case. The extension takes place at one or more specific extension points defined in the extended use case. Note, however, that the extended use case is defined independently of the extending use case and is meaningful independently of the extending use case. On the other hand, the extending use case typically defines behavior that may not necessarily be meaningful by itself. Instead, the extending use case defines a set of modular behavior increments that augment an execution of the extended use case under specific conditions.
-
-
-
-Note that the same extending use case can extend more than one use case. Furthermore, an extending use case may itself be extended.
-
-
-
-It is a kind of DirectedRelationship, such that the source is the extending use case and the destination is the extended use case. It is also a kind of NamedElement so that it can have a name in the context of its owning use case. The extend relationship itself is owned by the extending use case.
-
+ <body>This relationship specifies that the behavior of a use case may be extended by the behavior of another (usually supplementary) use case. The extension takes place at one or more specific extension points defined in the extended use case. Note, however, that the extended use case is defined independently of the extending use case and is meaningful independently of the extending use case. On the other hand, the extending use case typically defines behavior that may not necessarily be meaningful by itself. Instead, the extending use case defines a set of modular behavior increments that augment an execution of the extended use case under specific conditions.&#xD;
+&#xD;
+Note that the same extending use case can extend more than one use case. Furthermore, an extending use case may itself be extended.&#xD;
+&#xD;
+It is a kind of DirectedRelationship, such that the source is the extending use case and the destination is the extended use case. It is also a kind of NamedElement so that it can have a name in the context of its owning use case. The extend relationship itself is owned by the extending use case.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sdNFIxTaEdqZu-3Jy1-uYg" name="extension_points" constrainedElement="_3ADC7B74022D35FDD683021C">
<ownedComment xmi:type="uml:Comment" xmi:id="_sdNFHxTaEdqZu-3Jy1-uYg" annotatedElement="_sdNFIxTaEdqZu-3Jy1-uYg">
- <body>The extension points referenced by the extend relationship must belong to the use case that is being extended.
-
-
-
+ <body>The extension points referenced by the extend relationship must belong to the use case that is being extended.&#xD;
+&#xD;
</body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_sdNFJBTaEdqZu-3Jy1-uYg">
@@ -14695,8 +14355,7 @@ It is a kind of DirectedRelationship, such that the source is the extending use
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3C8C9F020006" name="condition" type="_3ADC7B74022D3CAAED67023C" aggregation="composite" subsettedProperty="_3ADC7B74022D3CAAEEA60187" association="_3ADC7B74022D3C8C9F00027A">
<ownedComment xmi:type="uml:Comment" xmi:id="_sdy7DBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3C8C9F020006">
- <body>References the condition that must hold when the first extension point is reached for the extension to take place. If no constraint is associated with the extend relationship, the extension is unconditional.
-
+ <body>References the condition that must hold when the first extension point is reached for the extension to take place. If no constraint is associated with the extend relationship, the extension is unconditional.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sd8r8xTaEdqZu-3Jy1-uYg" value="1"/>
@@ -14704,8 +14363,7 @@ It is a kind of DirectedRelationship, such that the source is the extending use
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3D289638024F" name="extensionLocation" type="_3ADC7B74022D3C8C9E4B0284" isOrdered="true" association="_3ADC7B74022D3D289635029B">
<ownedComment xmi:type="uml:Comment" xmi:id="_sd8r-RTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D289638024F">
- <body>An ordered list of extension points belonging to the extended use case, specifying where the respective behavioral fragments of the extending use case are to be inserted. The first fragment in the extending use case is associated with the first extension point in the list, the second fragment with the second point, and so on. (Note that, in most practical cases, the extending use case has just a single behavior fragment, so that the list of extension points is trivial.)
-
+ <body>An ordered list of extension points belonging to the extended use case, specifying where the respective behavioral fragments of the extending use case are to be inserted. The first fragment in the extending use case is associated with the first extension point in the list, the second fragment with the second point, and so on. (Note that, in most practical cases, the extending use case has just a single behavior fragment, so that the list of extension points is trivial.)&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sd8r_RTaEdqZu-3Jy1-uYg" value="*"/>
@@ -14714,10 +14372,8 @@ It is a kind of DirectedRelationship, such that the source is the extending use
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D35FDD6900154" name="Include">
<ownedComment xmi:type="uml:Comment" xmi:id="_sdNFKBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D35FDD6900154">
- <body>Note that the included use case is not optional, and is always required for the including use case to execute correctly.
-
-
-
+ <body>Note that the included use case is not optional, and is always required for the including use case to execute correctly.&#xD;
+&#xD;
</body>
</ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_3ADC7B74022D3634CF2B02C6" general="_3ADC7B74022D3CAAEC1902BE"/>
@@ -14731,8 +14387,7 @@ It is a kind of DirectedRelationship, such that the source is the extending use
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_3ADC7B74022D3C1F05E000EB" name="addition" type="_3ADC7B74022D3C1F02440042" subsettedProperty="_3ADC7B74022D3CAAEF470200" association="_3ADC7B74022D3C1F05DF0252">
<ownedComment xmi:type="uml:Comment" xmi:id="_sdpxERTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3C1F05E000EB">
- <body>References the use case that is to be included.
-
+ <body>References the use case that is to be included.&#xD;
</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sdpxFRTaEdqZu-3Jy1-uYg" value="1"/>
@@ -14741,22 +14396,14 @@ It is a kind of DirectedRelationship, such that the source is the extending use
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3ADC7B74022D3C1F02440042" name="UseCase">
<ownedComment xmi:type="uml:Comment" xmi:id="_sdNFLhTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3C1F02440042">
- <body>A UseCase is a kind of behaviored classifier that represents a declaration of an offered behavior. Each use case specifies some behavior, possibly including variants, that the subject can perform in collaboration with one or more actors. Use cases define the offered behavior of the subject without reference to its internal structure. These behaviors, involving
-
-interactions between the actor and the subject, may result in changes to the state of the subject and communications with its environment. A use case can include possible variations of its basic behavior, including exceptional behavior and error handling.
-
-
-
-The subject of a use case could be a physical system or any other element that may have behavior, such as a component, subsystem or class. Each use case specifies a unit of useful functionality that the subject provides to its users, i.e., a specific way of interacting with the subject. This functionality, which is initiated by an actor, must always be completed for the use case to complete. It is deemed complete if, after its execution, the subject will be in a state in which no further inputs or actions are expected and the use case can be initiated again or in an error state.
-
-
-
-Use cases can be used both for specification of the (external) requirements on a subject and for the specification of the functionality offered by a subject. Moreover, the use cases also state the requirements the specified subject poses on its environment by defining how they should interact with the subject so that it will be able to perform its services.
-
-
-
-The behavior of a use case can be described by a specification that is some kind of Behavior (through its ownedBehavior relationship), such as interactions, activities, and state machines, or by pre-conditions and post-conditions as well as by natural language text where appropriate. It may also be described indirectly through a Collaboration that uses the use case and its actors as the classifiers that type its parts. Which of these techniques to use depends on the nature of the use case behavior as well as on the intended reader. These descriptions can be combined.
-
+ <body>A UseCase is a kind of behaviored classifier that represents a declaration of an offered behavior. Each use case specifies some behavior, possibly including variants, that the subject can perform in collaboration with one or more actors. Use cases define the offered behavior of the subject without reference to its internal structure. These behaviors, involving&#xD;
+interactions between the actor and the subject, may result in changes to the state of the subject and communications with its environment. A use case can include possible variations of its basic behavior, including exceptional behavior and error handling.&#xD;
+&#xD;
+The subject of a use case could be a physical system or any other element that may have behavior, such as a component, subsystem or class. Each use case specifies a unit of useful functionality that the subject provides to its users, i.e., a specific way of interacting with the subject. This functionality, which is initiated by an actor, must always be completed for the use case to complete. It is deemed complete if, after its execution, the subject will be in a state in which no further inputs or actions are expected and the use case can be initiated again or in an error state.&#xD;
+&#xD;
+Use cases can be used both for specification of the (external) requirements on a subject and for the specification of the functionality offered by a subject. Moreover, the use cases also state the requirements the specified subject poses on its environment by defining how they should interact with the subject so that it will be able to perform its services.&#xD;
+&#xD;
+The behavior of a use case can be described by a specification that is some kind of Behavior (through its ownedBehavior relationship), such as interactions, activities, and state machines, or by pre-conditions and post-conditions as well as by natural language text where appropriate. It may also be described indirectly through a Collaboration that uses the use case and its actors as the classifiers that type its parts. Which of these techniques to use depends on the nature of the use case behavior as well as on the intended reader. These descriptions can be combined.&#xD;
</body>
</ownedComment>
<ownedRule xmi:type="uml:Constraint" xmi:id="_sdWPCBTaEdqZu-3Jy1-uYg" name="must_have_name" constrainedElement="_3ADC7B74022D3C1F02440042">
@@ -14936,115 +14583,115 @@ The behavior of a use case can be described by a specification that is some kind
<appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
</profileApplication>
</uml:Model>
- <Ecore:EAttribute xmi:id="_Y5mRwMWCEdqI1bY5Lwi8Hg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D41AF6DCF011E"/>
- <Ecore:EAttribute xmi:id="_Y5mRwcWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D41AF6E0300D3"/>
- <Ecore:EReference xmi:id="_Y5mRwsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3D716DC100E9"/>
- <Ecore:EReference xmi:id="_Y5mRw8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3D716DF5031E"/>
- <Ecore:EReference xmi:id="_Y5mRxMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DF3D8E90137"/>
- <Ecore:EReference xmi:id="_Y5mRxcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3C7C242F00F0"/>
- <Ecore:EReference xmi:id="_Y5mRxsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3C7C242F001E"/>
- <Ecore:EReference xmi:id="_Y5mRx8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41B9A2B20315"/>
- <Ecore:EReference xmi:id="_Y5vbsMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41B9A15A02F2"/>
- <Ecore:EReference xmi:id="_Y5vbscWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41B9A15A02F4"/>
- <Ecore:EReference xmi:id="_Y5vbssWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41B9A2B2031F"/>
- <Ecore:EAttribute xmi:id="_Y5vbs8WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D4063FB930031"/>
- <Ecore:EReference xmi:id="_Y5vbtMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41BDACD90276"/>
- <Ecore:EReference xmi:id="_Y5vbtcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41BDACD9026C"/>
- <Ecore:EReference xmi:id="_Y5vbtsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E441FC901D0"/>
- <Ecore:EReference xmi:id="_Y5vbt8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41BD7B8A008A"/>
- <Ecore:EReference xmi:id="_Y5vbuMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41BD7B8A0094"/>
- <Ecore:EReference xmi:id="_Y55MsMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41BDADE90317"/>
- <Ecore:EReference xmi:id="_Y55MscWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41BDADE90322"/>
- <Ecore:EReference xmi:id="_Y55MssWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D410D08ED01B7"/>
- <Ecore:EReference xmi:id="_Y55Ms8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D410D0A3403E6"/>
- <Ecore:EReference xmi:id="_Y55MtMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D410D0A350008"/>
- <Ecore:EReference xmi:id="_Y55MtcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D410D08ED01B5"/>
- <Ecore:EAttribute xmi:id="_Y55MtsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_k3pScEfeEdq0rbStTpEubg"/>
- <Ecore:EAttribute xmi:id="_Y55Mt8WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3D2C32860188"/>
- <Ecore:EReference xmi:id="_Y55MuMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D4127B15000BD"/>
- <Ecore:EReference xmi:id="_Y6C9sMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CAAEEA60187"/>
- <Ecore:EReference xmi:id="_Y6C9scWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CAAEEA60189"/>
- <Ecore:EAttribute xmi:id="_Y6C9ssWCEdqI1bY5Lwi8Hg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D3CAC07D800D7"/>
- <Ecore:EReference xmi:id="_Y6C9s8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CAAEEF70165"/>
- <Ecore:EReference xmi:id="_Y6C9tMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CAAEF470200"/>
- <Ecore:EAttribute xmi:id="_Y6C9tcWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3CAAF00E0351" isID="true"/>
- <Ecore:EAttribute xmi:id="_Y6C9tsWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3CAAF02203B4"/>
- <Ecore:EAttribute xmi:id="_Y6C9t8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CAAF0300219"/>
- <Ecore:EReference xmi:id="_Y6C9uMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CAAF0B00232"/>
- <Ecore:EAttribute xmi:id="_Y6C9ucWCEdqI1bY5Lwi8Hg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D41AF34430265"/>
- <Ecore:EAttribute xmi:id="_Y6C9usWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D41AF3484006A"/>
- <Ecore:EAttribute xmi:id="_Y6C9u8WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3CB5DEA0029E"/>
- <Ecore:EAttribute xmi:id="_Y6C9vMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3CBBE2E9024C"/>
- <Ecore:EAttribute xmi:id="_Y6C9vcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFFB238029B"/>
- <Ecore:EAttribute xmi:id="_Y6MHoMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFFB2640028"/>
- <Ecore:EOperation xmi:id="_Y6MHocWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D4300D208038A" operationName="getLower"/>
- <Ecore:EOperation xmi:id="_Y6MHosWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D4300D20E00CB" operationName="getUpper"/>
- <Ecore:EReference xmi:id="_Y6MHo8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CAB04790307"/>
- <Ecore:EReference xmi:id="_Y6MHpMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CAB02DF02A3"/>
- <Ecore:EReference xmi:id="_Y6MHpcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CAB21AF0364"/>
- <Ecore:EReference xmi:id="_Y6MHpsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E026F600201"/>
- <Ecore:EOperation xmi:id="_Y6MHp8WCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D4300CD890196" operationName="getGenerals"/>
- <Ecore:EOperation xmi:id="_Y6MHqMWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D4300CDD6036B" operationName="getInheritedMembers"/>
- <Ecore:EReference xmi:id="_Y6MHqcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CAB047902F3"/>
- <Ecore:EReference xmi:id="_Y6MHqsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E026DFA035B"/>
- <Ecore:EReference xmi:id="_Y6MHq8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E026E2C0064"/>
- <Ecore:EAttribute xmi:id="_Y6MHrMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3DF4FA43024F"/>
- <Ecore:EAttribute xmi:id="_Y6MHrcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFFCC4902FB"/>
- <Ecore:EReference xmi:id="_Y6MHrsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E0265FD0094"/>
- <Ecore:EReference xmi:id="_Y6V4oMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E02674A0088"/>
- <Ecore:EReference xmi:id="_Y6V4ocWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E02674A00A6"/>
- <Ecore:EReference xmi:id="_Y6V4osWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E027BEB00C8"/>
- <Ecore:EAttribute xmi:id="_Y6V4o8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFFC10401EE"/>
- <Ecore:EAttribute xmi:id="_Y6V4pMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFFC66A0368"/>
- <Ecore:EReference xmi:id="_Y6V4pcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DFFC0A002E5"/>
- <Ecore:EOperation xmi:id="_Y6V4psWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D4300DA23034B" operationName="getOpposite"/>
- <Ecore:EAttribute xmi:id="_Y6V4p8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E04B1B500F0"/>
- <Ecore:EAttribute xmi:id="_Y6V4qMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E04B1BD0137"/>
- <Ecore:EAttribute xmi:id="_Y6V4qcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E04B1CF009D"/>
- <Ecore:EAttribute xmi:id="_Y6V4qsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E04B1C20171"/>
- <Ecore:EReference xmi:id="_Y6V4q8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E0282460399"/>
- <Ecore:EOperation xmi:id="_Y6V4rMWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D4300D86401A5" operationName="lowerBound"/>
- <Ecore:EOperation xmi:id="_Y6V4rcWCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D4300D86A03D8" operationName="upperBound"/>
- <Ecore:EReference xmi:id="_Y6V4rsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3D51535A0358"/>
- <Ecore:EOperation xmi:id="_Y6V4r8WCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D4300CCCA006D" operationName="getEndTypes"/>
- <Ecore:EReference xmi:id="_Y6fCkMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CAAF0B00228"/>
- <Ecore:EReference xmi:id="_Y6fCkcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CAAF1D0036C"/>
- <Ecore:EReference xmi:id="_Y6fCksWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3DDD06680179"/>
- <Ecore:EOperation xmi:id="_Y6fCk8WCEdqI1bY5Lwi8Hg" base_Operation="_3ADC7B74022D4300D74101E4" operationName="getImportedMembers"/>
- <Ecore:EReference xmi:id="_Y6fClMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3D514F6E0106"/>
- <Ecore:EReference xmi:id="_Y6fClcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E0265FD01CA"/>
- <Ecore:EAttribute xmi:id="_Y6fClsWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3E5921F9017E"/>
- <Ecore:EReference xmi:id="_Y6fCl8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41BD9B210224"/>
- <Ecore:EReference xmi:id="_Y6ozkMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41BD9B210226"/>
- <Ecore:EReference xmi:id="_Y6ozkcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D40F9B6900288"/>
- <Ecore:EReference xmi:id="_Y6ozksWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3D06C90B02AF"/>
- <Ecore:EAttribute xmi:id="_Y6ozk8WCEdqI1bY5Lwi8Hg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D41AF6EF40300"/>
- <Ecore:EAttribute xmi:id="_Y6ozlMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D41AF6F25017A"/>
- <Ecore:EReference xmi:id="_Y6ozlcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E0257890057"/>
- <Ecore:EReference xmi:id="_Y6ozlsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E0257B9029B"/>
- <Ecore:EOperation xmi:id="_Y6ozl8WCEdqI1bY5Lwi8Hg" base_Operation="_xc4UQDZ9Edqq1tCaRkgBQQ" operationName="getRequireds"/>
- <Ecore:EOperation xmi:id="_Y6ozmMWCEdqI1bY5Lwi8Hg" base_Operation="_2cFjwDZ-Edqq1tCaRkgBQQ" operationName="getProvideds"/>
- <Ecore:EAttribute xmi:id="_Y6ykkMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3E0259E30107"/>
- <Ecore:EReference xmi:id="_Y6ykkcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3CCB579E00F4"/>
- <Ecore:EReference xmi:id="_Y6ykksWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3D03D15C008B"/>
- <Ecore:EReference xmi:id="_Y6ykk8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3D02623F03E2"/>
- <Ecore:EReference xmi:id="_Y6yklMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E22160503E3"/>
- <Ecore:EReference xmi:id="_Y6yklcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E0B98C901E2"/>
- <Ecore:EReference xmi:id="_Y6yklsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E2212D701CF"/>
- <Ecore:EReference xmi:id="_Y6ykl8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D41BDAA5A0141"/>
- <Ecore:EAttribute xmi:id="_Y6ykmMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3E023C610263"/>
- <Ecore:EAttribute xmi:id="_Y6ykmcWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3E023C6802FA"/>
- <Ecore:EReference xmi:id="_Y6ykmsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3E045F15011E"/>
- <Ecore:EOperation xmi:id="_Y6ykm8WCEdqI1bY5Lwi8Hg" base_Operation="_xZVGsEb0Edq0rbStTpEubg" operationName="getDeployedElements"/>
- <Ecore:EAttribute xmi:id="_Y6yknMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_3ADC7B74022D3E0330D40211"/>
- <Ecore:EAttribute xmi:id="_Y67ugMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3D05BC66015F"/>
- <Ecore:EReference xmi:id="_Y67ugcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3C63983E02AE"/>
- <Ecore:EAttribute xmi:id="_Y67ugsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3C612C28022F"/>
- <Ecore:EAttribute xmi:id="_Y67ug8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3C6136B401B9"/>
- <Ecore:EAttribute xmi:id="_Y67uhMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3C613764000E"/>
- <Ecore:EAttribute xmi:id="_Y67uhcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3C678F5300CA"/>
- <Ecore:EReference xmi:id="_Y67uhsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3D73412C0329"/>
- <Ecore:EReference xmi:id="_Y67uh8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3D73416A0300"/>
- <Ecore:EReference xmi:id="_Y7FfgMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3D733F2200E4"/>
- <Ecore:EReference xmi:id="_Y7FfgcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_3ADC7B74022D3D07F16101E5"/>
+ <Ecore:EAttribute xmi:id="_cqMKcNxrEdqEPrOCkNZ5Vg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D41AF6DCF011E"/>
+ <Ecore:EAttribute xmi:id="_cqMKcdxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D41AF6E0300D3"/>
+ <Ecore:EReference xmi:id="_cqMKctxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3D716DC100E9"/>
+ <Ecore:EReference xmi:id="_cqMKc9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3D716DF5031E"/>
+ <Ecore:EReference xmi:id="_cqMKdNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DF3D8E90137"/>
+ <Ecore:EReference xmi:id="_cqMKddxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3C7C242F00F0"/>
+ <Ecore:EReference xmi:id="_cqMKdtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3C7C242F001E"/>
+ <Ecore:EReference xmi:id="_cqMKd9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41B9A2B20315"/>
+ <Ecore:EReference xmi:id="_cqMKeNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41B9A15A02F2"/>
+ <Ecore:EReference xmi:id="_cqMKedxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41B9A15A02F4"/>
+ <Ecore:EReference xmi:id="_cqMKetxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41B9A2B2031F"/>
+ <Ecore:EAttribute xmi:id="_cqVUYNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D4063FB930031"/>
+ <Ecore:EReference xmi:id="_cqVUYdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41BDACD90276"/>
+ <Ecore:EReference xmi:id="_cqVUYtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41BDACD9026C"/>
+ <Ecore:EReference xmi:id="_cqVUY9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E441FC901D0"/>
+ <Ecore:EReference xmi:id="_cqVUZNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41BD7B8A008A"/>
+ <Ecore:EReference xmi:id="_cqVUZdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41BD7B8A0094"/>
+ <Ecore:EReference xmi:id="_cqVUZtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41BDADE90317"/>
+ <Ecore:EReference xmi:id="_cqVUZ9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41BDADE90322"/>
+ <Ecore:EReference xmi:id="_cqVUaNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D410D08ED01B7"/>
+ <Ecore:EReference xmi:id="_cqVUadxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D410D0A3403E6"/>
+ <Ecore:EReference xmi:id="_cqVUatxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D410D0A350008"/>
+ <Ecore:EReference xmi:id="_cqVUa9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D410D08ED01B5"/>
+ <Ecore:EAttribute xmi:id="_cqVUbNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_k3pScEfeEdq0rbStTpEubg"/>
+ <Ecore:EAttribute xmi:id="_cqfFYNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3D2C32860188"/>
+ <Ecore:EReference xmi:id="_cqfFYdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D4127B15000BD"/>
+ <Ecore:EReference xmi:id="_cqfFYtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CAAEEA60187"/>
+ <Ecore:EReference xmi:id="_cqfFY9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CAAEEA60189"/>
+ <Ecore:EAttribute xmi:id="_cqfFZNxrEdqEPrOCkNZ5Vg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D3CAC07D800D7"/>
+ <Ecore:EReference xmi:id="_cqfFZdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CAAEEF70165"/>
+ <Ecore:EReference xmi:id="_cqfFZtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CAAEF470200"/>
+ <Ecore:EAttribute xmi:id="_cqfFZ9xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3CAAF00E0351"/>
+ <Ecore:EAttribute xmi:id="_cqfFaNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3CAAF02203B4"/>
+ <Ecore:EAttribute xmi:id="_cqfFadxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CAAF0300219"/>
+ <Ecore:EReference xmi:id="_cqfFatxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CAAF0B00232"/>
+ <Ecore:EAttribute xmi:id="_cqfFa9xrEdqEPrOCkNZ5Vg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D41AF34430265"/>
+ <Ecore:EAttribute xmi:id="_cqfFbNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D41AF3484006A"/>
+ <Ecore:EAttribute xmi:id="_cqfFbdxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3CB5DEA0029E"/>
+ <Ecore:EAttribute xmi:id="_cqfFbtxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3CBBE2E9024C"/>
+ <Ecore:EAttribute xmi:id="_cqoPUNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFFB238029B"/>
+ <Ecore:EAttribute xmi:id="_cqoPUdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFFB2640028"/>
+ <Ecore:EOperation xmi:id="_cqoPUtxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D4300D208038A" operationName="getLower"/>
+ <Ecore:EOperation xmi:id="_cqoPU9xrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D4300D20E00CB" operationName="getUpper"/>
+ <Ecore:EReference xmi:id="_cqoPVNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CAB04790307"/>
+ <Ecore:EReference xmi:id="_cqoPVdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CAB02DF02A3"/>
+ <Ecore:EReference xmi:id="_cqoPVtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CAB21AF0364"/>
+ <Ecore:EReference xmi:id="_cqoPV9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E026F600201"/>
+ <Ecore:EOperation xmi:id="_cqoPWNxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D4300CD890196" operationName="getGenerals"/>
+ <Ecore:EOperation xmi:id="_cqoPWdxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D4300CDD6036B" operationName="getInheritedMembers"/>
+ <Ecore:EReference xmi:id="_cqoPWtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CAB047902F3"/>
+ <Ecore:EReference xmi:id="_cqoPW9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E026DFA035B"/>
+ <Ecore:EReference xmi:id="_cqoPXNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E026E2C0064"/>
+ <Ecore:EAttribute xmi:id="_cqoPXdxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3DF4FA43024F"/>
+ <Ecore:EAttribute xmi:id="_cqoPXtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFFCC4902FB"/>
+ <Ecore:EReference xmi:id="_cqoPX9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E0265FD0094"/>
+ <Ecore:EReference xmi:id="_cqoPYNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E02674A0088"/>
+ <Ecore:EReference xmi:id="_cqoPYdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E02674A00A6"/>
+ <Ecore:EReference xmi:id="_cqoPYtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E027BEB00C8"/>
+ <Ecore:EAttribute xmi:id="_cqoPY9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFFC10401EE"/>
+ <Ecore:EAttribute xmi:id="_cqyAUNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFFC66A0368"/>
+ <Ecore:EReference xmi:id="_cqyAUdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DFFC0A002E5"/>
+ <Ecore:EOperation xmi:id="_cqyAUtxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D4300DA23034B" operationName="getOpposite"/>
+ <Ecore:EAttribute xmi:id="_cqyAU9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E04B1B500F0"/>
+ <Ecore:EAttribute xmi:id="_cqyAVNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E04B1BD0137"/>
+ <Ecore:EAttribute xmi:id="_cqyAVdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E04B1CF009D"/>
+ <Ecore:EAttribute xmi:id="_cqyAVtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E04B1C20171"/>
+ <Ecore:EReference xmi:id="_cqyAV9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E0282460399"/>
+ <Ecore:EOperation xmi:id="_cqyAWNxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D4300D86401A5" operationName="lowerBound"/>
+ <Ecore:EOperation xmi:id="_cqyAWdxrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D4300D86A03D8" operationName="upperBound"/>
+ <Ecore:EReference xmi:id="_cqyAWtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3D51535A0358"/>
+ <Ecore:EOperation xmi:id="_cqyAW9xrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D4300CCCA006D" operationName="getEndTypes"/>
+ <Ecore:EReference xmi:id="_cqyAXNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CAAF0B00228"/>
+ <Ecore:EReference xmi:id="_cqyAXdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CAAF1D0036C"/>
+ <Ecore:EReference xmi:id="_cqyAXtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3DDD06680179"/>
+ <Ecore:EOperation xmi:id="_cqyAX9xrEdqEPrOCkNZ5Vg" base_Operation="_3ADC7B74022D4300D74101E4" operationName="getImportedMembers"/>
+ <Ecore:EReference xmi:id="_cqyAYNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3D514F6E0106"/>
+ <Ecore:EReference xmi:id="_cqyAYdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E0265FD01CA"/>
+ <Ecore:EAttribute xmi:id="_cqyAYtxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3E5921F9017E"/>
+ <Ecore:EReference xmi:id="_cq7xUNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41BD9B210224"/>
+ <Ecore:EReference xmi:id="_cq7xUdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41BD9B210226"/>
+ <Ecore:EReference xmi:id="_cq7xUtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D40F9B6900288"/>
+ <Ecore:EReference xmi:id="_cq7xU9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3D06C90B02AF"/>
+ <Ecore:EAttribute xmi:id="_cq7xVNxrEdqEPrOCkNZ5Vg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_3ADC7B74022D41AF6EF40300"/>
+ <Ecore:EAttribute xmi:id="_cq7xVdxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D41AF6F25017A"/>
+ <Ecore:EReference xmi:id="_cq7xVtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E0257890057"/>
+ <Ecore:EReference xmi:id="_cq7xV9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E0257B9029B"/>
+ <Ecore:EOperation xmi:id="_cq7xWNxrEdqEPrOCkNZ5Vg" base_Operation="_xc4UQDZ9Edqq1tCaRkgBQQ" operationName="getRequireds"/>
+ <Ecore:EOperation xmi:id="_cq7xWdxrEdqEPrOCkNZ5Vg" base_Operation="_2cFjwDZ-Edqq1tCaRkgBQQ" operationName="getProvideds"/>
+ <Ecore:EAttribute xmi:id="_cq7xWtxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3E0259E30107"/>
+ <Ecore:EReference xmi:id="_cq7xW9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3CCB579E00F4"/>
+ <Ecore:EReference xmi:id="_crE7QNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3D03D15C008B"/>
+ <Ecore:EReference xmi:id="_crE7QdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3D02623F03E2"/>
+ <Ecore:EReference xmi:id="_crE7QtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E22160503E3"/>
+ <Ecore:EReference xmi:id="_crE7Q9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E0B98C901E2"/>
+ <Ecore:EReference xmi:id="_crE7RNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E2212D701CF"/>
+ <Ecore:EReference xmi:id="_crE7RdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D41BDAA5A0141"/>
+ <Ecore:EAttribute xmi:id="_crE7RtxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3E023C610263"/>
+ <Ecore:EAttribute xmi:id="_crE7R9xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3E023C6802FA"/>
+ <Ecore:EReference xmi:id="_crE7SNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3E045F15011E"/>
+ <Ecore:EOperation xmi:id="_crE7SdxrEdqEPrOCkNZ5Vg" base_Operation="_xZVGsEb0Edq0rbStTpEubg" operationName="getDeployedElements"/>
+ <Ecore:EAttribute xmi:id="_crE7StxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_3ADC7B74022D3E0330D40211"/>
+ <Ecore:EAttribute xmi:id="_crE7S9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3D05BC66015F"/>
+ <Ecore:EReference xmi:id="_crE7TNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3C63983E02AE"/>
+ <Ecore:EAttribute xmi:id="_crOsQNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3C612C28022F"/>
+ <Ecore:EAttribute xmi:id="_crOsQdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3C6136B401B9"/>
+ <Ecore:EAttribute xmi:id="_crOsQtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3C613764000E"/>
+ <Ecore:EAttribute xmi:id="_crOsQ9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3C678F5300CA"/>
+ <Ecore:EReference xmi:id="_crOsRNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3D73412C0329"/>
+ <Ecore:EReference xmi:id="_crOsRdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3D73416A0300"/>
+ <Ecore:EReference xmi:id="_crOsRtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3D733F2200E4"/>
+ <Ecore:EReference xmi:id="_crOsR9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_3ADC7B74022D3D07F16101E5"/>
</xmi:XMI>
diff --git a/plugins/org.eclipse.uml2.uml/model/UML.ecore b/plugins/org.eclipse.uml2.uml/model/UML.ecore
index 1e10c7a2..b72f8e97 100644
--- a/plugins/org.eclipse.uml2.uml/model/UML.ecore
+++ b/plugins/org.eclipse.uml2.uml/model/UML.ecore
@@ -10,7 +10,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="Boolean" instanceClassName="boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Boolean is an instance of PrimitiveType. In the metamodel, Boolean defines an enumeration that denotes a logical condition. Its enumeration literals are:&#xA;&#xA; - true: The Boolean condition is satisfied.&#xA;&#xA; - false: The Boolean condition is not satisfied.&#xA;&#xA;&#xA;&#xA;It is used for Boolean attribute and Boolean expressions in the metamodel, such as OCL expression."/>
+ <details key="documentation" value="Boolean is an instance of PrimitiveType. In the metamodel, Boolean defines an enumeration that denotes a logical condition. Its enumeration literals are:&#xD;&#xA; - true = The Boolean condition is satisfied.&#xD;&#xA; - false = The Boolean condition is not satisfied.&#xD;&#xA;&#xD;&#xA;It is used for Boolean attribute and Boolean expressions in the metamodel, such as OCL expression."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="String" instanceClassName="java.lang.String">
@@ -186,7 +186,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Package" eSuperTypes="#//Namespace #//PackageableElement #//TemplateableElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A package is a namespace for its members, and may contain other packages. Only packageable elements can be owned members of a package. By virtue of being a namespace, a package can import either individual members of other packages, or all the members of other packages. In addition a package can be merged with other packages.&#xD;&#xA;A package is a namespace for its members, and may contain other packages. Only packageable elements can be owned members of a package. By virtue of being a namespace, a package can import either individual members of other packages, or all the members of other packages.&#xA;&#xA;In addition a package can be merged with other packages.&#xA;&#xA;&#xD;&#xA;A Package can have one or more ProfileApplications to indicate which profiles have been applied. Because a profile is a package, it is possible to apply a profile not only to packages, but also to profiles.&#xD;&#xA;Package specializes TemplateableElement and PackageableElement specializes ParameterableElement to specify that a package can be used as a template and a PackageableElement as a template parameter."/>
+ <details key="documentation" value="A package is a namespace for its members, and may contain other packages. Only packageable elements can be owned members of a package. By virtue of being a namespace, a package can import either individual members of other packages, or all the members of other packages. In addition a package can be merged with other packages.&#xD;&#xA;A package is a namespace for its members, and may contain other packages. Only packageable elements can be owned members of a package. By virtue of being a namespace, a package can import either individual members of other packages, or all the members of other packages.&#xD;&#xA;In addition a package can be merged with other packages.&#xD;&#xA;&#xD;&#xA;A Package can have one or more ProfileApplications to indicate which profiles have been applied. Because a profile is a package, it is possible to apply a profile not only to packages, but also to profiles.&#xD;&#xA;Package specializes TemplateableElement and PackageableElement specializes ParameterableElement to specify that a package can be used as a template and a PackageableElement as a template parameter."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="mustBeOwned" ordered="false" lowerBound="1"
@@ -331,7 +331,7 @@
</eAnnotations>
<eOperations name="has_no_qualified_name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If there is no name, or one of the containing namespaces has no name, there is no qualified name.&#xD;&#xA;(self.name->isEmpty() or self.allNamespaces()->select(ns | ns.name->isEmpty())->notEmpty())&#xA;&#xA; implies self.qualifiedName->isEmpty()"/>
+ <details key="documentation" value="If there is no name, or one of the containing namespaces has no name, there is no qualified name.&#xD;&#xA;(self.name->isEmpty() or self.allNamespaces()->select(ns | ns.name->isEmpty())->notEmpty())&#xD;&#xA; implies self.qualifiedName->isEmpty()"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -400,7 +400,7 @@
</eAnnotations>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" eType="#//String"
- unsettable="true" iD="true">
+ unsettable="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The name of the NamedElement."/>
</eAnnotations>
@@ -441,7 +441,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="VisibilityKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="VisibilityKind is an enumeration of the following literal values:&#xA;&#xA; - public&#xA;&#xA; - private&#xA;&#xA; - protected&#xA;&#xA; - package"/>
+ <details key="documentation" value="VisibilityKind is an enumeration of the following literal values:&#xD;&#xA; - public&#xD;&#xA; - private&#xD;&#xA; - protected&#xD;&#xA; - package"/>
</eAnnotations>
<eLiterals name="public">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -522,7 +522,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Namespace" abstract="true" eSuperTypes="#//NamedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A namespace has the ability to import either individial members or all members of a package, thereby making it possible to refer to those named elements without qualification in the importing namespace. In the case of conflicts, it is necessary to use qualified names or aliases to disambiguate the referenced elements.&#xD;&#xA;A namespace is a named element that can own other named elements. Each named element may be owned by at most one namespace. A namespace provides a means for identifying named elements by name. Named elements can be identified by name in a namespace either by being directly owned by the namespace or by being introduced into the namespace by other means e.g. importing or inheriting. Namespace is an abstract metaclass.&#xA;&#xA;&#xA;&#xA;A namespace can own constraints. The constraint does not necessarily apply to the namespace itself, but may also apply to elements in the namespace.&#xA;&#xA;&#xA;&#xA;A namespace has the ability to import either individual members or all members of a package, thereby making it possible to refer to those named elements without qualification in the importing namespace. In the case of conflicts, it is necessary to use qualified names or aliases to disambiguate the referenced elements.&#xA;&#xA;&#xA;&#xA;&#xD;&#xA;A namespace is a named element that can own other named elements. Each named element may be owned by at most one namespace. A namespace provides a means for identifying named elements by name. Named elements can be identified by name in a namespace either by being directly owned by the namespace or by being introduced into the namespace by other means e.g. importing or inheriting. Namespace is an abstract metaclass."/>
+ <details key="documentation" value="A namespace has the ability to import either individial members or all members of a package, thereby making it possible to refer to those named elements without qualification in the importing namespace. In the case of conflicts, it is necessary to use qualified names or aliases to disambiguate the referenced elements.&#xD;&#xA;A namespace is a named element that can own other named elements. Each named element may be owned by at most one namespace. A namespace provides a means for identifying named elements by name. Named elements can be identified by name in a namespace either by being directly owned by the namespace or by being introduced into the namespace by other means e.g. importing or inheriting. Namespace is an abstract metaclass.&#xD;&#xA;&#xD;&#xA;A namespace can own constraints. The constraint does not necessarily apply to the namespace itself, but may also apply to elements in the namespace.&#xD;&#xA;&#xD;&#xA;A namespace has the ability to import either individual members or all members of a package, thereby making it possible to refer to those named elements without qualification in the importing namespace. In the case of conflicts, it is necessary to use qualified names or aliases to disambiguate the referenced elements.&#xD;&#xA;&#xD;&#xA;&#xD;&#xA;A namespace is a named element that can own other named elements. Each named element may be owned by at most one namespace. A namespace provides a means for identifying named elements by name. Named elements can be identified by name in a namespace either by being directly owned by the namespace or by being introduced into the namespace by other means e.g. importing or inheriting. Namespace is an abstract metaclass."/>
</eAnnotations>
<eOperations name="members_distinguishable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -718,7 +718,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Constraint" eSuperTypes="#//PackageableElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.&#xA;&#xA;Constraint is a condition (a Boolean expression) that restricts the extension of the associated element beyond what is imposed by the other language constructs applied to the element. Constraint contains an optional name, although they are commonly unnamed.&#xD;&#xA;Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.&#xA;&#xA;Constraint is a condition (a Boolean expression) that restricts the extension of the associated element beyond what is imposed by the other language constructs applied to that element. Constraint contains an optional name, although they are commonly unnamed."/>
+ <details key="documentation" value="Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.&#xD;&#xA;Constraint is a condition (a Boolean expression) that restricts the extension of the associated element beyond what is imposed by the other language constructs applied to the element. Constraint contains an optional name, although they are commonly unnamed.&#xD;&#xA;Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.&#xD;&#xA;Constraint is a condition (a Boolean expression) that restricts the extension of the associated element beyond what is imposed by the other language constructs applied to that element. Constraint contains an optional name, although they are commonly unnamed."/>
</eAnnotations>
<eOperations name="not_apply_to_self" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -764,7 +764,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="specification" ordered="false"
lowerBound="1" eType="#//ValueSpecification" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A condition that must be true when evaluated in order for the constraint to be satisfied.&#xA;&#xA;&#xD;&#xA;A condition that must be true when evaluated in order for the constraint to be satisfied."/>
+ <details key="documentation" value="A condition that must be true when evaluated in order for the constraint to be satisfied.&#xD;&#xA;&#xD;&#xA;A condition that must be true when evaluated in order for the constraint to be satisfied."/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Element/ownedElement"/>
</eStructuralFeatures>
@@ -785,7 +785,7 @@
<contents xsi:type="ecore:EOperation" name="isCompatibleWith" ordered="false"
lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for ValueSpecification, the type must be conformant with the type of the specified parameterable element.&#xA;&#xA;&#xD;&#xA;result = p->oclIsKindOf(self.oclType) and self.type.conformsTo(p.oclAsType(TypedElement).type)"/>
+ <details key="documentation" value="The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for ValueSpecification, the type must be conformant with the type of the specified parameterable element.&#xD;&#xA;&#xD;&#xA;result = p->oclIsKindOf(self.oclType) and self.type.conformsTo(p.oclAsType(TypedElement).type)"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -845,7 +845,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TypedElement" abstract="true" eSuperTypes="#//NamedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A typed element is an element that has a type that serves as a constraint on the range of values the element can represent. Typed element is an abstract metaclass.&#xD;&#xA;A typed element is an element that has a type that serves as a constraint on the range of values the element can represent.&#xA;&#xA;Typed element is an abstract metaclass.&#xA;&#xA;"/>
+ <details key="documentation" value="A typed element is an element that has a type that serves as a constraint on the range of values the element can represent. Typed element is an abstract metaclass.&#xD;&#xA;A typed element is an element that has a type that serves as a constraint on the range of values the element can represent.&#xD;&#xA;Typed element is an abstract metaclass.&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="type" ordered="false" eType="#//Type">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -890,7 +890,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Association" eSuperTypes="#//Classifier #//Relationship">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An association specifies a semantic relationship that can occur between typed instances. It has at least two ends represented by properties, each of which is connected to the type of the end. More than one end of an association may have the same type.&#xA;&#xA;&#xA;&#xA;An end property of an association that is owned by an end class or that is a navigable owned end of the association indicates that the association is navigable from the opposite ends, otherwise the association is not navigable from the opposite ends."/>
+ <details key="documentation" value="An association specifies a semantic relationship that can occur between typed instances. It has at least two ends represented by properties, each of which is connected to the type of the end. More than one end of an association may have the same type.&#xD;&#xA;&#xD;&#xA;An end property of an association that is owned by an end class or that is a navigable owned end of the association indicates that the association is navigable from the opposite ends, otherwise the association is not navigable from the opposite ends."/>
</eAnnotations>
<eOperations name="specialized_end_number" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -967,7 +967,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Classifier" abstract="true" eSuperTypes="#//Namespace #//RedefinableElement #//Type #//TemplateableElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A classifier is a type. It can specify a generalization hierarchy by referencing its general classifiers. A classifier is also a namespace whose members can include features. Classifier is an abstract metaclass.&#xD;&#xA;Classifier is extended with the capability to own collaboration uses. These collaboration uses link a collaboration with the classifier to give a description of the workings of the classifier.&#xD;&#xA;Extends a classifier with the capability to own use cases. Although the owning classifier typically represents the subject to which the owned use cases apply, this is not necessarily the case. In principle, the same use case can be applied to multiple subjects, as identified by the subject association role of a UseCase.&#xD;&#xA;A classifier is a namespace whose members can include features. Classifier is an abstract metaclass.&#xA;&#xA;A classifier is a type and can own generalizations, thereby making it possible to define generalization relationships to other classifiers. A classifier can specify a generalization hierarchy by referencing its general classifiers.&#xA;&#xA;A classifier is a redefinable element, meaning that it is possible to redefine nested classifiers.&#xA;&#xA;&#xD;&#xA;A classifier can be parameterized, exposed as a formal template parameter, and specified as an actual parameter in a binding of a template."/>
+ <details key="documentation" value="A classifier is a type. It can specify a generalization hierarchy by referencing its general classifiers. A classifier is also a namespace whose members can include features. Classifier is an abstract metaclass.&#xD;&#xA;Classifier is extended with the capability to own collaboration uses. These collaboration uses link a collaboration with the classifier to give a description of the workings of the classifier.&#xD;&#xA;Extends a classifier with the capability to own use cases. Although the owning classifier typically represents the subject to which the owned use cases apply, this is not necessarily the case. In principle, the same use case can be applied to multiple subjects, as identified by the subject association role of a UseCase.&#xD;&#xA;A classifier is a namespace whose members can include features. Classifier is an abstract metaclass.&#xD;&#xA;A classifier is a type and can own generalizations, thereby making it possible to define generalization relationships to other classifiers. A classifier can specify a generalization hierarchy by referencing its general classifiers.&#xD;&#xA;A classifier is a redefinable element, meaning that it is possible to redefine nested classifiers.&#xD;&#xA;&#xD;&#xA;A classifier can be parameterized, exposed as a formal template parameter, and specified as an actual parameter in a binding of a template."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="isTemplate" ordered="false" lowerBound="1"
@@ -1129,7 +1129,7 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isAbstract" ordered="false"
lowerBound="1" eType="#//Boolean" defaultValueLiteral="false">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If true, the Classifier does not provide a complete declaration and can typically not be instantiated. An abstract classifier is intended to be used by other classifiers e.g. as the target of general metarelationships or generalization relationships.&#xA;&#xA;"/>
+ <details key="documentation" value="If true, the Classifier does not provide a complete declaration and can typically not be instantiated. An abstract classifier is intended to be used by other classifiers e.g. as the target of general metarelationships or generalization relationships.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="generalization" ordered="false"
@@ -1436,7 +1436,7 @@
<eClassifiers xsi:type="ecore:EClass" name="ParameterableElement" abstract="true"
eSuperTypes="#//Element">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A ParameterableElement can be referenced by a TemplateParameter when defining a formal template parameter for a template. A ParameterableElement can be referenced by a TemplateParameterSubstitution when used as an actual parameter in a binding of a template.&#xA;&#xA;ParameterableElement is an abstract metaclass.&#xA;&#xA;"/>
+ <details key="documentation" value="A ParameterableElement can be referenced by a TemplateParameter when defining a formal template parameter for a template. A ParameterableElement can be referenced by a TemplateParameterSubstitution when used as an actual parameter in a binding of a template.&#xD;&#xA;ParameterableElement is an abstract metaclass.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="isCompatibleWith" ordered="false" lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -1509,7 +1509,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Generalization" eSuperTypes="#//DirectedRelationship">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.&#xA;&#xA;A generalization can be designated as being a member of a particular generalization set.&#xA;&#xA;&#xD;&#xA;A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.&#xA;&#xA;&#xA;&#xA;"/>
+ <details key="documentation" value="A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.&#xD;&#xA;A generalization can be designated as being a member of a particular generalization set.&#xD;&#xA;&#xD;&#xA;A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.&#xD;&#xA;&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="generalization_same_classifier" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -1566,7 +1566,7 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isCovering" ordered="false"
lowerBound="1" eType="#//Boolean" defaultValueLiteral="false">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Indicates (via the associated Generalizations) whether or not the set of specific Classifiers are covering for a particular general classifier. When isCovering is true, every instance of a particular general Classifier is also an instance of at least one of its specific Classifiers for the GeneralizationSet. When isCovering is false, there are one or more instances of the particular general Classifier that are not instances of at least one of its specific Classifiers defined for the GeneralizationSet. For example, Person could have two Generalization relationships each with a different specific Classifier: Male Person and Female Person. This GeneralizationSet would be covering because every instance of Person would be an instance of Male Person or Female Person. In contrast, Person could have a three Generalization relationships involving three specific Classifiers: North American Person, Asian Person, and European Person. This GeneralizationSet would not be covering because there are instances of Person for which these three specific Classifiers do not apply. The first example, then, could be read: any Person would be specialized as either being a Male Person or a Female Person—and nothing else; the second could be read: any Person would be specialized as being North American Person, Asian Person, European Person, or something else."/>
+ <details key="documentation" value="Indicates (via the associated Generalizations) whether or not the set of specific Classifiers are covering for a particular general classifier. When isCovering is true, every instance of a particular general Classifier is also an instance of at least one of its specific Classifiers for the GeneralizationSet. When isCovering is false, there are one or more instances of the particular general Classifier that are not instances of at least one of its specific Classifiers defined for the GeneralizationSet.&#xD;&#xA;&#xD;&#xA;For example, Person could have two Generalization relationships each with a different specific Classifier: Male Person and Female Person. This GeneralizationSet would be covering because every instance of Person would be an instance of Male Person or Female Person. In contrast, Person could have a three Generalization relationships involving three specific Classifiers: North American Person, Asian Person, and European Person. This GeneralizationSet would not be covering because there are instances of Person for which these three specific Classifiers do not apply. The first example, then, could be read: any Person would be specialized as either being a Male Person or a Female Person and nothing else; the second could be read: any Person would be specialized as being North American Person, Asian Person, European Person, or something else."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isDisjoint" ordered="false"
@@ -1639,7 +1639,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OpaqueExpression" eSuperTypes="#//ValueSpecification">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An opaque expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xD;&#xA;An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xA;&#xA;One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.&#xA;&#xA;&#xD;&#xA;Provides a mechanism for precisely defining the behavior of an opaque expression. An opaque expression is defined by a behavior restricted to return one result."/>
+ <details key="documentation" value="An opaque expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xD;&#xA;An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xD;&#xA;One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.&#xD;&#xA;&#xD;&#xA;Provides a mechanism for precisely defining the behavior of an opaque expression. An opaque expression is defined by a behavior restricted to return one result."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="stringValue" ordered="false" lowerBound="1"
@@ -1656,14 +1656,14 @@
</eOperations>
<eOperations name="only_return_result_parameters" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The behavior may only have return result parameters.&#xD;&#xA;self.behavior.notEmpty() implies&#xA;&#xA; self.behavior.ownedParameters->select(p | p.direction&lt;>#return)->isEmpty()"/>
+ <details key="documentation" value="The behavior may only have return result parameters.&#xD;&#xA;self.behavior.notEmpty() implies&#xD;&#xA; self.behavior.ownedParameters->select(p | p.direction&lt;>#return)->isEmpty()"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
</eOperations>
<eOperations name="one_return_result_parameter" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The behavior must have exactly one return result parameter.&#xD;&#xA;self.behavior.notEmpty() implies&#xA;&#xA; self.behavior.ownedParameter->select(p | p.direction=#return)->size() = 1"/>
+ <details key="documentation" value="The behavior must have exactly one return result parameter.&#xD;&#xA;self.behavior.notEmpty() implies&#xD;&#xA; self.behavior.ownedParameter->select(p | p.direction=#return)->size() = 1"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -1713,7 +1713,7 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="language" upperBound="-1"
eType="#//String" unsettable="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the language. If languages are unspecified, it might be implicit from the expression body or the context. Languages are matched to body strings by order.&#xD;&#xA;Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the languages. If the languages are unspecified, they might be implicit from the expression body or the context. Languages are matched to body strings by order.&#xA;&#xA;"/>
+ <details key="documentation" value="Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the language. If languages are unspecified, it might be implicit from the expression body or the context. Languages are matched to body strings by order.&#xD;&#xA;Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the languages. If the languages are unspecified, they might be implicit from the expression body or the context. Languages are matched to body strings by order.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="result" ordered="false"
@@ -1986,7 +1986,7 @@
<eClassifiers xsi:type="ecore:EClass" name="ConnectableElement" abstract="true"
eSuperTypes="#//TypedElement #//ParameterableElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A ConnectableElement is an abstract metaclass representing a set of instances that play roles of a classifier. Connectable elements may be joined by attached connectors and specify configurations of linked instances to be created within an instance of the containing classifier.&#xD;&#xA;ConnectableElement is the connectable element of a ConnectableElementTemplateParameter.&#xA;&#xA;The ConnectableElements attached as role to each ConnectorEnd owned by a Connector must be roles of the classifier that owned the Connector, or they must be ports of such roles. &#xA;&#xA;"/>
+ <details key="documentation" value="A ConnectableElement is an abstract metaclass representing a set of instances that play roles of a classifier. Connectable elements may be joined by attached connectors and specify configurations of linked instances to be created within an instance of the containing classifier.&#xD;&#xA;ConnectableElement is the connectable element of a ConnectableElementTemplateParameter.&#xD;&#xA;The ConnectableElements attached as role to each ConnectorEnd owned by a Connector must be roles of the classifier that owned the Connector, or they must be ports of such roles. &#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EReference" name="templateParameter" ordered="false"
@@ -2040,7 +2040,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="definingEnd" ordered="false"
eType="#//Property" changeable="false" volatile="true" transient="true" derived="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A derived association referencing the corresponding association end on the association which types the connector owing this connector end. This association is derived by selecting the association end at the same place in the ordering of association ends as this connector end.&#xA;&#xA;"/>
+ <details key="documentation" value="A derived association referencing the corresponding association end on the association which types the connector owing this connector end. This association is derived by selecting the association end at the same place in the ordering of association ends as this connector end.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="partWithPort" ordered="false"
@@ -2052,13 +2052,13 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="role" ordered="false" lowerBound="1"
eType="#//ConnectableElement" eOpposite="#//ConnectableElement/end">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The connectable element attached at this connector end. When an instance of the containing classifier is created, a link may (depending on the multiplicities) be created to an instance of the classifier that types this connectable element.&#xA;&#xA;"/>
+ <details key="documentation" value="The connectable element attached at this connector end. When an instance of the containing classifier is created, a link may (depending on the multiplicities) be created to an instance of the classifier that types this connectable element.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Property" eSuperTypes="#//StructuralFeature #//ConnectableElement #//DeploymentTarget #//TemplateableElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association.&#xA;&#xA;&#xA;&#xA;Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.&#xD;&#xA;A property is a structural feature.&#xA;&#xA;A property related to a classifier by ownedAttribute represents an attribute, and it may also represent an association end. It relates an instance of the class to a value or collection of values of the type of the attribute.&#xA;&#xA;A property related to an Association by memberEnd or its specializations represents an end of the association. The type of property is the type of the end of the association.&#xA;&#xA;&#xD;&#xA;A property represents a set of instances that are owned by a containing classifier instance.&#xD;&#xA;In the metamodel, Property is a specialization of DeploymentTarget.&#xD;&#xA;Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association. Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.&#xA;&#xA;&#xD;&#xA;Property specializes ParameterableElement to specify that a property can be exposed as a formal template parameter, and provided as an actual parameter in a binding of a template."/>
+ <details key="documentation" value="Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association.&#xD;&#xA;&#xD;&#xA;Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.&#xD;&#xA;A property is a structural feature.&#xD;&#xA;A property related to a classifier by ownedAttribute represents an attribute, and it may also represent an association end. It relates an instance of the class to a value or collection of values of the type of the attribute.&#xD;&#xA;A property related to an Association by memberEnd or its specializations represents an end of the association. The type of property is the type of the end of the association.&#xD;&#xA;&#xD;&#xA;A property represents a set of instances that are owned by a containing classifier instance.&#xD;&#xA;In the metamodel, Property is a specialization of DeploymentTarget.&#xD;&#xA;Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association. Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.&#xD;&#xA;&#xD;&#xA;Property specializes ParameterableElement to specify that a property can be exposed as a formal template parameter, and provided as an actual parameter in a binding of a template."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="isConsistentWith" ordered="false"
@@ -2075,7 +2075,7 @@
<contents xsi:type="ecore:EOperation" name="isCompatibleWith" ordered="false"
lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for properties, the type must be conformant with the type of the specified parameterable element.&#xA;&#xA;&#xD;&#xA;result = p->oclIsKindOf(self.oclType) and self.type.conformsTo(p.oclAsType(TypedElement).type)"/>
+ <details key="documentation" value="The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for properties, the type must be conformant with the type of the specified parameterable element.&#xD;&#xA;&#xD;&#xA;result = p->oclIsKindOf(self.oclType) and self.type.conformsTo(p.oclAsType(TypedElement).type)"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -2107,7 +2107,7 @@
</eOperations>
<eOperations name="redefined_property_inherited" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A redefined property must be inherited from a more general classifier containing the redefining property.&#xD;&#xA;if (redefinedProperty->notEmpty()) then&#xA;&#xA; (redefinitionContext->notEmpty() and&#xA;&#xA; redefinedProperty->forAll(rp|&#xA;&#xA; ((redefinitionContext->collect(fc|&#xA;&#xA; fc.allParents()))->asSet())->collect(c| c.allFeatures())->asSet()->includes(rp))"/>
+ <details key="documentation" value="A redefined property must be inherited from a more general classifier containing the redefining property.&#xD;&#xA;if (redefinedProperty->notEmpty()) then&#xD;&#xA; (redefinitionContext->notEmpty() and&#xD;&#xA; redefinedProperty->forAll(rp|&#xD;&#xA; ((redefinitionContext->collect(fc|&#xD;&#xA; fc.allParents()))->asSet())->collect(c| c.allFeatures())->asSet()->includes(rp))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -2156,7 +2156,7 @@
</eOperations>
<eOperations name="binding_to_attribute" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A binding of a property template parameter representing an attribute must be to an attribute.&#xD;&#xA;(isAttribute(self) and (templateParameterSubstitution->notEmpty())&#xA;&#xA; implies (templateParameterSubstitution->forAll(ts | isAttribute(ts.formal)))"/>
+ <details key="documentation" value="A binding of a property template parameter representing an attribute must be to an attribute.&#xD;&#xA;(isAttribute(self) and (templateParameterSubstitution->notEmpty())&#xD;&#xA; implies (templateParameterSubstitution->forAll(ts | isAttribute(ts.formal)))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -2241,7 +2241,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="datatype" ordered="false"
eType="#//DataType" eOpposite="#//DataType/ownedAttribute">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The DataType that owns this Operation.&#xD;&#xA;The DataType that owns this Property.&#xA;&#xA;"/>
+ <details key="documentation" value="The DataType that owns this Operation.&#xD;&#xA;The DataType that owns this Property.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//NamedElement/namespace #//Feature/featuringClassifier"/>
</eStructuralFeatures>
@@ -2394,7 +2394,7 @@
</eAnnotations>
<eOperations name="deployed_elements" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The deployedElements of a DeploymentTarget that are involved in a Deployment that has an associated Deployment-Specification is a kind of Component (i.e. the configured components).&#xD;&#xA;self.deployment->forAll (d | d.location.deployedElements->forAll (de |&#xA;&#xA; de.oclIsKindOf(Component)))"/>
+ <details key="documentation" value="The deployedElements of a DeploymentTarget that are involved in a Deployment that has an associated Deployment-Specification is a kind of Component (i.e. the configured components).&#xD;&#xA;self.deployment->forAll (d | d.location.deployedElements->forAll (de |&#xD;&#xA; de.oclIsKindOf(Component)))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -2450,7 +2450,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="nestedArtifact" ordered="false"
upperBound="-1" eType="#//Artifact" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The Artifacts that are defined (nested) within the Artifact.&#xA;&#xA;The association is a specialization of the ownedMember association from Namespace to NamedElement.&#xA;&#xA;"/>
+ <details key="documentation" value="The Artifacts that are defined (nested) within the Artifact.&#xD;&#xA;The association is a specialization of the ownedMember association from Namespace to NamedElement.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Namespace/ownedMember"/>
</eStructuralFeatures>
@@ -2471,7 +2471,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedAttribute" upperBound="-1"
eType="#//Property" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The attributes or association ends defined for the Artifact.&#xA;&#xA;The association is a specialization of the ownedMember association.&#xA;&#xA;"/>
+ <details key="documentation" value="The attributes or association ends defined for the Artifact.&#xD;&#xA;The association is a specialization of the ownedMember association.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Classifier/attribute #//Namespace/ownedMember"/>
</eStructuralFeatures>
@@ -2490,7 +2490,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Operation" eSuperTypes="#//BehavioralFeature #//ParameterableElement #//TemplateableElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An operation is owned by a class and may be invoked in the context of objects that are instances of that class. It is a typed element and a multiplicity element.&#xD;&#xA;An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xA;&#xA;One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.&#xA;&#xA;&#xD;&#xA;An operation is a behavioral feature of a classifier that specifies the name, type, parameters, and constraints for invoking an associated behavior.&#xD;&#xA;An operation may invoke both the execution of method behaviors as well as other behavioral responses.&#xD;&#xA;Operation specializes TemplateableElement in order to support specification of template operations and bound operations."/>
+ <details key="documentation" value="An operation is owned by a class and may be invoked in the context of objects that are instances of that class. It is a typed element and a multiplicity element.&#xD;&#xA;An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xD;&#xA;One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.&#xD;&#xA;&#xD;&#xA;An operation is a behavioral feature of a classifier that specifies the name, type, parameters, and constraints for invoking an associated behavior.&#xD;&#xA;An operation may invoke both the execution of method behaviors as well as other behavioral responses.&#xD;&#xA;Operation specializes TemplateableElement in order to support specification of template operations and bound operations."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="isConsistentWith" ordered="false"
@@ -2568,7 +2568,7 @@
</eOperations>
<eOperations name="isUnique" ordered="false" lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.&#xD;&#xA;If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.&#xA;&#xA;&#xD;&#xA;result = if returnResult()->notEmpty() then returnResult()->any().isUnique else true endif"/>
+ <details key="documentation" value="If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.&#xD;&#xA;If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.&#xD;&#xA;&#xD;&#xA;result = if returnResult()->notEmpty() then returnResult()->any().isUnique else true endif"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -2576,7 +2576,7 @@
</eOperations>
<eOperations name="lowerBound" ordered="false" lowerBound="1" eType="#//Integer">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.&#xD;&#xA;If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.&#xA;&#xA;&#xD;&#xA;result = if returnResult()->notEmpty() then returnResult()->any().lower else Set{} endif"/>
+ <details key="documentation" value="If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.&#xD;&#xA;If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.&#xD;&#xA;&#xD;&#xA;result = if returnResult()->notEmpty() then returnResult()->any().lower else Set{} endif"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -2584,7 +2584,7 @@
</eOperations>
<eOperations name="upperBound" ordered="false" lowerBound="1" eType="#//UnlimitedNatural">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.&#xD;&#xA;If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.&#xA;&#xA;&#xD;&#xA;result = if returnResult()->notEmpty() then returnResult()->any().upper else Set{} endif"/>
+ <details key="documentation" value="If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.&#xD;&#xA;If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.&#xD;&#xA;&#xD;&#xA;result = if returnResult()->notEmpty() then returnResult()->any().upper else Set{} endif"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -2698,7 +2698,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BehavioralFeature" abstract="true" eSuperTypes="#//Namespace #//Feature">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A behavioral feature is a feature of a classifier that specifies an aspect of the behavior of its instances. BehavioralFeature is an abstract metaclass specializing Feature and Namespace. Kinds of behavioral aspects are modeled by subclasses of BehavioralFeature.&#xD;&#xA;A behavioral feature specifies that an instance of a classifier will respond to a designated request by invoking a behavior.&#xA;&#xA;BehavioralFeature is an abstract metaclass specializing Feature and Namespace. Kinds of behavioral aspects are modeled by subclasses of BehavioralFeature.&#xA;&#xA;&#xD;&#xA;A behavioral feature is implemented (realized) by a behavior. A behavioral feature specifies that a classifier will respond to a designated request by invoking its implementing method.&#xD;&#xA;The concept of BehavioralFeature is extended to own ParameterSets."/>
+ <details key="documentation" value="A behavioral feature is a feature of a classifier that specifies an aspect of the behavior of its instances. BehavioralFeature is an abstract metaclass specializing Feature and Namespace. Kinds of behavioral aspects are modeled by subclasses of BehavioralFeature.&#xD;&#xA;A behavioral feature specifies that an instance of a classifier will respond to a designated request by invoking a behavior.&#xD;&#xA;BehavioralFeature is an abstract metaclass specializing Feature and Namespace. Kinds of behavioral aspects are modeled by subclasses of BehavioralFeature.&#xD;&#xA;&#xD;&#xA;A behavioral feature is implemented (realized) by a behavior. A behavioral feature specifies that a classifier will respond to a designated request by invoking its implementing method.&#xD;&#xA;The concept of BehavioralFeature is extended to own ParameterSets."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="isDistinguishableFrom" ordered="false"
@@ -2759,7 +2759,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Behavior" abstract="true" eSuperTypes="#//Class">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Behavior is a specification of how its context classifier changes state over time. This specification may be either a definition of possible behavior execution or emergent behavior, or a selective illustration of an interesting subset of possible executions. The latter form is typically used for capturing examples, such as a trace of a particular execution.&#xA;&#xA;&#xA;&#xA;A classifier behavior is always a definition of behavior and not an illustration. It describes the sequence of state changes an instance of a classifier may undergo in the course of its lifetime. Its precise semantics depends on the kind of classifier. For example, the classifier behavior of a collaboration represents emergent behavior of all the parts, whereas the classifier behavior of a class is just the behavior of instances of the class separated from the behaviors of any of its parts.&#xA;&#xA;When a behavior is associated as the method of a behavioral feature, it defines the implementation of that feature; i.e., the computation that generates the effects of the behavioral feature.&#xA;&#xA;&#xA;&#xA;As a classifier, a behavior can be specialized. Instantiating a behavior is referred to as &quot;invoking&quot; the behavior, an instantiated behavior is also called a behavior &quot;execution.&quot; A behavior may be invoked directly or its invocation may be the result of invoking the behavioral feature that specifies this behavior. A behavior can also be instantiated as an object in virtue of it being a class. The specification of a behavior can take a number of forms, as described in the subclasses of Behavior. Behavior is an abstract metaclass factoring out the commonalities of these different specification mechanisms.&#xA;&#xA;&#xA;&#xA;When a behavior is invoked, its execution receives a set of input values that are used to affect the course of execution and as a result of its execution it produces a set of output values which are returned, as specified by its parameters. The observable effects of a behavior execution may include changes of values of various objects involved in the execution, the creation and destruction of objects, generation of communications between objects, as well as an explicit set of output values.&#xA;&#xA;&#xD;&#xA;The concept of Behavior is extended to own ParameterSets."/>
+ <details key="documentation" value="Behavior is a specification of how its context classifier changes state over time. This specification may be either a definition of possible behavior execution or emergent behavior, or a selective illustration of an interesting subset of possible executions. The latter form is typically used for capturing examples, such as a trace of a particular execution.&#xD;&#xA;&#xD;&#xA;A classifier behavior is always a definition of behavior and not an illustration. It describes the sequence of state changes an instance of a classifier may undergo in the course of its lifetime. Its precise semantics depends on the kind of classifier. For example, the classifier behavior of a collaboration represents emergent behavior of all the parts, whereas the classifier behavior of a class is just the behavior of instances of the class separated from the behaviors of any of its parts.&#xD;&#xA;When a behavior is associated as the method of a behavioral feature, it defines the implementation of that feature; i.e., the computation that generates the effects of the behavioral feature.&#xD;&#xA;&#xD;&#xA;As a classifier, a behavior can be specialized. Instantiating a behavior is referred to as &quot;invoking&quot; the behavior, an instantiated behavior is also called a behavior &quot;execution.&quot; A behavior may be invoked directly or its invocation may be the result of invoking the behavioral feature that specifies this behavior. A behavior can also be instantiated as an object in virtue of it being a class. The specification of a behavior can take a number of forms, as described in the subclasses of Behavior. Behavior is an abstract metaclass factoring out the commonalities of these different specification mechanisms.&#xD;&#xA;&#xD;&#xA;When a behavior is invoked, its execution receives a set of input values that are used to affect the course of execution and as a result of its execution it produces a set of output values which are returned, as specified by its parameters. The observable effects of a behavior execution may include changes of values of various objects involved in the execution, the creation and destruction of objects, generation of communications between objects, as well as an explicit set of output values.&#xD;&#xA;&#xD;&#xA;The concept of Behavior is extended to own ParameterSets."/>
</eAnnotations>
<eOperations name="parameters_match" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -2806,7 +2806,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedParameter" upperBound="-1"
eType="#//Parameter" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="References a list of parameters to the behavior which describes the order and type of arguments that can be given when the behavior is invoked and of the values which will be returned when the behavior completes its execution.&#xA;&#xA;"/>
+ <details key="documentation" value="References a list of parameters to the behavior which describes the order and type of arguments that can be given when the behavior is invoked and of the values which will be returned when the behavior completes its execution.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Namespace/ownedMember"/>
</eStructuralFeatures>
@@ -2987,7 +2987,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Interface" eSuperTypes="#//Classifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An interface is a kind of classifier that represents a declaration of a set of coherent public features and obligations. An interface specifies a contract; any instance of a classifier that realizes the interface must fulfill that contract. The obligations that may be associated with an interface are in the form of various kinds of constraints (such as pre- and post-conditions) or protocol specifications, which may impose ordering restrictions on interactions through the interface.&#xA;&#xA;Since interfaces are declarations, they are not instantiable. Instead, an interface specification is implemented by an instance of an instantiable classifier, which means that the instantiable classifier presents a public facade that conforms to the interface specification. Note that a given classifier may implement more than one interface and that an interface may be implemented by a number of different classifiers.&#xA;&#xA;&#xD;&#xA;Adds the capability for interfaces to include receptions (in addition to operations).&#xD;&#xA;Since an interface specifies conformance characteristics, it does not own detailed behavior specifications. Instead, interfaces may own a protocol state machine that specifies event sequences and pre/post conditions for the operations and receptions described by the interface."/>
+ <details key="documentation" value="An interface is a kind of classifier that represents a declaration of a set of coherent public features and obligations. An interface specifies a contract; any instance of a classifier that realizes the interface must fulfill that contract. The obligations that may be associated with an interface are in the form of various kinds of constraints (such as pre- and post-conditions) or protocol specifications, which may impose ordering restrictions on interactions through the interface.&#xD;&#xA;Since interfaces are declarations, they are not instantiable. Instead, an interface specification is implemented by an instance of an instantiable classifier, which means that the instantiable classifier presents a public facade that conforms to the interface specification. Note that a given classifier may implement more than one interface and that an interface may be implemented by a number of different classifiers.&#xD;&#xA;&#xD;&#xA;Adds the capability for interfaces to include receptions (in addition to operations).&#xD;&#xA;Since an interface specifies conformance characteristics, it does not own detailed behavior specifications. Instead, interfaces may own a protocol state machine that specifies event sequences and pre/post conditions for the operations and receptions described by the interface."/>
</eAnnotations>
<eOperations name="visibility" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -3139,7 +3139,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="StateMachine" eSuperTypes="#//Behavior">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A state machine owns one or more regions, which in turn own vertices and transitions.&#xA;&#xA;The behaviored classifier context owning a state machine defines which signal and call triggers are defined for the state machine, and which attributes and operations are available in activities of the state machine. Signal triggers and call triggers for the state machine are defined according to the receptions and operations of this classifier.&#xA;&#xA;&#xA;&#xA;As a kind of behavior, a state machine may have an associated behavioral feature (specification) and be the method of this behavioral feature. In this case the state machine specifies the behavior of this behavioral feature. The parameters of the state machine in this case match the parameters of the behavioral feature and provide the means for accessing (within the state machine) the behavioral feature parameters.&#xA;&#xA;&#xA;&#xA;A state machine without a context classifier may use triggers that are independent of receptions or operations of a classifier, i.e. either just signal triggers or call triggers based upon operation template parameters of the (parameterized) statemachine.&#xA;&#xA;"/>
+ <details key="documentation" value="A state machine owns one or more regions, which in turn own vertices and transitions.&#xD;&#xA;The behaviored classifier context owning a state machine defines which signal and call triggers are defined for the state machine, and which attributes and operations are available in activities of the state machine. Signal triggers and call triggers for the state machine are defined according to the receptions and operations of this classifier.&#xD;&#xA;&#xD;&#xA;As a kind of behavior, a state machine may have an associated behavioral feature (specification) and be the method of this behavioral feature. In this case the state machine specifies the behavior of this behavioral feature. The parameters of the state machine in this case match the parameters of the behavioral feature and provide the means for accessing (within the state machine) the behavioral feature parameters.&#xD;&#xA;&#xD;&#xA;A state machine without a context classifier may use triggers that are independent of receptions or operations of a classifier, i.e. either just signal triggers or call triggers based upon operation template parameters of the (parameterized) statemachine.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="isConsistentWith" ordered="false"
@@ -3194,7 +3194,7 @@
</eOperations>
<eOperations name="ancestor" ordered="false" lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The query ancestor(s1, s2) checks whether s2 is an ancestor state of state s1. context StateMachine::ancestor (s1 : State, s2 : State) : Boolean&#xA;&#xA;&#xD;&#xA;result = if (s2 = s1) then&#xA;true&#xA;else if (s1.container->isEmpty) then&#xA;true&#xA;else if (s2.container->isEmpty) then&#xA;false&#xA;else (ancestor (s1, s2.container))"/>
+ <details key="documentation" value="The query ancestor(s1, s2) checks whether s2 is an ancestor state of state s1. context StateMachine::ancestor (s1 : State, s2 : State) : Boolean&#xD;&#xA;&#xD;&#xA;result = if (s2 = s1) then&#xA;true&#xA;else if (s1.container->isEmpty) then&#xA;true&#xA;else if (s2.container->isEmpty) then&#xA;false&#xA;else (ancestor (s1, s2.container))"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -3405,7 +3405,7 @@
<contents xsi:type="ecore:EOperation" name="isConsistentWith" ordered="false"
lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The query isConsistentWith() specifies that a redefining transition is consistent with a redefined transition provided that the redefining transition has the following relation to the redefined transition: A redefining transition redefines all properties of the corresponding redefined transition, except the source state and the trigger.&#xD;&#xA;result = (redefinee.oclIsKindOf(Transition) and&#xA;&#xA; let trans: Transition = redefinee.oclAsType(Transition) in&#xA;&#xA; (source() = trans.source() and trigger() = tran.trigger())&#xD;&#xA;redefinee.isRedefinitionContextValid(self)"/>
+ <details key="documentation" value="The query isConsistentWith() specifies that a redefining transition is consistent with a redefined transition provided that the redefining transition has the following relation to the redefined transition: A redefining transition redefines all properties of the corresponding redefined transition, except the source state and the trigger.&#xD;&#xA;result = (redefinee.oclIsKindOf(Transition) and&#xD;&#xA; let trans: Transition = redefinee.oclAsType(Transition) in&#xD;&#xA; (source() = trans.source() and trigger() = tran.trigger())&#xD;&#xA;redefinee.isRedefinitionContextValid(self)"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -3459,14 +3459,14 @@
</eOperations>
<eOperations name="initial_transition" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype “create”.&#xD;&#xA;self.source.oclIsKindOf(Pseudostate) implies&#xA;(self.source.oclAsType(Pseudostate).kind = #initial) implies&#xA;(self.source.container = self.stateMachine.top) implies&#xA;((self.trigger->isEmpty) or&#xA;(self.trigger.stereotype.name = 'create'))&#xA;"/>
+ <details key="documentation" value="An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype «create».&#xD;&#xA;self.source.oclIsKindOf(Pseudostate) implies&#xA;(self.source.oclAsType(Pseudostate).kind = #initial) implies&#xA;(self.source.container = self.stateMachine.top) implies&#xA;((self.trigger->isEmpty) or&#xA;(self.trigger.stereotype.name = 'create'))&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
</eOperations>
<eOperations name="signatures_compatible" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="In case of more than one trigger, the signatures of these must be compatible in case the parameters of the signal are assigned to local variables/attributes.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="In case of more than one trigger, the signatures of these must be compatible in case the parameters of the signal are assigned to local variables/attributes.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -3542,7 +3542,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="TransitionKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="TransitionKind is an enumeration of the following literal values:&#xA;• external&#xA;• internal&#xA;• local&#xA;&#xD;&#xA;kind=#local implies owner.source.isComposite&#xD;&#xA;kind=#external implies owner.source.isComposite"/>
+ <details key="documentation" value="TransitionKind is an enumeration of the following literal values:&#xD;&#xA; - external&#xD;&#xA; - internal&#xD;&#xA; - local&#xD;&#xA;kind=#local implies owner.source.isComposite&#xD;&#xA;kind=#external implies owner.source.isComposite"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="state_is_local state_is_external"/>
@@ -3587,7 +3587,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Port" eSuperTypes="#//Property">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Ports represent interaction points between a classifier and its environment. The interfaces associated with a port specify the nature of the interactions that may occur over a port. The required interfaces of a port characterize the requests which may be made from the classifier to its environment through this port. The provided interfaces of a port characterize requests to the classifier that its environment may make through this port.&#xA;&#xA;&#xA;&#xA;A port has the ability to specify that any requests arriving at this port are handled by the behavior of the instance of the owning classifier, rather than being forwarded to any contained instances, if any.&#xA;&#xA;&#xD;&#xA;Port is defined as a specialization of the general Port, adding an association to a protocol state machine."/>
+ <details key="documentation" value="Ports represent interaction points between a classifier and its environment. The interfaces associated with a port specify the nature of the interactions that may occur over a port. The required interfaces of a port characterize the requests which may be made from the classifier to its environment through this port. The provided interfaces of a port characterize requests to the classifier that its environment may make through this port.&#xD;&#xA;&#xD;&#xA;A port has the ability to specify that any requests arriving at this port are handled by the behavior of the instance of the owning classifier, rather than being forwarded to any contained instances, if any.&#xD;&#xA;&#xD;&#xA;Port is defined as a specialization of the general Port, adding an association to a protocol state machine."/>
</eAnnotations>
<eOperations name="required_interfaces" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -3649,7 +3649,7 @@
upperBound="-1" eType="#//Interface" changeable="false" volatile="true" transient="true"
derived="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="References the interfaces specifying the set of operations and receptions which the classifier offers to its environment, and which it will handle either directly or by forwarding it to a part of its internal structure. This association is derived from the interfaces realized by the type of the port or by the type of the port, if the port was typed by an interface.&#xA;&#xA;"/>
+ <details key="documentation" value="References the interfaces specifying the set of operations and receptions which the classifier offers to its environment, and which it will handle either directly or by forwarding it to a part of its internal structure. This association is derived from the interfaces realized by the type of the port or by the type of the port, if the port was typed by an interface.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="protocol" ordered="false"
@@ -3661,7 +3661,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="State" eSuperTypes="#//Namespace #//RedefinableElement #//Vertex">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A state models a situation during which some (usually implicit) invariant condition holds. The invariant may represent a static situation such as an object waiting for some external event to occur. However, it can also model dynamic conditions such as the process of performing some behavior (i.e., the model element under consideration enters the state when the behavior commences and leaves it as soon as the behavior is completed). The following kinds of states are distinguished:&#xA;&#xA;o Simple state,&#xA;&#xA;o composite state, and&#xA;&#xA;o submachine state.&#xA;&#xA;A composite state is either a simple composite state (with just one region) or an orthogonal state (with more than one region).&#xA;&#xA;&#xA;&#xA;Simple state&#xA;&#xA;A simple state is a state that does not have substates, i.e. it has no regions and it has no submachine state machine.&#xA;&#xA;&#xA;&#xA;Composite state&#xA;&#xA;A composite state either contains one region or is decomposed into two or more orthogonal regions. Each region has a set of mutually exclusive disjoint subvertices and a set of transitions. A given state may only be decomposed in one of these two ways. &#xA;&#xA;Any state enclosed within a region of a composite state is called a substate of that composite state. It is called a direct substate when it is not contained by any other state; otherwise it is referred to as a indirect substate. &#xA;&#xA;Each region of a composite state may have an initial pseudostate and a final state. A transition to the enclosing state represents a transition to the initial pseudostate in each region. A newly-created object takes it's topmost default transitions, originating from the topmost initial pseudostates of each region.&#xA;&#xA;&#xA;&#xA;A transition to a final state represents the completion of behavior in the enclosing region. Completion of behavior in all orthogonal regions represents completion of behavior by the enclosing state and triggers a completion event on the enclosing state. Completion of the topmost regions of an object corresponds to its termination.&#xA;&#xA;&#xA;&#xA;An entry pseudostate is used to join an external transition terminating on that entry point to an internal transition emanating from that entry point. An exit pseudostate is used to join an internal transition terminating on that exit point to an external transition emanating from that exit point. The main purpose of such entry and exit points is to execute the state entry and exit actions respectively in between the actions that are associated with the joined transitions.&#xA;&#xA;&#xA;&#xA;Semantic variation point (default entry rule)&#xA;&#xA;If a transition terminates on an enclosing state and the enclosed regions do not have an initial pseudostate, the interpretation of this situation is a semantic variation point. In some interpretations, this is considered an ill-formed model. That is, in those cases the initial pseudostate is mandatory. &#xA;&#xA;An alternative interpretation allows this situation and it means that, when such a transition is taken, the state machine stays in the composite state, without entering any of the regions or their substates.&#xA;&#xA;&#xA;&#xA;Submachine state&#xA;&#xA;A submachine state specifies the insertion of the specification of a submachine state machine. The state machine that contains the submachine state is called the containing state machine. The same state machine may be a submachine more than once in the context of a single containing state machine.&#xA;&#xA;&#xA;&#xA;A submachine state is semantically equivalent to a composite state. The regions of the submachine state machine are the regions of the composite state. The entry, exit and behavior actions, and internal transitions, are defined as part of the state. Submachine state is a decomposition mechanism that allows factoring of common behaviors and their reuse.&#xA;&#xA;Transitions in the containing state machine can have entry/exit points of the inserted state machine as targets/sources.&#xA;&#xA;&#xD;&#xA;The states of protocol state machines are exposed to the users of their context classifiers. A protocol state represents an exposed stable situation of its context classifier: when an instance of the classifier is not processing any operation, users of this instance can always know its state configuration."/>
+ <details key="documentation" value="A state models a situation during which some (usually implicit) invariant condition holds. The invariant may represent a static situation such as an object waiting for some external event to occur. However, it can also model dynamic conditions such as the process of performing some behavior (i.e., the model element under consideration enters the state when the behavior commences and leaves it as soon as the behavior is completed). The following kinds of states are distinguished:&#xD;&#xA;o Simple state,&#xD;&#xA;o composite state, and&#xD;&#xA;o submachine state.&#xD;&#xA;A composite state is either a simple composite state (with just one region) or an orthogonal state (with more than one region).&#xD;&#xA;&#xD;&#xA;Simple state&#xD;&#xA;A simple state is a state that does not have substates, i.e. it has no regions and it has no submachine state machine.&#xD;&#xA;&#xD;&#xA;Composite state&#xD;&#xA;A composite state either contains one region or is decomposed into two or more orthogonal regions. Each region has a set of mutually exclusive disjoint subvertices and a set of transitions. A given state may only be decomposed in one of these two ways. &#xD;&#xA;Any state enclosed within a region of a composite state is called a substate of that composite state. It is called a direct substate when it is not contained by any other state; otherwise it is referred to as a indirect substate. &#xD;&#xA;Each region of a composite state may have an initial pseudostate and a final state. A transition to the enclosing state represents a transition to the initial pseudostate in each region. A newly-created object takes it's topmost default transitions, originating from the topmost initial pseudostates of each region.&#xD;&#xA;&#xD;&#xA;A transition to a final state represents the completion of behavior in the enclosing region. Completion of behavior in all orthogonal regions represents completion of behavior by the enclosing state and triggers a completion event on the enclosing state. Completion of the topmost regions of an object corresponds to its termination.&#xD;&#xA;&#xD;&#xA;An entry pseudostate is used to join an external transition terminating on that entry point to an internal transition emanating from that entry point. An exit pseudostate is used to join an internal transition terminating on that exit point to an external transition emanating from that exit point. The main purpose of such entry and exit points is to execute the state entry and exit actions respectively in between the actions that are associated with the joined transitions.&#xD;&#xA;&#xD;&#xA;Semantic variation point (default entry rule)&#xD;&#xA;If a transition terminates on an enclosing state and the enclosed regions do not have an initial pseudostate, the interpretation of this situation is a semantic variation point. In some interpretations, this is considered an ill-formed model. That is, in those cases the initial pseudostate is mandatory. &#xD;&#xA;An alternative interpretation allows this situation and it means that, when such a transition is taken, the state machine stays in the composite state, without entering any of the regions or their substates.&#xD;&#xA;&#xD;&#xA;Submachine state&#xD;&#xA;A submachine state specifies the insertion of the specification of a submachine state machine. The state machine that contains the submachine state is called the containing state machine. The same state machine may be a submachine more than once in the context of a single containing state machine.&#xD;&#xA;&#xD;&#xA;A submachine state is semantically equivalent to a composite state. The regions of the submachine state machine are the regions of the composite state. The entry, exit and behavior actions, and internal transitions, are defined as part of the state. Submachine state is a decomposition mechanism that allows factoring of common behaviors and their reuse.&#xD;&#xA;Transitions in the containing state machine can have entry/exit points of the inserted state machine as targets/sources.&#xD;&#xA;&#xD;&#xA;The states of protocol state machines are exposed to the users of their context classifiers. A protocol state represents an exposed stable situation of its context classifier: when an instance of the classifier is not processing any operation, users of this instance can always know its state configuration."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="isConsistentWith" ordered="false"
@@ -3703,7 +3703,7 @@
</eOperations>
<eOperations name="destinations_or_sources_of_transitions" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The connection point references used as destinations/sources of transitions associated with a submachine state must be defined as entry/exit points in the submachine state machine.&#xD;&#xA;self.isSubmachineState implies (self.connection->forAll (cp |&#xA;&#xA;cp.entry->forAll (p | p.statemachine = self.submachine) and&#xA;&#xA;cp.exit->forAll (p | p.statemachine = self.submachine)))"/>
+ <details key="documentation" value="The connection point references used as destinations/sources of transitions associated with a submachine state must be defined as entry/exit points in the submachine state machine.&#xD;&#xA;self.isSubmachineState implies (self.connection->forAll (cp |&#xD;&#xA;cp.entry->forAll (p | p.statemachine = self.submachine) and&#xD;&#xA;cp.exit->forAll (p | p.statemachine = self.submachine)))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -3838,14 +3838,14 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="stateInvariant" ordered="false"
eType="#//Constraint" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Specifies conditions that are always true when this state is the current state. In protocol state machines, state invariants are additional conditions to the preconditions of the outgoing transitions, and to the postcondition of the incoming transitions.&#xA;&#xA;"/>
+ <details key="documentation" value="Specifies conditions that are always true when this state is the current state. In protocol state machines, state invariants are additional conditions to the preconditions of the outgoing transitions, and to the postcondition of the incoming transitions.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Element/ownedElement"/>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="entry" ordered="false"
eType="#//Behavior" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An optional behavior that is executed whenever this state is entered regardless of the transition taken to reach the state. If defined, entry actions are always executed to completion prior to any internal behavior or transitions performed within the state.&#xA;&#xA;"/>
+ <details key="documentation" value="An optional behavior that is executed whenever this state is entered regardless of the transition taken to reach the state. If defined, entry actions are always executed to completion prior to any internal behavior or transitions performed within the state.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Element/ownedElement"/>
</eStructuralFeatures>
@@ -3866,7 +3866,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="deferrableTrigger" ordered="false"
upperBound="-1" eType="#//Trigger" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A list of triggers that are candidates to be retained by the state machine if they trigger no transitions out of the state (not consumed). A deferred trigger is retained until the state machine reaches a state configuration where it is no longer deferred.&#xA;&#xA;"/>
+ <details key="documentation" value="A list of triggers that are candidates to be retained by the state machine if they trigger no transitions out of the state (not consumed). A deferred trigger is retained until the state machine reaches a state configuration where it is no longer deferred.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="region" ordered="false"
@@ -3977,7 +3977,7 @@
</eOperations>
<eOperations name="outgoing_from_initial" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The outgoing transition from and initial vertex may have a behavior, but not a trigger or a guard.&#xD;&#xA;(self.kind = #initial) implies (self.outgoing.guard->isEmpty()&#xA;&#xA; and self.outgoing.trigger->isEmpty())"/>
+ <details key="documentation" value="The outgoing transition from and initial vertex may have a behavior, but not a trigger or a guard.&#xD;&#xA;(self.kind = #initial) implies (self.outgoing.guard->isEmpty()&#xD;&#xA; and self.outgoing.trigger->isEmpty())"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -4005,7 +4005,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="PseudostateKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="PseudoStateKind is an enumeration of the following literal values:&#xA;• initial&#xA;• deepHistory&#xA;• shallowHistory&#xA;• join&#xA;• fork&#xA;• junction&#xA;• choice&#xA;• entryPoint&#xA;• exitPoint&#xA;• terminate&#xA;"/>
+ <details key="documentation" value="PseudoStateKind is an enumeration of the following literal values:&#xD;&#xA; - initial&#xD;&#xA; - deepHistory&#xD;&#xA; - shallowHistory&#xD;&#xA; - join&#xD;&#xA; - fork&#xD;&#xA; - junction&#xD;&#xA; - choice&#xD;&#xA; - entryPoint&#xD;&#xA; - exitPoint&#xD;&#xA; - terminate"/>
</eAnnotations>
<eLiterals name="initial">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4029,12 +4029,12 @@
</eLiterals>
<eLiterals name="fork" value="4">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Fork vertices serve to split an incoming transition into two or more transitions terminating on orthogonal target vertices&#xA;&#xA;(i.e. vertices in different regions of a composite state). The segments outgoing from a fork vertex must not have guards or triggers."/>
+ <details key="documentation" value="Fork vertices serve to split an incoming transition into two or more transitions terminating on orthogonal target vertices&#xD;&#xA;(i.e. vertices in different regions of a composite state). The segments outgoing from a fork vertex must not have guards or triggers."/>
</eAnnotations>
</eLiterals>
<eLiterals name="junction" value="5">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Junction vertices are semantic-free vertices that are used to chain together multiple transitions. They are used to construct compound transition paths between states. For example, a junction can be used to converge multiple incoming transitions into a single outgoing transition representing a shared transition path (this is known as an merge). Conversely, they can be used to split an incoming transition into multiple outgoing transition segments with different guard conditions. This realizes a static conditional branch. (In the latter case, outgoing transitions whose guard conditions evaluate to false are disabled. A predefined guard denoted “else” may be defined for at most one outgoing transition. This transition is enabled if all the guards labeling the other transitions are false.) Static conditional branches are distinct from dynamic conditional branches that are realized by choice vertices (described below)."/>
+ <details key="documentation" value="Junction vertices are semantic-free vertices that are used to chain together multiple transitions. They are used to construct compound transition paths between states. For example, a junction can be used to converge multiple incoming transitions into a single outgoing transition representing a shared transition path (this is known as an merge). Conversely, they can be used to split an incoming transition into multiple outgoing transition segments with different guard conditions. This realizes a static conditional branch. (In the latter case, outgoing transitions whose guard conditions evaluate to false are disabled. A predefined guard denoted 'else' may be defined for at most one outgoing transition. This transition is enabled if all the guards labeling the other transitions are false.) Static conditional branches are distinct from dynamic conditional branches that are realized by choice vertices (described below)."/>
</eAnnotations>
</eLiterals>
<eLiterals name="choice" value="6">
@@ -4060,7 +4060,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ProtocolConformance" eSuperTypes="#//DirectedRelationship">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Protocol state machines can be redefined into more specific protocol state machines, or into behavioral state machines.&#xA;&#xA;&#xA;&#xA;Protocol conformance declares that the specific protocol state machine specifies a protocol that conforms to the general state machine one, or that the specific behavioral state machine abide by the protocol of the general protocol state machine.&#xA;&#xA;&#xA;&#xA;A protocol state machine is owned by a classifier. The classifiers owning a general state machine and an associated specific state machine are generally also connected by a generalization or a realization link.&#xA;&#xA;"/>
+ <details key="documentation" value="Protocol state machines can be redefined into more specific protocol state machines, or into behavioral state machines.&#xD;&#xA;&#xD;&#xA;Protocol conformance declares that the specific protocol state machine specifies a protocol that conforms to the general state machine one, or that the specific behavioral state machine abide by the protocol of the general protocol state machine.&#xD;&#xA;&#xD;&#xA;A protocol state machine is owned by a classifier. The classifiers owning a general state machine and an associated specific state machine are generally also connected by a generalization or a realization link.&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="generalMachine" ordered="false"
lowerBound="1" eType="#//ProtocolStateMachine">
@@ -4205,7 +4205,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="redefinedConnector" ordered="false"
upperBound="-1" eType="#//Connector">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A connector may be redefined when its containing classifier is specialized. The redefining connector may have a type that specializes the type of the redefined connector.&#xA;&#xA;The types of the connector ends of the redefining connector may specialize the types of the connector ends of the redefined connector. The properties of the connector ends of the redefining connector may be replaced."/>
+ <details key="documentation" value="A connector may be redefined when its containing classifier is specialized. The redefining connector may have a type that specializes the type of the redefined connector.&#xD;&#xA;The types of the connector ends of the redefining connector may specialize the types of the connector ends of the redefined connector. The properties of the connector ends of the redefining connector may be replaced."/>
</eAnnotations>
<eAnnotations source="subsets" references="#//RedefinableElement/redefinedElement"/>
</eStructuralFeatures>
@@ -4231,7 +4231,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="ConnectorKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="ConnectorKind is an enumeration of the following literal values:&#xA;• assembly Indicates that the connector is an assembly connector.&#xA;• delegation Indicates that the connector is a delegation connector.&#xA;"/>
+ <details key="documentation" value="ConnectorKind is an enumeration of the following literal values:&#xD;&#xA; - assembly = Indicates that the connector is an assembly connector.&#xD;&#xA; - delegation = Indicates that the connector is a delegation connector."/>
</eAnnotations>
<eLiterals name="assembly">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4328,7 +4328,7 @@
<contents xsi:type="ecore:EOperation" name="lowerBound" ordered="false" lowerBound="1"
eType="#//Integer">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The query lowerBound() returns the lower bound of the multiplicity as an Integer. This is a redefinition of the default&#xA;&#xA;lower bound, which normally, for MultiplicityElements, evaluates to 1 if empty.&#xD;&#xA;result = lowerBound = if lowerValue->isEmpty() then 0 else lowerValue->IntegerValue() endif"/>
+ <details key="documentation" value="The query lowerBound() returns the lower bound of the multiplicity as an Integer. This is a redefinition of the default&#xD;&#xA;lower bound, which normally, for MultiplicityElements, evaluates to 1 if empty.&#xD;&#xA;result = lowerBound = if lowerValue->isEmpty() then 0 else lowerValue->IntegerValue() endif"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -4428,24 +4428,24 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="format" ordered="false"
eType="#//String" unsettable="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This indicates the format of the content - which is how the string content should be interpreted. The following values are reserved: SVG, GIF, PNG, JPG, WMF, EMF, BMP.&#xA;&#xA;&#xA;&#xA;In addition the prefix 'MIME: ' is also reserved. This option can be used as an alternative to express the reserved values above, for example &quot;SVG&quot; could instead be expressed as &quot;MIME: image/svg+xml&quot;."/>
+ <details key="documentation" value="This indicates the format of the content - which is how the string content should be interpreted. The following values are reserved: SVG, GIF, PNG, JPG, WMF, EMF, BMP.&#xD;&#xA;&#xD;&#xA;In addition the prefix 'MIME: ' is also reserved. This option can be used as an alternative to express the reserved values above, for example &quot;SVG&quot; could instead be expressed as &quot;MIME: image/svg+xml&quot;."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Profile" eSuperTypes="#//Package">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A Profile is a kind of Package that extends a reference metamodel. The primary extension construct is the Stereotype, which are defined as part of Profiles.&#xA;&#xA;&#xA;&#xA;A profile introduces several constraints, or restrictions, on ordinary metamodeling through the use of the metaclasses defined in this package.&#xA;&#xA;&#xA;&#xA;A profile is a restricted form of a metamodel that must always be related to a reference metamodel, such as UML, as described below. A profile cannot be used without its reference metamodel, and defines a limited capability to extendmetaclasses of the reference metamodel. The extensions are defined as stereotypes that apply to existing metaclasses."/>
+ <details key="documentation" value="A Profile is a kind of Package that extends a reference metamodel. The primary extension construct is the Stereotype, which are defined as part of Profiles.&#xD;&#xA;&#xD;&#xA;A profile introduces several constraints, or restrictions, on ordinary metamodeling through the use of the metaclasses defined in this package.&#xD;&#xA;&#xD;&#xA;A profile is a restricted form of a metamodel that must always be related to a reference metamodel, such as UML, as described below. A profile cannot be used without its reference metamodel, and defines a limited capability to extendmetaclasses of the reference metamodel. The extensions are defined as stereotypes that apply to existing metaclasses."/>
</eAnnotations>
<eOperations name="metaclass_reference_not_specialized" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An element imported as a metaclassReference is not specialized or generalized in a Profile.&#xD;&#xA;self.metaclassReference.importedElement->&#xA;&#xA; select(c | c.oclIsKindOf(Classifier) and&#xA;&#xA; (c.generalization.namespace = self or&#xA;&#xA; (c.specialization.namespace = self) )->isEmpty()"/>
+ <details key="documentation" value="An element imported as a metaclassReference is not specialized or generalized in a Profile.&#xD;&#xA;self.metaclassReference.importedElement->&#xD;&#xA; select(c | c.oclIsKindOf(Classifier) and&#xD;&#xA; (c.generalization.namespace = self or&#xD;&#xA; (c.specialization.namespace = self) )->isEmpty()"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
</eOperations>
<eOperations name="references_same_metamodel" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="All elements imported either as metaclassReferences or through metamodelReferences are members of the same base reference metamodel.&#xD;&#xA;self.metamodelReference.importedPackage.elementImport.importedElement.allOwningPackages())->&#xA;&#xA; union(self.metaclassReference.importedElement.allOwningPackages() )->notEmpty()"/>
+ <details key="documentation" value="All elements imported either as metaclassReferences or through metamodelReferences are members of the same base reference metamodel.&#xD;&#xA;self.metamodelReference.importedPackage.elementImport.importedElement.allOwningPackages())->&#xD;&#xA; union(self.metaclassReference.importedElement.allOwningPackages() )->notEmpty()"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -4543,7 +4543,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="CallConcurrencyKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="CallConcurrencyKind is an enumeration with the following literals:&#xA;&#xA;• sequential No concurrency management mechanism is associated with the operation and, therefore, concurrency conflicts may occur. Instances that invoke a behavioral feature need to coordinate so that only one invocation to a target on any behavioral feature occurs at once.&#xA;&#xA;• guarded Multiple invocations of a behavioral feature may occur simultaneously to one instance, but only one is allowed to commence. The others are blocked until the performance of the first behavioral feature is complete. It is the responsibility of the system designer to ensure that deadlocks do not occur due to simultaneous blocks.&#xA;&#xA;• concurrent Multiple invocations of a behavioral feature may occur simultaneously to one instance and all of them may proceed concurrently.&#xA;&#xA;&#xA;&#xA;"/>
+ <details key="documentation" value="CallConcurrencyKind is an enumeration with the following literals:&#xD;&#xA; - sequential = No concurrency management mechanism is associated with the operation and, therefore, concurrency conflicts may occur. Instances that invoke a behavioral feature need to coordinate so that only one invocation to a target on any behavioral feature occurs at once.&#xD;&#xA; - guarded = Multiple invocations of a behavioral feature may occur simultaneously to one instance, but only one is allowed to commence. The others are blocked until the performance of the first behavioral feature is complete. It is the responsibility of the system designer to ensure that deadlocks do not occur due to simultaneous blocks.&#xD;&#xA; - concurrent = Multiple invocations of a behavioral feature may occur simultaneously to one instance and all of them may proceed concurrently."/>
</eAnnotations>
<eLiterals name="sequential">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4563,7 +4563,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DataType" eSuperTypes="#//Classifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.&#xA;&#xA;&#xA;&#xA;A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.&#xD;&#xA;A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.&#xA;&#xA;A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.&#xA;&#xA;"/>
+ <details key="documentation" value="A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.&#xD;&#xA;&#xD;&#xA;A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.&#xD;&#xA;A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.&#xD;&#xA;A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="inherit" ordered="false" upperBound="-1"
@@ -4632,7 +4632,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="AggregationKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="AggregationKind is an enumeration of the following literal values:&#xA;• none Indicates that the property has no aggregation.&#xA;• shared Indicates that the property has a shared aggregation.&#xA;• composite Indicates that the property is aggregated compositely, i.e., the composite object has&#xA;responsibility for the existence and storage of the composed objects (parts).&#xA;"/>
+ <details key="documentation" value="AggregationKind is an enumeration of the following literal values:&#xD;&#xA; - none = Indicates that the property has no aggregation.&#xD;&#xA; - shared = Indicates that the property has a shared aggregation.&#xD;&#xA; - composite = Indicates that the property is aggregated compositely, i.e., the composite object has responsibility for the existence and storage of the composed objects (parts)."/>
</eAnnotations>
<eLiterals name="none">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4667,7 +4667,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="ParameterDirectionKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="ParameterDirectionKind is an enumeration of the following literal values:&#xA;&#xA; - in Indicates that parameter values are passed into the behavioral element by the caller.&#xA;&#xA; - inout Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.&#xA;&#xA; - out Indicates that parameter values are passed from a behavioral element out to the caller.&#xA;&#xA; - return Indicates that parameter values are passed as return values from a behavioral element back to the caller.&#xA;&#xA;&#xD;&#xA;ParameterDirectionKind is an enumeration of the following literal values:&#xA;• in Indicates that parameter values are passed into the behavioral element by the caller.&#xA;• inout Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.&#xA;• out Indicates that parameter values are passed from a behavioral element out to the caller.&#xA;• return Indicates that parameter values are passed as return values from a behavioral element back to the caller.&#xA;"/>
+ <details key="documentation" value="ParameterDirectionKind is an enumeration of the following literal values:&#xD;&#xA; - in = Indicates that parameter values are passed into the behavioral element by the caller.&#xD;&#xA; - inout = Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.&#xD;&#xA; - out = Indicates that parameter values are passed from a behavioral element out to the caller.&#xD;&#xA; - return = Indicates that parameter values are passed as return values from a behavioral element back to the caller."/>
</eAnnotations>
<eLiterals name="in">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4701,7 +4701,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CollaborationUse" eSuperTypes="#//NamedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A collaboration use represents one particular use of a collaboration to explain the relationships between the properties of a classifier. A collaboration use shows how the pattern described by a collaboration is applied in a given context, by binding specific entities from that context to the roles of the collaboration. Depending on the context, these entities could be structural features of a classifier, instance specifications, or even roles in some containing collaboration. There may be multiple occurrences of a given collaboration within a classifier, each involving a different set of roles and connectors. A given role or connector may be involved in multiple occurrences of the same or different collaborations.&#xA;&#xA;&#xA;&#xA;Associated dependencies map features of the collaboration type to features in the classifier. These dependencies indicate which role in the classifier plays which role in the collaboration.&#xA;&#xA;"/>
+ <details key="documentation" value="A collaboration use represents one particular use of a collaboration to explain the relationships between the properties of a classifier. A collaboration use shows how the pattern described by a collaboration is applied in a given context, by binding specific entities from that context to the roles of the collaboration. Depending on the context, these entities could be structural features of a classifier, instance specifications, or even roles in some containing collaboration. There may be multiple occurrences of a given collaboration within a classifier, each involving a different set of roles and connectors. A given role or connector may be involved in multiple occurrences of the same or different collaborations.&#xD;&#xA;&#xD;&#xA;Associated dependencies map features of the collaboration type to features in the classifier. These dependencies indicate which role in the classifier plays which role in the collaboration.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="client_elements" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4733,14 +4733,14 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="roleBinding" ordered="false"
upperBound="-1" eType="#//Dependency" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A mapping between features of the collaboration type and features of the classifier or operation. This mapping indicates which connectable element of the classifier or operation plays which role(s) in the collaboration. A connectable element may be bound to multiple roles in the same collaboration use (that is, it may play multiple roles).&#xA;&#xA;"/>
+ <details key="documentation" value="A mapping between features of the collaboration type and features of the classifier or operation. This mapping indicates which connectable element of the classifier or operation plays which role(s) in the collaboration. A connectable element may be bound to multiple roles in the same collaboration use (that is, it may play multiple roles).&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Element/ownedElement"/>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Collaboration" eSuperTypes="#//BehavioredClassifier #//StructuredClassifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A collaboration is represented as a kind of classifier and defines a set of cooperating entities to be played by instances (its roles), as well as a set of connectors that define communication paths between the participating instances. The cooperating entities are the properties of the collaboration.&#xA;&#xA;&#xA;&#xA;A collaboration specifies a view (or projection) of a set of cooperating classifiers. It describes the required links between instances that play the roles of the collaboration, as well as the features required of the classifiers that specify the participating instances. Several collaborations may describe different projections of the same set of classifiers.&#xA;&#xA;"/>
+ <details key="documentation" value="A collaboration is represented as a kind of classifier and defines a set of cooperating entities to be played by instances (its roles), as well as a set of connectors that define communication paths between the participating instances. The cooperating entities are the properties of the collaboration.&#xD;&#xA;&#xD;&#xA;A collaboration specifies a view (or projection) of a set of cooperating classifiers. It describes the required links between instances that play the roles of the collaboration, as well as the features required of the classifiers that specify the participating instances. Several collaborations may describe different projections of the same set of classifiers.&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="collaborationRole" ordered="false"
upperBound="-1" eType="#//ConnectableElement">
@@ -4752,7 +4752,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="UseCase" eSuperTypes="#//BehavioredClassifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A UseCase is a kind of behaviored classifier that represents a declaration of an offered behavior. Each use case specifies some behavior, possibly including variants, that the subject can perform in collaboration with one or more actors. Use cases define the offered behavior of the subject without reference to its internal structure. These behaviors, involving&#xA;&#xA;interactions between the actor and the subject, may result in changes to the state of the subject and communications with its environment. A use case can include possible variations of its basic behavior, including exceptional behavior and error handling.&#xA;&#xA;&#xA;&#xA;The subject of a use case could be a physical system or any other element that may have behavior, such as a component, subsystem or class. Each use case specifies a unit of useful functionality that the subject provides to its users, i.e., a specific way of interacting with the subject. This functionality, which is initiated by an actor, must always be completed for the use case to complete. It is deemed complete if, after its execution, the subject will be in a state in which no further inputs or actions are expected and the use case can be initiated again or in an error state.&#xA;&#xA;&#xA;&#xA;Use cases can be used both for specification of the (external) requirements on a subject and for the specification of the functionality offered by a subject. Moreover, the use cases also state the requirements the specified subject poses on its environment by defining how they should interact with the subject so that it will be able to perform its services.&#xA;&#xA;&#xA;&#xA;The behavior of a use case can be described by a specification that is some kind of Behavior (through its ownedBehavior relationship), such as interactions, activities, and state machines, or by pre-conditions and post-conditions as well as by natural language text where appropriate. It may also be described indirectly through a Collaboration that uses the use case and its actors as the classifiers that type its parts. Which of these techniques to use depends on the nature of the use case behavior as well as on the intended reader. These descriptions can be combined.&#xA;&#xA;"/>
+ <details key="documentation" value="A UseCase is a kind of behaviored classifier that represents a declaration of an offered behavior. Each use case specifies some behavior, possibly including variants, that the subject can perform in collaboration with one or more actors. Use cases define the offered behavior of the subject without reference to its internal structure. These behaviors, involving&#xD;&#xA;interactions between the actor and the subject, may result in changes to the state of the subject and communications with its environment. A use case can include possible variations of its basic behavior, including exceptional behavior and error handling.&#xD;&#xA;&#xD;&#xA;The subject of a use case could be a physical system or any other element that may have behavior, such as a component, subsystem or class. Each use case specifies a unit of useful functionality that the subject provides to its users, i.e., a specific way of interacting with the subject. This functionality, which is initiated by an actor, must always be completed for the use case to complete. It is deemed complete if, after its execution, the subject will be in a state in which no further inputs or actions are expected and the use case can be initiated again or in an error state.&#xD;&#xA;&#xD;&#xA;Use cases can be used both for specification of the (external) requirements on a subject and for the specification of the functionality offered by a subject. Moreover, the use cases also state the requirements the specified subject poses on its environment by defining how they should interact with the subject so that it will be able to perform its services.&#xD;&#xA;&#xD;&#xA;The behavior of a use case can be described by a specification that is some kind of Behavior (through its ownedBehavior relationship), such as interactions, activities, and state machines, or by pre-conditions and post-conditions as well as by natural language text where appropriate. It may also be described indirectly through a Collaboration that uses the use case and its actors as the classifiers that type its parts. Which of these techniques to use depends on the nature of the use case behavior as well as on the intended reader. These descriptions can be combined.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="must_have_name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4820,12 +4820,12 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Include" eSuperTypes="#//NamedElement #//DirectedRelationship">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Note that the included use case is not optional, and is always required for the including use case to execute correctly.&#xA;&#xA;&#xA;&#xA;"/>
+ <details key="documentation" value="Note that the included use case is not optional, and is always required for the including use case to execute correctly.&#xD;&#xA;&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="addition" ordered="false"
lowerBound="1" eType="#//UseCase">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="References the use case that is to be included.&#xA;&#xA;"/>
+ <details key="documentation" value="References the use case that is to be included.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//DirectedRelationship/target"/>
</eStructuralFeatures>
@@ -4839,11 +4839,11 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Extend" eSuperTypes="#//NamedElement #//DirectedRelationship">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This relationship specifies that the behavior of a use case may be extended by the behavior of another (usually supplementary) use case. The extension takes place at one or more specific extension points defined in the extended use case. Note, however, that the extended use case is defined independently of the extending use case and is meaningful independently of the extending use case. On the other hand, the extending use case typically defines behavior that may not necessarily be meaningful by itself. Instead, the extending use case defines a set of modular behavior increments that augment an execution of the extended use case under specific conditions.&#xA;&#xA;&#xA;&#xA;Note that the same extending use case can extend more than one use case. Furthermore, an extending use case may itself be extended.&#xA;&#xA;&#xA;&#xA;It is a kind of DirectedRelationship, such that the source is the extending use case and the destination is the extended use case. It is also a kind of NamedElement so that it can have a name in the context of its owning use case. The extend relationship itself is owned by the extending use case.&#xA;&#xA;"/>
+ <details key="documentation" value="This relationship specifies that the behavior of a use case may be extended by the behavior of another (usually supplementary) use case. The extension takes place at one or more specific extension points defined in the extended use case. Note, however, that the extended use case is defined independently of the extending use case and is meaningful independently of the extending use case. On the other hand, the extending use case typically defines behavior that may not necessarily be meaningful by itself. Instead, the extending use case defines a set of modular behavior increments that augment an execution of the extended use case under specific conditions.&#xD;&#xA;&#xD;&#xA;Note that the same extending use case can extend more than one use case. Furthermore, an extending use case may itself be extended.&#xD;&#xA;&#xD;&#xA;It is a kind of DirectedRelationship, such that the source is the extending use case and the destination is the extended use case. It is also a kind of NamedElement so that it can have a name in the context of its owning use case. The extend relationship itself is owned by the extending use case.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="extension_points" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The extension points referenced by the extend relationship must belong to the use case that is being extended.&#xA;&#xA;&#xA;&#xA;&#xD;&#xA;extensionLocation->forAll (xp | extendedCase.extensionPoint->includes(xp))"/>
+ <details key="documentation" value="The extension points referenced by the extend relationship must belong to the use case that is being extended.&#xD;&#xA;&#xD;&#xA;&#xD;&#xA;extensionLocation->forAll (xp | extendedCase.extensionPoint->includes(xp))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -4858,14 +4858,14 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="condition" ordered="false"
eType="#//Constraint" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="References the condition that must hold when the first extension point is reached for the extension to take place. If no constraint is associated with the extend relationship, the extension is unconditional.&#xA;&#xA;"/>
+ <details key="documentation" value="References the condition that must hold when the first extension point is reached for the extension to take place. If no constraint is associated with the extend relationship, the extension is unconditional.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Element/ownedElement"/>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="extensionLocation" lowerBound="1"
upperBound="-1" eType="#//ExtensionPoint">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An ordered list of extension points belonging to the extended use case, specifying where the respective behavioral fragments of the extending use case are to be inserted. The first fragment in the extending use case is associated with the first extension point in the list, the second fragment with the second point, and so on. (Note that, in most practical cases, the extending use case has just a single behavior fragment, so that the list of extension points is trivial.)&#xA;&#xA;"/>
+ <details key="documentation" value="An ordered list of extension points belonging to the extended use case, specifying where the respective behavioral fragments of the extending use case are to be inserted. The first fragment in the extending use case is associated with the first extension point in the list, the second fragment with the second point, and so on. (Note that, in most practical cases, the extending use case has just a single behavior fragment, so that the list of extension points is trivial.)&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="extension" ordered="false"
@@ -4989,7 +4989,7 @@
<contents xsi:type="ecore:EOperation" name="stringValue" ordered="false" lowerBound="1"
eType="#//String">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The query stringValue() returns the string that concatenates, in order, all the component string literals of all the subexpressions that are part of the StringExpression.&#xA;&#xA;&#xD;&#xA;result = if subExpression->notEmpty()&#xA;then subExpression->iterate(se; stringValue = ‘| stringValue.concat(se.stringValue()))&#xA;else operand->iterate()(op; stringValue = ‘ | stringValue.concat(op.value))"/>
+ <details key="documentation" value="The query stringValue() returns the string that concatenates, in order, all the component string literals of all the subexpressions that are part of the StringExpression.&#xD;&#xA;&#xD;&#xA;result = if subExpression->notEmpty()&#xA;then subExpression->iterate(se; stringValue = ‘| stringValue.concat(se.stringValue()))&#xA;else operand->iterate()(op; stringValue = ‘ | stringValue.concat(op.value))"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -5046,7 +5046,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PackageMerge" eSuperTypes="#//DirectedRelationship">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both.&#xA;&#xA;&#xA;&#xA;This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.&#xA;&#xA;&#xA;&#xA;Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.&#xD;&#xA;A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both. This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.&#xA;&#xA;&#xA;&#xA;Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.&#xA;&#xA;"/>
+ <details key="documentation" value="A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both.&#xD;&#xA;&#xD;&#xA;This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.&#xD;&#xA;&#xD;&#xA;Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.&#xD;&#xA;A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both. This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.&#xD;&#xA;&#xD;&#xA;Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="mergedPackage" ordered="false"
lowerBound="1" eType="#//Package">
@@ -5091,7 +5091,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Enumeration" eSuperTypes="#//DataType">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Enumeration is a kind of data type, whose instances may be any of a number of predefined enumeration literals.&#xA;&#xA;It is possible to extend the set of applicable enumeration literals in other packages or profiles.&#xA;&#xA;&#xD;&#xA;Enumeration is a kind of data type, whose instances may be any of a number of user-defined enumeration literals.&#xA;&#xA;It is possible to extend the set of applicable enumeration literals in other packages or profiles.&#xA;&#xA;"/>
+ <details key="documentation" value="Enumeration is a kind of data type, whose instances may be any of a number of predefined enumeration literals.&#xD;&#xA;It is possible to extend the set of applicable enumeration literals in other packages or profiles.&#xD;&#xA;&#xD;&#xA;Enumeration is a kind of data type, whose instances may be any of a number of user-defined enumeration literals.&#xD;&#xA;It is possible to extend the set of applicable enumeration literals in other packages or profiles.&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedLiteral" upperBound="-1"
eType="#//EnumerationLiteral" containment="true" eOpposite="#//EnumerationLiteral/enumeration">
@@ -5115,7 +5115,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InstanceSpecification" eSuperTypes="#//DeploymentTarget #//PackageableElement #//DeployedArtifact">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An instance specification specifies existence of an entity in a modeled system and completely or partially describes the entity.&#xA;&#xA;The description may include:&#xA;&#xA;&#xA;&#xA;- Classification of the entity by one or more classifiers of which the entity is an instance. If the only classifier specified is abstract, then the instance specification only partially describes the entity.&#xA;&#xA;- The kind of instance, based on its classifier or classifiers -- for example, an instance specification whose classifier is a class describes an object of that class, while an instance specification whose classifier is an association describes a link of that association.&#xA;&#xA;- Specification of values of structural features of the entity. Not all structural features of all classifiers of the instance specification need be represented by slots, in which case the instance specification is a partial description.&#xA;&#xA;- Specification of how to compute, derive or construct the instance (optional).&#xA;&#xA;&#xA;&#xA;InstanceSpecification is a concrete class.&#xA;&#xA;&#xD;&#xA;In the metamodel, InstanceSpecification is a specialization of DeploymentTarget and DeployedArtifact."/>
+ <details key="documentation" value="An instance specification specifies existence of an entity in a modeled system and completely or partially describes the entity.&#xD;&#xA;The description may include:&#xD;&#xA;&#xD;&#xA;- Classification of the entity by one or more classifiers of which the entity is an instance. If the only classifier specified is abstract, then the instance specification only partially describes the entity.&#xD;&#xA;- The kind of instance, based on its classifier or classifiers -- for example, an instance specification whose classifier is a class describes an object of that class, while an instance specification whose classifier is an association describes a link of that association.&#xD;&#xA;- Specification of values of structural features of the entity. Not all structural features of all classifiers of the instance specification need be represented by slots, in which case the instance specification is a partial description.&#xD;&#xA;- Specification of how to compute, derive or construct the instance (optional).&#xD;&#xA;&#xD;&#xA;InstanceSpecification is a concrete class.&#xD;&#xA;&#xD;&#xA;In the metamodel, InstanceSpecification is a specialization of DeploymentTarget and DeployedArtifact."/>
</eAnnotations>
<eOperations name="defining_feature" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -5416,14 +5416,14 @@
</eAnnotations>
<eOperations name="one_output_parameter" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A function behavior has at least one output parameter.&#xD;&#xA;self.ownedParameters->&#xA;&#xA; select(p | p.direction=#out or p.direction=#inout or p.direction=#return)->size() >= 1"/>
+ <details key="documentation" value="A function behavior has at least one output parameter.&#xD;&#xA;self.ownedParameters->&#xD;&#xA; select(p | p.direction=#out or p.direction=#inout or p.direction=#return)->size() >= 1"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
</eOperations>
<eOperations name="types_of_parameters" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The types of parameters are all data types, which may not nest anything but other datatypes.&#xD;&#xA;def: hasAllDataTypeAttributes(d : DataType) : Boolean =&#xA;&#xA; d.ownedAttribute->forAll(a |&#xA;&#xA; a.type.oclIsTypeOf(DataType) and&#xA;&#xA; hasAllDataTypeAttributes(a.type))&#xA;&#xA;self.ownedParameters->forAll(p | p.type.notEmpty() and&#xA;&#xA; p.oclIsTypeOf(DataType) and hasAllDataTypeAttributes(p))"/>
+ <details key="documentation" value="The types of parameters are all data types, which may not nest anything but other datatypes.&#xD;&#xA;def: hasAllDataTypeAttributes(d : DataType) : Boolean =&#xD;&#xA; d.ownedAttribute->forAll(a |&#xD;&#xA; a.type.oclIsTypeOf(DataType) and&#xD;&#xA; hasAllDataTypeAttributes(a.type))&#xD;&#xA;self.ownedParameters->forAll(p | p.type.notEmpty() and&#xD;&#xA; p.oclIsTypeOf(DataType) and hasAllDataTypeAttributes(p))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -5593,7 +5593,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="StructuredActivityNode" eSuperTypes="#//Action #//Namespace #//ActivityGroup">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins when merged with CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.&#xA;&#xA;&#xA;&#xA;Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.&#xA;&#xA;&#xD;&#xA;A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins in CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.&#xA;&#xA;&#xA;&#xA;Because of the concurrent nature of the execution of actions within and across activities, it can be difficult to guarantee the consistent access and modification of object memory. In order to avoid race conditions or other concurrency-related problems, it is sometimes necessary to isolate the effects of a group of actions from the effects of actions outside the group. This may be indicated by setting the mustIsolate attribute to true on a structured activity node. If a structured activity node is &quot;isolated,&quot; then any object used by an action within the node cannot be accessed by any action outside the node until the structured activity node as a whole completes. Any concurrent actions that would result in accessing such objects are required to have their execution deferred until the completion of the node.&#xA;&#xA;&#xA;&#xA;Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.&#xA;&#xA;"/>
+ <details key="documentation" value="A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins when merged with CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.&#xD;&#xA;&#xD;&#xA;Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.&#xD;&#xA;&#xD;&#xA;A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins in CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.&#xD;&#xA;&#xD;&#xA;Because of the concurrent nature of the execution of actions within and across activities, it can be difficult to guarantee the consistent access and modification of object memory. In order to avoid race conditions or other concurrency-related problems, it is sometimes necessary to isolate the effects of a group of actions from the effects of actions outside the group. This may be indicated by setting the mustIsolate attribute to true on a structured activity node. If a structured activity node is &quot;isolated,&quot; then any object used by an action within the node cannot be accessed by any action outside the node until the structured activity node as a whole completes. Any concurrent actions that would result in accessing such objects are required to have their execution deferred until the completion of the node.&#xD;&#xA;&#xD;&#xA;Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EReference" name="activity" ordered="false" eType="#//Activity"
@@ -5641,7 +5641,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ActivityGroup" abstract="true" eSuperTypes="#//Element">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.&#xA;&#xA;They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.&#xA;&#xA;"/>
+ <details key="documentation" value="Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.&#xD;&#xA;They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="nodes_and_edges" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -5708,7 +5708,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Activity" eSuperTypes="#//Behavior">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked. &#xA;&#xA;&#xA;&#xA;Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:&#xA;&#xA;- occurrences of primitive functions, such as arithmetic functions.&#xA;&#xA;- invocations of behavior, such as activities.&#xA;&#xA;- communication actions, such as sending of signals.&#xA;&#xA;- manipulations of objects, such as reading or writing attributes or associations.&#xA;&#xA;&#xA;&#xA;Actions have no further decomposition in the activity containing them. However, the execution of a single action may induce the execution of many other actions. For example, a call action invokes an operation which is implemented by an activity containing actions that execute before the call action completes."/>
+ <details key="documentation" value="An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked. &#xD;&#xA;&#xD;&#xA;Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:&#xD;&#xA;- occurrences of primitive functions, such as arithmetic functions.&#xD;&#xA;- invocations of behavior, such as activities.&#xD;&#xA;- communication actions, such as sending of signals.&#xD;&#xA;- manipulations of objects, such as reading or writing attributes or associations.&#xD;&#xA;&#xD;&#xA;Actions have no further decomposition in the activity containing them. However, the execution of a single action may induce the execution of many other actions. For example, a call action invokes an operation which is implemented by an activity containing actions that execute before the call action completes."/>
</eAnnotations>
<eOperations name="no_supergroups" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -5789,7 +5789,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Variable" eSuperTypes="#//ConnectableElement #//MultiplicityElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A variable specifies data storage shared by the actions within a group. There are actions to write and read variables. These actions are treated as side effecting actions, similar to the actions to write and read object attributes and associations. There are no sequencing constraints among actions that access the same variable. Such actions must be explicitly coordinated by control flows or other constraints.&#xA;&#xA;&#xA;&#xA;Any values contained by a variable must conform to the type of the variable and have cardinalities allowed by the multiplicity of the variable.&#xA;&#xA;&#xD;&#xA;A variable is considered a connectable element."/>
+ <details key="documentation" value="A variable specifies data storage shared by the actions within a group. There are actions to write and read variables. These actions are treated as side effecting actions, similar to the actions to write and read object attributes and associations. There are no sequencing constraints among actions that access the same variable. Such actions must be explicitly coordinated by control flows or other constraints.&#xD;&#xA;&#xD;&#xA;Any values contained by a variable must conform to the type of the variable and have cardinalities allowed by the multiplicity of the variable.&#xD;&#xA;&#xD;&#xA;A variable is considered a connectable element."/>
</eAnnotations>
<eOperations name="owned" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -5800,7 +5800,7 @@
</eOperations>
<eOperations name="isAccessibleBy" ordered="false" lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The isAccessibleBy() operation is not defined in standard UML. Implementations should define it to specify which actions can access a variable.&#xA;&#xA;&#xD;&#xA;result = true"/>
+ <details key="documentation" value="The isAccessibleBy() operation is not defined in standard UML. Implementations should define it to specify which actions can access a variable.&#xD;&#xA;&#xD;&#xA;result = true"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -6001,7 +6001,7 @@
</eAnnotations>
<eOperations name="interrupting_edges" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Interrupting edges of a region must have their source node in the region and their target node outside the region in the same activity containing the region.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Interrupting edges of a region must have their source node in the region and their target node outside the region in the same activity containing the region.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -6080,7 +6080,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ObjectNode" abstract="true" eSuperTypes="#//ActivityNode #//TypedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An object node is an activity node that indicates an instance of a particular classifier, possibly in a particular state, may be available at a particular point in the activity. Object nodes can be used in a variety of ways, depending on where objects are flowing from and to, as described in the semantics section.&#xD;&#xA;An object node is an activity node that indicates an instance of a particular classifier, possibly in a particular state, may be available at a particular point in the activity. Object nodes can be used in a variety of ways, depending on where objects are flowing from and to, as described in the semantics section.&#xA;&#xA;Complete object nodes add support for token selection, limitation on the number of tokens, specifying the state required for tokens, and carrying control values.&#xA;&#xA;"/>
+ <details key="documentation" value="An object node is an activity node that indicates an instance of a particular classifier, possibly in a particular state, may be available at a particular point in the activity. Object nodes can be used in a variety of ways, depending on where objects are flowing from and to, as described in the semantics section.&#xD;&#xA;An object node is an activity node that indicates an instance of a particular classifier, possibly in a particular state, may be available at a particular point in the activity. Object nodes can be used in a variety of ways, depending on where objects are flowing from and to, as described in the semantics section.&#xD;&#xA;Complete object nodes add support for token selection, limitation on the number of tokens, specifying the state required for tokens, and carrying control values.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="object_flow_edges" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6225,7 +6225,7 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isSynchronous" ordered="false"
lowerBound="1" eType="#//Boolean" defaultValueLiteral="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If true, the call is synchronous and the caller waits for completion of the invoked behavior.&#xA;&#xA;If false, the call is asynchronous and the caller proceeds immediately and does not expect a return values.&#xA;&#xA;"/>
+ <details key="documentation" value="If true, the call is synchronous and the caller waits for completion of the invoked behavior.&#xD;&#xA;If false, the call is asynchronous and the caller proceeds immediately and does not expect a return values.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="result" upperBound="-1"
@@ -6300,7 +6300,7 @@
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="type_ordering_multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding owned parameter of the operation.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding owned parameter of the operation.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eAnnotations source="redefines" references="#//CallAction/type_ordering_multiplicity"/>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
@@ -6349,7 +6349,7 @@
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="type_ordering_multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding parameter of the behavior.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding parameter of the behavior.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eAnnotations source="redefines" references="#//CallAction/type_ordering_multiplicity"/>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
@@ -6391,7 +6391,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Usage" eSuperTypes="#//Dependency">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A usage is a relationship in which one element requires another element (or set of elements) for its full implementation or operation. In the metamodel, a Usage is a Dependency in which the client requires the presence of the supplier.&#xA;&#xA;"/>
+ <details key="documentation" value="A usage is a relationship in which one element requires another element (or set of elements) for its full implementation or operation. In the metamodel, a Usage is a Dependency in which the client requires the presence of the supplier.&#xD;&#xA;"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ControlNode" abstract="true" eSuperTypes="#//ActivityNode">
@@ -6457,14 +6457,14 @@
</eOperations>
<eOperations name="no_incoming_edges" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Activity parameter object nodes with no incoming edges and one or more outgoing edges must have a parameter with in or inout direction.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Activity parameter object nodes with no incoming edges and one or more outgoing edges must have a parameter with in or inout direction.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
</eOperations>
<eOperations name="no_outgoing_edges" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Activity parameter object nodes with no outgoing edges and one or more incoming edges must have a parameter with out, inout, or return direction.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Activity parameter object nodes with no outgoing edges and one or more incoming edges must have a parameter with out, inout, or return direction.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -6478,7 +6478,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Message" eSuperTypes="#//NamedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A Message is a NamedElement that defines a particular communication between Lifelines of an Interaction. A communication can be e.g. raising a signal, invoking an Operation, creating or destroying an Instance. The Message specifies not only the kind of communication given by the dispatching ExecutionSpecification, but also the sender and the receiver. A Message associates normally two OccurrenceSpecifications - one sending OccurrenceSpecification and one receiving OccurrenceSpecification.&#xA;&#xA;"/>
+ <details key="documentation" value="A Message is a NamedElement that defines a particular communication between Lifelines of an Interaction. A communication can be e.g. raising a signal, invoking an Operation, creating or destroying an Instance. The Message specifies not only the kind of communication given by the dispatching ExecutionSpecification, but also the sender and the receiver. A Message associates normally two OccurrenceSpecifications - one sending OccurrenceSpecification and one receiving OccurrenceSpecification.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="sending_receiving_message_event" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6586,7 +6586,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="MessageKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="MessageKind is an enumeration of the following values:&#xA;&#xA;- complete = sendEvent and receiveEvent are present&#xA;&#xA;- lost = sendEvent present and receiveEvent absent&#xA;&#xA;- found = sendEvent absent and receiveEvent present&#xA;&#xA;- unknown = sendEvent and receiveEvent absent (should not appear)"/>
+ <details key="documentation" value="MessageKind is an enumeration of the following values:&#xD;&#xA; - complete = sendEvent and receiveEvent are present&#xD;&#xA; - lost = sendEvent present and receiveEvent absent&#xD;&#xA; - found = sendEvent absent and receiveEvent present&#xD;&#xA; - unknown = sendEvent and receiveEvent absent (should not appear)"/>
</eAnnotations>
<eLiterals name="complete">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6611,7 +6611,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="MessageSort">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="MessageSort is an enumeration of the following values:&#xA;&#xA;- synchCall = the message was generated by a synchronous call to an operation&#xA;&#xA;- asynchCall = the message was generated by an asynchronous call to an operation; i.e., a CallAction with isSynchronous= false&#xA;&#xA;- asynchSignal = the message was generated by an asynchronous send action&#xA;&#xA;- createMessage = the message designating the creation of another lifeline object&#xA;&#xA;- deleteMessage = the message designating the termination of anther lifeline&#xA;&#xA;- reply = the message is a reply message to an operation call"/>
+ <details key="documentation" value="MessageSort is an enumeration of the following values:&#xD;&#xA; - synchCall = the message was generated by a synchronous call to an operation&#xD;&#xA; - asynchCall = the message was generated by an asynchronous call to an operation; i.e., a CallAction for which isSynchronous is false&#xD;&#xA; - asynchSignal = the message was generated by an asynchronous send action&#xD;&#xA; - createMessage = the message designating the creation of another lifeline object&#xD;&#xA; - deleteMessage = the message designating the termination of anther lifeline&#xD;&#xA; - reply = the message is a reply message to an operation call"/>
</eAnnotations>
<eLiterals name="synchCall">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6620,7 +6620,7 @@
</eLiterals>
<eLiterals name="asynchCall" value="1">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The message was generated by an asynchronous call to an operation; i.e., a CallAction with isSynchronous&#xA;&#xA;= false.&#xA;&#xA;"/>
+ <details key="documentation" value="The message was generated by an asynchronous call to an operation; i.e., a CallAction with isSynchronous&#xD;&#xA;= false.&#xD;&#xA;"/>
</eAnnotations>
</eLiterals>
<eLiterals name="asynchSignal" value="2">
@@ -6683,7 +6683,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="formalGate" ordered="false"
upperBound="-1" eType="#//Gate" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Specifies the gates that form the message interface between this Interaction and any InteractionUses which reference it.&#xA;&#xA;"/>
+ <details key="documentation" value="Specifies the gates that form the message interface between this Interaction and any InteractionUses which reference it.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Namespace/ownedMember"/>
</eStructuralFeatures>
@@ -6729,7 +6729,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Lifeline" eSuperTypes="#//NamedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A lifeline represents an individual participant in the Interaction. While Parts and StructuralFeatures may have multiplicity greater than 1, Lifelines represent only one interacting entity. Lifeline is a specialization of NamedElement. If the referenced ConnectableElement is multivalued (i.e. has a multiplicity > 1), then the Lifeline may have an expression (the 'selector') that specifies which particular part is represented by this Lifeline. If the selector is omitted this means that an arbitrary representative of the multivalued ConnectableElement is chosen.&#xD;&#xA;A lifeline represents an individual participant in the Interaction. While Parts and StructuralFeatures may have multiplicity greater than 1, Lifelines represent only one interacting entity. Lifeline is a specialization of NamedElement.&#xA;&#xA;&#xA;&#xA;If the referenced ConnectableElement is multivalued (i.e. has a multiplicity > 1), then the Lifeline may have an expression (the 'selector') that specifies which particular part is represented by this Lifeline.&#xA;&#xA;&#xA;&#xA;If the selector is omitted this means that an arbitrary representative of the multivalued ConnectableElement is chosen.&#xA;&#xA;"/>
+ <details key="documentation" value="A lifeline represents an individual participant in the Interaction. While Parts and StructuralFeatures may have multiplicity greater than 1, Lifelines represent only one interacting entity. Lifeline is a specialization of NamedElement. If the referenced ConnectableElement is multivalued (i.e. has a multiplicity > 1), then the Lifeline may have an expression (the 'selector') that specifies which particular part is represented by this Lifeline. If the selector is omitted this means that an arbitrary representative of the multivalued ConnectableElement is chosen.&#xD;&#xA;A lifeline represents an individual participant in the Interaction. While Parts and StructuralFeatures may have multiplicity greater than 1, Lifelines represent only one interacting entity. Lifeline is a specialization of NamedElement.&#xD;&#xA;&#xD;&#xA;If the referenced ConnectableElement is multivalued (i.e. has a multiplicity > 1), then the Lifeline may have an expression (the 'selector') that specifies which particular part is represented by this Lifeline.&#xD;&#xA;&#xD;&#xA;If the selector is omitted this means that an arbitrary representative of the multivalued ConnectableElement is chosen.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="interaction_uses_share_lifeline" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6787,7 +6787,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PartDecomposition" eSuperTypes="#//InteractionUse">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="PartDecomposition is a description of the internal interactions of one Lifeline relative to an Interaction.&#xA;&#xA;&#xA;&#xA;A Lifeline has a class associated as the type of the ConnectableElement that the Lifeline represents. That class may have an internal structure and the PartDecomposition is an Interaction that describes the behavior of that internal structure relative to the Interaction where the decomposition is referenced.&#xA;&#xA;&#xA;&#xA;A PartDecomposition is a specialization of InteractionUse. It associates with the ConnectableElement that it decomposes.&#xA;&#xA;"/>
+ <details key="documentation" value="PartDecomposition is a description of the internal interactions of one Lifeline relative to an Interaction.&#xD;&#xA;&#xD;&#xA;A Lifeline has a class associated as the type of the ConnectableElement that the Lifeline represents. That class may have an internal structure and the PartDecomposition is an Interaction that describes the behavior of that internal structure relative to the Interaction where the decomposition is referenced.&#xD;&#xA;&#xD;&#xA;A PartDecomposition is a specialization of InteractionUse. It associates with the ConnectableElement that it decomposes.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="parts_of_internal_structures" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6798,14 +6798,14 @@
</eOperations>
<eOperations name="assume" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Within X there is a sequence of constructs along L (such constructs are CombinedFragments, InteractionUse and (plain) OccurrenceSpecifications). Then a corresponding sequence of constructs must appear within D, matched one-to-one in the same order.&#xA;&#xA;&#xA;&#xA;i) CombinedFragment covering L are matched with an extra-global CombinedFragment in D&#xA;&#xA;ii) An InteractionUse covering L are matched with a global (i.e. covering all Lifelines) InteractionUse in D.&#xA;&#xA;iii) A plain OccurrenceSpecification on L is considered an actualGate that must be matched by a formalGate of D&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Within X there is a sequence of constructs along L (such constructs are CombinedFragments, InteractionUse and (plain) OccurrenceSpecifications). Then a corresponding sequence of constructs must appear within D, matched one-to-one in the same order.&#xD;&#xA;&#xD;&#xA;i) CombinedFragment covering L are matched with an extra-global CombinedFragment in D&#xD;&#xA;ii) An InteractionUse covering L are matched with a global (i.e. covering all Lifelines) InteractionUse in D.&#xD;&#xA;iii) A plain OccurrenceSpecification on L is considered an actualGate that must be matched by a formalGate of D&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
</eOperations>
<eOperations name="commutativity_of_decomposition" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Assume also that there is within X an&#xA;&#xA;InteractionUse (say) U that covers L. According to the constraint above U will have a counterpart CU within D. Within the Interaction referenced by U, L should also be decomposed, and the decomposition should reference CU. (This rule is called commutativity of decomposition)&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Assume also that there is within X an&#xD;&#xA;InteractionUse (say) U that covers L. According to the constraint above U will have a counterpart CU within D. Within the Interaction referenced by U, L should also be decomposed, and the decomposition should reference CU. (This rule is called commutativity of decomposition)&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -6813,7 +6813,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InteractionUse" eSuperTypes="#//InteractionFragment">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An InteractionUse refers to an Interaction. The InteractionUse is a shorthand for copying the contents of the referred Interaction where the InteractionUse is. To be accurate the copying must take into account substituting parameters with arguments and connect the formal gates with the actual ones.&#xA;&#xA;&#xA;&#xA;It is common to want to share portions of an interaction between several other interactions. An InteractionUse allows multiple interactions to reference an interaction that represents a common portion of their specification.&#xA;&#xA;"/>
+ <details key="documentation" value="An InteractionUse refers to an Interaction. The InteractionUse is a shorthand for copying the contents of the referred Interaction where the InteractionUse is. To be accurate the copying must take into account substituting parameters with arguments and connect the formal gates with the actual ones.&#xD;&#xA;&#xD;&#xA;It is common to want to share portions of an interaction between several other interactions. An InteractionUse allows multiple interactions to reference an interaction that represents a common portion of their specification.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="gates_match" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6901,7 +6901,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OccurrenceSpecification" eSuperTypes="#//InteractionFragment">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An OccurrenceSpecification is the basic semantic unit of Interactions. The sequences of occurrences specified by them are the meanings of Interactions.&#xA;&#xA;OccurrenceSpecifications are ordered along a Lifeline.&#xA;&#xA;The namespace of an OccurrenceSpecification is the Interaction in which it is contained.&#xA;&#xA;"/>
+ <details key="documentation" value="An OccurrenceSpecification is the basic semantic unit of Interactions. The sequences of occurrences specified by them are the meanings of Interactions.&#xD;&#xA;OccurrenceSpecifications are ordered along a Lifeline.&#xD;&#xA;The namespace of an OccurrenceSpecification is the Interaction in which it is contained.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EReference" name="covered" ordered="false" upperBound="-1"
@@ -6915,7 +6915,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="toBefore" ordered="false"
upperBound="-1" eType="#//GeneralOrdering" eOpposite="#//GeneralOrdering/after">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="References the GeneralOrderings that specify EventOcurrences that must occur before this OccurrenceSpecification&#xA;&#xA;"/>
+ <details key="documentation" value="References the GeneralOrderings that specify EventOcurrences that must occur before this OccurrenceSpecification&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="event" ordered="false"
@@ -6927,13 +6927,13 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="toAfter" ordered="false"
upperBound="-1" eType="#//GeneralOrdering" eOpposite="#//GeneralOrdering/before">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="References the GeneralOrderings that specify EventOcurrences that must occur after this OccurrenceSpecification&#xA;&#xA;"/>
+ <details key="documentation" value="References the GeneralOrderings that specify EventOcurrences that must occur after this OccurrenceSpecification&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InteractionOperand" eSuperTypes="#//Namespace #//InteractionFragment">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An InteractionOperand is contained in a CombinedFragment. An InteractionOperand represents one operand of the expression given by the enclosing CombinedFragment. &#xA;&#xA;&#xA;&#xA;An InteractionOperand is an InteractionFragment with an optional guard expression. An InteractionOperand may be&#xA;&#xA;guarded by a InteractionConstraint. Only InteractionOperands with a guard that evaluates to true at this point in the interaction will be considered for the production of the traces for the enclosing CombinedFragment.&#xA;&#xA;&#xA;&#xA;InteractionOperand contains an ordered set of InteractionFragments.&#xA;&#xA;&#xA;&#xA;In Sequence Diagrams these InteractionFragments are ordered according to their geometrical position vertically. The geometrical position of the InteractionFragment is given by the topmost vertical coordinate of its contained OccurrenceSpecifications or symbols."/>
+ <details key="documentation" value="An InteractionOperand is contained in a CombinedFragment. An InteractionOperand represents one operand of the expression given by the enclosing CombinedFragment. &#xD;&#xA;&#xD;&#xA;An InteractionOperand is an InteractionFragment with an optional guard expression. An InteractionOperand may be&#xD;&#xA;guarded by a InteractionConstraint. Only InteractionOperands with a guard that evaluates to true at this point in the interaction will be considered for the production of the traces for the enclosing CombinedFragment.&#xD;&#xA;&#xD;&#xA;InteractionOperand contains an ordered set of InteractionFragments.&#xD;&#xA;&#xD;&#xA;In Sequence Diagrams these InteractionFragments are ordered according to their geometrical position vertically. The geometrical position of the InteractionFragment is given by the topmost vertical coordinate of its contained OccurrenceSpecifications or symbols."/>
</eAnnotations>
<eOperations name="guard_directly_prior" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -7205,7 +7205,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Actor" eSuperTypes="#//BehavioredClassifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An Actor models a type of role played by an entity that interacts with the subject (e.g., by exchanging signals and data), but which is external to the subject (i.e., in the sense that an instance of an actor is not a part of the instance of its corresponding subject). Actors may represent roles played by human users, external hardware, or other subjects. Note that an actor does not necessarily represent a specific physical entity but merely a particular facet (i.e., “role”) of some entity that is relevant to the specification of its associated use cases. Thus, a single physical instance may play the role of several different actors and, conversely, a given actor may be played by multiple different instances.&#xA;&#xA;&#xA;&#xA;Since an actor is external to the subject, it is typically defined in the same classifier or package that incorporates the subject classifier.&#xA;&#xA;"/>
+ <details key="documentation" value="An Actor models a type of role played by an entity that interacts with the subject (e.g., by exchanging signals and data), but which is external to the subject (i.e., in the sense that an instance of an actor is not a part of the instance of its corresponding subject). Actors may represent roles played by human users, external hardware, or other subjects. &#xD;&#xA;Note that an actor does not necessarily represent a specific physical entity but merely a particular facet (i.e., role) of some entity that is relevant to the specification of its associated use cases. Thus, a single physical instance may play the role of several different actors and, conversely, a given actor may be played by multiple different instances.&#xD;&#xA;&#xD;&#xA;Since an actor is external to the subject, it is typically defined in the same classifier or package that incorporates the subject classifier."/>
</eAnnotations>
<eOperations name="associations" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -7379,7 +7379,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Component" eSuperTypes="#//Class #//Namespace">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A component is a subtype of Class which provides for a Component having attributes and operations, and being able to participate in Associations and Generalizations. A Component may form the abstraction for a set of realizingClassifiers that realize its behavior. In addition, because a Class itself is a subtype of an EncapsulatedClassifier, a Component may optionally have an internal structure and own a set of Ports that formalize its interaction points.&#xA;&#xA;&#xA;&#xA;A component has a number of provided and required Interfaces, that form the basis for wiring components together, either using Dependencies, or by using Connectors. A provided Interface is one that is either implemented directly by the component or one of its realizingClassifiers, or it is the type of a provided Port of the Component. A required interface is designated by a Usage Dependency from the Component or one of its realizingClassifiers, or it is the type of a required Port.&#xA;&#xA;"/>
+ <details key="documentation" value="A component is a subtype of Class which provides for a Component having attributes and operations, and being able to participate in Associations and Generalizations. A Component may form the abstraction for a set of realizingClassifiers that realize its behavior. In addition, because a Class itself is a subtype of an EncapsulatedClassifier, a Component may optionally have an internal structure and own a set of Ports that formalize its interaction points.&#xD;&#xA;&#xD;&#xA;A component has a number of provided and required Interfaces, that form the basis for wiring components together, either using Dependencies, or by using Connectors. A provided Interface is one that is either implemented directly by the component or one of its realizingClassifiers, or it is the type of a provided Port of the Component. A required interface is designated by a Usage Dependency from the Component or one of its realizingClassifiers, or it is the type of a required Port.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="createOwnedClass" ordered="false" lowerBound="1" eType="#//Class">
<eParameters name="name" ordered="false" lowerBound="1" eType="#//String"/>
@@ -7417,7 +7417,7 @@
<details key="constraints" value="spec"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="result = let usedInterfaces = UsedInterfaces(self) and&#xA;&#xA; let realizingClassifierUsedInterfaces = UsedInterfaces(self.realizingClassifier) and&#xA;&#xA; let typesOfUsedPorts = self.ownedPort.required in&#xA;&#xA; ((usedInterfaces->union(realizingClassifierUsedInterfaces))->&#xA;&#xA; union(typesOfUsedPorts))->asSet()"/>
+ <details key="documentation" value="result = let usedInterfaces = UsedInterfaces(self) and&#xD;&#xA; let realizingClassifierUsedInterfaces = UsedInterfaces(self.realizingClassifier) and&#xD;&#xA; let typesOfUsedPorts = self.ownedPort.required in&#xD;&#xA; ((usedInterfaces->union(realizingClassifierUsedInterfaces))->&#xD;&#xA; union(typesOfUsedPorts))->asSet()"/>
</eAnnotations>
</eOperations>
<eOperations name="getProvideds" ordered="false" upperBound="-1" eType="#//Interface">
@@ -7425,13 +7425,13 @@
<details key="constraints" value="spec"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="result = let implementedInterfaces = self.implementation->collect(impl|impl.contract) and&#xA;&#xA; let realizedInterfaces = RealizedInterfaces(self) and&#xA;&#xA; let realizingClassifierInterfaces = RealizedInterfaces(self.realizingClassifier) and&#xA;&#xA; let typesOfRequiredPorts = self.ownedPort.provided in&#xA;&#xA; (((implementedInterfaces->union(realizedInterfaces)->union(realizingClassifierInterfaces))->&#xA;&#xA; union(typesOfRequiredPorts))->asSet()"/>
+ <details key="documentation" value="result = let implementedInterfaces = self.implementation->collect(impl|impl.contract) and&#xD;&#xA; let realizedInterfaces = RealizedInterfaces(self) and&#xD;&#xA; let realizingClassifierInterfaces = RealizedInterfaces(self.realizingClassifier) and&#xD;&#xA; let typesOfRequiredPorts = self.ownedPort.provided in&#xD;&#xA; (((implementedInterfaces->union(realizedInterfaces)->union(realizingClassifierInterfaces))->&#xD;&#xA; union(typesOfRequiredPorts))->asSet()"/>
</eAnnotations>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isIndirectlyInstantiated"
ordered="false" lowerBound="1" eType="#//Boolean" defaultValueLiteral="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The kind of instantiation that applies to a Component. If false, the component is instantiated as an addressable object. If true, the Component is defined at design-time, but at runtime (or execution-time) an object specified by the Component does not exist, that is, the component is instantiated indirectly, through the instantiation of its realizing classifiers or parts. Several standard stereotypes use this meta attribute, e.g. «specification, «focus», «subsystem»."/>
+ <details key="documentation" value="The kind of instantiation that applies to a Component. If false, the component is instantiated as an addressable object. If true, the Component is defined at design-time, but at runtime (or execution-time) an object specified by the Component does not exist, that is, the component is instantiated indirectly, through the instantiation of its realizing classifiers or parts. Several standard stereotypes use this meta attribute, e.g. «specification», «focus», «subsystem»."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="required" ordered="false"
@@ -7848,7 +7848,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="result" ordered="false"
lowerBound="1" eType="#//OutputPin" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Gives the output pin on which the hosting object is placed.&#xA;&#xA;"/>
+ <details key="documentation" value="Gives the output pin on which the hosting object is placed.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Action/output"/>
</eStructuralFeatures>
@@ -7902,7 +7902,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="object" ordered="false"
lowerBound="1" eType="#//InputPin" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Gives the input pin from which the object whose structural feature is to be read or written is obtained.&#xA;&#xA;"/>
+ <details key="documentation" value="Gives the input pin from which the object whose structural feature is to be read or written is obtained.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Action/input"/>
</eStructuralFeatures>
@@ -7974,11 +7974,11 @@
<eClassifiers xsi:type="ecore:EClass" name="RemoveStructuralFeatureValueAction"
eSuperTypes="#//WriteStructuralFeatureAction">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.&#xA;&#xA;&#xA;&#xA;Structural features are potentially multi-valued and ordered, and may support duplicates, so the action supports specification of removal points for new values. It also supports the removal of all duplicate values.&#xA;&#xA;"/>
+ <details key="documentation" value="The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.&#xD;&#xA;&#xD;&#xA;Structural features are potentially multi-valued and ordered, and may support duplicates, so the action supports specification of removal points for new values. It also supports the removal of all duplicate values.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="non_unique_removal" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Actions removing a value from ordered nonunique structural features must have a single removeAt input pin if isRemoveDuplicates is false. It must be of type Unlimited Natural with multiplicity 1..1. Otherwise, the action has no removeAt input pin.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Actions removing a value from ordered nonunique structural features must have a single removeAt input pin if isRemoveDuplicates is false. It must be of type Unlimited Natural with multiplicity 1..1. Otherwise, the action has no removeAt input pin.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -7999,7 +7999,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="AddStructuralFeatureValueAction" eSuperTypes="#//WriteStructuralFeatureAction">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Structural Features are potentially multi-valued and ordered, so the action supports specification of insertion points for new values. It also supports the removal of existing values of the structural feature before the new value is added.&#xA;&#xA;&#xA;&#xA;The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.&#xA;&#xA;"/>
+ <details key="documentation" value="Structural Features are potentially multi-valued and ordered, so the action supports specification of insertion points for new values. It also supports the removal of existing values of the structural feature before the new value is added.&#xD;&#xA;&#xD;&#xA;The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="unlimited_natural_and_multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -8071,7 +8071,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LinkEndData" eSuperTypes="#//Element">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xD;&#xA;LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xA;&#xA;"/>
+ <details key="documentation" value="LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xD;&#xA;LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="property_is_association_end" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -8167,7 +8167,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ReadLinkAction" eSuperTypes="#//LinkAction">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This action navigates an association towards one end, which is the end that does not have an input pin to take its object (the “open” end). The objects put on the result output pin are the ones participating in the association at the open end, conforming to the specified qualifiers, in order if the end is ordered. The semantics is undefined for reading a link that violates the navigability or visibility of the open end."/>
+ <details key="documentation" value="This action navigates an association towards one end, which is the end that does not have an input pin to take its object (the open end). The objects put on the result output pin are the ones participating in the association at the open end, conforming to the specified qualifiers, in order if the end is ordered. The semantics is undefined for reading a link that violates the navigability or visibility of the open end."/>
</eAnnotations>
<eOperations name="one_open_end" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -8207,14 +8207,14 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="result" ordered="false"
lowerBound="1" eType="#//OutputPin" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The pin on which are put the objects participating in the association at the end not specified by the inputs.&#xA;&#xA;"/>
+ <details key="documentation" value="The pin on which are put the objects participating in the association at the end not specified by the inputs.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Action/output"/>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LinkEndCreationData" eSuperTypes="#//LinkEndData">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This class is required when using CreateLinkAction, to specify insertion points for ordered ends and for replacing all links at end. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, as required. This requires more than one piece of data, namely, the statically-specified end in the user model, the object on the end, and the qualifier values for that end. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xA;&#xA;&#xA;&#xA;Qualifier values are used in CompleteActions to identify links to create."/>
+ <details key="documentation" value="This class is required when using CreateLinkAction, to specify insertion points for ordered ends and for replacing all links at end. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, as required. This requires more than one piece of data, namely, the statically-specified end in the user model, the object on the end, and the qualifier values for that end. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xD;&#xA;&#xD;&#xA;Qualifier values are used in CompleteActions to identify links to create."/>
</eAnnotations>
<eOperations name="create_link_action" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -8245,7 +8245,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CreateLinkAction" eSuperTypes="#//WriteLinkAction">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This action can be used to create links and link objects. There is no return value in either case. This is so that no change of the action is required if the association is changed to an association class or vice versa. CreateLinkAction uses a specialization of LinkEndData called LinkEndCreationData, to support ordered associations. The insertion point is specified at runtime by an additional input pin, which is required for ordered association ends and omitted for unordered ends. The insertion point is a positive integer giving the position to insert the link, or unlimited, to insert at the end. Reinserting an existing end at a new position in an ordered unique structural feature moves the end to that position. CreateLinkAction also uses LinkEndCreationData to support the destruction of existing links of the association that connect any of the objects of the new link. When the link is created, this option is available on an end-by-end basis, and causes all links of the association emanating from the &#xA;&#xA;specified ends to be destroyed before the new link is created."/>
+ <details key="documentation" value="This action can be used to create links and link objects. There is no return value in either case. This is so that no change of the action is required if the association is changed to an association class or vice versa. CreateLinkAction uses a specialization of LinkEndData called LinkEndCreationData, to support ordered associations. The insertion point is specified at runtime by an additional input pin, which is required for ordered association ends and omitted for unordered ends. The insertion point is a positive integer giving the position to insert the link, or unlimited, to insert at the end. Reinserting an existing end at a new position in an ordered unique structural feature moves the end to that position. CreateLinkAction also uses LinkEndCreationData to support the destruction of existing links of the association that connect any of the objects of the new link. When the link is created, this option is available on an end-by-end basis, and causes all links of the association emanating from the &#xD;&#xA;specified ends to be destroyed before the new link is created."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EReference" name="endData" ordered="false" lowerBound="2"
@@ -8278,7 +8278,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DestroyLinkAction" eSuperTypes="#//WriteLinkAction">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This action destroys a link or a link object. Link objects can also be destroyed with DestroyObjectAction. The link is specified in the same way as link creation, even for link objects. This allows actions to remain unchanged when their associations are transformed from ordinary ones to association classes and vice versa.&#xA;&#xA;&#xA;&#xA;DestroyLinkAction uses a specialization of LinkEndData, called LinkEndDestructionData, to support ordered nonunique associations. The position of the link to be destroyed is specified at runtime by an additional input pin, which is required for ordered nonunique association ends and omitted for other kinds of ends. This is a positive integer giving the position of the link to destroy.&#xA;&#xA;&#xA;&#xA;DestroyLinkAction also uses LinkEndDestructionData to support the destruction of duplicate links of the association on ends that are nonunique. This option is available on an end-by-end basis, and causes all duplicate links of the association emanating from the specified ends to be destroyed.&#xA;&#xA;"/>
+ <details key="documentation" value="This action destroys a link or a link object. Link objects can also be destroyed with DestroyObjectAction. The link is specified in the same way as link creation, even for link objects. This allows actions to remain unchanged when their associations are transformed from ordinary ones to association classes and vice versa.&#xD;&#xA;&#xD;&#xA;DestroyLinkAction uses a specialization of LinkEndData, called LinkEndDestructionData, to support ordered nonunique associations. The position of the link to be destroyed is specified at runtime by an additional input pin, which is required for ordered nonunique association ends and omitted for other kinds of ends. This is a positive integer giving the position of the link to destroy.&#xD;&#xA;&#xD;&#xA;DestroyLinkAction also uses LinkEndDestructionData to support the destruction of duplicate links of the association on ends that are nonunique. This option is available on an end-by-end basis, and causes all duplicate links of the association emanating from the specified ends to be destroyed.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EReference" name="endData" ordered="false" lowerBound="2"
@@ -8292,7 +8292,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LinkEndDestructionData" eSuperTypes="#//LinkEndData">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This class is required when using DestroyLinkAction, to specify links to destroy for nonunique ordered ends. A link cannot be passed as a runtime value to or from an action.&#xA;&#xA;&#xA;&#xA;Qualifier values are used in CompleteActions to identify links to destroy."/>
+ <details key="documentation" value="This class is required when using DestroyLinkAction, to specify links to destroy for nonunique ordered ends. A link cannot be passed as a runtime value to or from an action.&#xD;&#xA;&#xD;&#xA;Qualifier values are used in CompleteActions to identify links to destroy."/>
</eAnnotations>
<eOperations name="destroy_link_action" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -8586,7 +8586,7 @@
</eAnnotations>
<eOperations name="first_event_multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The multiplicity of firstEvent must be 2 if the multiplicity of constrainedElement is 2. Otherwise the multiplicity of firstEvent is 0.&#xD;&#xA;if (constrainedElement->size() =2)&#xA;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)"/>
+ <details key="documentation" value="The multiplicity of firstEvent must be 2 if the multiplicity of constrainedElement is 2. Otherwise the multiplicity of firstEvent is 0.&#xD;&#xA;if (constrainedElement->size() =2)&#xD;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -8621,7 +8621,7 @@
</eAnnotations>
<eOperations name="first_event_multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The multiplicity of firstEvent must be 2 if the multiplicity of event is 2. Otherwise the multiplicity of firstEvent is 0.&#xD;&#xA;if (event->size() = 2)&#xA;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)"/>
+ <details key="documentation" value="The multiplicity of firstEvent must be 2 if the multiplicity of event is 2. Otherwise the multiplicity of firstEvent is 0.&#xD;&#xA;if (event->size() = 2)&#xD;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -8891,11 +8891,11 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InformationItem" eSuperTypes="#//Classifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An information item is an abstraction of all kinds of information that can be exchanged between objects. It is a kind of classifier intended for representing information in a very abstract way, one which cannot be instantiated. One purpose of InformationItems is to be able to define preliminary models, before having made detailed modeling decisions on types or structures. One other purpose of information items and information flows is to abstract complex models by a less precise but more general representation of the information exchanged betwen entities of a system.&#xA;&#xA;"/>
+ <details key="documentation" value="An information item is an abstraction of all kinds of information that can be exchanged between objects. It is a kind of classifier intended for representing information in a very abstract way, one which cannot be instantiated. One purpose of InformationItems is to be able to define preliminary models, before having made detailed modeling decisions on types or structures. One other purpose of information items and information flows is to abstract complex models by a less precise but more general representation of the information exchanged betwen entities of a system.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="sources_and_targets" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The sources and targets of an information item (its related information flows) must designate subsets of the sources and targets of the representation information item, if any.The Classifiers that can realize an information item can only be of the following kind: Class, Interface, InformationItem, Signal, Component.&#xD;&#xA;(self.represented->select(p | p->oclIsKindOf(InformationItem))->forAll(p |&#xA;&#xA; p.informationFlow.source->forAll(q | self.informationFlow.source->include(q)) and&#xA;&#xA; p.informationFlow.target->forAll(q | self.informationFlow.target->include(q)))) and&#xA;&#xA; (self.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface) or&#xA;&#xA; oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component)))"/>
+ <details key="documentation" value="The sources and targets of an information item (its related information flows) must designate subsets of the sources and targets of the representation information item, if any.The Classifiers that can realize an information item can only be of the following kind: Class, Interface, InformationItem, Signal, Component.&#xD;&#xA;(self.represented->select(p | p->oclIsKindOf(InformationItem))->forAll(p |&#xD;&#xA; p.informationFlow.source->forAll(q | self.informationFlow.source->include(q)) and&#xD;&#xA; p.informationFlow.target->forAll(q | self.informationFlow.target->include(q)))) and&#xD;&#xA; (self.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface) or&#xD;&#xA; oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component)))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -8927,7 +8927,7 @@
</eAnnotations>
<eOperations name="sources_and_targets_kind" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The sources and targets of the information flow can only be one of the following kind: Actor, Node, UseCase, Artifact, Class, Component, Port, Property, Interface, Package, ActivityNode, ActivityPartition and InstanceSpecification except when its classifier is a relationship (i.e. it represents a link).&#xD;&#xA;(self.source->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xA;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xA;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xA;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xA;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification))) and&#xA;&#xA; (self.target->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xA;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xA;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xA;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xA;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification)))"/>
+ <details key="documentation" value="The sources and targets of the information flow can only be one of the following kind: Actor, Node, UseCase, Artifact, Class, Component, Port, Property, Interface, Package, ActivityNode, ActivityPartition and InstanceSpecification except when its classifier is a relationship (i.e. it represents a link).&#xD;&#xA;(self.source->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xD;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xD;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xD;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xD;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification))) and&#xD;&#xA; (self.target->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xD;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xD;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xD;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xD;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification)))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -8941,7 +8941,7 @@
</eOperations>
<eOperations name="convey_classifiers" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An information flow can only convey classifiers that are allowed to represent an information item.&#xA;&#xA;&#xD;&#xA;self.conveyed.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface)&#xA;&#xA; or oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component))"/>
+ <details key="documentation" value="An information flow can only convey classifiers that are allowed to represent an information item.&#xD;&#xA;&#xD;&#xA;self.conveyed.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface)&#xD;&#xA; or oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -9505,7 +9505,7 @@
</eOperations>
<eOperations name="multiplicity_of_result" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The multiplicity of each result output pin must be compatible with the multiplicity of the corresponding structural features of the unmarshall classifier.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="The multiplicity of each result output pin must be compatible with the multiplicity of the corresponding structural features of the unmarshall classifier.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -9610,7 +9610,7 @@
</eOperations>
<eOperations name="incoming_object_flow" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If a join node has an incoming object flow, it must have an outgoing object flow, otherwise, it must have an outgoing control flow.&#xD;&#xA;(self.incoming.select(e | e.isTypeOf(ObjectFlow)->notEmpty() implies&#xA;&#xA; self.outgoing.isTypeOf(ObjectFlow)) and&#xA;&#xA; (self.incoming.select(e | e.isTypeOf(ObjectFlow)->empty() implies&#xA;&#xA; self.outgoing.isTypeOf(ControlFlow))"/>
+ <details key="documentation" value="If a join node has an incoming object flow, it must have an outgoing object flow, otherwise, it must have an outgoing control flow.&#xD;&#xA;(self.incoming.select(e | e.isTypeOf(ObjectFlow)->notEmpty() implies&#xD;&#xA; self.outgoing.isTypeOf(ObjectFlow)) and&#xD;&#xA; (self.incoming.select(e | e.isTypeOf(ObjectFlow)->empty() implies&#xD;&#xA; self.outgoing.isTypeOf(ControlFlow))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -9647,7 +9647,7 @@
</eOperations>
<eOperations name="compatible_types" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Object nodes connected by an object flow, with optionally intervening control nodes, must have compatible types. In particular, the downstream object node type must be the same or a supertype of the upstream object node type.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Object nodes connected by an object flow, with optionally intervening control nodes, must have compatible types. In particular, the downstream object node type must be the same or a supertype of the upstream object node type.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -9721,7 +9721,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ConditionalNode" eSuperTypes="#//StructuredActivityNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A conditional node consists of one or more clauses. Each clause consists of a test section and a body section. When the conditional node begins execution, the test sections of the clauses are executed. If one or more test sections yield a true value, one of the corresponding body sections will be executed. If more than one test section yields a true value, only one body section will be executed. The choice is nondeterministic unless the test sequence of clauses is specified. If no test section yields a true value, then no body section is executed; this may be a semantic error if output values are expected from the conditional node.&#xA;&#xA;&#xA;&#xA;In general, test section may be executed in any order, including simultaneously (if the underlying execution architecture supports it). The result may therefore be nondeterministic if more than one test section can be true concurrently. To enforce ordering of evaluation, sequencing constraints may be specified among clauses. One frequent case is a total ordering of clauses, in which case the clause execution order is determinate. If it is impossible for more than one test section to evaluate true simultaneously, the result is deterministic and it is unnecessary to order the clauses, as ordering may impose undesirable and unnecessary restrictions on implementation. Note that, although evaluation of test sections may be specified as concurrent, this does not require that the implementation evaluate them in parallel; it merely means that the model does not impose any order on evaluation.&#xA;&#xA;&#xA;&#xA;An &quot;else&quot; clause is a clause that is a successor to all other clauses in the conditional and whose test part always returns true.&#xA;&#xA;&#xA;&#xA;Output values created in the test or body section of a clause are potentially available for use outside the conditional. However, any value used outside the conditional must be created in every clause, otherwise an undefined value would be accessed if a clause not defining the value were executed."/>
+ <details key="documentation" value="A conditional node consists of one or more clauses. Each clause consists of a test section and a body section. When the conditional node begins execution, the test sections of the clauses are executed. If one or more test sections yield a true value, one of the corresponding body sections will be executed. If more than one test section yields a true value, only one body section will be executed. The choice is nondeterministic unless the test sequence of clauses is specified. If no test section yields a true value, then no body section is executed; this may be a semantic error if output values are expected from the conditional node.&#xD;&#xA;&#xD;&#xA;In general, test section may be executed in any order, including simultaneously (if the underlying execution architecture supports it). The result may therefore be nondeterministic if more than one test section can be true concurrently. To enforce ordering of evaluation, sequencing constraints may be specified among clauses. One frequent case is a total ordering of clauses, in which case the clause execution order is determinate. If it is impossible for more than one test section to evaluate true simultaneously, the result is deterministic and it is unnecessary to order the clauses, as ordering may impose undesirable and unnecessary restrictions on implementation. Note that, although evaluation of test sections may be specified as concurrent, this does not require that the implementation evaluate them in parallel; it merely means that the model does not impose any order on evaluation.&#xD;&#xA;&#xD;&#xA;An &quot;else&quot; clause is a clause that is a successor to all other clauses in the conditional and whose test part always returns true.&#xD;&#xA;&#xD;&#xA;Output values created in the test or body section of a clause are potentially available for use outside the conditional. However, any value used outside the conditional must be created in every clause, otherwise an undefined value would be accessed if a clause not defining the value were executed."/>
</eAnnotations>
<eOperations name="result_no_incoming" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -9913,7 +9913,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ExpansionRegion" eSuperTypes="#//StructuredActivityNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An expansion region is a strictly nested region of an activity with explicit input and outputs (modeled as ExpansionNodes). Each input is a collection of values. If there are multiple inputs, each of them must hold the same kind of collection, although the types of the elements in the different collections may vary. The expansion region is executed once for each element (or position) in the input collection.&#xA;&#xA;&#xA;&#xA;The number of output collections can differ from the number of input collections. On each execution of the region, an output value from the region is inserted into an output collection at the same position as the input elements. If the region execution ends with no output, then nothing is added to the output collection. When this happens the output collection will not have the same number of elements as the input collections, the region acts as a filter. If all the executions provide an output to the collection, then the output collections will have the same number of elements as the input collections.&#xA;&#xA;&#xA;&#xA;The inputs and outputs to an expansion region are modeled as ExpansionNodes. From &quot;outside&quot; of the region, the values on these nodes appear as collections. From &quot;inside&quot; the region the values appear as elements of the collections. Object flow edges connect pins outside the region to input and output expansion nodes as collections. Object flow edges connect pins inside the region to input and output expansion nodes as individual elements. From the inside of the region, these nodes are visible as individual values. If an expansion node has a name, it is the name of the individual element within the region.&#xA;&#xA;&#xA;&#xA;Any object flow edges that cross the boundary of the region, without passing through expansion nodes, provide values that are fixed within the different executions of the region."/>
+ <details key="documentation" value="An expansion region is a strictly nested region of an activity with explicit input and outputs (modeled as ExpansionNodes). Each input is a collection of values. If there are multiple inputs, each of them must hold the same kind of collection, although the types of the elements in the different collections may vary. The expansion region is executed once for each element (or position) in the input collection.&#xD;&#xA;&#xD;&#xA;The number of output collections can differ from the number of input collections. On each execution of the region, an output value from the region is inserted into an output collection at the same position as the input elements. If the region execution ends with no output, then nothing is added to the output collection. When this happens the output collection will not have the same number of elements as the input collections, the region acts as a filter. If all the executions provide an output to the collection, then the output collections will have the same number of elements as the input collections.&#xD;&#xA;&#xD;&#xA;The inputs and outputs to an expansion region are modeled as ExpansionNodes. From &quot;outside&quot; of the region, the values on these nodes appear as collections. From &quot;inside&quot; the region the values appear as elements of the collections. Object flow edges connect pins outside the region to input and output expansion nodes as collections. Object flow edges connect pins inside the region to input and output expansion nodes as individual elements. From the inside of the region, these nodes are visible as individual values. If an expansion node has a name, it is the name of the individual element within the region.&#xD;&#xA;&#xD;&#xA;Any object flow edges that cross the boundary of the region, without passing through expansion nodes, provide values that are fixed within the different executions of the region."/>
</eAnnotations>
<eOperations name="expansion_nodes" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -9925,7 +9925,7 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="mode" ordered="false" lowerBound="1"
eType="#//ExpansionKind" defaultValueLiteral="iterative">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The way in which the executions interact:&#xA;&#xA;parallel: all interactions are independent&#xA;&#xA;iterative: the interactions occur in order of the elements&#xA;&#xA;stream: a stream of values flows into a single execution&#xA;&#xA;"/>
+ <details key="documentation" value="The way in which the executions interact:&#xD;&#xA;parallel: all interactions are independent&#xD;&#xA;iterative: the interactions occur in order of the elements&#xD;&#xA;stream: a stream of values flows into a single execution&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="inputElement" ordered="false"
@@ -9963,7 +9963,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ProtocolTransition" eSuperTypes="#//Transition">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A protocol transition (transition as specialized in the ProtocolStateMachines package) specifies a legal transition for an operation. Transitions of protocol state machines have the following information: a pre condition (guard), on trigger, and a post condition. Every protocol transition is associated to zero or one operation (referred BehavioralFeature) that belongs to the context classifier of the protocol state machine.&#xA;&#xA;&#xA;&#xA;The protocol transition specifies that the associated (referred) operation can be called for an instance in the origin state under the initial condition (guard), and that at the end of the transition, the destination state will be reached under the final condition (post).&#xA;&#xA;"/>
+ <details key="documentation" value="A protocol transition (transition as specialized in the ProtocolStateMachines package) specifies a legal transition for an operation. Transitions of protocol state machines have the following information: a pre condition (guard), on trigger, and a post condition. Every protocol transition is associated to zero or one operation (referred BehavioralFeature) that belongs to the context classifier of the protocol state machine.&#xD;&#xA;&#xD;&#xA;The protocol transition specifies that the associated (referred) operation can be called for an instance in the origin state under the initial condition (guard), and that at the end of the transition, the destination state will be reached under the final condition (post).&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="belongs_to_psm" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -9989,7 +9989,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="postCondition" ordered="false"
eType="#//Constraint">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Specifies the post condition of the transition which is the condition that should be obtained once the transition is triggered. This post condition is part of the post condition of the operation connected to the transition.&#xA;&#xA;"/>
+ <details key="documentation" value="Specifies the post condition of the transition which is the condition that should be obtained once the transition is triggered. This post condition is part of the post condition of the operation connected to the transition.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Namespace/ownedRule"/>
</eStructuralFeatures>
diff --git a/plugins/org.eclipse.uml2.uml/model/UML.merged.uml b/plugins/org.eclipse.uml2.uml/model/UML.merged.uml
index 828ac9b9..b690ca8f 100644
--- a/plugins/org.eclipse.uml2.uml/model/UML.merged.uml
+++ b/plugins/org.eclipse.uml2.uml/model/UML.merged.uml
@@ -1,525 +1,518 @@
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Ecore="http://www.eclipse.org/uml2/schemas/Ecore/3" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/2.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/uml2/schemas/Ecore/3 pathmap://UML_PROFILES/Ecore.profile.uml#_vy-HUYinEdqtvbnfB2L_5w">
<uml:Model xmi:id="_o8I_sGvaEdq4DLWZOhbdEA" name="UML">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGpsMWCEdqI1bY5Lwi8Hg" source="capabilities">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGpscWCEdqI1bY5Lwi8Hg" source="InfrastructureLibrary::Core::Constructs" references="_DH62EKPAEdqi_5gqUMOQtA _g2eB3MWCEdqI1bY5Lwi8Hg _g2BV6MWCEdqI1bY5Lwi8Hg _g2UQ5sWCEdqI1bY5Lwi8Hg _g2eBx8WCEdqI1bY5Lwi8Hg _g1bgPsWCEdqI1bY5Lwi8Hg _g2UQzcWCEdqI1bY5Lwi8Hg _g1ubIMWCEdqI1bY5Lwi8Hg _g1kp5MWCEdqI1bY5Lwi8Hg _g2eB28WCEdqI1bY5Lwi8Hg _g1Ru7MWCEdqI1bY5Lwi8Hg _g1Ru_sWCEdqI1bY5Lwi8Hg _g1Ru6cWCEdqI1bY5Lwi8Hg _g2eB6sWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg _g0-0AsWCEdqI1bY5Lwi8Hg _g14MA8WCEdqI1bY5Lwi8Hg _g2BWI8WCEdqI1bY5Lwi8Hg _g0-z8MWCEdqI1bY5Lwi8Hg _I6N3UGwGEdq7X4sGURiZYA _g2UQucWCEdqI1bY5Lwi8Hg _g2UQ0MWCEdqI1bY5Lwi8Hg _g2LGzMWCEdqI1bY5Lwi8Hg _ynRtoGvtEdqG6fBIPwe-mw _g2UQssWCEdqI1bY5Lwi8Hg _g2UQ28WCEdqI1bY5Lwi8Hg _g2UQx8WCEdqI1bY5Lwi8Hg _g1bgIcWCEdqI1bY5Lwi8Hg _g2eB0MWCEdqI1bY5Lwi8Hg _g1H-GcWCEdqI1bY5Lwi8Hg _g0-0BcWCEdqI1bY5Lwi8Hg _g1ua0MWCEdqI1bY5Lwi8Hg _JBgfoKPAEdqi_5gqUMOQtA _g1bgKMWCEdqI1bY5Lwi8Hg _g2BWG8WCEdqI1bY5Lwi8Hg _g0r5FcWCEdqI1bY5Lwi8Hg _g01DDMWCEdqI1bY5Lwi8Hg _g01DJ8WCEdqI1bY5Lwi8Hg _g1Ru4MWCEdqI1bY5Lwi8Hg _g2BVwMWCEdqI1bY5Lwi8Hg _g2eCAMWCEdqI1bY5Lwi8Hg _g1kp6cWCEdqI1bY5Lwi8Hg _g14L_8WCEdqI1bY5Lwi8Hg _g2eB4MWCEdqI1bY5Lwi8Hg _g1ubRsWCEdqI1bY5Lwi8Hg _g1ubFMWCEdqI1bY5Lwi8Hg _g0-0CMWCEdqI1bY5Lwi8Hg _g1Ru9MWCEdqI1bY5Lwi8Hg _g2eBysWCEdqI1bY5Lwi8Hg _g1kp0MWCEdqI1bY5Lwi8Hg _M4X2IGveEdq4DLWZOhbdEA _g2UQ68WCEdqI1bY5Lwi8Hg _g1ua_8WCEdqI1bY5Lwi8Hg _g1bgQsWCEdqI1bY5Lwi8Hg _KyaPMGveEdq4DLWZOhbdEA _g2UQxsWCEdqI1bY5Lwi8Hg _g01DGMWCEdqI1bY5Lwi8Hg _g2LG7sWCEdqI1bY5Lwi8Hg _g1bf8cWCEdqI1bY5Lwi8Hg _g2BWAsWCEdqI1bY5Lwi8Hg _g1RvDcWCEdqI1bY5Lwi8Hg _g1RvCMWCEdqI1bY5Lwi8Hg _rHT3YKOsEdqi_5gqUMOQtA _g1Ru5MWCEdqI1bY5Lwi8Hg _g2eBzcWCEdqI1bY5Lwi8Hg _AwvxoGwNEdq7X4sGURiZYA _g2eBssWCEdqI1bY5Lwi8Hg _g1kqBcWCEdqI1bY5Lwi8Hg _g1bgMsWCEdqI1bY5Lwi8Hg _6UV2QGwJEdq7X4sGURiZYA _g2eByMWCEdqI1bY5Lwi8Hg _g2UQsMWCEdqI1bY5Lwi8Hg _g1bgNsWCEdqI1bY5Lwi8Hg _g1H-MMWCEdqI1bY5Lwi8Hg _g2BVzMWCEdqI1bY5Lwi8Hg _g1ubHMWCEdqI1bY5Lwi8Hg _g1kp-cWCEdqI1bY5Lwi8Hg _g2eB4cWCEdqI1bY5Lwi8Hg _g2eBvMWCEdqI1bY5Lwi8Hg _g2UQ5cWCEdqI1bY5Lwi8Hg _g2UQ3sWCEdqI1bY5Lwi8Hg _g2UQ6cWCEdqI1bY5Lwi8Hg _g01DFMWCEdqI1bY5Lwi8Hg _g1ubTsWCEdqI1bY5Lwi8Hg _g2eB_sWCEdqI1bY5Lwi8Hg _g2eBxMWCEdqI1bY5Lwi8Hg _g2eBz8WCEdqI1bY5Lwi8Hg _V6vuYGwGEdq7X4sGURiZYA _g2eB88WCEdqI1bY5Lwi8Hg __1ap4HLzEdqziYxiZo0YtA _g01C-sWCEdqI1bY5Lwi8Hg _g2eBtcWCEdqI1bY5Lwi8Hg _g0r5CMWCEdqI1bY5Lwi8Hg _g1H-KsWCEdqI1bY5Lwi8Hg _g2LG2MWCEdqI1bY5Lwi8Hg _g1ua-cWCEdqI1bY5Lwi8Hg _g1ubB8WCEdqI1bY5Lwi8Hg _g2UQ3MWCEdqI1bY5Lwi8Hg _g1H-JsWCEdqI1bY5Lwi8Hg _g1bgHsWCEdqI1bY5Lwi8Hg _g2BVyMWCEdqI1bY5Lwi8Hg _g14L4cWCEdqI1bY5Lwi8Hg _g2BV5cWCEdqI1bY5Lwi8Hg _g2LG48WCEdqI1bY5Lwi8Hg _g0iIBMWCEdqI1bY5Lwi8Hg _g2UQtcWCEdqI1bY5Lwi8Hg _g0-0PMWCEdqI1bY5Lwi8Hg _g0r5I8WCEdqI1bY5Lwi8Hg _g2LG1MWCEdqI1bY5Lwi8Hg _OQcbgGwOEdq7X4sGURiZYA _g1Ru-cWCEdqI1bY5Lwi8Hg _g0-0IcWCEdqI1bY5Lwi8Hg _g0r5DsWCEdqI1bY5Lwi8Hg _g2eB-cWCEdqI1bY5Lwi8Hg _g0-0DcWCEdqI1bY5Lwi8Hg _g2eB3cWCEdqI1bY5Lwi8Hg _g2eB1MWCEdqI1bY5Lwi8Hg _g1bgJcWCEdqI1bY5Lwi8Hg _g1bf5MWCEdqI1bY5Lwi8Hg _g2eBy8WCEdqI1bY5Lwi8Hg _g1H-EsWCEdqI1bY5Lwi8Hg _g1H-CMWCEdqI1bY5Lwi8Hg _g14MB8WCEdqI1bY5Lwi8Hg _g2BV2MWCEdqI1bY5Lwi8Hg _g2UQvcWCEdqI1bY5Lwi8Hg _g0iIAMWCEdqI1bY5Lwi8Hg _g2BWH8WCEdqI1bY5Lwi8Hg _g2eBzsWCEdqI1bY5Lwi8Hg _g1bgOsWCEdqI1bY5Lwi8Hg _g1bf_cWCEdqI1bY5Lwi8Hg _g1H97MWCEdqI1bY5Lwi8Hg _g1bf-cWCEdqI1bY5Lwi8Hg _g2eB9sWCEdqI1bY5Lwi8Hg _g1bf4MWCEdqI1bY5Lwi8Hg _g2eBwsWCEdqI1bY5Lwi8Hg _g2eCA8WCEdqI1bY5Lwi8Hg _g1ubEMWCEdqI1bY5Lwi8Hg _g1H96MWCEdqI1bY5Lwi8Hg _g2eB4sWCEdqI1bY5Lwi8Hg _g2eB58WCEdqI1bY5Lwi8Hg _g14L5cWCEdqI1bY5Lwi8Hg _g1kqC8WCEdqI1bY5Lwi8Hg _g0-0EsWCEdqI1bY5Lwi8Hg _g2BV_sWCEdqI1bY5Lwi8Hg _g0-0LsWCEdqI1bY5Lwi8Hg _g1ua4cWCEdqI1bY5Lwi8Hg _g1kp9cWCEdqI1bY5Lwi8Hg _g2UQ2cWCEdqI1bY5Lwi8Hg _g0r5HMWCEdqI1bY5Lwi8Hg _g2UQzMWCEdqI1bY5Lwi8Hg _g2UQ0sWCEdqI1bY5Lwi8Hg _g2eBvcWCEdqI1bY5Lwi8Hg _g0-z88WCEdqI1bY5Lwi8Hg _g14L-8WCEdqI1bY5Lwi8Hg _ChRfcGveEdq4DLWZOhbdEA _g2eB9MWCEdqI1bY5Lwi8Hg _g2UQxcWCEdqI1bY5Lwi8Hg _g1ubJ8WCEdqI1bY5Lwi8Hg _g2eBt8WCEdqI1bY5Lwi8Hg _g1ua2cWCEdqI1bY5Lwi8Hg _g01DNsWCEdqI1bY5Lwi8Hg _g1RvGMWCEdqI1bY5Lwi8Hg _g2UQscWCEdqI1bY5Lwi8Hg _g2BV0cWCEdqI1bY5Lwi8Hg _g2LG0cWCEdqI1bY5Lwi8Hg _g2BVxMWCEdqI1bY5Lwi8Hg _g1H-IsWCEdqI1bY5Lwi8Hg _jKxnwGwLEdq7X4sGURiZYA _g1ubGMWCEdqI1bY5Lwi8Hg _g14L2sWCEdqI1bY5Lwi8Hg _g2UQ7MWCEdqI1bY5Lwi8Hg _g2UQ4cWCEdqI1bY5Lwi8Hg _00owUGvdEdq4DLWZOhbdEA _g14L6cWCEdqI1bY5Lwi8Hg _g1H978WCEdqI1bY5Lwi8Hg _g2UQ7sWCEdqI1bY5Lwi8Hg _g2UQysWCEdqI1bY5Lwi8Hg _g0-0OMWCEdqI1bY5Lwi8Hg _g2UQ6MWCEdqI1bY5Lwi8Hg _g2eB7MWCEdqI1bY5Lwi8Hg _g0r5AMWCEdqI1bY5Lwi8Hg _g14MFsWCEdqI1bY5Lwi8Hg _g1bf9cWCEdqI1bY5Lwi8Hg _g1kp8cWCEdqI1bY5Lwi8Hg _g2eBxcWCEdqI1bY5Lwi8Hg _g2eBucWCEdqI1bY5Lwi8Hg _g2eB5MWCEdqI1bY5Lwi8Hg _g01DK8WCEdqI1bY5Lwi8Hg _g2eBu8WCEdqI1bY5Lwi8Hg _SnNPIGwIEdq7X4sGURiZYA _g1ubPMWCEdqI1bY5Lwi8Hg _g2BWE8WCEdqI1bY5Lwi8Hg _g1ua7cWCEdqI1bY5Lwi8Hg _g2eB0cWCEdqI1bY5Lwi8Hg _g1bf7sWCEdqI1bY5Lwi8Hg _g2eB7sWCEdqI1bY5Lwi8Hg _g2eBsMWCEdqI1bY5Lwi8Hg _g0-0GcWCEdqI1bY5Lwi8Hg _ZiwkoGwLEdq7X4sGURiZYA _g2BV88WCEdqI1bY5Lwi8Hg _g2eB2MWCEdqI1bY5Lwi8Hg _g0-0KcWCEdqI1bY5Lwi8Hg _g2LGwMWCEdqI1bY5Lwi8Hg _g1RvG8WCEdqI1bY5Lwi8Hg _g1ubQcWCEdqI1bY5Lwi8Hg _g1ubMsWCEdqI1bY5Lwi8Hg _g2UQ78WCEdqI1bY5Lwi8Hg _g2UQ38WCEdqI1bY5Lwi8Hg _Gjgl0GveEdq4DLWZOhbdEA _g1kp1cWCEdqI1bY5Lwi8Hg _g1ubKsWCEdqI1bY5Lwi8Hg _g2BV8MWCEdqI1bY5Lwi8Hg _g1H94MWCEdqI1bY5Lwi8Hg _Jp_1oGveEdq4DLWZOhbdEA _g2UQ1cWCEdqI1bY5Lwi8Hg _g0r5KsWCEdqI1bY5Lwi8Hg _g2UQycWCEdqI1bY5Lwi8Hg _g2BV98WCEdqI1bY5Lwi8Hg _g2eB-8WCEdqI1bY5Lwi8Hg _g2LG38WCEdqI1bY5Lwi8Hg _g1ua6cWCEdqI1bY5Lwi8Hg _g2eBwMWCEdqI1bY5Lwi8Hg _g1H9_sWCEdqI1bY5Lwi8Hg _g0r5BMWCEdqI1bY5Lwi8Hg _RPl78GwIEdq7X4sGURiZYA _g14MEsWCEdqI1bY5Lwi8Hg _g1ubDMWCEdqI1bY5Lwi8Hg _g1ua3cWCEdqI1bY5Lwi8Hg _g01DI8WCEdqI1bY5Lwi8Hg _g1RvA8WCEdqI1bY5Lwi8Hg _g2UQ8sWCEdqI1bY5Lwi8Hg _g2BWF8WCEdqI1bY5Lwi8Hg _g1bgLsWCEdqI1bY5Lwi8Hg _kl90MGvbEdq4DLWZOhbdEA _csVgUGvtEdqG6fBIPwe-mw _g2UQ5MWCEdqI1bY5Lwi8Hg _-cvRAGvzEdq7X4sGURiZYA _g2LG28WCEdqI1bY5Lwi8Hg _g2eB1cWCEdqI1bY5Lwi8Hg _g1bf6MWCEdqI1bY5Lwi8Hg _g14L08WCEdqI1bY5Lwi8Hg _g14L-MWCEdqI1bY5Lwi8Hg _g2eB6cWCEdqI1bY5Lwi8Hg _g1ubJMWCEdqI1bY5Lwi8Hg _g1Ru8MWCEdqI1bY5Lwi8Hg _g2UQz8WCEdqI1bY5Lwi8Hg _g2eB8cWCEdqI1bY5Lwi8Hg _g2eB1sWCEdqI1bY5Lwi8Hg _g1bgK8WCEdqI1bY5Lwi8Hg _g14L18WCEdqI1bY5Lwi8Hg _g2UQw8WCEdqI1bY5Lwi8Hg _g1ua_MWCEdqI1bY5Lwi8Hg _g1kp3cWCEdqI1bY5Lwi8Hg _g01DAsWCEdqI1bY5Lwi8Hg _g01DL8WCEdqI1bY5Lwi8Hg _g1ubN8WCEdqI1bY5Lwi8Hg _g2eBxsWCEdqI1bY5Lwi8Hg _g2UQwMWCEdqI1bY5Lwi8Hg _g1bgRsWCEdqI1bY5Lwi8Hg _g1ubLcWCEdqI1bY5Lwi8Hg _AyM_oGwMEdq7X4sGURiZYA _g2eB0sWCEdqI1bY5Lwi8Hg _g2eBw8WCEdqI1bY5Lwi8Hg _g01C8MWCEdqI1bY5Lwi8Hg _g2UQyMWCEdqI1bY5Lwi8Hg _g1ubAsWCEdqI1bY5Lwi8Hg _g2BV7MWCEdqI1bY5Lwi8Hg _g2LGx8WCEdqI1bY5Lwi8Hg _g1H99sWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGpssWCEdqI1bY5Lwi8Hg" source="UML::Classes::Kernel" references="_DH62EKPAEdqi_5gqUMOQtA _g2eB3MWCEdqI1bY5Lwi8Hg _g2BV6MWCEdqI1bY5Lwi8Hg _g2UQ5sWCEdqI1bY5Lwi8Hg _g68SDsWCEdqI1bY5Lwi8Hg _g2eBx8WCEdqI1bY5Lwi8Hg _g1bgPsWCEdqI1bY5Lwi8Hg _g3XZ2cWCEdqI1bY5Lwi8Hg _g6fmGcWCEdqI1bY5Lwi8Hg _g2UQzcWCEdqI1bY5Lwi8Hg _g1ubIMWCEdqI1bY5Lwi8Hg _g3XZrMWCEdqI1bY5Lwi8Hg _g1kp5MWCEdqI1bY5Lwi8Hg _g2eB28WCEdqI1bY5Lwi8Hg _g1Ru7MWCEdqI1bY5Lwi8Hg _g1Ru_sWCEdqI1bY5Lwi8Hg _g5AYbsWCEdqI1bY5Lwi8Hg _g1Ru6cWCEdqI1bY5Lwi8Hg _g3qUnMWCEdqI1bY5Lwi8Hg _g2eB6sWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg _g0-0AsWCEdqI1bY5Lwi8Hg _g5mOOMWCEdqI1bY5Lwi8Hg _g14MA8WCEdqI1bY5Lwi8Hg _g2BWI8WCEdqI1bY5Lwi8Hg _g5JiYcWCEdqI1bY5Lwi8Hg _g7Fb_sWCEdqI1bY5Lwi8Hg _g4s2VMWCEdqI1bY5Lwi8Hg _g6yhDcWCEdqI1bY5Lwi8Hg _g0-z8MWCEdqI1bY5Lwi8Hg _I6N3UGwGEdq7X4sGURiZYA _g2UQucWCEdqI1bY5Lwi8Hg _g2UQ0MWCEdqI1bY5Lwi8Hg _ynRtoGvtEdqG6fBIPwe-mw _g2UQssWCEdqI1bY5Lwi8Hg _g2UQ28WCEdqI1bY5Lwi8Hg _g2UQx8WCEdqI1bY5Lwi8Hg _g1bgIcWCEdqI1bY5Lwi8Hg _g2eB0MWCEdqI1bY5Lwi8Hg _g3XZpcWCEdqI1bY5Lwi8Hg _g3XZxcWCEdqI1bY5Lwi8Hg _g5JiRcWCEdqI1bY5Lwi8Hg _g1H-GcWCEdqI1bY5Lwi8Hg _g0-0BcWCEdqI1bY5Lwi8Hg _g7Fb98WCEdqI1bY5Lwi8Hg _g6yhE8WCEdqI1bY5Lwi8Hg _g5JiWcWCEdqI1bY5Lwi8Hg _g1ua0MWCEdqI1bY5Lwi8Hg _g6yhEMWCEdqI1bY5Lwi8Hg _JBgfoKPAEdqi_5gqUMOQtA _g1bgKMWCEdqI1bY5Lwi8Hg _g2BWG8WCEdqI1bY5Lwi8Hg _g0r5FcWCEdqI1bY5Lwi8Hg _g01DDMWCEdqI1bY5Lwi8Hg _g01DJ8WCEdqI1bY5Lwi8Hg _g1Ru4MWCEdqI1bY5Lwi8Hg _g2BVwMWCEdqI1bY5Lwi8Hg _g5mORsWCEdqI1bY5Lwi8Hg _g2eCAMWCEdqI1bY5Lwi8Hg _g1kp6cWCEdqI1bY5Lwi8Hg _g6yhC8WCEdqI1bY5Lwi8Hg _g14L_8WCEdqI1bY5Lwi8Hg _g3XZvsWCEdqI1bY5Lwi8Hg _g5JiTcWCEdqI1bY5Lwi8Hg _g2eB4MWCEdqI1bY5Lwi8Hg _g6fmH8WCEdqI1bY5Lwi8Hg _g1ubRsWCEdqI1bY5Lwi8Hg _g1ubFMWCEdqI1bY5Lwi8Hg _g0-0CMWCEdqI1bY5Lwi8Hg _g1Ru9MWCEdqI1bY5Lwi8Hg _g7Fb-8WCEdqI1bY5Lwi8Hg _g7Fb8MWCEdqI1bY5Lwi8Hg _g2eBysWCEdqI1bY5Lwi8Hg _g1kp0MWCEdqI1bY5Lwi8Hg _M4X2IGveEdq4DLWZOhbdEA _g2UQ68WCEdqI1bY5Lwi8Hg _g1ua_8WCEdqI1bY5Lwi8Hg _g1bgQsWCEdqI1bY5Lwi8Hg _KyaPMGveEdq4DLWZOhbdEA _g6pXEcWCEdqI1bY5Lwi8Hg _g2UQxsWCEdqI1bY5Lwi8Hg _g01DGMWCEdqI1bY5Lwi8Hg _g2LG7sWCEdqI1bY5Lwi8Hg _g1bf8cWCEdqI1bY5Lwi8Hg _g2BWAsWCEdqI1bY5Lwi8Hg _g1RvDcWCEdqI1bY5Lwi8Hg _g1RvCMWCEdqI1bY5Lwi8Hg _rHT3YKOsEdqi_5gqUMOQtA _g1Ru5MWCEdqI1bY5Lwi8Hg _PyCx8GveEdq4DLWZOhbdEA _g3XZ0cWCEdqI1bY5Lwi8Hg _g2eBzcWCEdqI1bY5Lwi8Hg _AwvxoGwNEdq7X4sGURiZYA _g2eBssWCEdqI1bY5Lwi8Hg _g3NokcWCEdqI1bY5Lwi8Hg _g1kqBcWCEdqI1bY5Lwi8Hg _g1bgMsWCEdqI1bY5Lwi8Hg _6UV2QGwJEdq7X4sGURiZYA _g2eByMWCEdqI1bY5Lwi8Hg _g2UQsMWCEdqI1bY5Lwi8Hg _g5JicMWCEdqI1bY5Lwi8Hg _g7Fb_MWCEdqI1bY5Lwi8Hg _g68SEMWCEdqI1bY5Lwi8Hg _B3q9cGwNEdq7X4sGURiZYA _g1bgNsWCEdqI1bY5Lwi8Hg _g1H-MMWCEdqI1bY5Lwi8Hg _g2BVzMWCEdqI1bY5Lwi8Hg _g1ubHMWCEdqI1bY5Lwi8Hg _g2eB4cWCEdqI1bY5Lwi8Hg _g2eBvMWCEdqI1bY5Lwi8Hg _g2UQ5cWCEdqI1bY5Lwi8Hg _g2UQ3sWCEdqI1bY5Lwi8Hg _g5AYWcWCEdqI1bY5Lwi8Hg _g2UQ6cWCEdqI1bY5Lwi8Hg _g3XZwcWCEdqI1bY5Lwi8Hg _g01DFMWCEdqI1bY5Lwi8Hg _g1ubTsWCEdqI1bY5Lwi8Hg _g2eB_sWCEdqI1bY5Lwi8Hg _g2eBxMWCEdqI1bY5Lwi8Hg _g3qUmMWCEdqI1bY5Lwi8Hg _g2eBz8WCEdqI1bY5Lwi8Hg _V6vuYGwGEdq7X4sGURiZYA _g6yhA8WCEdqI1bY5Lwi8Hg _g3XZ3sWCEdqI1bY5Lwi8Hg _g6fmJ8WCEdqI1bY5Lwi8Hg _g2eB88WCEdqI1bY5Lwi8Hg __1ap4HLzEdqziYxiZo0YtA _g01C-sWCEdqI1bY5Lwi8Hg _g2eBtcWCEdqI1bY5Lwi8Hg _g0r5CMWCEdqI1bY5Lwi8Hg _g3XZmMWCEdqI1bY5Lwi8Hg _g1H-KsWCEdqI1bY5Lwi8Hg _g6yhBsWCEdqI1bY5Lwi8Hg _g2LG2MWCEdqI1bY5Lwi8Hg _g1ua-cWCEdqI1bY5Lwi8Hg _g3qUocWCEdqI1bY5Lwi8Hg _g1ubB8WCEdqI1bY5Lwi8Hg _g2UQ3MWCEdqI1bY5Lwi8Hg _g1H-JsWCEdqI1bY5Lwi8Hg _g3XZ1MWCEdqI1bY5Lwi8Hg _g3XZ4cWCEdqI1bY5Lwi8Hg _g1bgHsWCEdqI1bY5Lwi8Hg _g2BVyMWCEdqI1bY5Lwi8Hg _g14L4cWCEdqI1bY5Lwi8Hg _g2BV5cWCEdqI1bY5Lwi8Hg _g2LG48WCEdqI1bY5Lwi8Hg _g0iIBMWCEdqI1bY5Lwi8Hg _C7AF4GwREdq14q0ETb1t3g _g2UQtcWCEdqI1bY5Lwi8Hg _g0-0PMWCEdqI1bY5Lwi8Hg _g0r5I8WCEdqI1bY5Lwi8Hg _g2LG1MWCEdqI1bY5Lwi8Hg _OQcbgGwOEdq7X4sGURiZYA _g1Ru-cWCEdqI1bY5Lwi8Hg _g0-0IcWCEdqI1bY5Lwi8Hg _g0r5DsWCEdqI1bY5Lwi8Hg _g2eB-cWCEdqI1bY5Lwi8Hg _g0-0DcWCEdqI1bY5Lwi8Hg _g2eB3cWCEdqI1bY5Lwi8Hg _g2eB1MWCEdqI1bY5Lwi8Hg _g1bgJcWCEdqI1bY5Lwi8Hg _g68SBMWCEdqI1bY5Lwi8Hg _g1bf5MWCEdqI1bY5Lwi8Hg _g5JibMWCEdqI1bY5Lwi8Hg _g2eBy8WCEdqI1bY5Lwi8Hg _g1H-EsWCEdqI1bY5Lwi8Hg _g1H-CMWCEdqI1bY5Lwi8Hg _g5AYUMWCEdqI1bY5Lwi8Hg _g14MB8WCEdqI1bY5Lwi8Hg _g2BV2MWCEdqI1bY5Lwi8Hg _g2UQvcWCEdqI1bY5Lwi8Hg _g7FcAcWCEdqI1bY5Lwi8Hg _g0iIAMWCEdqI1bY5Lwi8Hg _g2BWH8WCEdqI1bY5Lwi8Hg _g2eBzsWCEdqI1bY5Lwi8Hg _g5mOUsWCEdqI1bY5Lwi8Hg _g1bgOsWCEdqI1bY5Lwi8Hg _g1bf_cWCEdqI1bY5Lwi8Hg _g1H97MWCEdqI1bY5Lwi8Hg _g1bf-cWCEdqI1bY5Lwi8Hg _g2eB9sWCEdqI1bY5Lwi8Hg _g1bf4MWCEdqI1bY5Lwi8Hg _g2eBwsWCEdqI1bY5Lwi8Hg _g2eCA8WCEdqI1bY5Lwi8Hg _g1ubEMWCEdqI1bY5Lwi8Hg _g1H96MWCEdqI1bY5Lwi8Hg _g5JiaMWCEdqI1bY5Lwi8Hg _g2eB4sWCEdqI1bY5Lwi8Hg _g2eB58WCEdqI1bY5Lwi8Hg _g14L5cWCEdqI1bY5Lwi8Hg _g3XZkMWCEdqI1bY5Lwi8Hg _g1kqC8WCEdqI1bY5Lwi8Hg _g0-0EsWCEdqI1bY5Lwi8Hg _g2BV_sWCEdqI1bY5Lwi8Hg _g0-0LsWCEdqI1bY5Lwi8Hg _g1ua4cWCEdqI1bY5Lwi8Hg _g5AYZsWCEdqI1bY5Lwi8Hg _g3XZscWCEdqI1bY5Lwi8Hg _g1kp9cWCEdqI1bY5Lwi8Hg _g2UQ2cWCEdqI1bY5Lwi8Hg _g0r5HMWCEdqI1bY5Lwi8Hg _g2UQzMWCEdqI1bY5Lwi8Hg _g2UQ0sWCEdqI1bY5Lwi8Hg _g2eBvcWCEdqI1bY5Lwi8Hg _g0-z88WCEdqI1bY5Lwi8Hg _g14L-8WCEdqI1bY5Lwi8Hg _ChRfcGveEdq4DLWZOhbdEA _g2eB9MWCEdqI1bY5Lwi8Hg _g7FcA8WCEdqI1bY5Lwi8Hg _g2UQxcWCEdqI1bY5Lwi8Hg _g1ubJ8WCEdqI1bY5Lwi8Hg _g2eBt8WCEdqI1bY5Lwi8Hg _g1ua2cWCEdqI1bY5Lwi8Hg _g01DNsWCEdqI1bY5Lwi8Hg _g1RvGMWCEdqI1bY5Lwi8Hg _g2UQscWCEdqI1bY5Lwi8Hg _g2BV0cWCEdqI1bY5Lwi8Hg _g2LG0cWCEdqI1bY5Lwi8Hg _g3XZysWCEdqI1bY5Lwi8Hg _g2BVxMWCEdqI1bY5Lwi8Hg _g68SC8WCEdqI1bY5Lwi8Hg _g1H-IsWCEdqI1bY5Lwi8Hg _jKxnwGwLEdq7X4sGURiZYA _g1ubGMWCEdqI1bY5Lwi8Hg _g14L2sWCEdqI1bY5Lwi8Hg _g2UQ7MWCEdqI1bY5Lwi8Hg _g2UQ4cWCEdqI1bY5Lwi8Hg _00owUGvdEdq4DLWZOhbdEA _g14L6cWCEdqI1bY5Lwi8Hg _g3qUlMWCEdqI1bY5Lwi8Hg _g1H978WCEdqI1bY5Lwi8Hg _FFMNsGveEdq4DLWZOhbdEA _g2UQ7sWCEdqI1bY5Lwi8Hg _g2UQysWCEdqI1bY5Lwi8Hg _g0-0OMWCEdqI1bY5Lwi8Hg _g2UQ6MWCEdqI1bY5Lwi8Hg _g2eB7MWCEdqI1bY5Lwi8Hg _g0r5AMWCEdqI1bY5Lwi8Hg _g14MFsWCEdqI1bY5Lwi8Hg _g1bf9cWCEdqI1bY5Lwi8Hg _g1kp8cWCEdqI1bY5Lwi8Hg _g2eBxcWCEdqI1bY5Lwi8Hg _g2eBucWCEdqI1bY5Lwi8Hg _g6yhCMWCEdqI1bY5Lwi8Hg _g7Fb8sWCEdqI1bY5Lwi8Hg _g2eB5MWCEdqI1bY5Lwi8Hg _g01DK8WCEdqI1bY5Lwi8Hg _g2eBu8WCEdqI1bY5Lwi8Hg _g6fmIsWCEdqI1bY5Lwi8Hg _g5JiZcWCEdqI1bY5Lwi8Hg _SnNPIGwIEdq7X4sGURiZYA _g1ubPMWCEdqI1bY5Lwi8Hg _g2BWE8WCEdqI1bY5Lwi8Hg _g1ua7cWCEdqI1bY5Lwi8Hg _g2eB0cWCEdqI1bY5Lwi8Hg _Dy77oGveEdq4DLWZOhbdEA _g1bf7sWCEdqI1bY5Lwi8Hg _g2eB7sWCEdqI1bY5Lwi8Hg _g2eBsMWCEdqI1bY5Lwi8Hg _g0-0GcWCEdqI1bY5Lwi8Hg _ZiwkoGwLEdq7X4sGURiZYA _g2BV88WCEdqI1bY5Lwi8Hg _g3XZtMWCEdqI1bY5Lwi8Hg _g2eB2MWCEdqI1bY5Lwi8Hg _g5JiUMWCEdqI1bY5Lwi8Hg _g0-0KcWCEdqI1bY5Lwi8Hg _g2LGwMWCEdqI1bY5Lwi8Hg _g1RvG8WCEdqI1bY5Lwi8Hg _g6yhDMWCEdqI1bY5Lwi8Hg _g1ubQcWCEdqI1bY5Lwi8Hg _g1ubMsWCEdqI1bY5Lwi8Hg _g2UQ78WCEdqI1bY5Lwi8Hg _g2UQ38WCEdqI1bY5Lwi8Hg _Gjgl0GveEdq4DLWZOhbdEA _g5JiXcWCEdqI1bY5Lwi8Hg _g1kp1cWCEdqI1bY5Lwi8Hg _g1ubKsWCEdqI1bY5Lwi8Hg _g2BV8MWCEdqI1bY5Lwi8Hg _g1H94MWCEdqI1bY5Lwi8Hg _Jp_1oGveEdq4DLWZOhbdEA _g68SCcWCEdqI1bY5Lwi8Hg _g6yhD8WCEdqI1bY5Lwi8Hg _g2UQ1cWCEdqI1bY5Lwi8Hg _g0r5KsWCEdqI1bY5Lwi8Hg _g2UQycWCEdqI1bY5Lwi8Hg _g2BV98WCEdqI1bY5Lwi8Hg _g2eB-8WCEdqI1bY5Lwi8Hg _g2LG38WCEdqI1bY5Lwi8Hg _g1ua6cWCEdqI1bY5Lwi8Hg _g4jsYsWCEdqI1bY5Lwi8Hg _g2eBwMWCEdqI1bY5Lwi8Hg _g1H9_sWCEdqI1bY5Lwi8Hg _g0r5BMWCEdqI1bY5Lwi8Hg _RPl78GwIEdq7X4sGURiZYA _g14MEsWCEdqI1bY5Lwi8Hg _g1ubDMWCEdqI1bY5Lwi8Hg _g1ua3cWCEdqI1bY5Lwi8Hg _g6MrJcWCEdqI1bY5Lwi8Hg _g01DI8WCEdqI1bY5Lwi8Hg _g1RvA8WCEdqI1bY5Lwi8Hg _g2UQ8sWCEdqI1bY5Lwi8Hg _g3XZ5sWCEdqI1bY5Lwi8Hg _g2BWF8WCEdqI1bY5Lwi8Hg _g1bgLsWCEdqI1bY5Lwi8Hg _kl90MGvbEdq4DLWZOhbdEA _csVgUGvtEdqG6fBIPwe-mw _g2UQ5MWCEdqI1bY5Lwi8Hg _-cvRAGvzEdq7X4sGURiZYA _g2LG28WCEdqI1bY5Lwi8Hg _g2eB1cWCEdqI1bY5Lwi8Hg _g1bf6MWCEdqI1bY5Lwi8Hg _g14L08WCEdqI1bY5Lwi8Hg _g14L-MWCEdqI1bY5Lwi8Hg _g2eB6cWCEdqI1bY5Lwi8Hg _g1ubJMWCEdqI1bY5Lwi8Hg _g1Ru8MWCEdqI1bY5Lwi8Hg _g68SBsWCEdqI1bY5Lwi8Hg _Q-yR4GveEdq4DLWZOhbdEA _g2UQz8WCEdqI1bY5Lwi8Hg _g3XZucWCEdqI1bY5Lwi8Hg _g2eB8cWCEdqI1bY5Lwi8Hg _g2eB1sWCEdqI1bY5Lwi8Hg _g1bgK8WCEdqI1bY5Lwi8Hg _g14L18WCEdqI1bY5Lwi8Hg _g2UQw8WCEdqI1bY5Lwi8Hg _g7Fb-sWCEdqI1bY5Lwi8Hg _g3XZncWCEdqI1bY5Lwi8Hg _g5dESMWCEdqI1bY5Lwi8Hg _g1ua_MWCEdqI1bY5Lwi8Hg _g1kp3cWCEdqI1bY5Lwi8Hg _g01DAsWCEdqI1bY5Lwi8Hg _g01DL8WCEdqI1bY5Lwi8Hg _g1ubN8WCEdqI1bY5Lwi8Hg _g5AYasWCEdqI1bY5Lwi8Hg _g2eBxsWCEdqI1bY5Lwi8Hg _g2UQwMWCEdqI1bY5Lwi8Hg _g7Fb9cWCEdqI1bY5Lwi8Hg _g1bgRsWCEdqI1bY5Lwi8Hg _g1ubLcWCEdqI1bY5Lwi8Hg _AyM_oGwMEdq7X4sGURiZYA _g2eB0sWCEdqI1bY5Lwi8Hg _g2eBw8WCEdqI1bY5Lwi8Hg _g4jsZcWCEdqI1bY5Lwi8Hg _g01C8MWCEdqI1bY5Lwi8Hg _g2UQyMWCEdqI1bY5Lwi8Hg _g1ubAsWCEdqI1bY5Lwi8Hg _g6yhFsWCEdqI1bY5Lwi8Hg _g2BV7MWCEdqI1bY5Lwi8Hg _g2LGx8WCEdqI1bY5Lwi8Hg _g1H99sWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGps8WCEdqI1bY5Lwi8Hg" source="InfrastructureLibrary::Profiles" references="_hCPM58WCEdqI1bY5Lwi8Hg _hCPNGMWCEdqI1bY5Lwi8Hg _hCPM98WCEdqI1bY5Lwi8Hg _hCGDDcWCEdqI1bY5Lwi8Hg _hCY91MWCEdqI1bY5Lwi8Hg _hCY90cWCEdqI1bY5Lwi8Hg _hCPM1cWCEdqI1bY5Lwi8Hg _hCPM-8WCEdqI1bY5Lwi8Hg _hCY938WCEdqI1bY5Lwi8Hg _hCPNFcWCEdqI1bY5Lwi8Hg _hCPM_8WCEdqI1bY5Lwi8Hg _hCPNHsWCEdqI1bY5Lwi8Hg __pew8GvzEdq7X4sGURiZYA _hCPNGcWCEdqI1bY5Lwi8Hg _hCPNG8WCEdqI1bY5Lwi8Hg _hCGC6cWCEdqI1bY5Lwi8Hg _hCY92cWCEdqI1bY5Lwi8Hg _hCPNDsWCEdqI1bY5Lwi8Hg _hCPM8MWCEdqI1bY5Lwi8Hg _hCGC9cWCEdqI1bY5Lwi8Hg _skHGwGvsEdqG6fBIPwe-mw _hCGDFMWCEdqI1bY5Lwi8Hg _hCPNBMWCEdqI1bY5Lwi8Hg _00owUGvdEdq4DLWZOhbdEA _hCPM68WCEdqI1bY5Lwi8Hg _hCY91sWCEdqI1bY5Lwi8Hg _hCPNE8WCEdqI1bY5Lwi8Hg _hCY928WCEdqI1bY5Lwi8Hg _nDq0wJPzEdqpjIDDFZ2Hgw _hCPNEMWCEdqI1bY5Lwi8Hg _hCY93sWCEdqI1bY5Lwi8Hg _hCGDJsWCEdqI1bY5Lwi8Hg _hCGDAsWCEdqI1bY5Lwi8Hg _hCGC_cWCEdqI1bY5Lwi8Hg _hCGDB8WCEdqI1bY5Lwi8Hg _kl90MGvbEdq4DLWZOhbdEA _csVgUGvtEdqG6fBIPwe-mw _-cvRAGvzEdq7X4sGURiZYA _A7vDAGv0Edq7X4sGURiZYA _hCGDEcWCEdqI1bY5Lwi8Hg _hCPM0MWCEdqI1bY5Lwi8Hg _hCGDIsWCEdqI1bY5Lwi8Hg _hCPM2sWCEdqI1bY5Lwi8Hg _uY5yQGv5Edq7X4sGURiZYA _2QuT0GvdEdq4DLWZOhbdEA _hCPNC8WCEdqI1bY5Lwi8Hg _hCGDH8WCEdqI1bY5Lwi8Hg _hCGC-cWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGptMWCEdqI1bY5Lwi8Hg" source="UML::Actions::IntermediateActions" references="_hATTLsWCEdqI1bY5Lwi8Hg _hAAYicWCEdqI1bY5Lwi8Hg _hAKJVsWCEdqI1bY5Lwi8Hg _g_tdfsWCEdqI1bY5Lwi8Hg _g_2nScWCEdqI1bY5Lwi8Hg _g_2nTcWCEdqI1bY5Lwi8Hg _g_2nOcWCEdqI1bY5Lwi8Hg _hATTMsWCEdqI1bY5Lwi8Hg _g_2nasWCEdqI1bY5Lwi8Hg _hAKJTMWCEdqI1bY5Lwi8Hg _g_tdV8WCEdqI1bY5Lwi8Hg _hAAYVMWCEdqI1bY5Lwi8Hg _g_2nRsWCEdqI1bY5Lwi8Hg _hAKJbMWCEdqI1bY5Lwi8Hg _g_2nQMWCEdqI1bY5Lwi8Hg _g_tdgsWCEdqI1bY5Lwi8Hg _hAAYX8WCEdqI1bY5Lwi8Hg _hAAYmsWCEdqI1bY5Lwi8Hg _hATTJcWCEdqI1bY5Lwi8Hg _g_tduMWCEdqI1bY5Lwi8Hg _hAKJbcWCEdqI1bY5Lwi8Hg _hAAYV8WCEdqI1bY5Lwi8Hg _hAAYi8WCEdqI1bY5Lwi8Hg _hAKJMsWCEdqI1bY5Lwi8Hg _g_2nusWCEdqI1bY5Lwi8Hg _hAKJUsWCEdqI1bY5Lwi8Hg _hAKJTcWCEdqI1bY5Lwi8Hg _g_tdp8WCEdqI1bY5Lwi8Hg _hAAYosWCEdqI1bY5Lwi8Hg _g_2nZsWCEdqI1bY5Lwi8Hg _g_tdq8WCEdqI1bY5Lwi8Hg _g_2ns8WCEdqI1bY5Lwi8Hg _hAKJMMWCEdqI1bY5Lwi8Hg _hAAYP8WCEdqI1bY5Lwi8Hg _hATTL8WCEdqI1bY5Lwi8Hg _g_tdr8WCEdqI1bY5Lwi8Hg _g_2nt8WCEdqI1bY5Lwi8Hg _hAAYgcWCEdqI1bY5Lwi8Hg _hAKJbsWCEdqI1bY5Lwi8Hg _hAKJXsWCEdqI1bY5Lwi8Hg _hAAYhMWCEdqI1bY5Lwi8Hg _hAAYa8WCEdqI1bY5Lwi8Hg _hATTNMWCEdqI1bY5Lwi8Hg _hATTJsWCEdqI1bY5Lwi8Hg _hAKJRcWCEdqI1bY5Lwi8Hg _hAKJYMWCEdqI1bY5Lwi8Hg _hAKJP8WCEdqI1bY5Lwi8Hg _hAAYR8WCEdqI1bY5Lwi8Hg _hAAYkMWCEdqI1bY5Lwi8Hg _g_tdU8WCEdqI1bY5Lwi8Hg _hAKJZ8WCEdqI1bY5Lwi8Hg _hAAYncWCEdqI1bY5Lwi8Hg _hAAYMMWCEdqI1bY5Lwi8Hg _g_tdQMWCEdqI1bY5Lwi8Hg _hAAYUMWCEdqI1bY5Lwi8Hg _g_2nh8WCEdqI1bY5Lwi8Hg _hATTK8WCEdqI1bY5Lwi8Hg _hAAYjsWCEdqI1bY5Lwi8Hg _hAAYlcWCEdqI1bY5Lwi8Hg _hAKJQcWCEdqI1bY5Lwi8Hg _hAAYmMWCEdqI1bY5Lwi8Hg _g_2nrcWCEdqI1bY5Lwi8Hg _g_2nPcWCEdqI1bY5Lwi8Hg _hAKJSMWCEdqI1bY5Lwi8Hg _hAKJRMWCEdqI1bY5Lwi8Hg _g_2nbsWCEdqI1bY5Lwi8Hg _hAKJacWCEdqI1bY5Lwi8Hg _hAKJVcWCEdqI1bY5Lwi8Hg _g_tdYMWCEdqI1bY5Lwi8Hg _hAAYn8WCEdqI1bY5Lwi8Hg _g_2nMMWCEdqI1bY5Lwi8Hg _hATTIMWCEdqI1bY5Lwi8Hg _g_tddsWCEdqI1bY5Lwi8Hg _g_2nf8WCEdqI1bY5Lwi8Hg _hAAYgMWCEdqI1bY5Lwi8Hg _hAKJN8WCEdqI1bY5Lwi8Hg _hAAYo8WCEdqI1bY5Lwi8Hg _hAKJNcWCEdqI1bY5Lwi8Hg _hAAYb8WCEdqI1bY5Lwi8Hg _g_2npsWCEdqI1bY5Lwi8Hg _hAKJPMWCEdqI1bY5Lwi8Hg _hAAYhsWCEdqI1bY5Lwi8Hg _g_tdY8WCEdqI1bY5Lwi8Hg _g_2nmcWCEdqI1bY5Lwi8Hg _hAAYW8WCEdqI1bY5Lwi8Hg _hAKJY8WCEdqI1bY5Lwi8Hg _hAAYk8WCEdqI1bY5Lwi8Hg _hAAYfMWCEdqI1bY5Lwi8Hg _hAAYQ8WCEdqI1bY5Lwi8Hg _g_2nc8WCEdqI1bY5Lwi8Hg _g_tdZsWCEdqI1bY5Lwi8Hg _g_tdasWCEdqI1bY5Lwi8Hg _hAAYaMWCEdqI1bY5Lwi8Hg _g_2nncWCEdqI1bY5Lwi8Hg _hAKJWcWCEdqI1bY5Lwi8Hg _g_tdkcWCEdqI1bY5Lwi8Hg _hAKJW8WCEdqI1bY5Lwi8Hg _g_2nqcWCEdqI1bY5Lwi8Hg _hAKJOsWCEdqI1bY5Lwi8Hg _g_tdesWCEdqI1bY5Lwi8Hg _hATTN8WCEdqI1bY5Lwi8Hg _hAKJZMWCEdqI1bY5Lwi8Hg _hATTKcWCEdqI1bY5Lwi8Hg _hAAYeMWCEdqI1bY5Lwi8Hg _g_2nWsWCEdqI1bY5Lwi8Hg _hAKJasWCEdqI1bY5Lwi8Hg _g_2nVsWCEdqI1bY5Lwi8Hg _g_2nU8WCEdqI1bY5Lwi8Hg _hATTIsWCEdqI1bY5Lwi8Hg _hAKJUMWCEdqI1bY5Lwi8Hg _hAKJScWCEdqI1bY5Lwi8Hg _g_tdlcWCEdqI1bY5Lwi8Hg _g_2ng8WCEdqI1bY5Lwi8Hg _g_tdT8WCEdqI1bY5Lwi8Hg _hAAYNsWCEdqI1bY5Lwi8Hg _hATTOcWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGptcWCEdqI1bY5Lwi8Hg" source="UML::Interactions::BasicInteractions" references="_g9eBrMWCEdqI1bY5Lwi8Hg _g9xjvsWCEdqI1bY5Lwi8Hg _g9U30sWCEdqI1bY5Lwi8Hg _g9nzAcWCEdqI1bY5Lwi8Hg _g9xju8WCEdqI1bY5Lwi8Hg _g9nyk8WCEdqI1bY5Lwi8Hg _g9eB0sWCEdqI1bY5Lwi8Hg _g9eCCcWCEdqI1bY5Lwi8Hg _g9ny2MWCEdqI1bY5Lwi8Hg _g9xjrsWCEdqI1bY5Lwi8Hg _g9eCGMWCEdqI1bY5Lwi8Hg _g9nyocWCEdqI1bY5Lwi8Hg _g9nyycWCEdqI1bY5Lwi8Hg _g9xj1MWCEdqI1bY5Lwi8Hg _g9xjucWCEdqI1bY5Lwi8Hg _g9nyr8WCEdqI1bY5Lwi8Hg _g9xj3cWCEdqI1bY5Lwi8Hg _g96ticWCEdqI1bY5Lwi8Hg _g9nyvsWCEdqI1bY5Lwi8Hg _g9xjpcWCEdqI1bY5Lwi8Hg _g9eCHMWCEdqI1bY5Lwi8Hg _g9xjyMWCEdqI1bY5Lwi8Hg _g9eBr8WCEdqI1bY5Lwi8Hg _g9eB4MWCEdqI1bY5Lwi8Hg _g9nyzcWCEdqI1bY5Lwi8Hg _g9xj3sWCEdqI1bY5Lwi8Hg _g9nypcWCEdqI1bY5Lwi8Hg _g9nyrMWCEdqI1bY5Lwi8Hg _g9eCEMWCEdqI1bY5Lwi8Hg _g9xjq8WCEdqI1bY5Lwi8Hg _g9xjk8WCEdqI1bY5Lwi8Hg _g9eBt8WCEdqI1bY5Lwi8Hg _g9U3ysWCEdqI1bY5Lwi8Hg _g9ny_cWCEdqI1bY5Lwi8Hg _g9eBnMWCEdqI1bY5Lwi8Hg _g9eBqMWCEdqI1bY5Lwi8Hg _g9eBpMWCEdqI1bY5Lwi8Hg _g9xjs8WCEdqI1bY5Lwi8Hg _g9nywsWCEdqI1bY5Lwi8Hg _g9xj1cWCEdqI1bY5Lwi8Hg _g9eCBcWCEdqI1bY5Lwi8Hg _g9xjqMWCEdqI1bY5Lwi8Hg _g9eB-8WCEdqI1bY5Lwi8Hg _g9eB6MWCEdqI1bY5Lwi8Hg _g96tgMWCEdqI1bY5Lwi8Hg _Y_jskGvtEdqG6fBIPwe-mw _g9xjn8WCEdqI1bY5Lwi8Hg _g9ny0MWCEdqI1bY5Lwi8Hg _g9eB8MWCEdqI1bY5Lwi8Hg _g9xj2sWCEdqI1bY5Lwi8Hg _g9xjxsWCEdqI1bY5Lwi8Hg _g9xj0cWCEdqI1bY5Lwi8Hg _g9xjwcWCEdqI1bY5Lwi8Hg _g9nyl8WCEdqI1bY5Lwi8Hg _gfgNwGveEdq4DLWZOhbdEA _g9ny78WCEdqI1bY5Lwi8Hg _g9nzC8WCEdqI1bY5Lwi8Hg _g9U3xsWCEdqI1bY5Lwi8Hg _g9eCAcWCEdqI1bY5Lwi8Hg _g96thcWCEdqI1bY5Lwi8Hg _g9eCH8WCEdqI1bY5Lwi8Hg _g9eBoMWCEdqI1bY5Lwi8Hg _g9xjw8WCEdqI1bY5Lwi8Hg _g9eBs8WCEdqI1bY5Lwi8Hg _g9eB2MWCEdqI1bY5Lwi8Hg _g9nzCcWCEdqI1bY5Lwi8Hg _g9xjrMWCEdqI1bY5Lwi8Hg _g9xj0MWCEdqI1bY5Lwi8Hg _g9xjlsWCEdqI1bY5Lwi8Hg _g9xjzMWCEdqI1bY5Lwi8Hg _g9xj2MWCEdqI1bY5Lwi8Hg _g9eB3MWCEdqI1bY5Lwi8Hg _g9ny38WCEdqI1bY5Lwi8Hg _g9xjmsWCEdqI1bY5Lwi8Hg _g9eB1cWCEdqI1bY5Lwi8Hg _g9xjkMWCEdqI1bY5Lwi8Hg _g9xjycWCEdqI1bY5Lwi8Hg _g9nyqMWCEdqI1bY5Lwi8Hg _g9xjzcWCEdqI1bY5Lwi8Hg _g9ny4sWCEdqI1bY5Lwi8Hg _g9nyu8WCEdqI1bY5Lwi8Hg _g9xjscWCEdqI1bY5Lwi8Hg _g9xjksWCEdqI1bY5Lwi8Hg _g9xjnMWCEdqI1bY5Lwi8Hg _g9nzBsWCEdqI1bY5Lwi8Hg _g9eB7MWCEdqI1bY5Lwi8Hg _g96tisWCEdqI1bY5Lwi8Hg _g9xjocWCEdqI1bY5Lwi8Hg _g9xjtMWCEdqI1bY5Lwi8Hg _g9nyxcWCEdqI1bY5Lwi8Hg _g9nzBMWCEdqI1bY5Lwi8Hg _g9U3zsWCEdqI1bY5Lwi8Hg _g9xjqsWCEdqI1bY5Lwi8Hg _g9nytcWCEdqI1bY5Lwi8Hg _g9eCDMWCEdqI1bY5Lwi8Hg _g9xjx8WCEdqI1bY5Lwi8Hg _g9ny1MWCEdqI1bY5Lwi8Hg _g9U3wsWCEdqI1bY5Lwi8Hg _g9xjwMWCEdqI1bY5Lwi8Hg _g9xjtsWCEdqI1bY5Lwi8Hg _g96tgsWCEdqI1bY5Lwi8Hg _g9xjwsWCEdqI1bY5Lwi8Hg _g96thsWCEdqI1bY5Lwi8Hg _g9eB98WCEdqI1bY5Lwi8Hg _g9xjpMWCEdqI1bY5Lwi8Hg _g9eBkMWCEdqI1bY5Lwi8Hg _g9eB88WCEdqI1bY5Lwi8Hg _g9ny_8WCEdqI1bY5Lwi8Hg _g9nym8WCEdqI1bY5Lwi8Hg _g9eB5MWCEdqI1bY5Lwi8Hg _g9eCFMWCEdqI1bY5Lwi8Hg _g9ny28WCEdqI1bY5Lwi8Hg _g9xjl8WCEdqI1bY5Lwi8Hg _g9nykMWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGptsWCEdqI1bY5Lwi8Hg" source="UML::Interactions::Fragments" references="_g9eBrMWCEdqI1bY5Lwi8Hg _g_jsdMWCEdqI1bY5Lwi8Hg _g_aiosWCEdqI1bY5Lwi8Hg _g_jsRMWCEdqI1bY5Lwi8Hg _g_jsUcWCEdqI1bY5Lwi8Hg _g_jsQMWCEdqI1bY5Lwi8Hg _g_jsd8WCEdqI1bY5Lwi8Hg _g_aiX8WCEdqI1bY5Lwi8Hg _g_aiY8WCEdqI1bY5Lwi8Hg _g_jslMWCEdqI1bY5Lwi8Hg _g_jsbMWCEdqI1bY5Lwi8Hg _g_jsj8WCEdqI1bY5Lwi8Hg _g_aigcWCEdqI1bY5Lwi8Hg _g_jsjcWCEdqI1bY5Lwi8Hg _g_jsa8WCEdqI1bY5Lwi8Hg _g_aihcWCEdqI1bY5Lwi8Hg _g_aiwcWCEdqI1bY5Lwi8Hg _g_aivsWCEdqI1bY5Lwi8Hg _g_air8WCEdqI1bY5Lwi8Hg _g_aipsWCEdqI1bY5Lwi8Hg _g_jskMWCEdqI1bY5Lwi8Hg _g_jsgsWCEdqI1bY5Lwi8Hg _g_jsb8WCEdqI1bY5Lwi8Hg _g_jsjMWCEdqI1bY5Lwi8Hg _g_jsTcWCEdqI1bY5Lwi8Hg _g_jshcWCEdqI1bY5Lwi8Hg _g_jsbcWCEdqI1bY5Lwi8Hg _g_aiycWCEdqI1bY5Lwi8Hg _g_jsl8WCEdqI1bY5Lwi8Hg _g_jsisWCEdqI1bY5Lwi8Hg _g_ai3sWCEdqI1bY5Lwi8Hg _g_jslsWCEdqI1bY5Lwi8Hg _g_aid8WCEdqI1bY5Lwi8Hg _g_ai0sWCEdqI1bY5Lwi8Hg _g_ainsWCEdqI1bY5Lwi8Hg _g_jseMWCEdqI1bY5Lwi8Hg _g_jsfcWCEdqI1bY5Lwi8Hg _g_jse8WCEdqI1bY5Lwi8Hg _g_aixcWCEdqI1bY5Lwi8Hg _g9U3wsWCEdqI1bY5Lwi8Hg _g_jskcWCEdqI1bY5Lwi8Hg _g_jscsWCEdqI1bY5Lwi8Hg _g_jsgMWCEdqI1bY5Lwi8Hg _g_aia8WCEdqI1bY5Lwi8Hg _g_aiicWCEdqI1bY5Lwi8Hg _g_aiUMWCEdqI1bY5Lwi8Hg _g_aizsWCEdqI1bY5Lwi8Hg _g9eBkMWCEdqI1bY5Lwi8Hg _g_aiZ8WCEdqI1bY5Lwi8Hg _g_jsh8WCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGpt8WCEdqI1bY5Lwi8Hg" source="UML::CompositeStructures::InvocationActions" references="_hAv_H8WCEdqI1bY5Lwi8Hg _hAv_GsWCEdqI1bY5Lwi8Hg _hAv_I8WCEdqI1bY5Lwi8Hg _hAv_IsWCEdqI1bY5Lwi8Hg _g7r5FcWCEdqI1bY5Lwi8Hg _g-OPmsWCEdqI1bY5Lwi8Hg _hAv_HsWCEdqI1bY5Lwi8Hg _hAv_FcWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGpuMWCEdqI1bY5Lwi8Hg" source="UML::StateMachines::ProtocolStateMachines" references="_hExjk8WCEdqI1bY5Lwi8Hg _hExjhMWCEdqI1bY5Lwi8Hg _hExjdsWCEdqI1bY5Lwi8Hg _hA5wEMWCEdqI1bY5Lwi8Hg _hEnytMWCEdqI1bY5Lwi8Hg _hEnyvMWCEdqI1bY5Lwi8Hg _hExjkcWCEdqI1bY5Lwi8Hg _ZAuvEGveEdq4DLWZOhbdEA _hEnymsWCEdqI1bY5Lwi8Hg _hExjccWCEdqI1bY5Lwi8Hg _hExjf8WCEdqI1bY5Lwi8Hg _hEnylsWCEdqI1bY5Lwi8Hg _hEnywMWCEdqI1bY5Lwi8Hg _hExjesWCEdqI1bY5Lwi8Hg _hEnypMWCEdqI1bY5Lwi8Hg _hExjjsWCEdqI1bY5Lwi8Hg _hExjecWCEdqI1bY5Lwi8Hg _hBzH8MWCEdqI1bY5Lwi8Hg _hEny0sWCEdqI1bY5Lwi8Hg _hExjisWCEdqI1bY5Lwi8Hg _hEnyuMWCEdqI1bY5Lwi8Hg _hExjgsWCEdqI1bY5Lwi8Hg _hEnyn8WCEdqI1bY5Lwi8Hg _8Ugn8GvtEdqG6fBIPwe-mw _hEnyqMWCEdqI1bY5Lwi8Hg _hExjfcWCEdqI1bY5Lwi8Hg _hExjjcWCEdqI1bY5Lwi8Hg _hExjiMWCEdqI1bY5Lwi8Hg _hEnyk8WCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGpucWCEdqI1bY5Lwi8Hg" source="UML::StateMachines::BehaviorStateMachines" references="_hB8SFcWCEdqI1bY5Lwi8Hg _hBpXJMWCEdqI1bY5Lwi8Hg _hBpXMcWCEdqI1bY5Lwi8Hg _hBpXIMWCEdqI1bY5Lwi8Hg _hBpXScWCEdqI1bY5Lwi8Hg _hA5wZsWCEdqI1bY5Lwi8Hg _hBpXGMWCEdqI1bY5Lwi8Hg _hBpXQcWCEdqI1bY5Lwi8Hg _hB8SCMWCEdqI1bY5Lwi8Hg _hAv_NcWCEdqI1bY5Lwi8Hg _hBpXLMWCEdqI1bY5Lwi8Hg _hB8R9sWCEdqI1bY5Lwi8Hg _hA5wLcWCEdqI1bY5Lwi8Hg _hA5wSMWCEdqI1bY5Lwi8Hg _hBzIY8WCEdqI1bY5Lwi8Hg _hB8R5cWCEdqI1bY5Lwi8Hg _hBpXe8WCEdqI1bY5Lwi8Hg _hBzIbsWCEdqI1bY5Lwi8Hg _hB8R7MWCEdqI1bY5Lwi8Hg _hBzIaMWCEdqI1bY5Lwi8Hg _hBpXc8WCEdqI1bY5Lwi8Hg _hBpXd8WCEdqI1bY5Lwi8Hg _hBzId8WCEdqI1bY5Lwi8Hg _hBpXRcWCEdqI1bY5Lwi8Hg _hBzIMsWCEdqI1bY5Lwi8Hg _hA5wdcWCEdqI1bY5Lwi8Hg _hB8R_sWCEdqI1bY5Lwi8Hg _hAv_OcWCEdqI1bY5Lwi8Hg _hBpXOcWCEdqI1bY5Lwi8Hg _hBzIWsWCEdqI1bY5Lwi8Hg _hA5wEMWCEdqI1bY5Lwi8Hg _hBzIGMWCEdqI1bY5Lwi8Hg _hBpXPsWCEdqI1bY5Lwi8Hg _hA5wgcWCEdqI1bY5Lwi8Hg _hBpXHMWCEdqI1bY5Lwi8Hg _hA5wa8WCEdqI1bY5Lwi8Hg _hBzIVsWCEdqI1bY5Lwi8Hg _hBpXocWCEdqI1bY5Lwi8Hg _hBpXFMWCEdqI1bY5Lwi8Hg _hA5wKsWCEdqI1bY5Lwi8Hg _hBpXcMWCEdqI1bY5Lwi8Hg _hAv_WsWCEdqI1bY5Lwi8Hg _hBzIKcWCEdqI1bY5Lwi8Hg _hAv_QcWCEdqI1bY5Lwi8Hg _hAv_TcWCEdqI1bY5Lwi8Hg _hB8SCsWCEdqI1bY5Lwi8Hg _hBzIbcWCEdqI1bY5Lwi8Hg _hB8R4sWCEdqI1bY5Lwi8Hg _hB8SA8WCEdqI1bY5Lwi8Hg _hA5wJ8WCEdqI1bY5Lwi8Hg _hBpXEMWCEdqI1bY5Lwi8Hg _hBzICMWCEdqI1bY5Lwi8Hg _hB8SGMWCEdqI1bY5Lwi8Hg _hA5wPMWCEdqI1bY5Lwi8Hg _hBpXkMWCEdqI1bY5Lwi8Hg _hB8SFMWCEdqI1bY5Lwi8Hg _hB8SD8WCEdqI1bY5Lwi8Hg _hBzIZcWCEdqI1bY5Lwi8Hg _hBpW8MWCEdqI1bY5Lwi8Hg _hA5wWMWCEdqI1bY5Lwi8Hg _hA5wOMWCEdqI1bY5Lwi8Hg _hBzIWMWCEdqI1bY5Lwi8Hg _hBzIHcWCEdqI1bY5Lwi8Hg _hAv_RcWCEdqI1bY5Lwi8Hg _hB8R58WCEdqI1bY5Lwi8Hg _hA5wXMWCEdqI1bY5Lwi8Hg _hB8R8cWCEdqI1bY5Lwi8Hg _hBzIccWCEdqI1bY5Lwi8Hg _hB8SBcWCEdqI1bY5Lwi8Hg _hAv_PcWCEdqI1bY5Lwi8Hg _hA5wQMWCEdqI1bY5Lwi8Hg _g-OPu8WCEdqI1bY5Lwi8Hg _hAv_JsWCEdqI1bY5Lwi8Hg _hBzIBMWCEdqI1bY5Lwi8Hg _hBpXTcWCEdqI1bY5Lwi8Hg _hBzII8WCEdqI1bY5Lwi8Hg _hA5wYcWCEdqI1bY5Lwi8Hg _hBzIYcWCEdqI1bY5Lwi8Hg _hBpXCcWCEdqI1bY5Lwi8Hg _hA5wNMWCEdqI1bY5Lwi8Hg _hBpXmcWCEdqI1bY5Lwi8Hg _hBzH8MWCEdqI1bY5Lwi8Hg _hBzIdcWCEdqI1bY5Lwi8Hg _hA5wMMWCEdqI1bY5Lwi8Hg _hA5wcMWCEdqI1bY5Lwi8Hg _hBzIXcWCEdqI1bY5Lwi8Hg _hBzIFMWCEdqI1bY5Lwi8Hg _hBzIecWCEdqI1bY5Lwi8Hg _hBpXncWCEdqI1bY5Lwi8Hg _hBzIXsWCEdqI1bY5Lwi8Hg _hA5wUMWCEdqI1bY5Lwi8Hg _hB8SAMWCEdqI1bY5Lwi8Hg _hB8R9MWCEdqI1bY5Lwi8Hg _hA5wJMWCEdqI1bY5Lwi8Hg _hB8R78WCEdqI1bY5Lwi8Hg _hBzIAMWCEdqI1bY5Lwi8Hg _hB8SEsWCEdqI1bY5Lwi8Hg _hB8R-8WCEdqI1bY5Lwi8Hg _hBzIW8WCEdqI1bY5Lwi8Hg _hBzIc8WCEdqI1bY5Lwi8Hg _hBzIDMWCEdqI1bY5Lwi8Hg _hA5wTMWCEdqI1bY5Lwi8Hg _hBpXUsWCEdqI1bY5Lwi8Hg _hBzISMWCEdqI1bY5Lwi8Hg _hBzIasWCEdqI1bY5Lwi8Hg _hA5wRMWCEdqI1bY5Lwi8Hg _hBpXKMWCEdqI1bY5Lwi8Hg _hBzIEMWCEdqI1bY5Lwi8Hg _hBzIXMWCEdqI1bY5Lwi8Hg _hB8R4MWCEdqI1bY5Lwi8Hg _hAv_VMWCEdqI1bY5Lwi8Hg _hA5we8WCEdqI1bY5Lwi8Hg _hBpXDMWCEdqI1bY5Lwi8Hg _hB8R6sWCEdqI1bY5Lwi8Hg _hB8SDcWCEdqI1bY5Lwi8Hg _hB8R-cWCEdqI1bY5Lwi8Hg _hA5wVMWCEdqI1bY5Lwi8Hg _hB8SGcWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGpusWCEdqI1bY5Lwi8Hg" source="UML::CommonBehaviors::SimpleTime" references="_hAm1IMWCEdqI1bY5Lwi8Hg _hAdEd8WCEdqI1bY5Lwi8Hg _hAdEUMWCEdqI1bY5Lwi8Hg _hATTTsWCEdqI1bY5Lwi8Hg _hAdEI8WCEdqI1bY5Lwi8Hg _hAm1J8WCEdqI1bY5Lwi8Hg _hAdEbMWCEdqI1bY5Lwi8Hg _hAm1McWCEdqI1bY5Lwi8Hg _hAdEZsWCEdqI1bY5Lwi8Hg _hAm1NcWCEdqI1bY5Lwi8Hg _hAm1KcWCEdqI1bY5Lwi8Hg _hATTUcWCEdqI1bY5Lwi8Hg _hAdETMWCEdqI1bY5Lwi8Hg _hAdEgMWCEdqI1bY5Lwi8Hg _hAm1I8WCEdqI1bY5Lwi8Hg _g-OPwcWCEdqI1bY5Lwi8Hg _hAdEXMWCEdqI1bY5Lwi8Hg _hATTRsWCEdqI1bY5Lwi8Hg _hAdEfsWCEdqI1bY5Lwi8Hg _hAdEOcWCEdqI1bY5Lwi8Hg _hAdEJ8WCEdqI1bY5Lwi8Hg _hAm1NsWCEdqI1bY5Lwi8Hg _hAm1L8WCEdqI1bY5Lwi8Hg _hAm1JsWCEdqI1bY5Lwi8Hg _hAdEL8WCEdqI1bY5Lwi8Hg _hAv_EMWCEdqI1bY5Lwi8Hg _g-OPu8WCEdqI1bY5Lwi8Hg _hAdEWcWCEdqI1bY5Lwi8Hg _hAm1N8WCEdqI1bY5Lwi8Hg _hATTPMWCEdqI1bY5Lwi8Hg _hATTQMWCEdqI1bY5Lwi8Hg _hAdEM8WCEdqI1bY5Lwi8Hg _hAm1JcWCEdqI1bY5Lwi8Hg _hAdEcMWCEdqI1bY5Lwi8Hg _hATTU8WCEdqI1bY5Lwi8Hg _hAm1NMWCEdqI1bY5Lwi8Hg _hAdEeMWCEdqI1bY5Lwi8Hg _hAdEPcWCEdqI1bY5Lwi8Hg _hAdEQsWCEdqI1bY5Lwi8Hg _hAdERcWCEdqI1bY5Lwi8Hg _hAdEesWCEdqI1bY5Lwi8Hg _hATTSsWCEdqI1bY5Lwi8Hg _hAm1LMWCEdqI1bY5Lwi8Hg _hAdEX8WCEdqI1bY5Lwi8Hg _DylKEH4YEdq7cMP_l1l5Gg _hAm1LcWCEdqI1bY5Lwi8Hg _hAm1KsWCEdqI1bY5Lwi8Hg _-Ixo8H4XEdq7cMP_l1l5Gg _hAdEScWCEdqI1bY5Lwi8Hg _hAdEIMWCEdqI1bY5Lwi8Hg _hAm1MMWCEdqI1bY5Lwi8Hg _hAdEdcWCEdqI1bY5Lwi8Hg _hAm1MsWCEdqI1bY5Lwi8Hg _hAm1KMWCEdqI1bY5Lwi8Hg _hAdEe8WCEdqI1bY5Lwi8Hg _hAdEfcWCEdqI1bY5Lwi8Hg _g-XZksWCEdqI1bY5Lwi8Hg _g-XZkMWCEdqI1bY5Lwi8Hg _hAdELMWCEdqI1bY5Lwi8Hg _hAdEY8WCEdqI1bY5Lwi8Hg _hAdEMcWCEdqI1bY5Lwi8Hg _hAm1LsWCEdqI1bY5Lwi8Hg _hAm1M8WCEdqI1bY5Lwi8Hg _hAm1IsWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGpu8WCEdqI1bY5Lwi8Hg" source="UML::CommonBehaviors::Communications" references="_g-OPxcWCEdqI1bY5Lwi8Hg _g-OPk8WCEdqI1bY5Lwi8Hg _g-XZcMWCEdqI1bY5Lwi8Hg _g-OPpsWCEdqI1bY5Lwi8Hg _g-XZjcWCEdqI1bY5Lwi8Hg _g-OPy8WCEdqI1bY5Lwi8Hg _g-XZlcWCEdqI1bY5Lwi8Hg _g-OPrMWCEdqI1bY5Lwi8Hg _M4X2IGveEdq4DLWZOhbdEA _g-XZgcWCEdqI1bY5Lwi8Hg _rHT3YKOsEdqi_5gqUMOQtA _g-XZo8WCEdqI1bY5Lwi8Hg _g-XZfMWCEdqI1bY5Lwi8Hg _g-OPwcWCEdqI1bY5Lwi8Hg _g2UQ5cWCEdqI1bY5Lwi8Hg _g-XZisWCEdqI1bY5Lwi8Hg _g-OPh8WCEdqI1bY5Lwi8Hg _g-XZfcWCEdqI1bY5Lwi8Hg _g-XZm8WCEdqI1bY5Lwi8Hg _g14L5cWCEdqI1bY5Lwi8Hg _iY7sMGvsEdqG6fBIPwe-mw _g-OPvsWCEdqI1bY5Lwi8Hg _Pu3O0HL0EdqziYxiZo0YtA _g-OPssWCEdqI1bY5Lwi8Hg _g-OPlsWCEdqI1bY5Lwi8Hg _00owUGvdEdq4DLWZOhbdEA _g-OPu8WCEdqI1bY5Lwi8Hg _g-OPncWCEdqI1bY5Lwi8Hg _g-OPtsWCEdqI1bY5Lwi8Hg _g-OPyMWCEdqI1bY5Lwi8Hg _g-OPg8WCEdqI1bY5Lwi8Hg _g-OPisWCEdqI1bY5Lwi8Hg _g-OPz8WCEdqI1bY5Lwi8Hg _g-XZeMWCEdqI1bY5Lwi8Hg _g-OPmsWCEdqI1bY5Lwi8Hg _g-XZecWCEdqI1bY5Lwi8Hg _g-XZh8WCEdqI1bY5Lwi8Hg _g-OPgMWCEdqI1bY5Lwi8Hg _g-OPucWCEdqI1bY5Lwi8Hg _g-XZoMWCEdqI1bY5Lwi8Hg _g-XZgMWCEdqI1bY5Lwi8Hg _g2UQ5MWCEdqI1bY5Lwi8Hg _g-EersWCEdqI1bY5Lwi8Hg _g-XZksWCEdqI1bY5Lwi8Hg _8Ugn8GvtEdqG6fBIPwe-mw _g-XZnsWCEdqI1bY5Lwi8Hg _g-XZkMWCEdqI1bY5Lwi8Hg _g-XZmMWCEdqI1bY5Lwi8Hg _g-OPosWCEdqI1bY5Lwi8Hg _g-XZhMWCEdqI1bY5Lwi8Hg _g-XZpMWCEdqI1bY5Lwi8Hg _g-XZk8WCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGpvMWCEdqI1bY5Lwi8Hg" source="UML::UseCases" references="_g96tmMWCEdqI1bY5Lwi8Hg _g96tu8WCEdqI1bY5Lwi8Hg _g-EepMWCEdqI1bY5Lwi8Hg _g-EeksWCEdqI1bY5Lwi8Hg _g96t4cWCEdqI1bY5Lwi8Hg _g96tp8WCEdqI1bY5Lwi8Hg _g96t2sWCEdqI1bY5Lwi8Hg _g-EercWCEdqI1bY5Lwi8Hg _g-Eel8WCEdqI1bY5Lwi8Hg _g-EegMWCEdqI1bY5Lwi8Hg _g-EejcWCEdqI1bY5Lwi8Hg _g96to8WCEdqI1bY5Lwi8Hg _g96tn8WCEdqI1bY5Lwi8Hg _6UV2QGwJEdq7X4sGURiZYA _g-EehcWCEdqI1bY5Lwi8Hg _g-EekMWCEdqI1bY5Lwi8Hg _g96tj8WCEdqI1bY5Lwi8Hg _g-EencWCEdqI1bY5Lwi8Hg _g-EeocWCEdqI1bY5Lwi8Hg _g-Een8WCEdqI1bY5Lwi8Hg _g-EemsWCEdqI1bY5Lwi8Hg _g-EeqMWCEdqI1bY5Lwi8Hg _g96t1sWCEdqI1bY5Lwi8Hg _g96tysWCEdqI1bY5Lwi8Hg _g96tr8WCEdqI1bY5Lwi8Hg _g-EeicWCEdqI1bY5Lwi8Hg _g96ts8WCEdqI1bY5Lwi8Hg _g96t0sWCEdqI1bY5Lwi8Hg _g96tt8WCEdqI1bY5Lwi8Hg _g-EeqsWCEdqI1bY5Lwi8Hg _g-EepcWCEdqI1bY5Lwi8Hg _g96tzsWCEdqI1bY5Lwi8Hg _g96tq8WCEdqI1bY5Lwi8Hg _g-EelcWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGpvcWCEdqI1bY5Lwi8Hg" source="UML::Classes::PowerTypes" references="_hCr4zMWCEdqI1bY5Lwi8Hg _hCr4xcWCEdqI1bY5Lwi8Hg _hCr428WCEdqI1bY5Lwi8Hg _hCr438WCEdqI1bY5Lwi8Hg _6UV2QGwJEdq7X4sGURiZYA _C7AF4GwREdq14q0ETb1t3g _hCr4yMWCEdqI1bY5Lwi8Hg _hCr44MWCEdqI1bY5Lwi8Hg _hCivFsWCEdqI1bY5Lwi8Hg _hCr4wsWCEdqI1bY5Lwi8Hg _hCr408WCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQGpvsWCEdqI1bY5Lwi8Hg" source="UML::Activities::StructuredActivities" references="_g8Ru2sWCEdqI1bY5Lwi8Hg _g7-0JMWCEdqI1bY5Lwi8Hg _g8RuxcWCEdqI1bY5Lwi8Hg _g71qNsWCEdqI1bY5Lwi8Hg _g7-z8sWCEdqI1bY5Lwi8Hg _g8Ik3sWCEdqI1bY5Lwi8Hg _g7-z88WCEdqI1bY5Lwi8Hg _g7-0OMWCEdqI1bY5Lwi8Hg _g8Ru1sWCEdqI1bY5Lwi8Hg _g8RuzcWCEdqI1bY5Lwi8Hg _g8RuycWCEdqI1bY5Lwi8Hg _g7-0GcWCEdqI1bY5Lwi8Hg _g7-z18WCEdqI1bY5Lwi8Hg _g8RuxMWCEdqI1bY5Lwi8Hg _g7-0HcWCEdqI1bY5Lwi8Hg _g7-0EMWCEdqI1bY5Lwi8Hg _g7-0PMWCEdqI1bY5Lwi8Hg _g8RuwMWCEdqI1bY5Lwi8Hg _g8Ik1sWCEdqI1bY5Lwi8Hg _g8Ru4sWCEdqI1bY5Lwi8Hg _g7-0KsWCEdqI1bY5Lwi8Hg _g7-0FcWCEdqI1bY5Lwi8Hg _g7-z0MWCEdqI1bY5Lwi8Hg _g7-z-8WCEdqI1bY5Lwi8Hg _g71qPMWCEdqI1bY5Lwi8Hg _g8RuysWCEdqI1bY5Lwi8Hg _g7-0LsWCEdqI1bY5Lwi8Hg _g8Ru38WCEdqI1bY5Lwi8Hg _g7-z7MWCEdqI1bY5Lwi8Hg _g8Ru6cWCEdqI1bY5Lwi8Hg _g7-0McWCEdqI1bY5Lwi8Hg _g8Ru28WCEdqI1bY5Lwi8Hg _g8Ik-sWCEdqI1bY5Lwi8Hg _g8Ru3sWCEdqI1bY5Lwi8Hg _g8RuwcWCEdqI1bY5Lwi8Hg _g7-0BsWCEdqI1bY5Lwi8Hg _g7-z8MWCEdqI1bY5Lwi8Hg _g8Ik0MWCEdqI1bY5Lwi8Hg _g8RuzsWCEdqI1bY5Lwi8Hg _g8Ru0cWCEdqI1bY5Lwi8Hg _g7-z6MWCEdqI1bY5Lwi8Hg _g8Ik4sWCEdqI1bY5Lwi8Hg _g8IlE8WCEdqI1bY5Lwi8Hg _g7-0QMWCEdqI1bY5Lwi8Hg _g8RuyMWCEdqI1bY5Lwi8Hg _g8Ru18WCEdqI1bY5Lwi8Hg _g7-0CsWCEdqI1bY5Lwi8Hg _g7-0IcWCEdqI1bY5Lwi8Hg _g7-z08WCEdqI1bY5Lwi8Hg _g71qQMWCEdqI1bY5Lwi8Hg _g8IlEcWCEdqI1bY5Lwi8Hg _g7-0J8WCEdqI1bY5Lwi8Hg _g8IlBcWCEdqI1bY5Lwi8Hg _g7-z5cWCEdqI1bY5Lwi8Hg _g8Ru08WCEdqI1bY5Lwi8Hg _g8Ik2sWCEdqI1bY5Lwi8Hg _g8Ru5cWCEdqI1bY5Lwi8Hg _g8IlCMWCEdqI1bY5Lwi8Hg _g8Ru58WCEdqI1bY5Lwi8Hg _g71p8MWCEdqI1bY5Lwi8Hg _g8Ik5sWCEdqI1bY5Lwi8Hg _g7-0NMWCEdqI1bY5Lwi8Hg _g7-0AsWCEdqI1bY5Lwi8Hg _g8Ik7sWCEdqI1bY5Lwi8Hg _g8Ik6sWCEdqI1bY5Lwi8Hg _g8IlAsWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsfkMWCEdqI1bY5Lwi8Hg" source="UML::Deployments::Artifacts" references="_g_HAX8WCEdqI1bY5Lwi8Hg _g_HAj8WCEdqI1bY5Lwi8Hg _g_HAc8WCEdqI1bY5Lwi8Hg _g_HAiMWCEdqI1bY5Lwi8Hg _g_HAgcWCEdqI1bY5Lwi8Hg _g_HAgsWCEdqI1bY5Lwi8Hg _-lGRgHLzEdqziYxiZo0YtA _g_HAjMWCEdqI1bY5Lwi8Hg _g_HAY8WCEdqI1bY5Lwi8Hg _g_HAa8WCEdqI1bY5Lwi8Hg _g_HAf8WCEdqI1bY5Lwi8Hg _g_HAksWCEdqI1bY5Lwi8Hg _g_HAesWCEdqI1bY5Lwi8Hg _g_HAhcWCEdqI1bY5Lwi8Hg _g_HAdsWCEdqI1bY5Lwi8Hg _g_HAb8WCEdqI1bY5Lwi8Hg _g_HAfMWCEdqI1bY5Lwi8Hg _g_HAZ8WCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsfkcWCEdqI1bY5Lwi8Hg" source="UML::AuxiliaryConstructs::Templates" references="_hFYAf8WCEdqI1bY5Lwi8Hg _hE7UucWCEdqI1bY5Lwi8Hg _hFYAlcWCEdqI1bY5Lwi8Hg _hFEeg8WCEdqI1bY5Lwi8Hg _hE7UtcWCEdqI1bY5Lwi8Hg _hE7Ul8WCEdqI1bY5Lwi8Hg _hFYAkMWCEdqI1bY5Lwi8Hg _hFYAg8WCEdqI1bY5Lwi8Hg _hFYAhsWCEdqI1bY5Lwi8Hg _hFYAccWCEdqI1bY5Lwi8Hg _hFhKU8WCEdqI1bY5Lwi8Hg _hFEejsWCEdqI1bY5Lwi8Hg _M4X2IGveEdq4DLWZOhbdEA _hFhKZsWCEdqI1bY5Lwi8Hg _hE7UicWCEdqI1bY5Lwi8Hg _6UV2QGwJEdq7X4sGURiZYA _hFYAjcWCEdqI1bY5Lwi8Hg _hFEef8WCEdqI1bY5Lwi8Hg _hFYAh8WCEdqI1bY5Lwi8Hg _hFEeacWCEdqI1bY5Lwi8Hg _hFOPj8WCEdqI1bY5Lwi8Hg _hE7UqcWCEdqI1bY5Lwi8Hg _hE7UnMWCEdqI1bY5Lwi8Hg _hFYAgMWCEdqI1bY5Lwi8Hg _hFOPfcWCEdqI1bY5Lwi8Hg _hFhKcMWCEdqI1bY5Lwi8Hg _hFEelsWCEdqI1bY5Lwi8Hg _hFOPgcWCEdqI1bY5Lwi8Hg _hE7UrcWCEdqI1bY5Lwi8Hg _9keOQGvdEdq4DLWZOhbdEA _hFOPqcWCEdqI1bY5Lwi8Hg _hFhKUMWCEdqI1bY5Lwi8Hg _hFEepcWCEdqI1bY5Lwi8Hg _hFEercWCEdqI1bY5Lwi8Hg _hFhKZMWCEdqI1bY5Lwi8Hg _hFOPhsWCEdqI1bY5Lwi8Hg _hFhKb8WCEdqI1bY5Lwi8Hg _hFOPjMWCEdqI1bY5Lwi8Hg _hFOPk8WCEdqI1bY5Lwi8Hg _hE7UscWCEdqI1bY5Lwi8Hg _hFhKXMWCEdqI1bY5Lwi8Hg _hFYAksWCEdqI1bY5Lwi8Hg _hFEee8WCEdqI1bY5Lwi8Hg _hFEes8WCEdqI1bY5Lwi8Hg _hFYAYMWCEdqI1bY5Lwi8Hg _hFOPacWCEdqI1bY5Lwi8Hg _KxRzgGvuEdqG6fBIPwe-mw _hFYAfMWCEdqI1bY5Lwi8Hg _hFhKacWCEdqI1bY5Lwi8Hg _hFOPbcWCEdqI1bY5Lwi8Hg _hFOPYMWCEdqI1bY5Lwi8Hg _jKxnwGwLEdq7X4sGURiZYA _hFEedcWCEdqI1bY5Lwi8Hg _hFEevsWCEdqI1bY5Lwi8Hg _hFEebcWCEdqI1bY5Lwi8Hg _hFYAgcWCEdqI1bY5Lwi8Hg _hFhKX8WCEdqI1bY5Lwi8Hg _hFEeosWCEdqI1bY5Lwi8Hg _hFOPl8WCEdqI1bY5Lwi8Hg _hFOPpcWCEdqI1bY5Lwi8Hg _hFOPocWCEdqI1bY5Lwi8Hg _hFOPcMWCEdqI1bY5Lwi8Hg _hE7UpcWCEdqI1bY5Lwi8Hg _hFhKa8WCEdqI1bY5Lwi8Hg _hFhKbsWCEdqI1bY5Lwi8Hg _hFYAbsWCEdqI1bY5Lwi8Hg _hFEeh8WCEdqI1bY5Lwi8Hg _hFYAicWCEdqI1bY5Lwi8Hg _hFhKbcWCEdqI1bY5Lwi8Hg _hFhKWsWCEdqI1bY5Lwi8Hg _Jp_1oGveEdq4DLWZOhbdEA _hE7Uw8WCEdqI1bY5Lwi8Hg _hE7Uj8WCEdqI1bY5Lwi8Hg _hFEeccWCEdqI1bY5Lwi8Hg _hFEei8WCEdqI1bY5Lwi8Hg _hFOPecWCEdqI1bY5Lwi8Hg _g8ubCcWCEdqI1bY5Lwi8Hg _hFEeYMWCEdqI1bY5Lwi8Hg _csVgUGvtEdqG6fBIPwe-mw _-cvRAGvzEdq7X4sGURiZYA _hFhKYcWCEdqI1bY5Lwi8Hg _hFYAi8WCEdqI1bY5Lwi8Hg _hFhKYsWCEdqI1bY5Lwi8Hg _hE7Uy8WCEdqI1bY5Lwi8Hg _hE7Uk8WCEdqI1bY5Lwi8Hg _g1Ru8MWCEdqI1bY5Lwi8Hg _hFEencWCEdqI1bY5Lwi8Hg _hFEeqcWCEdqI1bY5Lwi8Hg _hFEeksWCEdqI1bY5Lwi8Hg _hFhKVsWCEdqI1bY5Lwi8Hg _hFYAasWCEdqI1bY5Lwi8Hg _hFYAeMWCEdqI1bY5Lwi8Hg _hE7Ux8WCEdqI1bY5Lwi8Hg _hFYAkcWCEdqI1bY5Lwi8Hg _hFYAd8WCEdqI1bY5Lwi8Hg _hFYAecWCEdqI1bY5Lwi8Hg _hFYAhMWCEdqI1bY5Lwi8Hg _hFYAiMWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsfksWCEdqI1bY5Lwi8Hg" source="UML::Activities::CompleteActivities" references="_hD4Lp8WCEdqI1bY5Lwi8Hg _hEB8rMWCEdqI1bY5Lwi8Hg _hD4LlsWCEdqI1bY5Lwi8Hg _hDvBrMWCEdqI1bY5Lwi8Hg _hELtmsWCEdqI1bY5Lwi8Hg _g71qNsWCEdqI1bY5Lwi8Hg _g7-z8sWCEdqI1bY5Lwi8Hg _g9LGrcWCEdqI1bY5Lwi8Hg _hEB8mMWCEdqI1bY5Lwi8Hg _TUPtYGveEdq4DLWZOhbdEA _hEB8t8WCEdqI1bY5Lwi8Hg _hDlQxsWCEdqI1bY5Lwi8Hg _hDlQrsWCEdqI1bY5Lwi8Hg _g9LG0MWCEdqI1bY5Lwi8Hg _hDlQysWCEdqI1bY5Lwi8Hg _hDlQzsWCEdqI1bY5Lwi8Hg _KyaPMGveEdq4DLWZOhbdEA _hEB8sMWCEdqI1bY5Lwi8Hg _rHT3YKOsEdqi_5gqUMOQtA _hD4LwsWCEdqI1bY5Lwi8Hg _hEB8nsWCEdqI1bY5Lwi8Hg _hDlQ0sWCEdqI1bY5Lwi8Hg _g7-z0MWCEdqI1bY5Lwi8Hg _hELtlcWCEdqI1bY5Lwi8Hg _hELtl8WCEdqI1bY5Lwi8Hg _hEB8vsWCEdqI1bY5Lwi8Hg _hEB8w8WCEdqI1bY5Lwi8Hg _hDlQw8WCEdqI1bY5Lwi8Hg _hD4LmsWCEdqI1bY5Lwi8Hg _g7-z7MWCEdqI1bY5Lwi8Hg _hD4LscWCEdqI1bY5Lwi8Hg _hEB8ssWCEdqI1bY5Lwi8Hg _hEB8rcWCEdqI1bY5Lwi8Hg _hEB8pMWCEdqI1bY5Lwi8Hg _hD4Lk8WCEdqI1bY5Lwi8Hg _hD4LrcWCEdqI1bY5Lwi8Hg _hELtksWCEdqI1bY5Lwi8Hg _hDlQ48WCEdqI1bY5Lwi8Hg _hEB8yMWCEdqI1bY5Lwi8Hg _hDvBoMWCEdqI1bY5Lwi8Hg _hDlQ4MWCEdqI1bY5Lwi8Hg _hEB8psWCEdqI1bY5Lwi8Hg _hELtnMWCEdqI1bY5Lwi8Hg _hEB8uMWCEdqI1bY5Lwi8Hg _hD4Lo8WCEdqI1bY5Lwi8Hg _hEB8xsWCEdqI1bY5Lwi8Hg _hEB8u8WCEdqI1bY5Lwi8Hg _hD4Ln8WCEdqI1bY5Lwi8Hg _hEB8vMWCEdqI1bY5Lwi8Hg _hEB8p8WCEdqI1bY5Lwi8Hg _hD4LkMWCEdqI1bY5Lwi8Hg _g7-z08WCEdqI1bY5Lwi8Hg _hD4LtsWCEdqI1bY5Lwi8Hg _hEB8tcWCEdqI1bY5Lwi8Hg _hDlQ58WCEdqI1bY5Lwi8Hg _hDlQ3cWCEdqI1bY5Lwi8Hg _g7-z5cWCEdqI1bY5Lwi8Hg _hDlQp8WCEdqI1bY5Lwi8Hg _hDlQ68WCEdqI1bY5Lwi8Hg _hEB8scWCEdqI1bY5Lwi8Hg _g71p8MWCEdqI1bY5Lwi8Hg _hD4LvcWCEdqI1bY5Lwi8Hg _hDlQqsWCEdqI1bY5Lwi8Hg _hEB8usWCEdqI1bY5Lwi8Hg _hDvBtMWCEdqI1bY5Lwi8Hg _hELtkMWCEdqI1bY5Lwi8Hg _hEB8qcWCEdqI1bY5Lwi8Hg _g-qUgMWCEdqI1bY5Lwi8Hg _g7r5AcWCEdqI1bY5Lwi8Hg _hEB8wsWCEdqI1bY5Lwi8Hg _hEB8v8WCEdqI1bY5Lwi8Hg _hDvBsMWCEdqI1bY5Lwi8Hg _g9LGoMWCEdqI1bY5Lwi8Hg _hDlQwMWCEdqI1bY5Lwi8Hg _hEB8k8WCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsfk8WCEdqI1bY5Lwi8Hg" source="UML::Actions::BasicActions" references="_g71qB8WCEdqI1bY5Lwi8Hg _g71qG8WCEdqI1bY5Lwi8Hg _g7r5U8WCEdqI1bY5Lwi8Hg _g7r4_cWCEdqI1bY5Lwi8Hg _g7r5HMWCEdqI1bY5Lwi8Hg _g7r5K8WCEdqI1bY5Lwi8Hg _g71qA8WCEdqI1bY5Lwi8Hg _g7r5D8WCEdqI1bY5Lwi8Hg _g71p88WCEdqI1bY5Lwi8Hg _g71qKcWCEdqI1bY5Lwi8Hg _g71qFcWCEdqI1bY5Lwi8Hg _g71qLcWCEdqI1bY5Lwi8Hg _g71p_8WCEdqI1bY5Lwi8Hg _g7r5PMWCEdqI1bY5Lwi8Hg _g71qHcWCEdqI1bY5Lwi8Hg _g7r5OMWCEdqI1bY5Lwi8Hg _g71qJsWCEdqI1bY5Lwi8Hg _g71qEsWCEdqI1bY5Lwi8Hg _g7r47sWCEdqI1bY5Lwi8Hg _g71qF8WCEdqI1bY5Lwi8Hg _g71p98WCEdqI1bY5Lwi8Hg _g71qK8WCEdqI1bY5Lwi8Hg _g71qMMWCEdqI1bY5Lwi8Hg _g71qGMWCEdqI1bY5Lwi8Hg _g7r5C8WCEdqI1bY5Lwi8Hg _g7r5GMWCEdqI1bY5Lwi8Hg _g71qCcWCEdqI1bY5Lwi8Hg _g7r5L8WCEdqI1bY5Lwi8Hg _g7r48cWCEdqI1bY5Lwi8Hg _g71qDsWCEdqI1bY5Lwi8Hg _g71p7MWCEdqI1bY5Lwi8Hg _g71p4MWCEdqI1bY5Lwi8Hg _g7r5FcWCEdqI1bY5Lwi8Hg _g71qBMWCEdqI1bY5Lwi8Hg _g71qLsWCEdqI1bY5Lwi8Hg _g71qIMWCEdqI1bY5Lwi8Hg _g7r49cWCEdqI1bY5Lwi8Hg _g71p-8WCEdqI1bY5Lwi8Hg _g71qKsWCEdqI1bY5Lwi8Hg _g7r5EsWCEdqI1bY5Lwi8Hg _g71qEcWCEdqI1bY5Lwi8Hg _g7r4-cWCEdqI1bY5Lwi8Hg _g71qAMWCEdqI1bY5Lwi8Hg _g71p8MWCEdqI1bY5Lwi8Hg _g71qGsWCEdqI1bY5Lwi8Hg _g71qDMWCEdqI1bY5Lwi8Hg _g7r5T8WCEdqI1bY5Lwi8Hg _g7r5BcWCEdqI1bY5Lwi8Hg _g7r5AcWCEdqI1bY5Lwi8Hg _g7r5KMWCEdqI1bY5Lwi8Hg _g7r5QMWCEdqI1bY5Lwi8Hg _g71qIsWCEdqI1bY5Lwi8Hg _g71qJcWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsflMWCEdqI1bY5Lwi8Hg" source="UML::Activities::IntermediateActivities" references="_g-hKf8WCEdqI1bY5Lwi8Hg _g-qUk8WCEdqI1bY5Lwi8Hg _g71qNsWCEdqI1bY5Lwi8Hg _g7-z8sWCEdqI1bY5Lwi8Hg _g-hKlcWCEdqI1bY5Lwi8Hg _g7-z88WCEdqI1bY5Lwi8Hg _g9LGrcWCEdqI1bY5Lwi8Hg _g-qUdcWCEdqI1bY5Lwi8Hg _g-qUYMWCEdqI1bY5Lwi8Hg _g7-z18WCEdqI1bY5Lwi8Hg _g-hKksWCEdqI1bY5Lwi8Hg _g-hKocWCEdqI1bY5Lwi8Hg _g9LG8cWCEdqI1bY5Lwi8Hg _g-hKecWCEdqI1bY5Lwi8Hg _g-hKncWCEdqI1bY5Lwi8Hg _g9LG5cWCEdqI1bY5Lwi8Hg _g9U3s8WCEdqI1bY5Lwi8Hg _g-qUmsWCEdqI1bY5Lwi8Hg _g-hKqcWCEdqI1bY5Lwi8Hg _g7-z0MWCEdqI1bY5Lwi8Hg _g-qUh8WCEdqI1bY5Lwi8Hg _g-hKfMWCEdqI1bY5Lwi8Hg _g7-z7MWCEdqI1bY5Lwi8Hg _g-qUecWCEdqI1bY5Lwi8Hg _g-hKpcWCEdqI1bY5Lwi8Hg _g9LGwsWCEdqI1bY5Lwi8Hg _g-qUj8WCEdqI1bY5Lwi8Hg _g-hKcMWCEdqI1bY5Lwi8Hg _g-hKj8WCEdqI1bY5Lwi8Hg _g-hKrcWCEdqI1bY5Lwi8Hg _g-qUacWCEdqI1bY5Lwi8Hg _g-qUm8WCEdqI1bY5Lwi8Hg _g-qUl8WCEdqI1bY5Lwi8Hg _g-qUkcWCEdqI1bY5Lwi8Hg _g-hKtMWCEdqI1bY5Lwi8Hg _g7-z08WCEdqI1bY5Lwi8Hg _g-qUjcWCEdqI1bY5Lwi8Hg _g71qQMWCEdqI1bY5Lwi8Hg _g-0FYMWCEdqI1bY5Lwi8Hg _g-qUlMWCEdqI1bY5Lwi8Hg _g-0FYsWCEdqI1bY5Lwi8Hg _g7-z5cWCEdqI1bY5Lwi8Hg _g-qUgMWCEdqI1bY5Lwi8Hg _g-qUmcWCEdqI1bY5Lwi8Hg _g-hKmcWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsflcWCEdqI1bY5Lwi8Hg" source="UML::CompositeStructures::Ports" references="_g-0FgcWCEdqI1bY5Lwi8Hg _g-0FhcWCEdqI1bY5Lwi8Hg _aOgw0GveEdq4DLWZOhbdEA _g-0Fc8WCEdqI1bY5Lwi8Hg _g-0FrMWCEdqI1bY5Lwi8Hg _g-0FqMWCEdqI1bY5Lwi8Hg _g-0FecWCEdqI1bY5Lwi8Hg _g-0FiMWCEdqI1bY5Lwi8Hg _ZAuvEGveEdq4DLWZOhbdEA _g-0FrcWCEdqI1bY5Lwi8Hg _g-0FdsWCEdqI1bY5Lwi8Hg _g-0FfcWCEdqI1bY5Lwi8Hg _g-0Fo8WCEdqI1bY5Lwi8Hg _g-0FpcWCEdqI1bY5Lwi8Hg _g-0Fn8WCEdqI1bY5Lwi8Hg _g-0FoMWCEdqI1bY5Lwi8Hg _g-0FlcWCEdqI1bY5Lwi8Hg _g-0FmcWCEdqI1bY5Lwi8Hg _g-0FqcWCEdqI1bY5Lwi8Hg _g-0FnMWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsflsWCEdqI1bY5Lwi8Hg" source="UML::AuxiliaryConstructs::InformationFlows" references="_hCr5DsWCEdqI1bY5Lwi8Hg _hCr5FsWCEdqI1bY5Lwi8Hg _hC1pwMWCEdqI1bY5Lwi8Hg _hC1p18WCEdqI1bY5Lwi8Hg _hCr5BsWCEdqI1bY5Lwi8Hg _hC1pxsWCEdqI1bY5Lwi8Hg _hC1p08WCEdqI1bY5Lwi8Hg _hC1py8WCEdqI1bY5Lwi8Hg _hC1pycWCEdqI1bY5Lwi8Hg _hCr47cWCEdqI1bY5Lwi8Hg _hC1pz8WCEdqI1bY5Lwi8Hg _hCr5HsWCEdqI1bY5Lwi8Hg _hCr5G8WCEdqI1bY5Lwi8Hg _hC1p1sWCEdqI1bY5Lwi8Hg _hC1pwcWCEdqI1bY5Lwi8Hg _hCr44cWCEdqI1bY5Lwi8Hg _hC1pzsWCEdqI1bY5Lwi8Hg _hCr5CsWCEdqI1bY5Lwi8Hg _hCr5AsWCEdqI1bY5Lwi8Hg _hCr48cWCEdqI1bY5Lwi8Hg _hC1pxMWCEdqI1bY5Lwi8Hg _hCr4_sWCEdqI1bY5Lwi8Hg _hCr5H8WCEdqI1bY5Lwi8Hg _hC1p0sWCEdqI1bY5Lwi8Hg _hCr5EsWCEdqI1bY5Lwi8Hg _hCr5GsWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsfl8WCEdqI1bY5Lwi8Hg" source="UML::CompositeStructures::InternalStructures" references="_g84LxMWCEdqI1bY5Lwi8Hg _g8ubAcWCEdqI1bY5Lwi8Hg _aOgw0GveEdq4DLWZOhbdEA _g8ua0sWCEdqI1bY5Lwi8Hg _g84Lv8WCEdqI1bY5Lwi8Hg _g84LzsWCEdqI1bY5Lwi8Hg _6UV2QGwJEdq7X4sGURiZYA _g84L1cWCEdqI1bY5Lwi8Hg _g8ua5sWCEdqI1bY5Lwi8Hg _g84Lu8WCEdqI1bY5Lwi8Hg _g8ua2sWCEdqI1bY5Lwi8Hg _g84LtMWCEdqI1bY5Lwi8Hg _g8ua1sWCEdqI1bY5Lwi8Hg _g2UQvcWCEdqI1bY5Lwi8Hg _g8ua_cWCEdqI1bY5Lwi8Hg _g0iIAMWCEdqI1bY5Lwi8Hg _g84L0MWCEdqI1bY5Lwi8Hg _g8ua7sWCEdqI1bY5Lwi8Hg _g8ua6sWCEdqI1bY5Lwi8Hg _g84LwsWCEdqI1bY5Lwi8Hg _g84Lt8WCEdqI1bY5Lwi8Hg _g84Ly8WCEdqI1bY5Lwi8Hg _g84L2cWCEdqI1bY5Lwi8Hg _g84L2MWCEdqI1bY5Lwi8Hg _g8ubDMWCEdqI1bY5Lwi8Hg _Jp_1oGveEdq4DLWZOhbdEA _g84Lx8WCEdqI1bY5Lwi8Hg _g8ubCcWCEdqI1bY5Lwi8Hg _g84L08WCEdqI1bY5Lwi8Hg _g84Ls8WCEdqI1bY5Lwi8Hg _FQiVsGwYEdqHKKVoxc0dlA _g84LvsWCEdqI1bY5Lwi8Hg _g84L3MWCEdqI1bY5Lwi8Hg _g8ua-cWCEdqI1bY5Lwi8Hg _g2UQwMWCEdqI1bY5Lwi8Hg _g8ubBcWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsfmMWCEdqI1bY5Lwi8Hg" source="UML::Activities::CompleteStructuredActivities" references="_hEU3mcWCEdqI1bY5Lwi8Hg _hEU3i8WCEdqI1bY5Lwi8Hg _g9LGrcWCEdqI1bY5Lwi8Hg _hELtwsWCEdqI1bY5Lwi8Hg _hELtzcWCEdqI1bY5Lwi8Hg _g9LG8cWCEdqI1bY5Lwi8Hg _g7-0EMWCEdqI1bY5Lwi8Hg _hEU3o8WCEdqI1bY5Lwi8Hg _hEU3nsWCEdqI1bY5Lwi8Hg _g9U3s8WCEdqI1bY5Lwi8Hg _hEU3jcWCEdqI1bY5Lwi8Hg _g7-z0MWCEdqI1bY5Lwi8Hg _hELtvsWCEdqI1bY5Lwi8Hg _g7-0LsWCEdqI1bY5Lwi8Hg _hEU3g8WCEdqI1bY5Lwi8Hg _g9LGwsWCEdqI1bY5Lwi8Hg _hEU3kMWCEdqI1bY5Lwi8Hg _g8Ik0MWCEdqI1bY5Lwi8Hg _hEU3lcWCEdqI1bY5Lwi8Hg _hELtxsWCEdqI1bY5Lwi8Hg _hELtrcWCEdqI1bY5Lwi8Hg _hELtocWCEdqI1bY5Lwi8Hg _g7-0IcWCEdqI1bY5Lwi8Hg _hEU3psWCEdqI1bY5Lwi8Hg _hEU3ksWCEdqI1bY5Lwi8Hg _hELtqsWCEdqI1bY5Lwi8Hg _hEU3ocWCEdqI1bY5Lwi8Hg _hELtusWCEdqI1bY5Lwi8Hg _hEU3msWCEdqI1bY5Lwi8Hg _hEU3lsWCEdqI1bY5Lwi8Hg _hEU3ncWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsfmcWCEdqI1bY5Lwi8Hg" source="UML::Actions::CompleteActions" references="_hDIlLsWCEdqI1bY5Lwi8Hg _hC1qAcWCEdqI1bY5Lwi8Hg _hC1qI8WCEdqI1bY5Lwi8Hg _hDIlE8WCEdqI1bY5Lwi8Hg _hC_awMWCEdqI1bY5Lwi8Hg _hDIk58WCEdqI1bY5Lwi8Hg _hC_a3cWCEdqI1bY5Lwi8Hg _hDSV4MWCEdqI1bY5Lwi8Hg _hDSVysWCEdqI1bY5Lwi8Hg _hDIlJ8WCEdqI1bY5Lwi8Hg _hDbfpcWCEdqI1bY5Lwi8Hg _hDIlH8WCEdqI1bY5Lwi8Hg _hDIlC8WCEdqI1bY5Lwi8Hg _hDbf2sWCEdqI1bY5Lwi8Hg _hDIk2sWCEdqI1bY5Lwi8Hg _hDbfq8WCEdqI1bY5Lwi8Hg _hDSV1cWCEdqI1bY5Lwi8Hg _hDIlB8WCEdqI1bY5Lwi8Hg _hDSV0sWCEdqI1bY5Lwi8Hg _hDIlM8WCEdqI1bY5Lwi8Hg _hDbfosWCEdqI1bY5Lwi8Hg _hC_azcWCEdqI1bY5Lwi8Hg _hC1qDcWCEdqI1bY5Lwi8Hg _hDIk48WCEdqI1bY5Lwi8Hg _hDIkv8WCEdqI1bY5Lwi8Hg _hDIkwsWCEdqI1bY5Lwi8Hg _hDIlK8WCEdqI1bY5Lwi8Hg _hDIlMMWCEdqI1bY5Lwi8Hg _hDbfv8WCEdqI1bY5Lwi8Hg _hDSV5cWCEdqI1bY5Lwi8Hg _hDbfucWCEdqI1bY5Lwi8Hg _hDIksMWCEdqI1bY5Lwi8Hg _hDIkxsWCEdqI1bY5Lwi8Hg _hDSV3sWCEdqI1bY5Lwi8Hg _hC1qHMWCEdqI1bY5Lwi8Hg _hDSVxMWCEdqI1bY5Lwi8Hg _hDIlD8WCEdqI1bY5Lwi8Hg _hC1p6sWCEdqI1bY5Lwi8Hg _hC1p7sWCEdqI1bY5Lwi8Hg _hDSVvMWCEdqI1bY5Lwi8Hg _hDbf0sWCEdqI1bY5Lwi8Hg _hDbfwsWCEdqI1bY5Lwi8Hg _hDSVycWCEdqI1bY5Lwi8Hg _hC_bBMWCEdqI1bY5Lwi8Hg _hDbf3MWCEdqI1bY5Lwi8Hg _hC1qJ8WCEdqI1bY5Lwi8Hg _hC_bQ8WCEdqI1bY5Lwi8Hg _hDSV48WCEdqI1bY5Lwi8Hg _hC_bCMWCEdqI1bY5Lwi8Hg _hDIlI8WCEdqI1bY5Lwi8Hg _hDIk1sWCEdqI1bY5Lwi8Hg _hDSVzcWCEdqI1bY5Lwi8Hg _hDbfxMWCEdqI1bY5Lwi8Hg _hDSVxsWCEdqI1bY5Lwi8Hg _hC_bK8WCEdqI1bY5Lwi8Hg _hDbfycWCEdqI1bY5Lwi8Hg _hDbfzMWCEdqI1bY5Lwi8Hg _hC1qBcWCEdqI1bY5Lwi8Hg _hC_bDMWCEdqI1bY5Lwi8Hg _hDIk68WCEdqI1bY5Lwi8Hg _hC_a2cWCEdqI1bY5Lwi8Hg _hC1p_sWCEdqI1bY5Lwi8Hg _hDbfscWCEdqI1bY5Lwi8Hg _hDbfvsWCEdqI1bY5Lwi8Hg _hDSV28WCEdqI1bY5Lwi8Hg _hDSVusWCEdqI1bY5Lwi8Hg _hC_aycWCEdqI1bY5Lwi8Hg _hC_bM8WCEdqI1bY5Lwi8Hg _hDbfpsWCEdqI1bY5Lwi8Hg _hDSV18WCEdqI1bY5Lwi8Hg _hC1p4cWCEdqI1bY5Lwi8Hg _hDbfuMWCEdqI1bY5Lwi8Hg _hC1qCcWCEdqI1bY5Lwi8Hg _hDbftMWCEdqI1bY5Lwi8Hg _hDbfsMWCEdqI1bY5Lwi8Hg _hDSVv8WCEdqI1bY5Lwi8Hg _hC1p8sWCEdqI1bY5Lwi8Hg _hDbfs8WCEdqI1bY5Lwi8Hg _hC_a7MWCEdqI1bY5Lwi8Hg _hDIkysWCEdqI1bY5Lwi8Hg _hDSVuMWCEdqI1bY5Lwi8Hg _hDbf28WCEdqI1bY5Lwi8Hg _hDSVscWCEdqI1bY5Lwi8Hg _hC1qH8WCEdqI1bY5Lwi8Hg _hDbf1cWCEdqI1bY5Lwi8Hg _hDSVwcWCEdqI1bY5Lwi8Hg _hDbf18WCEdqI1bY5Lwi8Hg _hDSV2sWCEdqI1bY5Lwi8Hg _hDbfoMWCEdqI1bY5Lwi8Hg _hDSVtMWCEdqI1bY5Lwi8Hg _hC_bN8WCEdqI1bY5Lwi8Hg _hDSVsMWCEdqI1bY5Lwi8Hg _hDbftsWCEdqI1bY5Lwi8Hg _hDSVucWCEdqI1bY5Lwi8Hg _hDbfx8WCEdqI1bY5Lwi8Hg _hDbfrsWCEdqI1bY5Lwi8Hg _g_2nc8WCEdqI1bY5Lwi8Hg _hC_bEMWCEdqI1bY5Lwi8Hg _hDbfqcWCEdqI1bY5Lwi8Hg _hDSVtcWCEdqI1bY5Lwi8Hg _hDbf2MWCEdqI1bY5Lwi8Hg _hC_a6MWCEdqI1bY5Lwi8Hg _hDbft8WCEdqI1bY5Lwi8Hg _hC_bL8WCEdqI1bY5Lwi8Hg _hDSVzsWCEdqI1bY5Lwi8Hg _hDIlNMWCEdqI1bY5Lwi8Hg _hDSV0cWCEdqI1bY5Lwi8Hg _hDbfu8WCEdqI1bY5Lwi8Hg _hDbf0cWCEdqI1bY5Lwi8Hg _hDIk78WCEdqI1bY5Lwi8Hg _hDbfzsWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsfmsWCEdqI1bY5Lwi8Hg" source="UML::Deployments::Nodes" references="_g_QxXcWCEdqI1bY5Lwi8Hg _g_QxU8WCEdqI1bY5Lwi8Hg _g_QxasWCEdqI1bY5Lwi8Hg _g_QxiMWCEdqI1bY5Lwi8Hg _g_QxgsWCEdqI1bY5Lwi8Hg _g_QxVsWCEdqI1bY5Lwi8Hg _g_QxUMWCEdqI1bY5Lwi8Hg _-lGRgHLzEdqziYxiZo0YtA _g_HAncWCEdqI1bY5Lwi8Hg _g_QxjMWCEdqI1bY5Lwi8Hg _g_HAqMWCEdqI1bY5Lwi8Hg _g_HAocWCEdqI1bY5Lwi8Hg _g_QxZ8WCEdqI1bY5Lwi8Hg _g5JiUMWCEdqI1bY5Lwi8Hg _g_QxgMWCEdqI1bY5Lwi8Hg _Jp_1oGveEdq4DLWZOhbdEA _g_HAlsWCEdqI1bY5Lwi8Hg _g_QxhcWCEdqI1bY5Lwi8Hg _g_Qxi8WCEdqI1bY5Lwi8Hg _g_QxWcWCEdqI1bY5Lwi8Hg _g_QxYcWCEdqI1bY5Lwi8Hg _g_QxisWCEdqI1bY5Lwi8Hg _g_HAmcWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsfm8WCEdqI1bY5Lwi8Hg" source="UML::Actions::StructuredActions" references="_hCivEcWCEdqI1bY5Lwi8Hg _hCY-DsWCEdqI1bY5Lwi8Hg _hCiu_cWCEdqI1bY5Lwi8Hg _hCiu0MWCEdqI1bY5Lwi8Hg _hCivDsWCEdqI1bY5Lwi8Hg _hCivAsWCEdqI1bY5Lwi8Hg _hCivB8WCEdqI1bY5Lwi8Hg _hCY99MWCEdqI1bY5Lwi8Hg _hCivE8WCEdqI1bY5Lwi8Hg _hCY-HsWCEdqI1bY5Lwi8Hg _hCY-G8WCEdqI1bY5Lwi8Hg _hCY-AcWCEdqI1bY5Lwi8Hg _hCiu4MWCEdqI1bY5Lwi8Hg _hCiu3cWCEdqI1bY5Lwi8Hg _hCivCcWCEdqI1bY5Lwi8Hg _hCiu9cWCEdqI1bY5Lwi8Hg _hCiu1sWCEdqI1bY5Lwi8Hg _hCY9-MWCEdqI1bY5Lwi8Hg _hCivBMWCEdqI1bY5Lwi8Hg _hCY-BcWCEdqI1bY5Lwi8Hg _hCiu8MWCEdqI1bY5Lwi8Hg _hCiu9MWCEdqI1bY5Lwi8Hg _hCivDMWCEdqI1bY5Lwi8Hg _hCY-EsWCEdqI1bY5Lwi8Hg _hCiu-sWCEdqI1bY5Lwi8Hg _hCY97sWCEdqI1bY5Lwi8Hg _hCiu5MWCEdqI1bY5Lwi8Hg _hCY-FcWCEdqI1bY5Lwi8Hg _hCiu2cWCEdqI1bY5Lwi8Hg _hCiu-MWCEdqI1bY5Lwi8Hg _hCiu_8WCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsfnMWCEdqI1bY5Lwi8Hg" source="UML::CompositeStructures::Collaborations" references="_g9B8vMWCEdqI1bY5Lwi8Hg _g9B8sMWCEdqI1bY5Lwi8Hg _g9B8wMWCEdqI1bY5Lwi8Hg _g9B82sWCEdqI1bY5Lwi8Hg _g9B8zcWCEdqI1bY5Lwi8Hg _g9B848WCEdqI1bY5Lwi8Hg _KyaPMGveEdq4DLWZOhbdEA _g9B84MWCEdqI1bY5Lwi8Hg _6UV2QGwJEdq7X4sGURiZYA _g9B828WCEdqI1bY5Lwi8Hg _g9B87cWCEdqI1bY5Lwi8Hg _g9B80cWCEdqI1bY5Lwi8Hg _g9B86sWCEdqI1bY5Lwi8Hg _g9B878WCEdqI1bY5Lwi8Hg _g9B8xMWCEdqI1bY5Lwi8Hg _g9B8ycWCEdqI1bY5Lwi8Hg _g9B85cWCEdqI1bY5Lwi8Hg _g9B86MWCEdqI1bY5Lwi8Hg _g9B83sWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQsfncWCEdqI1bY5Lwi8Hg" source="UML::CommonBehaviors::BasicBehaviors" references="_g7r44sWCEdqI1bY5Lwi8Hg _g7iIEMWCEdqI1bY5Lwi8Hg _g7iIAsWCEdqI1bY5Lwi8Hg _TUPtYGveEdq4DLWZOhbdEA _g7Y-FMWCEdqI1bY5Lwi8Hg _rHT3YKOsEdqi_5gqUMOQtA _g7iH88WCEdqI1bY5Lwi8Hg _g7iIJMWCEdqI1bY5Lwi8Hg _g7iIFcWCEdqI1bY5Lwi8Hg _g7Y-F8WCEdqI1bY5Lwi8Hg _g7iIKMWCEdqI1bY5Lwi8Hg _g7Y-CMWCEdqI1bY5Lwi8Hg _g7iH68WCEdqI1bY5Lwi8Hg _g7iIHcWCEdqI1bY5Lwi8Hg _g7Y-BMWCEdqI1bY5Lwi8Hg _g7Y-EMWCEdqI1bY5Lwi8Hg _iY7sMGvsEdqG6fBIPwe-mw _g7r458WCEdqI1bY5Lwi8Hg _ChRfcGveEdq4DLWZOhbdEA _g7iH58WCEdqI1bY5Lwi8Hg _g7iIJcWCEdqI1bY5Lwi8Hg _g7iIKsWCEdqI1bY5Lwi8Hg _g7r45cWCEdqI1bY5Lwi8Hg _g7iIC8WCEdqI1bY5Lwi8Hg _g7Y-H8WCEdqI1bY5Lwi8Hg _g7iIF8WCEdqI1bY5Lwi8Hg _g7iH-sWCEdqI1bY5Lwi8Hg _g7iIGsWCEdqI1bY5Lwi8Hg _g7iH98WCEdqI1bY5Lwi8Hg _g7iIDcWCEdqI1bY5Lwi8Hg _g7iIEsWCEdqI1bY5Lwi8Hg _g7iIIcWCEdqI1bY5Lwi8Hg _g7iIIMWCEdqI1bY5Lwi8Hg _g7r44MWCEdqI1bY5Lwi8Hg _g7iIG8WCEdqI1bY5Lwi8Hg _g7Y-AcWCEdqI1bY5Lwi8Hg _g7Y-DMWCEdqI1bY5Lwi8Hg _g7Y-I8WCEdqI1bY5Lwi8Hg _g7iH_sWCEdqI1bY5Lwi8Hg _g7iH8MWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQ2QkMWCEdqI1bY5Lwi8Hg" source="UML::Classes::Dependencies" references="_g1H95MWCEdqI1bY5Lwi8Hg _g8lQycWCEdqI1bY5Lwi8Hg _g8bf5cWCEdqI1bY5Lwi8Hg _g2BWG8WCEdqI1bY5Lwi8Hg _g8bf58WCEdqI1bY5Lwi8Hg _g8Ru8MWCEdqI1bY5Lwi8Hg _6UV2QGwJEdq7X4sGURiZYA _g8bfx8WCEdqI1bY5Lwi8Hg _g2eB3cWCEdqI1bY5Lwi8Hg _g8bfzsWCEdqI1bY5Lwi8Hg _g8Ru-sWCEdqI1bY5Lwi8Hg _g8bfysWCEdqI1bY5Lwi8Hg _jKxnwGwLEdq7X4sGURiZYA _g8bfwMWCEdqI1bY5Lwi8Hg _g8lQw8WCEdqI1bY5Lwi8Hg _g8bf08WCEdqI1bY5Lwi8Hg _ZiwkoGwLEdq7X4sGURiZYA _g8bfxMWCEdqI1bY5Lwi8Hg _rEDGkGwKEdq7X4sGURiZYA _g8Ru88WCEdqI1bY5Lwi8Hg _g8bf18WCEdqI1bY5Lwi8Hg _g8lQxcWCEdqI1bY5Lwi8Hg _g8Ru7cWCEdqI1bY5Lwi8Hg _csVgUGvtEdqG6fBIPwe-mw _g8bf4MWCEdqI1bY5Lwi8Hg _g8lQwMWCEdqI1bY5Lwi8Hg _g8bf4sWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQ2QkcWCEdqI1bY5Lwi8Hg" source="UML::Classes::Interfaces" references="_g8lQ2MWCEdqI1bY5Lwi8Hg _g8lQ8cWCEdqI1bY5Lwi8Hg _g8uaxcWCEdqI1bY5Lwi8Hg _g8lQ3MWCEdqI1bY5Lwi8Hg _g8uas8WCEdqI1bY5Lwi8Hg _g8uavMWCEdqI1bY5Lwi8Hg _M4X2IGveEdq4DLWZOhbdEA _g8uausWCEdqI1bY5Lwi8Hg _g8lQ7MWCEdqI1bY5Lwi8Hg _g8uasMWCEdqI1bY5Lwi8Hg _g8uatsWCEdqI1bY5Lwi8Hg _iY7sMGvsEdqG6fBIPwe-mw _g8uawsWCEdqI1bY5Lwi8Hg _g8lQ5sWCEdqI1bY5Lwi8Hg _g8lQ1MWCEdqI1bY5Lwi8Hg _g8lQ4sWCEdqI1bY5Lwi8Hg _g8lQ0MWCEdqI1bY5Lwi8Hg _g8uaysWCEdqI1bY5Lwi8Hg _g8uayMWCEdqI1bY5Lwi8Hg _g8uav8WCEdqI1bY5Lwi8Hg _8Ugn8GvtEdqG6fBIPwe-mw _l2mXcHLzEdqziYxiZo0YtA"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQ2QksWCEdqI1bY5Lwi8Hg" source="UML::Activities::FundamentalActivities" references="_g71qNsWCEdqI1bY5Lwi8Hg _g7-z8sWCEdqI1bY5Lwi8Hg _g7-z88WCEdqI1bY5Lwi8Hg _g7-z18WCEdqI1bY5Lwi8Hg _g7-z9cWCEdqI1bY5Lwi8Hg _g7-z0MWCEdqI1bY5Lwi8Hg _g71qPMWCEdqI1bY5Lwi8Hg _g7-z7MWCEdqI1bY5Lwi8Hg _g7-z8MWCEdqI1bY5Lwi8Hg _g7-z6MWCEdqI1bY5Lwi8Hg _g7-z08WCEdqI1bY5Lwi8Hg _g71qQMWCEdqI1bY5Lwi8Hg _g7-z28WCEdqI1bY5Lwi8Hg _g7-z5cWCEdqI1bY5Lwi8Hg _g7-z38WCEdqI1bY5Lwi8Hg _g71p8MWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQ2Qk8WCEdqI1bY5Lwi8Hg" source="UML::Activities::BasicActivities" references="_g71qNsWCEdqI1bY5Lwi8Hg _g9LG9cWCEdqI1bY5Lwi8Hg _g9LGrcWCEdqI1bY5Lwi8Hg _g9U3uMWCEdqI1bY5Lwi8Hg _g9U3tcWCEdqI1bY5Lwi8Hg _g9LG8cWCEdqI1bY5Lwi8Hg _g9LHE8WCEdqI1bY5Lwi8Hg _g9LGvsWCEdqI1bY5Lwi8Hg _g9U3vcWCEdqI1bY5Lwi8Hg _g9LG5cWCEdqI1bY5Lwi8Hg _g9LG0MWCEdqI1bY5Lwi8Hg _g9U3s8WCEdqI1bY5Lwi8Hg _g9LHF8WCEdqI1bY5Lwi8Hg _g7-z0MWCEdqI1bY5Lwi8Hg _g9LGusWCEdqI1bY5Lwi8Hg _g9U3ssWCEdqI1bY5Lwi8Hg _g9LGqsWCEdqI1bY5Lwi8Hg _g9LGtsWCEdqI1bY5Lwi8Hg _g9LGysWCEdqI1bY5Lwi8Hg _g9LGwsWCEdqI1bY5Lwi8Hg _g9LG3MWCEdqI1bY5Lwi8Hg _g9LGxsWCEdqI1bY5Lwi8Hg _g9U3q8WCEdqI1bY5Lwi8Hg _g9U3qMWCEdqI1bY5Lwi8Hg _g9U3u8WCEdqI1bY5Lwi8Hg _g9U3tMWCEdqI1bY5Lwi8Hg _g9U3scWCEdqI1bY5Lwi8Hg _g7-z5cWCEdqI1bY5Lwi8Hg _g9U3tsWCEdqI1bY5Lwi8Hg _g9U3r8WCEdqI1bY5Lwi8Hg _g9LHB8WCEdqI1bY5Lwi8Hg _g7r5AcWCEdqI1bY5Lwi8Hg _g9LGoMWCEdqI1bY5Lwi8Hg _g9LHD8WCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQ2QlMWCEdqI1bY5Lwi8Hg" source="UML::Classes::AssociationClasses" references="_hE7Ug8WCEdqI1bY5Lwi8Hg _hE7Uh8WCEdqI1bY5Lwi8Hg _Jp_1oGveEdq4DLWZOhbdEA _hE7Uf8WCEdqI1bY5Lwi8Hg _hE7Ud8WCEdqI1bY5Lwi8Hg _hE7UcMWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQ2QlcWCEdqI1bY5Lwi8Hg" source="UML::Deployments::ComponentDeployments" references="_hEnyg8WCEdqI1bY5Lwi8Hg _hEnyh8WCEdqI1bY5Lwi8Hg _hEnydsWCEdqI1bY5Lwi8Hg _hEnyj8WCEdqI1bY5Lwi8Hg _hEnyi8WCEdqI1bY5Lwi8Hg _hEnyesWCEdqI1bY5Lwi8Hg _g_HAlsWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQ2QlsWCEdqI1bY5Lwi8Hg" source="UML::Components::BasicComponents" references="_g-92ZsWCEdqI1bY5Lwi8Hg _g-92vsWCEdqI1bY5Lwi8Hg _g-92bcWCEdqI1bY5Lwi8Hg _g-92fcWCEdqI1bY5Lwi8Hg _g-92usWCEdqI1bY5Lwi8Hg _g-92dcWCEdqI1bY5Lwi8Hg _g_HAU8WCEdqI1bY5Lwi8Hg _g_HAVMWCEdqI1bY5Lwi8Hg _g_HAUMWCEdqI1bY5Lwi8Hg _g-92ccWCEdqI1bY5Lwi8Hg _g-92acWCEdqI1bY5Lwi8Hg _g8ua2sWCEdqI1bY5Lwi8Hg _g-92sMWCEdqI1bY5Lwi8Hg _g-92vMWCEdqI1bY5Lwi8Hg _g-92kcWCEdqI1bY5Lwi8Hg _g-92vcWCEdqI1bY5Lwi8Hg _DAbfwa69EdqjppZik4kD8A _g-92u8WCEdqI1bY5Lwi8Hg _g-92i8WCEdqI1bY5Lwi8Hg _g-92hcWCEdqI1bY5Lwi8Hg _g_HAUsWCEdqI1bY5Lwi8Hg _g-92mMWCEdqI1bY5Lwi8Hg _g-92lMWCEdqI1bY5Lwi8Hg _g-92tMWCEdqI1bY5Lwi8Hg _g-92rMWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hQ_agMWCEdqI1bY5Lwi8Hg" source="UML::Activities::ExtraStructuredActivities" references="_hEeomMWCEdqI1bY5Lwi8Hg _hEeoi8WCEdqI1bY5Lwi8Hg _hEeo0MWCEdqI1bY5Lwi8Hg _hEeooMWCEdqI1bY5Lwi8Hg _hEeoycWCEdqI1bY5Lwi8Hg _hEeoy8WCEdqI1bY5Lwi8Hg _hEeonMWCEdqI1bY5Lwi8Hg _hEeolMWCEdqI1bY5Lwi8Hg _hEeogMWCEdqI1bY5Lwi8Hg _hEeog8WCEdqI1bY5Lwi8Hg _hEeoh8WCEdqI1bY5Lwi8Hg _hEeou8WCEdqI1bY5Lwi8Hg _hEeoz8WCEdqI1bY5Lwi8Hg _hEeozsWCEdqI1bY5Lwi8Hg _hEeozcWCEdqI1bY5Lwi8Hg _hEeor8WCEdqI1bY5Lwi8Hg _hEeokcWCEdqI1bY5Lwi8Hg _hEeozMWCEdqI1bY5Lwi8Hg _hEeot8WCEdqI1bY5Lwi8Hg _hEeos8WCEdqI1bY5Lwi8Hg _hEeov8WCEdqI1bY5Lwi8Hg _hEeox8WCEdqI1bY5Lwi8Hg _hEeoyMWCEdqI1bY5Lwi8Hg _g8IlAsWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hRJLgMWCEdqI1bY5Lwi8Hg" source="UML::AuxiliaryConstructs::Models" references="_NVhqMGv0Edq7X4sGURiZYA _hC1p3MWCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hRS8gMWCEdqI1bY5Lwi8Hg" source="InfrastructureLibrary::Core::PrimitiveTypes" references="_XqvEIGvsEdqG6fBIPwe-mw _dRZxsGvsEdqG6fBIPwe-mw _aAyVgGvsEdqG6fBIPwe-mw _UdivYGvsEdqG6fBIPwe-mw"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hRcGcMWCEdqI1bY5Lwi8Hg" source="UML::CompositeStructures::StructuredActivities" references="_g7-z-8WCEdqI1bY5Lwi8Hg"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hSCjYMWCEdqI1bY5Lwi8Hg" source="UML::CompositeStructures::StructuredClasses" references="_00owUGvdEdq4DLWZOhbdEA"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hSCjYcWCEdqI1bY5Lwi8Hg" source="UML::AuxiliaryConstructs::Profiles" references="_hCPM68WCEdqI1bY5Lwi8Hg _2QuT0GvdEdq4DLWZOhbdEA"/>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hSCjYsWCEdqI1bY5Lwi8Hg" source="UML::Components::PackagingComponents" references="_DAbfwa69EdqjppZik4kD8A _hEnycMWCEdqI1bY5Lwi8Hg _hEeo0sWCEdqI1bY5Lwi8Hg _hEnycsWCEdqI1bY5Lwi8Hg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NC6F0NxmEdqEPrOCkNZ5Vg" source="capabilities">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NC6F0dxmEdqEPrOCkNZ5Vg" source="UML::Classes::PowerTypes" references="_M3uwsNxmEdqEPrOCkNZ5Vg _6UV2QGwJEdq7X4sGURiZYA _M3uwk9xmEdqEPrOCkNZ5Vg _M3uwsdxmEdqEPrOCkNZ5Vg _M3uwmdxmEdqEPrOCkNZ5Vg _M3uwltxmEdqEPrOCkNZ5Vg _M3uwndxmEdqEPrOCkNZ5Vg _M3uwpNxmEdqEPrOCkNZ5Vg _M3k_49xmEdqEPrOCkNZ5Vg _C7AF4GwREdq14q0ETb1t3g _M3uwrNxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD20NxmEdqEPrOCkNZ5Vg" source="UML::Interactions::BasicInteractions" references="_MzaRxdxmEdqEPrOCkNZ5Vg _MzaRhNxmEdqEPrOCkNZ5Vg _MzaRWdxmEdqEPrOCkNZ5Vg _MzkCy9xmEdqEPrOCkNZ5Vg _MztMMNxmEdqEPrOCkNZ5Vg _MztMNdxmEdqEPrOCkNZ5Vg _gfgNwGveEdq4DLWZOhbdEA _MzkC3dxmEdqEPrOCkNZ5Vg _MztMY9xmEdqEPrOCkNZ5Vg _MzkC4NxmEdqEPrOCkNZ5Vg _MztMa9xmEdqEPrOCkNZ5Vg _MzaRtdxmEdqEPrOCkNZ5Vg _MztMUNxmEdqEPrOCkNZ5Vg _MzaRfdxmEdqEPrOCkNZ5Vg _MzaRVdxmEdqEPrOCkNZ5Vg _MzkCpdxmEdqEPrOCkNZ5Vg _MztMg9xmEdqEPrOCkNZ5Vg _MztMjNxmEdqEPrOCkNZ5Vg _MzkCVdxmEdqEPrOCkNZ5Vg _MztMUdxmEdqEPrOCkNZ5Vg _MztMWNxmEdqEPrOCkNZ5Vg _MzaRddxmEdqEPrOCkNZ5Vg _MztMO9xmEdqEPrOCkNZ5Vg _MzaRudxmEdqEPrOCkNZ5Vg _MztMW9xmEdqEPrOCkNZ5Vg _MztMiNxmEdqEPrOCkNZ5Vg _MzaRyNxmEdqEPrOCkNZ5Vg _MzkCkdxmEdqEPrOCkNZ5Vg _MztMbtxmEdqEPrOCkNZ5Vg _MzkCXdxmEdqEPrOCkNZ5Vg _MzaRUdxmEdqEPrOCkNZ5Vg _MzaRedxmEdqEPrOCkNZ5Vg _MzaRZdxmEdqEPrOCkNZ5Vg _Y_jskGvtEdqG6fBIPwe-mw _MztMT9xmEdqEPrOCkNZ5Vg _MztMf9xmEdqEPrOCkNZ5Vg _MzkCaNxmEdqEPrOCkNZ5Vg _MztMaNxmEdqEPrOCkNZ5Vg _MzkCb9xmEdqEPrOCkNZ5Vg _MzaRwdxmEdqEPrOCkNZ5Vg _MztMWdxmEdqEPrOCkNZ5Vg _MzkCUtxmEdqEPrOCkNZ5Vg _MztMcdxmEdqEPrOCkNZ5Vg _MztMj9xmEdqEPrOCkNZ5Vg _MzkCStxmEdqEPrOCkNZ5Vg _MztMetxmEdqEPrOCkNZ5Vg _MzkCiNxmEdqEPrOCkNZ5Vg _MztMedxmEdqEPrOCkNZ5Vg _MzkC2dxmEdqEPrOCkNZ5Vg _MzkCntxmEdqEPrOCkNZ5Vg _MzaRsdxmEdqEPrOCkNZ5Vg _MzaRiNxmEdqEPrOCkNZ5Vg _MztMVtxmEdqEPrOCkNZ5Vg _MztMdtxmEdqEPrOCkNZ5Vg _MzkChNxmEdqEPrOCkNZ5Vg _MzkCd9xmEdqEPrOCkNZ5Vg _MztMkNxmEdqEPrOCkNZ5Vg _MztMTdxmEdqEPrOCkNZ5Vg _MzkCtNxmEdqEPrOCkNZ5Vg _MzaRXdxmEdqEPrOCkNZ5Vg _MztMRNxmEdqEPrOCkNZ5Vg _MztMctxmEdqEPrOCkNZ5Vg _MzkCfdxmEdqEPrOCkNZ5Vg _MzaRvdxmEdqEPrOCkNZ5Vg _MzkCmtxmEdqEPrOCkNZ5Vg _MzkCi9xmEdqEPrOCkNZ5Vg _MzkCqdxmEdqEPrOCkNZ5Vg _MztMP9xmEdqEPrOCkNZ5Vg _MztMSdxmEdqEPrOCkNZ5Vg _MzaRqtxmEdqEPrOCkNZ5Vg _MzkCsNxmEdqEPrOCkNZ5Vg _MztMZtxmEdqEPrOCkNZ5Vg _MztMgtxmEdqEPrOCkNZ5Vg _MzkCQNxmEdqEPrOCkNZ5Vg _MztMStxmEdqEPrOCkNZ5Vg _MzkC29xmEdqEPrOCkNZ5Vg _MztMhtxmEdqEPrOCkNZ5Vg _MztMN9xmEdqEPrOCkNZ5Vg _MztMZ9xmEdqEPrOCkNZ5Vg _MztMMtxmEdqEPrOCkNZ5Vg _MztMddxmEdqEPrOCkNZ5Vg _MztMQdxmEdqEPrOCkNZ5Vg _MztMbNxmEdqEPrOCkNZ5Vg _MzkCZdxmEdqEPrOCkNZ5Vg _MzkCodxmEdqEPrOCkNZ5Vg _MzkCu9xmEdqEPrOCkNZ5Vg _MztMRtxmEdqEPrOCkNZ5Vg _MzkCTtxmEdqEPrOCkNZ5Vg _MztMONxmEdqEPrOCkNZ5Vg _MzaRjNxmEdqEPrOCkNZ5Vg _MzkCYdxmEdqEPrOCkNZ5Vg _MztMXtxmEdqEPrOCkNZ5Vg _MzkCt9xmEdqEPrOCkNZ5Vg _MztMfdxmEdqEPrOCkNZ5Vg _MzkCvtxmEdqEPrOCkNZ5Vg _MztMYNxmEdqEPrOCkNZ5Vg _MzkCc9xmEdqEPrOCkNZ5Vg _MzaRYdxmEdqEPrOCkNZ5Vg _MzaRrdxmEdqEPrOCkNZ5Vg _MztMPNxmEdqEPrOCkNZ5Vg _MztMU9xmEdqEPrOCkNZ5Vg _MztMbdxmEdqEPrOCkNZ5Vg _MzkCrNxmEdqEPrOCkNZ5Vg _MzkCWdxmEdqEPrOCkNZ5Vg _MzkC4txmEdqEPrOCkNZ5Vg _MzaRp9xmEdqEPrOCkNZ5Vg _MztMi9xmEdqEPrOCkNZ5Vg _MzkCl9xmEdqEPrOCkNZ5Vg _MzkCgdxmEdqEPrOCkNZ5Vg _MzaRgdxmEdqEPrOCkNZ5Vg _MzkCbNxmEdqEPrOCkNZ5Vg _MztMZdxmEdqEPrOCkNZ5Vg _MzkCRNxmEdqEPrOCkNZ5Vg _MzaRcdxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD20dxmEdqEPrOCkNZ5Vg" source="InfrastructureLibrary::Core::Constructs" references="_MtczMtxmEdqEPrOCkNZ5Vg _Ms2Wb9xmEdqEPrOCkNZ5Vg _MtTCXNxmEdqEPrOCkNZ5Vg _MsGvrdxmEdqEPrOCkNZ5Vg _MtmkT9xmEdqEPrOCkNZ5Vg _MstMUNxmEdqEPrOCkNZ5Vg _MsGvdNxmEdqEPrOCkNZ5Vg _MtJ4itxmEdqEPrOCkNZ5Vg _MtczStxmEdqEPrOCkNZ5Vg _MsjbktxmEdqEPrOCkNZ5Vg _MsQguNxmEdqEPrOCkNZ5Vg _MtmkatxmEdqEPrOCkNZ5Vg __1ap4HLzEdqziYxiZo0YtA _MtmkU9xmEdqEPrOCkNZ5Vg _MsjbZ9xmEdqEPrOCkNZ5Vg _MtmkOdxmEdqEPrOCkNZ5Vg _AwvxoGwNEdq7X4sGURiZYA _MtAHRNxmEdqEPrOCkNZ5Vg _OQcbgGwOEdq7X4sGURiZYA _MstMjdxmEdqEPrOCkNZ5Vg _Msjbl9xmEdqEPrOCkNZ5Vg _MtmkPNxmEdqEPrOCkNZ5Vg _-cvRAGvzEdq7X4sGURiZYA _MstMrNxmEdqEPrOCkNZ5Vg _MtAHs9xmEdqEPrOCkNZ5Vg _MtmkltxmEdqEPrOCkNZ5Vg _MtmkS9xmEdqEPrOCkNZ5Vg _MsQggtxmEdqEPrOCkNZ5Vg _6UV2QGwJEdq7X4sGURiZYA _MtmkXNxmEdqEPrOCkNZ5Vg _MsaRbtxmEdqEPrOCkNZ5Vg _csVgUGvtEdqG6fBIPwe-mw _MsGvbdxmEdqEPrOCkNZ5Vg _MsGvm9xmEdqEPrOCkNZ5Vg _MtTCNdxmEdqEPrOCkNZ5Vg _MtTCT9xmEdqEPrOCkNZ5Vg _MtJ4g9xmEdqEPrOCkNZ5Vg _MsaRatxmEdqEPrOCkNZ5Vg _M4X2IGveEdq4DLWZOhbdEA _MtAHndxmEdqEPrOCkNZ5Vg _MsQgl9xmEdqEPrOCkNZ5Vg _Ms2Wa9xmEdqEPrOCkNZ5Vg _MtmkhNxmEdqEPrOCkNZ5Vg _MstMlNxmEdqEPrOCkNZ5Vg _MtmkeNxmEdqEPrOCkNZ5Vg _MtczSNxmEdqEPrOCkNZ5Vg _MtmkTdxmEdqEPrOCkNZ5Vg _Ms2Wf9xmEdqEPrOCkNZ5Vg _V6vuYGwGEdq7X4sGURiZYA _MtAHftxmEdqEPrOCkNZ5Vg _MtAHUNxmEdqEPrOCkNZ5Vg _MsQgb9xmEdqEPrOCkNZ5Vg _MsQgsNxmEdqEPrOCkNZ5Vg _MsGvk9xmEdqEPrOCkNZ5Vg _MtAHrNxmEdqEPrOCkNZ5Vg _Msjbb9xmEdqEPrOCkNZ5Vg _MtmkaNxmEdqEPrOCkNZ5Vg _SnNPIGwIEdq7X4sGURiZYA _Msjbc9xmEdqEPrOCkNZ5Vg _MstMU9xmEdqEPrOCkNZ5Vg _MtAHVNxmEdqEPrOCkNZ5Vg _MtJ4fNxmEdqEPrOCkNZ5Vg _MtAHh9xmEdqEPrOCkNZ5Vg _MsaRkNxmEdqEPrOCkNZ5Vg _MsQgnNxmEdqEPrOCkNZ5Vg _MtTCZ9xmEdqEPrOCkNZ5Vg _MsaRctxmEdqEPrOCkNZ5Vg _MtczNdxmEdqEPrOCkNZ5Vg _MtmkctxmEdqEPrOCkNZ5Vg _MtJ4U9xmEdqEPrOCkNZ5Vg _Mtmkc9xmEdqEPrOCkNZ5Vg _MtAHmdxmEdqEPrOCkNZ5Vg _Ms2WXNxmEdqEPrOCkNZ5Vg _MtmkW9xmEdqEPrOCkNZ5Vg _MsjbrtxmEdqEPrOCkNZ5Vg _MtmkPdxmEdqEPrOCkNZ5Vg _MtTCVNxmEdqEPrOCkNZ5Vg _MtmkfdxmEdqEPrOCkNZ5Vg _MtmkidxmEdqEPrOCkNZ5Vg _MsaRpNxmEdqEPrOCkNZ5Vg _MtmkUdxmEdqEPrOCkNZ5Vg _MsjbYdxmEdqEPrOCkNZ5Vg _MtAHWtxmEdqEPrOCkNZ5Vg _MtmkWtxmEdqEPrOCkNZ5Vg _MsGvZtxmEdqEPrOCkNZ5Vg _MtTCWdxmEdqEPrOCkNZ5Vg _Mrz0dtxmEdqEPrOCkNZ5Vg _Ms2WQtxmEdqEPrOCkNZ5Vg _MtTCOdxmEdqEPrOCkNZ5Vg _MtTCa9xmEdqEPrOCkNZ5Vg _MtmkVtxmEdqEPrOCkNZ5Vg _MtAHYtxmEdqEPrOCkNZ5Vg _MtczW9xmEdqEPrOCkNZ5Vg _MtJ4QNxmEdqEPrOCkNZ5Vg _MtczT9xmEdqEPrOCkNZ5Vg _MstMoNxmEdqEPrOCkNZ5Vg _Mtmkh9xmEdqEPrOCkNZ5Vg _MtmketxmEdqEPrOCkNZ5Vg _AyM_oGwMEdq7X4sGURiZYA _MtAHXdxmEdqEPrOCkNZ5Vg _MsQgodxmEdqEPrOCkNZ5Vg _MsjbXdxmEdqEPrOCkNZ5Vg _MtmkQ9xmEdqEPrOCkNZ5Vg _I6N3UGwGEdq7X4sGURiZYA _DH62EKPAEdqi_5gqUMOQtA _MtczR9xmEdqEPrOCkNZ5Vg _MtJ4Y9xmEdqEPrOCkNZ5Vg _Mrz0etxmEdqEPrOCkNZ5Vg _MsGvpdxmEdqEPrOCkNZ5Vg _Ms2WntxmEdqEPrOCkNZ5Vg _MtmkMtxmEdqEPrOCkNZ5Vg _MtTCPdxmEdqEPrOCkNZ5Vg _MsjbttxmEdqEPrOCkNZ5Vg _MtmkY9xmEdqEPrOCkNZ5Vg _MstMX9xmEdqEPrOCkNZ5Vg _RPl78GwIEdq7X4sGURiZYA _MtJ4T9xmEdqEPrOCkNZ5Vg _MsjbjdxmEdqEPrOCkNZ5Vg _MsjbUNxmEdqEPrOCkNZ5Vg _MstMkNxmEdqEPrOCkNZ5Vg _MtczQNxmEdqEPrOCkNZ5Vg _Ms2Wc9xmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg _Ms2WmdxmEdqEPrOCkNZ5Vg _MtAHdtxmEdqEPrOCkNZ5Vg _MtczUNxmEdqEPrOCkNZ5Vg _MtczRtxmEdqEPrOCkNZ5Vg _ChRfcGveEdq4DLWZOhbdEA _MtmkZ9xmEdqEPrOCkNZ5Vg _Ms2WYtxmEdqEPrOCkNZ5Vg _MsGvsdxmEdqEPrOCkNZ5Vg _Ms2WVtxmEdqEPrOCkNZ5Vg _MtmkjNxmEdqEPrOCkNZ5Vg _MtczTdxmEdqEPrOCkNZ5Vg _MsGvgtxmEdqEPrOCkNZ5Vg _MtJ4ldxmEdqEPrOCkNZ5Vg _MtTCQdxmEdqEPrOCkNZ5Vg _MtczMdxmEdqEPrOCkNZ5Vg _MtmkRtxmEdqEPrOCkNZ5Vg _KyaPMGveEdq4DLWZOhbdEA _MtAHi9xmEdqEPrOCkNZ5Vg _MtmkdtxmEdqEPrOCkNZ5Vg _MtmkP9xmEdqEPrOCkNZ5Vg _MtTCMdxmEdqEPrOCkNZ5Vg _MtmkNdxmEdqEPrOCkNZ5Vg _MsGvYNxmEdqEPrOCkNZ5Vg _MtmkgNxmEdqEPrOCkNZ5Vg _MtmkbNxmEdqEPrOCkNZ5Vg _MsGvidxmEdqEPrOCkNZ5Vg _MtczXNxmEdqEPrOCkNZ5Vg _MsQgZ9xmEdqEPrOCkNZ5Vg _MtJ4b9xmEdqEPrOCkNZ5Vg _MtJ4h9xmEdqEPrOCkNZ5Vg _MtJ4mdxmEdqEPrOCkNZ5Vg _ZiwkoGwLEdq7X4sGURiZYA _MtJ4RNxmEdqEPrOCkNZ5Vg _MsjbnNxmEdqEPrOCkNZ5Vg _MtJ4aNxmEdqEPrOCkNZ5Vg _rHT3YKOsEdqi_5gqUMOQtA _MtmkXdxmEdqEPrOCkNZ5Vg _MstMW9xmEdqEPrOCkNZ5Vg _MstMV9xmEdqEPrOCkNZ5Vg _MtmkYdxmEdqEPrOCkNZ5Vg _MsQgetxmEdqEPrOCkNZ5Vg _MtJ4f9xmEdqEPrOCkNZ5Vg _MsQgkdxmEdqEPrOCkNZ5Vg _Ms2WStxmEdqEPrOCkNZ5Vg _MsQgqNxmEdqEPrOCkNZ5Vg _Mtmka9xmEdqEPrOCkNZ5Vg _MtmkZtxmEdqEPrOCkNZ5Vg _Ms2We9xmEdqEPrOCkNZ5Vg _MtAHjtxmEdqEPrOCkNZ5Vg _MstMmNxmEdqEPrOCkNZ5Vg _Mr9lcNxmEdqEPrOCkNZ5Vg _MtAHldxmEdqEPrOCkNZ5Vg _MsjbqtxmEdqEPrOCkNZ5Vg _MtJ4jtxmEdqEPrOCkNZ5Vg _MtmkNtxmEdqEPrOCkNZ5Vg _MsGve9xmEdqEPrOCkNZ5Vg _MsQgf9xmEdqEPrOCkNZ5Vg _MsaRetxmEdqEPrOCkNZ5Vg _MtAHQNxmEdqEPrOCkNZ5Vg _MsaRiNxmEdqEPrOCkNZ5Vg _MtAHcdxmEdqEPrOCkNZ5Vg _MtmkN9xmEdqEPrOCkNZ5Vg _Mtmkf9xmEdqEPrOCkNZ5Vg _Ms2WjtxmEdqEPrOCkNZ5Vg _Msjbg9xmEdqEPrOCkNZ5Vg _MtmkUtxmEdqEPrOCkNZ5Vg _MtTCY9xmEdqEPrOCkNZ5Vg _MtczSdxmEdqEPrOCkNZ5Vg _MtmkQNxmEdqEPrOCkNZ5Vg _MtJ4V9xmEdqEPrOCkNZ5Vg _MstMgNxmEdqEPrOCkNZ5Vg _MtTCSNxmEdqEPrOCkNZ5Vg _MtAHSNxmEdqEPrOCkNZ5Vg _MtJ4X9xmEdqEPrOCkNZ5Vg _MstMh9xmEdqEPrOCkNZ5Vg _MsjbstxmEdqEPrOCkNZ5Vg _MtmkcdxmEdqEPrOCkNZ5Vg _MtczMNxmEdqEPrOCkNZ5Vg _Gjgl0GveEdq4DLWZOhbdEA _MsaRftxmEdqEPrOCkNZ5Vg _MtczQ9xmEdqEPrOCkNZ5Vg _kl90MGvbEdq4DLWZOhbdEA _MtAHbNxmEdqEPrOCkNZ5Vg _MtmkmdxmEdqEPrOCkNZ5Vg _MstMudxmEdqEPrOCkNZ5Vg _MstMpNxmEdqEPrOCkNZ5Vg _JBgfoKPAEdqi_5gqUMOQtA _MtmkgtxmEdqEPrOCkNZ5Vg _MtczTNxmEdqEPrOCkNZ5Vg _Msjbe9xmEdqEPrOCkNZ5Vg _MstMqNxmEdqEPrOCkNZ5Vg _Ms2WlNxmEdqEPrOCkNZ5Vg _MtczOdxmEdqEPrOCkNZ5Vg _MtmklNxmEdqEPrOCkNZ5Vg _MsjbeNxmEdqEPrOCkNZ5Vg _MsjbiNxmEdqEPrOCkNZ5Vg _MtczPdxmEdqEPrOCkNZ5Vg _Msjbp9xmEdqEPrOCkNZ5Vg _MtAHV9xmEdqEPrOCkNZ5Vg _MsQga9xmEdqEPrOCkNZ5Vg _Ms2WRtxmEdqEPrOCkNZ5Vg _MtczWdxmEdqEPrOCkNZ5Vg _Mtmkj9xmEdqEPrOCkNZ5Vg _Ms2WkdxmEdqEPrOCkNZ5Vg _MtczVdxmEdqEPrOCkNZ5Vg _ynRtoGvtEdqG6fBIPwe-mw _MtczRdxmEdqEPrOCkNZ5Vg _MstMxdxmEdqEPrOCkNZ5Vg _MtmkZNxmEdqEPrOCkNZ5Vg _jKxnwGwLEdq7X4sGURiZYA _MtmkkdxmEdqEPrOCkNZ5Vg _Ms2Wi9xmEdqEPrOCkNZ5Vg _MtczUtxmEdqEPrOCkNZ5Vg _MsaRgdxmEdqEPrOCkNZ5Vg _00owUGvdEdq4DLWZOhbdEA _MstMwNxmEdqEPrOCkNZ5Vg _MsaRYNxmEdqEPrOCkNZ5Vg _MtmkitxmEdqEPrOCkNZ5Vg _MtmkbtxmEdqEPrOCkNZ5Vg _MstMitxmEdqEPrOCkNZ5Vg _MtTCdtxmEdqEPrOCkNZ5Vg _MtmkMNxmEdqEPrOCkNZ5Vg _MtmkWNxmEdqEPrOCkNZ5Vg _MtmkWdxmEdqEPrOCkNZ5Vg _Mrz0ctxmEdqEPrOCkNZ5Vg _MsjbWdxmEdqEPrOCkNZ5Vg _MstMg9xmEdqEPrOCkNZ5Vg _MtmkXtxmEdqEPrOCkNZ5Vg _Msjbf9xmEdqEPrOCkNZ5Vg _MstMsdxmEdqEPrOCkNZ5Vg _MtmkOtxmEdqEPrOCkNZ5Vg _MtmkYNxmEdqEPrOCkNZ5Vg _MtAHr9xmEdqEPrOCkNZ5Vg _Mtmkd9xmEdqEPrOCkNZ5Vg _MsQglNxmEdqEPrOCkNZ5Vg _MtJ4W9xmEdqEPrOCkNZ5Vg _Jp_1oGveEdq4DLWZOhbdEA _MtczXtxmEdqEPrOCkNZ5Vg _MsaRmtxmEdqEPrOCkNZ5Vg _MtAHZ9xmEdqEPrOCkNZ5Vg _MtTCYNxmEdqEPrOCkNZ5Vg _MtAHTNxmEdqEPrOCkNZ5Vg _MsQgc9xmEdqEPrOCkNZ5Vg _MtmkSNxmEdqEPrOCkNZ5Vg _MtmkZdxmEdqEPrOCkNZ5Vg _MstMnNxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD20txmEdqEPrOCkNZ5Vg" source="UML::Classes::Kernel" references="_MtczMtxmEdqEPrOCkNZ5Vg _Ms2Wb9xmEdqEPrOCkNZ5Vg _MtTCXNxmEdqEPrOCkNZ5Vg _MsGvrdxmEdqEPrOCkNZ5Vg _MtmkT9xmEdqEPrOCkNZ5Vg _MstMUNxmEdqEPrOCkNZ5Vg _MxUmptxmEdqEPrOCkNZ5Vg _MsGvdNxmEdqEPrOCkNZ5Vg _MtJ4itxmEdqEPrOCkNZ5Vg _MtczStxmEdqEPrOCkNZ5Vg _MxUmldxmEdqEPrOCkNZ5Vg _MsjbktxmEdqEPrOCkNZ5Vg _MsQguNxmEdqEPrOCkNZ5Vg _MtmkatxmEdqEPrOCkNZ5Vg __1ap4HLzEdqziYxiZo0YtA _MtmkU9xmEdqEPrOCkNZ5Vg _MsjbZ9xmEdqEPrOCkNZ5Vg _MtmkOdxmEdqEPrOCkNZ5Vg _Mu8BDtxmEdqEPrOCkNZ5Vg _AwvxoGwNEdq7X4sGURiZYA _MtAHRNxmEdqEPrOCkNZ5Vg _OQcbgGwOEdq7X4sGURiZYA _MstMjdxmEdqEPrOCkNZ5Vg _MxLcpdxmEdqEPrOCkNZ5Vg _MvO77dxmEdqEPrOCkNZ5Vg _Mu8BItxmEdqEPrOCkNZ5Vg _Msjbl9xmEdqEPrOCkNZ5Vg _Mvrn2dxmEdqEPrOCkNZ5Vg _MtmkPNxmEdqEPrOCkNZ5Vg _MxBruNxmEdqEPrOCkNZ5Vg _-cvRAGvzEdq7X4sGURiZYA _MstMrNxmEdqEPrOCkNZ5Vg _Mu8BJdxmEdqEPrOCkNZ5Vg _MtAHs9xmEdqEPrOCkNZ5Vg _MvYs4txmEdqEPrOCkNZ5Vg _MtmkltxmEdqEPrOCkNZ5Vg _MtmkS9xmEdqEPrOCkNZ5Vg _MsQggtxmEdqEPrOCkNZ5Vg _6UV2QGwJEdq7X4sGURiZYA _MtmkXNxmEdqEPrOCkNZ5Vg _MsaRbtxmEdqEPrOCkNZ5Vg _csVgUGvtEdqG6fBIPwe-mw _MsGvbdxmEdqEPrOCkNZ5Vg _MsGvm9xmEdqEPrOCkNZ5Vg _MtTCNdxmEdqEPrOCkNZ5Vg _MtTCT9xmEdqEPrOCkNZ5Vg _MtJ4g9xmEdqEPrOCkNZ5Vg _MsaRatxmEdqEPrOCkNZ5Vg _B3q9cGwNEdq7X4sGURiZYA _M4X2IGveEdq4DLWZOhbdEA _MtAHndxmEdqEPrOCkNZ5Vg _MsQgl9xmEdqEPrOCkNZ5Vg _Ms2Wa9xmEdqEPrOCkNZ5Vg _MtmkhNxmEdqEPrOCkNZ5Vg _MstMlNxmEdqEPrOCkNZ5Vg _MtmkeNxmEdqEPrOCkNZ5Vg _MtczSNxmEdqEPrOCkNZ5Vg _MtmkTdxmEdqEPrOCkNZ5Vg _Mv1Y7dxmEdqEPrOCkNZ5Vg _Ms2Wf9xmEdqEPrOCkNZ5Vg _V6vuYGwGEdq7X4sGURiZYA _Mv1Y-NxmEdqEPrOCkNZ5Vg _MtAHftxmEdqEPrOCkNZ5Vg _MtAHUNxmEdqEPrOCkNZ5Vg _MsQgb9xmEdqEPrOCkNZ5Vg _MsQgsNxmEdqEPrOCkNZ5Vg _Muy3H9xmEdqEPrOCkNZ5Vg _MxUmodxmEdqEPrOCkNZ5Vg _MsGvk9xmEdqEPrOCkNZ5Vg _MtAHrNxmEdqEPrOCkNZ5Vg _Msjbb9xmEdqEPrOCkNZ5Vg _MtmkaNxmEdqEPrOCkNZ5Vg _MxLcoNxmEdqEPrOCkNZ5Vg _SnNPIGwIEdq7X4sGURiZYA _Msjbc9xmEdqEPrOCkNZ5Vg _MstMU9xmEdqEPrOCkNZ5Vg _MtAHVNxmEdqEPrOCkNZ5Vg _MtJ4fNxmEdqEPrOCkNZ5Vg _MtAHh9xmEdqEPrOCkNZ5Vg _MsaRkNxmEdqEPrOCkNZ5Vg _MsQgnNxmEdqEPrOCkNZ5Vg _MtTCZ9xmEdqEPrOCkNZ5Vg _MsaRctxmEdqEPrOCkNZ5Vg _Mw36vNxmEdqEPrOCkNZ5Vg _MtczNdxmEdqEPrOCkNZ5Vg _MtmkctxmEdqEPrOCkNZ5Vg _MtJ4U9xmEdqEPrOCkNZ5Vg _MxUmn9xmEdqEPrOCkNZ5Vg _Mtmkc9xmEdqEPrOCkNZ5Vg _MtAHmdxmEdqEPrOCkNZ5Vg _Ms2WXNxmEdqEPrOCkNZ5Vg _Mw36rtxmEdqEPrOCkNZ5Vg _MtmkW9xmEdqEPrOCkNZ5Vg _MsjbrtxmEdqEPrOCkNZ5Vg _MvO76NxmEdqEPrOCkNZ5Vg _MtmkPdxmEdqEPrOCkNZ5Vg _MtmkfdxmEdqEPrOCkNZ5Vg _MtmkidxmEdqEPrOCkNZ5Vg _MsaRpNxmEdqEPrOCkNZ5Vg _MtmkUdxmEdqEPrOCkNZ5Vg _MsjbYdxmEdqEPrOCkNZ5Vg _MtAHWtxmEdqEPrOCkNZ5Vg _MtmkWtxmEdqEPrOCkNZ5Vg _MxLcotxmEdqEPrOCkNZ5Vg _MsGvZtxmEdqEPrOCkNZ5Vg _MtTCWdxmEdqEPrOCkNZ5Vg _MxUmsNxmEdqEPrOCkNZ5Vg _Mrz0dtxmEdqEPrOCkNZ5Vg _Mvrn7txmEdqEPrOCkNZ5Vg _Ms2WQtxmEdqEPrOCkNZ5Vg _MtTCOdxmEdqEPrOCkNZ5Vg _MtTCa9xmEdqEPrOCkNZ5Vg _MtmkVtxmEdqEPrOCkNZ5Vg _MtAHYtxmEdqEPrOCkNZ5Vg _MtczW9xmEdqEPrOCkNZ5Vg _MtJ4QNxmEdqEPrOCkNZ5Vg _MtczT9xmEdqEPrOCkNZ5Vg _MstMoNxmEdqEPrOCkNZ5Vg _MxLcptxmEdqEPrOCkNZ5Vg _Muy3ANxmEdqEPrOCkNZ5Vg _Mtmkh9xmEdqEPrOCkNZ5Vg _MtmketxmEdqEPrOCkNZ5Vg _AyM_oGwMEdq7X4sGURiZYA _MtAHXdxmEdqEPrOCkNZ5Vg _MsQgodxmEdqEPrOCkNZ5Vg _MsjbXdxmEdqEPrOCkNZ5Vg _Mv1Y1dxmEdqEPrOCkNZ5Vg _Mv1Y8dxmEdqEPrOCkNZ5Vg _MtmkQ9xmEdqEPrOCkNZ5Vg _I6N3UGwGEdq7X4sGURiZYA _DH62EKPAEdqi_5gqUMOQtA _MtczR9xmEdqEPrOCkNZ5Vg _MtJ4Y9xmEdqEPrOCkNZ5Vg _Mrz0etxmEdqEPrOCkNZ5Vg _MsGvpdxmEdqEPrOCkNZ5Vg _Ms2WntxmEdqEPrOCkNZ5Vg _Mw36tNxmEdqEPrOCkNZ5Vg _MxUmpNxmEdqEPrOCkNZ5Vg _MtmkMtxmEdqEPrOCkNZ5Vg _MtTCPdxmEdqEPrOCkNZ5Vg _MsjbttxmEdqEPrOCkNZ5Vg _MtmkY9xmEdqEPrOCkNZ5Vg _Mu8BAtxmEdqEPrOCkNZ5Vg _MstMX9xmEdqEPrOCkNZ5Vg _RPl78GwIEdq7X4sGURiZYA _MxLcqdxmEdqEPrOCkNZ5Vg _MtJ4T9xmEdqEPrOCkNZ5Vg _MsjbjdxmEdqEPrOCkNZ5Vg _MsjbUNxmEdqEPrOCkNZ5Vg _MstMkNxmEdqEPrOCkNZ5Vg _MtczQNxmEdqEPrOCkNZ5Vg _Ms2Wc9xmEdqEPrOCkNZ5Vg _Q-yR4GveEdq4DLWZOhbdEA _MsaRdtxmEdqEPrOCkNZ5Vg _Ms2WmdxmEdqEPrOCkNZ5Vg _MtAHdtxmEdqEPrOCkNZ5Vg _Mv1Y4NxmEdqEPrOCkNZ5Vg _MtczUNxmEdqEPrOCkNZ5Vg _MxUmqdxmEdqEPrOCkNZ5Vg _MtczRtxmEdqEPrOCkNZ5Vg _MxUmkNxmEdqEPrOCkNZ5Vg _MvO75NxmEdqEPrOCkNZ5Vg _Mwk_2NxmEdqEPrOCkNZ5Vg _ChRfcGveEdq4DLWZOhbdEA _MtmkZ9xmEdqEPrOCkNZ5Vg _Ms2WYtxmEdqEPrOCkNZ5Vg _MxUmktxmEdqEPrOCkNZ5Vg _MxLcp9xmEdqEPrOCkNZ5Vg _MsGvsdxmEdqEPrOCkNZ5Vg _Ms2WVtxmEdqEPrOCkNZ5Vg _MtmkjNxmEdqEPrOCkNZ5Vg _Mvrn5txmEdqEPrOCkNZ5Vg _MtczTdxmEdqEPrOCkNZ5Vg _MsGvgtxmEdqEPrOCkNZ5Vg _MtJ4ldxmEdqEPrOCkNZ5Vg _MtTCQdxmEdqEPrOCkNZ5Vg _MtczMdxmEdqEPrOCkNZ5Vg _Muy3EtxmEdqEPrOCkNZ5Vg _MtmkRtxmEdqEPrOCkNZ5Vg _KyaPMGveEdq4DLWZOhbdEA _MtAHi9xmEdqEPrOCkNZ5Vg _MtmkdtxmEdqEPrOCkNZ5Vg _MtmkP9xmEdqEPrOCkNZ5Vg _MtTCMdxmEdqEPrOCkNZ5Vg _MtmkNdxmEdqEPrOCkNZ5Vg _MsGvYNxmEdqEPrOCkNZ5Vg _MtmkgNxmEdqEPrOCkNZ5Vg _MtmkbNxmEdqEPrOCkNZ5Vg _MsGvidxmEdqEPrOCkNZ5Vg _MtczXNxmEdqEPrOCkNZ5Vg _MsQgZ9xmEdqEPrOCkNZ5Vg _MtJ4b9xmEdqEPrOCkNZ5Vg _MtJ4h9xmEdqEPrOCkNZ5Vg _MtJ4mdxmEdqEPrOCkNZ5Vg _ZiwkoGwLEdq7X4sGURiZYA _Mv1Y9dxmEdqEPrOCkNZ5Vg _MtJ4RNxmEdqEPrOCkNZ5Vg _MsjbnNxmEdqEPrOCkNZ5Vg _MtJ4aNxmEdqEPrOCkNZ5Vg _rHT3YKOsEdqi_5gqUMOQtA _MxUmq9xmEdqEPrOCkNZ5Vg _MtmkXdxmEdqEPrOCkNZ5Vg _MstMW9xmEdqEPrOCkNZ5Vg _Mu8BFdxmEdqEPrOCkNZ5Vg _Mv1ZANxmEdqEPrOCkNZ5Vg _MxLcrdxmEdqEPrOCkNZ5Vg _MstMV9xmEdqEPrOCkNZ5Vg _MtmkYdxmEdqEPrOCkNZ5Vg _MsQgetxmEdqEPrOCkNZ5Vg _MtJ4f9xmEdqEPrOCkNZ5Vg _MsQgkdxmEdqEPrOCkNZ5Vg _MsQgqNxmEdqEPrOCkNZ5Vg _C7AF4GwREdq14q0ETb1t3g _Mu8A8NxmEdqEPrOCkNZ5Vg _Mtmka9xmEdqEPrOCkNZ5Vg _MvYs8NxmEdqEPrOCkNZ5Vg _MtmkZtxmEdqEPrOCkNZ5Vg _Ms2We9xmEdqEPrOCkNZ5Vg _MtAHjtxmEdqEPrOCkNZ5Vg _MstMmNxmEdqEPrOCkNZ5Vg _Mr9lcNxmEdqEPrOCkNZ5Vg _MtAHldxmEdqEPrOCkNZ5Vg _Mv1Y3dxmEdqEPrOCkNZ5Vg _MxUmqtxmEdqEPrOCkNZ5Vg _MsjbqtxmEdqEPrOCkNZ5Vg _MtJ4jtxmEdqEPrOCkNZ5Vg _Muy3F9xmEdqEPrOCkNZ5Vg _MtmkNtxmEdqEPrOCkNZ5Vg _MsGve9xmEdqEPrOCkNZ5Vg _MsQgf9xmEdqEPrOCkNZ5Vg _MsaRetxmEdqEPrOCkNZ5Vg _MtAHQNxmEdqEPrOCkNZ5Vg _MsaRiNxmEdqEPrOCkNZ5Vg _MxUmnNxmEdqEPrOCkNZ5Vg _MtAHcdxmEdqEPrOCkNZ5Vg _MtmkN9xmEdqEPrOCkNZ5Vg _Mtmkf9xmEdqEPrOCkNZ5Vg _Ms2WjtxmEdqEPrOCkNZ5Vg _Mu8BCdxmEdqEPrOCkNZ5Vg _Msjbg9xmEdqEPrOCkNZ5Vg _MtmkUtxmEdqEPrOCkNZ5Vg _MtTCY9xmEdqEPrOCkNZ5Vg _Mu8BHdxmEdqEPrOCkNZ5Vg _MtczSdxmEdqEPrOCkNZ5Vg _Mu8A9dxmEdqEPrOCkNZ5Vg _MtmkQNxmEdqEPrOCkNZ5Vg _MtJ4V9xmEdqEPrOCkNZ5Vg _FFMNsGveEdq4DLWZOhbdEA _MstMgNxmEdqEPrOCkNZ5Vg _MtTCSNxmEdqEPrOCkNZ5Vg _MtAHSNxmEdqEPrOCkNZ5Vg _MtJ4X9xmEdqEPrOCkNZ5Vg _Mw36t9xmEdqEPrOCkNZ5Vg _MstMh9xmEdqEPrOCkNZ5Vg _MxUmmtxmEdqEPrOCkNZ5Vg _PyCx8GveEdq4DLWZOhbdEA _MsjbstxmEdqEPrOCkNZ5Vg _MtmkcdxmEdqEPrOCkNZ5Vg _MtczMNxmEdqEPrOCkNZ5Vg _Gjgl0GveEdq4DLWZOhbdEA _MxUmrdxmEdqEPrOCkNZ5Vg _MsaRftxmEdqEPrOCkNZ5Vg _MtczQ9xmEdqEPrOCkNZ5Vg _MvO74NxmEdqEPrOCkNZ5Vg _kl90MGvbEdq4DLWZOhbdEA _Mv1Y6dxmEdqEPrOCkNZ5Vg _MtAHbNxmEdqEPrOCkNZ5Vg _Mvrn0NxmEdqEPrOCkNZ5Vg _MxLcqtxmEdqEPrOCkNZ5Vg _MwSExNxmEdqEPrOCkNZ5Vg _Dy77oGveEdq4DLWZOhbdEA _MxUml9xmEdqEPrOCkNZ5Vg _MtmkmdxmEdqEPrOCkNZ5Vg _MstMudxmEdqEPrOCkNZ5Vg _MstMpNxmEdqEPrOCkNZ5Vg _JBgfoKPAEdqi_5gqUMOQtA _MtmkgtxmEdqEPrOCkNZ5Vg _MtczTNxmEdqEPrOCkNZ5Vg _Msjbe9xmEdqEPrOCkNZ5Vg _MxLcsNxmEdqEPrOCkNZ5Vg _MstMqNxmEdqEPrOCkNZ5Vg _Ms2WlNxmEdqEPrOCkNZ5Vg _Mu8A-NxmEdqEPrOCkNZ5Vg _MtczOdxmEdqEPrOCkNZ5Vg _MtmklNxmEdqEPrOCkNZ5Vg _MsjbeNxmEdqEPrOCkNZ5Vg _Muy3CtxmEdqEPrOCkNZ5Vg _MsjbiNxmEdqEPrOCkNZ5Vg _Mv1Y_NxmEdqEPrOCkNZ5Vg _MtczPdxmEdqEPrOCkNZ5Vg _Msjbp9xmEdqEPrOCkNZ5Vg _MtAHV9xmEdqEPrOCkNZ5Vg _MsQga9xmEdqEPrOCkNZ5Vg _Ms2WRtxmEdqEPrOCkNZ5Vg _MxUmstxmEdqEPrOCkNZ5Vg _MwIT2NxmEdqEPrOCkNZ5Vg _Mu8BGNxmEdqEPrOCkNZ5Vg _MtczWdxmEdqEPrOCkNZ5Vg _Mtmkj9xmEdqEPrOCkNZ5Vg _Mu8A_dxmEdqEPrOCkNZ5Vg _Ms2WkdxmEdqEPrOCkNZ5Vg _Mu8BBdxmEdqEPrOCkNZ5Vg _MtczVdxmEdqEPrOCkNZ5Vg _ynRtoGvtEdqG6fBIPwe-mw _MtczRdxmEdqEPrOCkNZ5Vg _MstMxdxmEdqEPrOCkNZ5Vg _MtmkZNxmEdqEPrOCkNZ5Vg _jKxnwGwLEdq7X4sGURiZYA _MtmkkdxmEdqEPrOCkNZ5Vg _Ms2Wi9xmEdqEPrOCkNZ5Vg _MtczUtxmEdqEPrOCkNZ5Vg _Mv_J4dxmEdqEPrOCkNZ5Vg _MsaRgdxmEdqEPrOCkNZ5Vg _00owUGvdEdq4DLWZOhbdEA _MstMwNxmEdqEPrOCkNZ5Vg _MsaRYNxmEdqEPrOCkNZ5Vg _MtmkitxmEdqEPrOCkNZ5Vg _MvYs5dxmEdqEPrOCkNZ5Vg _MtmkbtxmEdqEPrOCkNZ5Vg _MstMitxmEdqEPrOCkNZ5Vg _MtTCdtxmEdqEPrOCkNZ5Vg _MtmkMNxmEdqEPrOCkNZ5Vg _MtmkWNxmEdqEPrOCkNZ5Vg _MtmkWdxmEdqEPrOCkNZ5Vg _Mrz0ctxmEdqEPrOCkNZ5Vg _Mvrn6txmEdqEPrOCkNZ5Vg _MsjbWdxmEdqEPrOCkNZ5Vg _MstMg9xmEdqEPrOCkNZ5Vg _MtmkXtxmEdqEPrOCkNZ5Vg _MxBrpdxmEdqEPrOCkNZ5Vg _Msjbf9xmEdqEPrOCkNZ5Vg _MstMsdxmEdqEPrOCkNZ5Vg _MtmkOtxmEdqEPrOCkNZ5Vg _MtmkYNxmEdqEPrOCkNZ5Vg _Mu8BKtxmEdqEPrOCkNZ5Vg _MtAHr9xmEdqEPrOCkNZ5Vg _Mtmkd9xmEdqEPrOCkNZ5Vg _MsQglNxmEdqEPrOCkNZ5Vg _MtJ4W9xmEdqEPrOCkNZ5Vg _Jp_1oGveEdq4DLWZOhbdEA _MtczXtxmEdqEPrOCkNZ5Vg _MsaRmtxmEdqEPrOCkNZ5Vg _MtAHZ9xmEdqEPrOCkNZ5Vg _MtTCYNxmEdqEPrOCkNZ5Vg _MtAHTNxmEdqEPrOCkNZ5Vg _MsQgc9xmEdqEPrOCkNZ5Vg _MwIT5txmEdqEPrOCkNZ5Vg _MtmkSNxmEdqEPrOCkNZ5Vg _MtmkZdxmEdqEPrOCkNZ5Vg _MstMnNxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD209xmEdqEPrOCkNZ5Vg" source="UML::Deployments::ComponentDeployments" references="_M5E0nNxmEdqEPrOCkNZ5Vg _M5E0oNxmEdqEPrOCkNZ5Vg _M5E0qdxmEdqEPrOCkNZ5Vg _M5E0sdxmEdqEPrOCkNZ5Vg _M5E0rdxmEdqEPrOCkNZ5Vg _M1WLQ9xmEdqEPrOCkNZ5Vg _M5E0tdxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD21NxmEdqEPrOCkNZ5Vg" source="UML::CommonBehaviors::SimpleTime" references="_-Ixo8H4XEdq7cMP_l1l5Gg _M2Ys9NxmEdqEPrOCkNZ5Vg _M2YtG9xmEdqEPrOCkNZ5Vg _M2PjFdxmEdqEPrOCkNZ5Vg _M2idxdxmEdqEPrOCkNZ5Vg _M2Ys3txmEdqEPrOCkNZ5Vg _M0AHbdxmEdqEPrOCkNZ5Vg _M2id0dxmEdqEPrOCkNZ5Vg _M2YtJtxmEdqEPrOCkNZ5Vg _M2idztxmEdqEPrOCkNZ5Vg _M2YtEdxmEdqEPrOCkNZ5Vg _M2idytxmEdqEPrOCkNZ5Vg _M0AHZ9xmEdqEPrOCkNZ5Vg _M2YtLNxmEdqEPrOCkNZ5Vg _M2YtK9xmEdqEPrOCkNZ5Vg _M2Ys8NxmEdqEPrOCkNZ5Vg _M2idwNxmEdqEPrOCkNZ5Vg _M2Ys6NxmEdqEPrOCkNZ5Vg _M2PjG9xmEdqEPrOCkNZ5Vg _M2Ysy9xmEdqEPrOCkNZ5Vg _M2id0txmEdqEPrOCkNZ5Vg _M2idzNxmEdqEPrOCkNZ5Vg _M2id1NxmEdqEPrOCkNZ5Vg _M2idy9xmEdqEPrOCkNZ5Vg _M2YtCtxmEdqEPrOCkNZ5Vg _M2YswNxmEdqEPrOCkNZ5Vg _M2Ys7dxmEdqEPrOCkNZ5Vg _M2PjEdxmEdqEPrOCkNZ5Vg _M2idxtxmEdqEPrOCkNZ5Vg _M2Ys3NxmEdqEPrOCkNZ5Vg _M2Ysx9xmEdqEPrOCkNZ5Vg _M2YtKNxmEdqEPrOCkNZ5Vg _M2YtINxmEdqEPrOCkNZ5Vg _M2Ys-9xmEdqEPrOCkNZ5Vg _DylKEH4YEdq7cMP_l1l5Gg _M2idzdxmEdqEPrOCkNZ5Vg _M2id09xmEdqEPrOCkNZ5Vg _M0wVMNxmEdqEPrOCkNZ5Vg _M2idxNxmEdqEPrOCkNZ5Vg _M2Ys5NxmEdqEPrOCkNZ5Vg _M2YsydxmEdqEPrOCkNZ5Vg _M2YsxNxmEdqEPrOCkNZ5Vg _M2YtItxmEdqEPrOCkNZ5Vg _M2idydxmEdqEPrOCkNZ5Vg _M2idw9xmEdqEPrOCkNZ5Vg _M2YtKdxmEdqEPrOCkNZ5Vg _M2Ys99xmEdqEPrOCkNZ5Vg _M2idwtxmEdqEPrOCkNZ5Vg _M2Ys2txmEdqEPrOCkNZ5Vg _M2YsztxmEdqEPrOCkNZ5Vg _M2YtBNxmEdqEPrOCkNZ5Vg _M2id0NxmEdqEPrOCkNZ5Vg _M2YtDtxmEdqEPrOCkNZ5Vg _M2Ys19xmEdqEPrOCkNZ5Vg _M2YtI9xmEdqEPrOCkNZ5Vg _M2YtF9xmEdqEPrOCkNZ5Vg _M2id1dxmEdqEPrOCkNZ5Vg _M2Ys0txmEdqEPrOCkNZ5Vg _M2idz9xmEdqEPrOCkNZ5Vg _M2YtLtxmEdqEPrOCkNZ5Vg _M2idx9xmEdqEPrOCkNZ5Vg _M0wVMtxmEdqEPrOCkNZ5Vg _M2YtB9xmEdqEPrOCkNZ5Vg _M2YtJdxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD21dxmEdqEPrOCkNZ5Vg" source="UML::AuxiliaryConstructs::Templates" references="_M50bVtxmEdqEPrOCkNZ5Vg _M50bXdxmEdqEPrOCkNZ5Vg _M50bd9xmEdqEPrOCkNZ5Vg _M5hgb9xmEdqEPrOCkNZ5Vg _M5hgc9xmEdqEPrOCkNZ5Vg _-cvRAGvzEdq7X4sGURiZYA _M50bedxmEdqEPrOCkNZ5Vg _M5hgXdxmEdqEPrOCkNZ5Vg _6UV2QGwJEdq7X4sGURiZYA _csVgUGvtEdqG6fBIPwe-mw _M50bUtxmEdqEPrOCkNZ5Vg _M50bTtxmEdqEPrOCkNZ5Vg _M5XvedxmEdqEPrOCkNZ5Vg _M4X2IGveEdq4DLWZOhbdEA _M5qqitxmEdqEPrOCkNZ5Vg _M59lM9xmEdqEPrOCkNZ5Vg _M5qqVNxmEdqEPrOCkNZ5Vg _M5Xvb9xmEdqEPrOCkNZ5Vg _M5qqkdxmEdqEPrOCkNZ5Vg _M5hgwNxmEdqEPrOCkNZ5Vg _M50bQtxmEdqEPrOCkNZ5Vg _M5qqjtxmEdqEPrOCkNZ5Vg _My9lWNxmEdqEPrOCkNZ5Vg _M5hgn9xmEdqEPrOCkNZ5Vg _M5qqZtxmEdqEPrOCkNZ5Vg _M5hga9xmEdqEPrOCkNZ5Vg _M50bY9xmEdqEPrOCkNZ5Vg _M50badxmEdqEPrOCkNZ5Vg _M50bVNxmEdqEPrOCkNZ5Vg _M5qqX9xmEdqEPrOCkNZ5Vg _M50bZtxmEdqEPrOCkNZ5Vg _M50bQ9xmEdqEPrOCkNZ5Vg _M50bR9xmEdqEPrOCkNZ5Vg _M5hgfdxmEdqEPrOCkNZ5Vg _M5XvddxmEdqEPrOCkNZ5Vg _M50bUdxmEdqEPrOCkNZ5Vg _M5Xvm9xmEdqEPrOCkNZ5Vg _M5hgYtxmEdqEPrOCkNZ5Vg _M5hgp9xmEdqEPrOCkNZ5Vg _M5qqQ9xmEdqEPrOCkNZ5Vg _M5XvgtxmEdqEPrOCkNZ5Vg _M50bftxmEdqEPrOCkNZ5Vg _M50bYNxmEdqEPrOCkNZ5Vg _M50bctxmEdqEPrOCkNZ5Vg _9keOQGvdEdq4DLWZOhbdEA _M5hg0dxmEdqEPrOCkNZ5Vg _M5hgd9xmEdqEPrOCkNZ5Vg _M5hgVdxmEdqEPrOCkNZ5Vg _M5hgtdxmEdqEPrOCkNZ5Vg _M5qqQNxmEdqEPrOCkNZ5Vg _M5hghdxmEdqEPrOCkNZ5Vg _M50bfNxmEdqEPrOCkNZ5Vg _M5XvfdxmEdqEPrOCkNZ5Vg _M5qqTNxmEdqEPrOCkNZ5Vg _M50bb9xmEdqEPrOCkNZ5Vg _M5hgr9xmEdqEPrOCkNZ5Vg _M50bddxmEdqEPrOCkNZ5Vg _M5qqeNxmEdqEPrOCkNZ5Vg _M5qqdNxmEdqEPrOCkNZ5Vg _M5qqgNxmEdqEPrOCkNZ5Vg _M5hglNxmEdqEPrOCkNZ5Vg _M5Xvi9xmEdqEPrOCkNZ5Vg _M50bS9xmEdqEPrOCkNZ5Vg _M5hgidxmEdqEPrOCkNZ5Vg _M5qqUNxmEdqEPrOCkNZ5Vg _M50bStxmEdqEPrOCkNZ5Vg _M5hgkNxmEdqEPrOCkNZ5Vg _M5Xvj9xmEdqEPrOCkNZ5Vg _M50bRNxmEdqEPrOCkNZ5Vg _M50bW9xmEdqEPrOCkNZ5Vg _M50bdNxmEdqEPrOCkNZ5Vg _M5qqatxmEdqEPrOCkNZ5Vg _M59lMNxmEdqEPrOCkNZ5Vg _M5Xvk9xmEdqEPrOCkNZ5Vg _M5hgyNxmEdqEPrOCkNZ5Vg _M5Xvl9xmEdqEPrOCkNZ5Vg _M50bWNxmEdqEPrOCkNZ5Vg _M50bU9xmEdqEPrOCkNZ5Vg _M5hgpNxmEdqEPrOCkNZ5Vg _M5qqWdxmEdqEPrOCkNZ5Vg _M5qqYtxmEdqEPrOCkNZ5Vg _M5Xvn9xmEdqEPrOCkNZ5Vg _M5hggdxmEdqEPrOCkNZ5Vg _M59lMtxmEdqEPrOCkNZ5Vg _KxRzgGvuEdqG6fBIPwe-mw _jKxnwGwLEdq7X4sGURiZYA _M5hgjdxmEdqEPrOCkNZ5Vg _M50bbdxmEdqEPrOCkNZ5Vg _M50bTNxmEdqEPrOCkNZ5Vg _M5hgq9xmEdqEPrOCkNZ5Vg _M50bT9xmEdqEPrOCkNZ5Vg _M5qqfNxmEdqEPrOCkNZ5Vg _Msjbf9xmEdqEPrOCkNZ5Vg _M5hgWdxmEdqEPrOCkNZ5Vg _M5hgmNxmEdqEPrOCkNZ5Vg _Jp_1oGveEdq4DLWZOhbdEA _M50bXNxmEdqEPrOCkNZ5Vg _M59lMdxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD21txmEdqEPrOCkNZ5Vg" source="UML::Actions::CompleteActions" references="_M34hsNxmEdqEPrOCkNZ5Vg _M4VNgtxmEdqEPrOCkNZ5Vg _M34iFdxmEdqEPrOCkNZ5Vg _M34h9txmEdqEPrOCkNZ5Vg _M4LcztxmEdqEPrOCkNZ5Vg _M4LcsNxmEdqEPrOCkNZ5Vg _M34iBtxmEdqEPrOCkNZ5Vg _M4LcqNxmEdqEPrOCkNZ5Vg _M4Lc8txmEdqEPrOCkNZ5Vg _M4LcqdxmEdqEPrOCkNZ5Vg _M4Lc19xmEdqEPrOCkNZ5Vg _M4BsAdxmEdqEPrOCkNZ5Vg _M4VNldxmEdqEPrOCkNZ5Vg _M4Br8dxmEdqEPrOCkNZ5Vg _M4Lc7dxmEdqEPrOCkNZ5Vg _M4VNodxmEdqEPrOCkNZ5Vg _M4VNgNxmEdqEPrOCkNZ5Vg _M4Lc4txmEdqEPrOCkNZ5Vg _M4BrmNxmEdqEPrOCkNZ5Vg _M4VNntxmEdqEPrOCkNZ5Vg _M4Bry9xmEdqEPrOCkNZ5Vg _M4BsEtxmEdqEPrOCkNZ5Vg _M4VNpNxmEdqEPrOCkNZ5Vg _M34hy9xmEdqEPrOCkNZ5Vg _M34h6dxmEdqEPrOCkNZ5Vg _M4LcutxmEdqEPrOCkNZ5Vg _M4LcuNxmEdqEPrOCkNZ5Vg _M4Lc1NxmEdqEPrOCkNZ5Vg _M18oMNxmEdqEPrOCkNZ5Vg _M4Lc6txmEdqEPrOCkNZ5Vg _M4VNo9xmEdqEPrOCkNZ5Vg _M34hw9xmEdqEPrOCkNZ5Vg _M4Lc8NxmEdqEPrOCkNZ5Vg _M4LcxtxmEdqEPrOCkNZ5Vg _M4VNoNxmEdqEPrOCkNZ5Vg _M4LclNxmEdqEPrOCkNZ5Vg _M4VNm9xmEdqEPrOCkNZ5Vg _M4LcwdxmEdqEPrOCkNZ5Vg _M4BsMtxmEdqEPrOCkNZ5Vg _M4Lcy9xmEdqEPrOCkNZ5Vg _M4Br19xmEdqEPrOCkNZ5Vg _M4LctdxmEdqEPrOCkNZ5Vg _M4BsGtxmEdqEPrOCkNZ5Vg _M4Br9dxmEdqEPrOCkNZ5Vg _M4BroNxmEdqEPrOCkNZ5Vg _M4LcpdxmEdqEPrOCkNZ5Vg _M4LcrtxmEdqEPrOCkNZ5Vg _M34h4dxmEdqEPrOCkNZ5Vg _M4Br29xmEdqEPrOCkNZ5Vg _M4Lc4dxmEdqEPrOCkNZ5Vg _M4VNh9xmEdqEPrOCkNZ5Vg _M4Br6txmEdqEPrOCkNZ5Vg _M4BsBdxmEdqEPrOCkNZ5Vg _M34h3txmEdqEPrOCkNZ5Vg _M4Lc2dxmEdqEPrOCkNZ5Vg _M34hrNxmEdqEPrOCkNZ5Vg _M4Lc7NxmEdqEPrOCkNZ5Vg _M4BrnNxmEdqEPrOCkNZ5Vg _M4BrgNxmEdqEPrOCkNZ5Vg _M34h5dxmEdqEPrOCkNZ5Vg _M4VNiNxmEdqEPrOCkNZ5Vg _M4VNktxmEdqEPrOCkNZ5Vg _M4VNhNxmEdqEPrOCkNZ5Vg _M4LcoNxmEdqEPrOCkNZ5Vg _M34htNxmEdqEPrOCkNZ5Vg _M4Brw9xmEdqEPrOCkNZ5Vg _M4LcodxmEdqEPrOCkNZ5Vg _M4BsDtxmEdqEPrOCkNZ5Vg _M4LcrNxmEdqEPrOCkNZ5Vg _M34iCtxmEdqEPrOCkNZ5Vg _M4LcpNxmEdqEPrOCkNZ5Vg _M34ho9xmEdqEPrOCkNZ5Vg _M34hx9xmEdqEPrOCkNZ5Vg _M4BrpNxmEdqEPrOCkNZ5Vg _M34h7dxmEdqEPrOCkNZ5Vg _M4LcgNxmEdqEPrOCkNZ5Vg _M4LcjNxmEdqEPrOCkNZ5Vg _M4Lc5dxmEdqEPrOCkNZ5Vg _M4LcndxmEdqEPrOCkNZ5Vg _M4Brx9xmEdqEPrOCkNZ5Vg _M4BsFtxmEdqEPrOCkNZ5Vg _M4LcrdxmEdqEPrOCkNZ5Vg _M4Lcm9xmEdqEPrOCkNZ5Vg _M4LckNxmEdqEPrOCkNZ5Vg _M4VNi9xmEdqEPrOCkNZ5Vg _M4VNjdxmEdqEPrOCkNZ5Vg _M4Lc59xmEdqEPrOCkNZ5Vg _M4Lc79xmEdqEPrOCkNZ5Vg _M4VNkNxmEdqEPrOCkNZ5Vg _M34h-txmEdqEPrOCkNZ5Vg _M4BsOtxmEdqEPrOCkNZ5Vg _M4Brv9xmEdqEPrOCkNZ5Vg _M4Lc3txmEdqEPrOCkNZ5Vg _M4Lc3NxmEdqEPrOCkNZ5Vg _M4VNgdxmEdqEPrOCkNZ5Vg _M4Lc0txmEdqEPrOCkNZ5Vg _M4Lcs9xmEdqEPrOCkNZ5Vg _M4LcydxmEdqEPrOCkNZ5Vg _M4Lcz9xmEdqEPrOCkNZ5Vg _M4LcvdxmEdqEPrOCkNZ5Vg _M34hwNxmEdqEPrOCkNZ5Vg _M4LcxdxmEdqEPrOCkNZ5Vg _M4VNpdxmEdqEPrOCkNZ5Vg _M4LcwtxmEdqEPrOCkNZ5Vg _M4VNmtxmEdqEPrOCkNZ5Vg _M4VNl9xmEdqEPrOCkNZ5Vg _M4BsNtxmEdqEPrOCkNZ5Vg _M34hz9xmEdqEPrOCkNZ5Vg _M4LcmNxmEdqEPrOCkNZ5Vg _M4Br7dxmEdqEPrOCkNZ5Vg _M4LcvtxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD219xmEdqEPrOCkNZ5Vg" source="UML::Activities::IntermediateActivities" references="_M1DQGtxmEdqEPrOCkNZ5Vg _M1DQE9xmEdqEPrOCkNZ5Vg _M05fLNxmEdqEPrOCkNZ5Vg _M05fO9xmEdqEPrOCkNZ5Vg _MzQgeNxmEdqEPrOCkNZ5Vg _MzQgQNxmEdqEPrOCkNZ5Vg _M05fHNxmEdqEPrOCkNZ5Vg _M05fFtxmEdqEPrOCkNZ5Vg _M1DQEdxmEdqEPrOCkNZ5Vg _M05fGdxmEdqEPrOCkNZ5Vg _M1DQB9xmEdqEPrOCkNZ5Vg _M05fWtxmEdqEPrOCkNZ5Vg _MyEN69xmEdqEPrOCkNZ5Vg _MyN-fdxmEdqEPrOCkNZ5Vg _M1DQDdxmEdqEPrOCkNZ5Vg _MyN-ftxmEdqEPrOCkNZ5Vg _M05fJNxmEdqEPrOCkNZ5Vg _M05fMNxmEdqEPrOCkNZ5Vg _M05fVtxmEdqEPrOCkNZ5Vg _MzQghNxmEdqEPrOCkNZ5Vg _M05fStxmEdqEPrOCkNZ5Vg _M05fA9xmEdqEPrOCkNZ5Vg _MyEN3dxmEdqEPrOCkNZ5Vg _M1DQF9xmEdqEPrOCkNZ5Vg _M1DQANxmEdqEPrOCkNZ5Vg _MzQgVdxmEdqEPrOCkNZ5Vg _M1DQFNxmEdqEPrOCkNZ5Vg _M05fANxmEdqEPrOCkNZ5Vg _MzaRQtxmEdqEPrOCkNZ5Vg _M1DQD9xmEdqEPrOCkNZ5Vg _M1DQINxmEdqEPrOCkNZ5Vg _MyEN8txmEdqEPrOCkNZ5Vg _MyN-cNxmEdqEPrOCkNZ5Vg _M1DQG9xmEdqEPrOCkNZ5Vg _M05fINxmEdqEPrOCkNZ5Vg _MyEN59xmEdqEPrOCkNZ5Vg _M05fBtxmEdqEPrOCkNZ5Vg _M05fKNxmEdqEPrOCkNZ5Vg _MyN-d9xmEdqEPrOCkNZ5Vg _M1DQHtxmEdqEPrOCkNZ5Vg _M05fNNxmEdqEPrOCkNZ5Vg _M05fQdxmEdqEPrOCkNZ5Vg _MyEN7txmEdqEPrOCkNZ5Vg _M0wVRdxmEdqEPrOCkNZ5Vg _M1DQGdxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD22NxmEdqEPrOCkNZ5Vg" source="UML::Actions::IntermediateActions" references="_M2Fx3dxmEdqEPrOCkNZ5Vg _M1y3btxmEdqEPrOCkNZ5Vg _M2Pi3dxmEdqEPrOCkNZ5Vg _M2Fx8dxmEdqEPrOCkNZ5Vg _M2FyQtxmEdqEPrOCkNZ5Vg _M1y3FtxmEdqEPrOCkNZ5Vg _M18oA9xmEdqEPrOCkNZ5Vg _M18n6dxmEdqEPrOCkNZ5Vg _M18oRNxmEdqEPrOCkNZ5Vg _M2Pi2txmEdqEPrOCkNZ5Vg _M2FyINxmEdqEPrOCkNZ5Vg _M2Pi1NxmEdqEPrOCkNZ5Vg _M2FyEtxmEdqEPrOCkNZ5Vg _M2PjDtxmEdqEPrOCkNZ5Vg _M2Pi-txmEdqEPrOCkNZ5Vg _M18oe9xmEdqEPrOCkNZ5Vg _M2Fx4dxmEdqEPrOCkNZ5Vg _M2Pi9dxmEdqEPrOCkNZ5Vg _M2FyTNxmEdqEPrOCkNZ5Vg _M2Pi4txmEdqEPrOCkNZ5Vg _M2FyPdxmEdqEPrOCkNZ5Vg _M2Pi99xmEdqEPrOCkNZ5Vg _M1y3OdxmEdqEPrOCkNZ5Vg _M1y3atxmEdqEPrOCkNZ5Vg _M2Pi69xmEdqEPrOCkNZ5Vg _M2Pi_txmEdqEPrOCkNZ5Vg _M18oMNxmEdqEPrOCkNZ5Vg _M2FyCdxmEdqEPrOCkNZ5Vg _M18oatxmEdqEPrOCkNZ5Vg _M18oK9xmEdqEPrOCkNZ5Vg _M2FyN9xmEdqEPrOCkNZ5Vg _M1y3PdxmEdqEPrOCkNZ5Vg _M1y3WNxmEdqEPrOCkNZ5Vg _M2FyQNxmEdqEPrOCkNZ5Vg _M2FyJdxmEdqEPrOCkNZ5Vg _M2FyFtxmEdqEPrOCkNZ5Vg _M18oE9xmEdqEPrOCkNZ5Vg _M2FyKtxmEdqEPrOCkNZ5Vg _M2FyMtxmEdqEPrOCkNZ5Vg _M1y3I9xmEdqEPrOCkNZ5Vg _M2Pi7txmEdqEPrOCkNZ5Vg _M2Fx6txmEdqEPrOCkNZ5Vg _M2Pi-9xmEdqEPrOCkNZ5Vg _M2PjA9xmEdqEPrOCkNZ5Vg _M2PjBNxmEdqEPrOCkNZ5Vg _M2Fx9dxmEdqEPrOCkNZ5Vg _M18n-txmEdqEPrOCkNZ5Vg _M1y3VNxmEdqEPrOCkNZ5Vg _M2Fx2dxmEdqEPrOCkNZ5Vg _M2Fx7txmEdqEPrOCkNZ5Vg _M18n_dxmEdqEPrOCkNZ5Vg _M2FyT9xmEdqEPrOCkNZ5Vg _M2Pi1txmEdqEPrOCkNZ5Vg _M2FyG9xmEdqEPrOCkNZ5Vg _M2FyHtxmEdqEPrOCkNZ5Vg _M18ocNxmEdqEPrOCkNZ5Vg _M2FyOdxmEdqEPrOCkNZ5Vg _M2PjDNxmEdqEPrOCkNZ5Vg _M2Fx-dxmEdqEPrOCkNZ5Vg _M18oF9xmEdqEPrOCkNZ5Vg _M2FyRdxmEdqEPrOCkNZ5Vg _M18oQNxmEdqEPrOCkNZ5Vg _M2Pi5NxmEdqEPrOCkNZ5Vg _M2Pi0dxmEdqEPrOCkNZ5Vg _M18oPNxmEdqEPrOCkNZ5Vg _M18oBtxmEdqEPrOCkNZ5Vg _M2FyNNxmEdqEPrOCkNZ5Vg _M2FyStxmEdqEPrOCkNZ5Vg _M18oWtxmEdqEPrOCkNZ5Vg _M1y3KdxmEdqEPrOCkNZ5Vg _M18oZtxmEdqEPrOCkNZ5Vg _M2Pi6NxmEdqEPrOCkNZ5Vg _M2FyL9xmEdqEPrOCkNZ5Vg _M1y3QdxmEdqEPrOCkNZ5Vg _M18n9txmEdqEPrOCkNZ5Vg _M2FyAtxmEdqEPrOCkNZ5Vg _M2PjANxmEdqEPrOCkNZ5Vg _M2FyKNxmEdqEPrOCkNZ5Vg _M2FyVdxmEdqEPrOCkNZ5Vg _M1y3JtxmEdqEPrOCkNZ5Vg _M18od9xmEdqEPrOCkNZ5Vg _M2Pi0NxmEdqEPrOCkNZ5Vg _M2Fx0NxmEdqEPrOCkNZ5Vg _M2Pi8NxmEdqEPrOCkNZ5Vg _M18oY9xmEdqEPrOCkNZ5Vg _M2Pi59xmEdqEPrOCkNZ5Vg _M2FyI9xmEdqEPrOCkNZ5Vg _M18n7dxmEdqEPrOCkNZ5Vg _M18oENxmEdqEPrOCkNZ5Vg _M1y3A9xmEdqEPrOCkNZ5Vg _M2FyR9xmEdqEPrOCkNZ5Vg _M18oVtxmEdqEPrOCkNZ5Vg _M18oI9xmEdqEPrOCkNZ5Vg _M2FyUdxmEdqEPrOCkNZ5Vg _M2PjB9xmEdqEPrOCkNZ5Vg _M2FyWdxmEdqEPrOCkNZ5Vg _M2Pi8txmEdqEPrOCkNZ5Vg _M1y3GtxmEdqEPrOCkNZ5Vg _M2FyLdxmEdqEPrOCkNZ5Vg _M2Pi7dxmEdqEPrOCkNZ5Vg _M2FyGtxmEdqEPrOCkNZ5Vg _M1y3LdxmEdqEPrOCkNZ5Vg _M2Pi8dxmEdqEPrOCkNZ5Vg _M2Pi39xmEdqEPrOCkNZ5Vg _M2FyVNxmEdqEPrOCkNZ5Vg _M2PjCdxmEdqEPrOCkNZ5Vg _M18oCtxmEdqEPrOCkNZ5Vg _M2FyBdxmEdqEPrOCkNZ5Vg _M2FyWNxmEdqEPrOCkNZ5Vg _M1y3EtxmEdqEPrOCkNZ5Vg _M1y3RdxmEdqEPrOCkNZ5Vg _M2Pi2dxmEdqEPrOCkNZ5Vg _M18n4NxmEdqEPrOCkNZ5Vg _M2FyPNxmEdqEPrOCkNZ5Vg _M18oJ9xmEdqEPrOCkNZ5Vg _M18odNxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD22dxmEdqEPrOCkNZ5Vg" source="InfrastructureLibrary::Profiles" references="__pew8GvzEdq7X4sGURiZYA _M3SE9dxmEdqEPrOCkNZ5Vg _-cvRAGvzEdq7X4sGURiZYA _skHGwGvsEdqG6fBIPwe-mw _M3SE4dxmEdqEPrOCkNZ5Vg _M3SE-9xmEdqEPrOCkNZ5Vg _csVgUGvtEdqG6fBIPwe-mw _M3SE3dxmEdqEPrOCkNZ5Vg _M3I6y9xmEdqEPrOCkNZ5Vg _M3SE8NxmEdqEPrOCkNZ5Vg _M3SEqtxmEdqEPrOCkNZ5Vg _M3SE_dxmEdqEPrOCkNZ5Vg _M3b1pdxmEdqEPrOCkNZ5Vg _M3I609xmEdqEPrOCkNZ5Vg _M3I62NxmEdqEPrOCkNZ5Vg _M3SEt9xmEdqEPrOCkNZ5Vg _M3SEydxmEdqEPrOCkNZ5Vg _M3SEvNxmEdqEPrOCkNZ5Vg _M3b1p9xmEdqEPrOCkNZ5Vg _uY5yQGv5Edq7X4sGURiZYA _M3I63dxmEdqEPrOCkNZ5Vg _M3I6v9xmEdqEPrOCkNZ5Vg _M3b1qtxmEdqEPrOCkNZ5Vg _M3SFAtxmEdqEPrOCkNZ5Vg _A7vDAGv0Edq7X4sGURiZYA _M3SEp9xmEdqEPrOCkNZ5Vg _M3I659xmEdqEPrOCkNZ5Vg _2QuT0GvdEdq4DLWZOhbdEA _M3I6z9xmEdqEPrOCkNZ5Vg _M3b1oNxmEdqEPrOCkNZ5Vg _M3I649xmEdqEPrOCkNZ5Vg _M3SEstxmEdqEPrOCkNZ5Vg _M3SE-txmEdqEPrOCkNZ5Vg _M3SFANxmEdqEPrOCkNZ5Vg _M3SE2dxmEdqEPrOCkNZ5Vg _kl90MGvbEdq4DLWZOhbdEA _M3I66txmEdqEPrOCkNZ5Vg _M3b1q9xmEdqEPrOCkNZ5Vg _M3b1otxmEdqEPrOCkNZ5Vg _M3SE8txmEdqEPrOCkNZ5Vg _M3SE99xmEdqEPrOCkNZ5Vg _M3SE7dxmEdqEPrOCkNZ5Vg _nDq0wJPzEdqpjIDDFZ2Hgw _M3SEzdxmEdqEPrOCkNZ5Vg _M3SErtxmEdqEPrOCkNZ5Vg _00owUGvdEdq4DLWZOhbdEA _M3SE0txmEdqEPrOCkNZ5Vg _M3SE5txmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD22txmEdqEPrOCkNZ5Vg" source="UML::StateMachines::ProtocolStateMachines" references="_M5N-odxmEdqEPrOCkNZ5Vg _M5E0wNxmEdqEPrOCkNZ5Vg _M5N-jNxmEdqEPrOCkNZ5Vg _8Ugn8GvtEdqG6fBIPwe-mw _M5N-l9xmEdqEPrOCkNZ5Vg _M5N-UdxmEdqEPrOCkNZ5Vg _M5N-hNxmEdqEPrOCkNZ5Vg _M2sOwNxmEdqEPrOCkNZ5Vg _M5N-bdxmEdqEPrOCkNZ5Vg _M5N-ktxmEdqEPrOCkNZ5Vg _M5E0udxmEdqEPrOCkNZ5Vg _M5N-YdxmEdqEPrOCkNZ5Vg _M5N-VdxmEdqEPrOCkNZ5Vg _M21ZF9xmEdqEPrOCkNZ5Vg _M5XvUNxmEdqEPrOCkNZ5Vg _M5E0vNxmEdqEPrOCkNZ5Vg _M5N-m9xmEdqEPrOCkNZ5Vg _M5N-adxmEdqEPrOCkNZ5Vg _M5N-kNxmEdqEPrOCkNZ5Vg _ZAuvEGveEdq4DLWZOhbdEA _M5N-jdxmEdqEPrOCkNZ5Vg _M5N-ndxmEdqEPrOCkNZ5Vg _M5E0xdxmEdqEPrOCkNZ5Vg _M5XvUtxmEdqEPrOCkNZ5Vg _M5N-ZdxmEdqEPrOCkNZ5Vg _M5N-ldxmEdqEPrOCkNZ5Vg _M5N-f9xmEdqEPrOCkNZ5Vg _M5N-idxmEdqEPrOCkNZ5Vg _M5N-oNxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD229xmEdqEPrOCkNZ5Vg" source="InfrastructureLibrary::Core::PrimitiveTypes" references="_UdivYGvsEdqG6fBIPwe-mw _dRZxsGvsEdqG6fBIPwe-mw _aAyVgGvsEdqG6fBIPwe-mw _XqvEIGvsEdqG6fBIPwe-mw"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD23NxmEdqEPrOCkNZ5Vg" source="UML::CompositeStructures::InternalStructures" references="_My9lVNxmEdqEPrOCkNZ5Vg _My9lfdxmEdqEPrOCkNZ5Vg _My9lbtxmEdqEPrOCkNZ5Vg _Myz0fNxmEdqEPrOCkNZ5Vg _My9lbdxmEdqEPrOCkNZ5Vg _6UV2QGwJEdq7X4sGURiZYA _My9lZtxmEdqEPrOCkNZ5Vg _Myz0gNxmEdqEPrOCkNZ5Vg _My9lc9xmEdqEPrOCkNZ5Vg _My9letxmEdqEPrOCkNZ5Vg _My9liNxmEdqEPrOCkNZ5Vg _Myz0XdxmEdqEPrOCkNZ5Vg _aOgw0GveEdq4DLWZOhbdEA _My9lcdxmEdqEPrOCkNZ5Vg _My9lWNxmEdqEPrOCkNZ5Vg _Myz0bdxmEdqEPrOCkNZ5Vg _My9latxmEdqEPrOCkNZ5Vg _Myz0cdxmEdqEPrOCkNZ5Vg _Myz0WdxmEdqEPrOCkNZ5Vg _MtczQNxmEdqEPrOCkNZ5Vg _Myz0VdxmEdqEPrOCkNZ5Vg _My9lUNxmEdqEPrOCkNZ5Vg _My9lh9xmEdqEPrOCkNZ5Vg _Myz0adxmEdqEPrOCkNZ5Vg _My9lY9xmEdqEPrOCkNZ5Vg _My9lYtxmEdqEPrOCkNZ5Vg _My9lgtxmEdqEPrOCkNZ5Vg _FQiVsGwYEdqHKKVoxc0dlA _MtczPdxmEdqEPrOCkNZ5Vg _My9li9xmEdqEPrOCkNZ5Vg _My9lhNxmEdqEPrOCkNZ5Vg _My9lf9xmEdqEPrOCkNZ5Vg _Mrz0ctxmEdqEPrOCkNZ5Vg _My9ldtxmEdqEPrOCkNZ5Vg _My9lW9xmEdqEPrOCkNZ5Vg _Jp_1oGveEdq4DLWZOhbdEA"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD23dxmEdqEPrOCkNZ5Vg" source="UML::StateMachines::BehaviorStateMachines" references="_M2_JtNxmEdqEPrOCkNZ5Vg _M21ZK9xmEdqEPrOCkNZ5Vg _M2_Jv9xmEdqEPrOCkNZ5Vg _M2_JvdxmEdqEPrOCkNZ5Vg _M2sPUtxmEdqEPrOCkNZ5Vg _M2id69xmEdqEPrOCkNZ5Vg _M21ZE9xmEdqEPrOCkNZ5Vg _M21ZN9xmEdqEPrOCkNZ5Vg _M2_KCtxmEdqEPrOCkNZ5Vg _M2sPFtxmEdqEPrOCkNZ5Vg _M2sPbtxmEdqEPrOCkNZ5Vg _M21ZAtxmEdqEPrOCkNZ5Vg _M21ZD9xmEdqEPrOCkNZ5Vg _M2_KANxmEdqEPrOCkNZ5Vg _M2sPMdxmEdqEPrOCkNZ5Vg _M2id-txmEdqEPrOCkNZ5Vg _M21Zb9xmEdqEPrOCkNZ5Vg _M2_Jt9xmEdqEPrOCkNZ5Vg _M2sO2txmEdqEPrOCkNZ5Vg _M2sPctxmEdqEPrOCkNZ5Vg _M2sPWtxmEdqEPrOCkNZ5Vg _M2_Jy9xmEdqEPrOCkNZ5Vg _M21ZO9xmEdqEPrOCkNZ5Vg _M2_J29xmEdqEPrOCkNZ5Vg _M21ZWdxmEdqEPrOCkNZ5Vg _M21ZJ9xmEdqEPrOCkNZ5Vg _M2sPNtxmEdqEPrOCkNZ5Vg _M2_Ju9xmEdqEPrOCkNZ5Vg _M2_KBdxmEdqEPrOCkNZ5Vg _M2_J9NxmEdqEPrOCkNZ5Vg _M2_JyNxmEdqEPrOCkNZ5Vg _M21Y4txmEdqEPrOCkNZ5Vg _M2_J59xmEdqEPrOCkNZ5Vg _M2_Jz9xmEdqEPrOCkNZ5Vg _M0AHZ9xmEdqEPrOCkNZ5Vg _M21YxNxmEdqEPrOCkNZ5Vg _M2sPBNxmEdqEPrOCkNZ5Vg _M2sO5NxmEdqEPrOCkNZ5Vg _M2sO4NxmEdqEPrOCkNZ5Vg _M21YsNxmEdqEPrOCkNZ5Vg _M2_J-dxmEdqEPrOCkNZ5Vg _M2ieH9xmEdqEPrOCkNZ5Vg _M2sPVtxmEdqEPrOCkNZ5Vg _M2_JtdxmEdqEPrOCkNZ5Vg _M2sO3dxmEdqEPrOCkNZ5Vg _M2sPd9xmEdqEPrOCkNZ5Vg _M21Y6dxmEdqEPrOCkNZ5Vg _M2sO1NxmEdqEPrOCkNZ5Vg _M2sOwNxmEdqEPrOCkNZ5Vg _M21Y7dxmEdqEPrOCkNZ5Vg _M21ZP9xmEdqEPrOCkNZ5Vg _M2_J4txmEdqEPrOCkNZ5Vg _M2ieEtxmEdqEPrOCkNZ5Vg _M2sPf9xmEdqEPrOCkNZ5Vg _M2_J6txmEdqEPrOCkNZ5Vg _M2sO8NxmEdqEPrOCkNZ5Vg _M2_JzdxmEdqEPrOCkNZ5Vg _M2_J5dxmEdqEPrOCkNZ5Vg _M2sO-NxmEdqEPrOCkNZ5Vg _M2sPEdxmEdqEPrOCkNZ5Vg _M21ZRNxmEdqEPrOCkNZ5Vg _M2_KDtxmEdqEPrOCkNZ5Vg _M2sPatxmEdqEPrOCkNZ5Vg _M2ieBtxmEdqEPrOCkNZ5Vg _M21ZM9xmEdqEPrOCkNZ5Vg _M2sPJdxmEdqEPrOCkNZ5Vg _M2sO9NxmEdqEPrOCkNZ5Vg _M2id_txmEdqEPrOCkNZ5Vg _M2_KD9xmEdqEPrOCkNZ5Vg _M2_J7NxmEdqEPrOCkNZ5Vg _M21ZF9xmEdqEPrOCkNZ5Vg _M2_J-9xmEdqEPrOCkNZ5Vg _M2sPXtxmEdqEPrOCkNZ5Vg _M2sPINxmEdqEPrOCkNZ5Vg _M2sO7NxmEdqEPrOCkNZ5Vg _M2sPANxmEdqEPrOCkNZ5Vg _M2_J8dxmEdqEPrOCkNZ5Vg _M2sPCNxmEdqEPrOCkNZ5Vg _M2_J_txmEdqEPrOCkNZ5Vg _M21Yt9xmEdqEPrOCkNZ5Vg _M2_J79xmEdqEPrOCkNZ5Vg _M21Yv9xmEdqEPrOCkNZ5Vg _M2_JsNxmEdqEPrOCkNZ5Vg _M2sPYtxmEdqEPrOCkNZ5Vg _M21ZL9xmEdqEPrOCkNZ5Vg _M2sO_NxmEdqEPrOCkNZ5Vg _M21Yu9xmEdqEPrOCkNZ5Vg _M2_KA9xmEdqEPrOCkNZ5Vg _M2sO6NxmEdqEPrOCkNZ5Vg _M2sPT9xmEdqEPrOCkNZ5Vg _M2sPZtxmEdqEPrOCkNZ5Vg _M2_JxNxmEdqEPrOCkNZ5Vg _M2sPG9xmEdqEPrOCkNZ5Vg _M2_KC9xmEdqEPrOCkNZ5Vg _M2_JstxmEdqEPrOCkNZ5Vg _M21ZUNxmEdqEPrOCkNZ5Vg _M2_J09xmEdqEPrOCkNZ5Vg _M21Y5dxmEdqEPrOCkNZ5Vg _M21Ys9xmEdqEPrOCkNZ5Vg _M2_JttxmEdqEPrOCkNZ5Vg _M2_J9txmEdqEPrOCkNZ5Vg _M21ZStxmEdqEPrOCkNZ5Vg _M2_J0dxmEdqEPrOCkNZ5Vg _M2_Jx9xmEdqEPrOCkNZ5Vg _M2_JwtxmEdqEPrOCkNZ5Vg _M2sPK9xmEdqEPrOCkNZ5Vg _M2_JuNxmEdqEPrOCkNZ5Vg _M2ieAtxmEdqEPrOCkNZ5Vg _M2sO19xmEdqEPrOCkNZ5Vg _M2_J2NxmEdqEPrOCkNZ5Vg _M2ieGdxmEdqEPrOCkNZ5Vg _M2sPDNxmEdqEPrOCkNZ5Vg _M2_KCNxmEdqEPrOCkNZ5Vg _M2_J1txmEdqEPrOCkNZ5Vg _M21ZC9xmEdqEPrOCkNZ5Vg _M2_J4NxmEdqEPrOCkNZ5Vg _M2ieCtxmEdqEPrOCkNZ5Vg _M2_J3dxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD23txmEdqEPrOCkNZ5Vg" source="UML::Classes::Interfaces" references="_MyqqltxmEdqEPrOCkNZ5Vg _Myqqt9xmEdqEPrOCkNZ5Vg _MyqqqdxmEdqEPrOCkNZ5Vg _MyqqetxmEdqEPrOCkNZ5Vg _MyqqhtxmEdqEPrOCkNZ5Vg _M4X2IGveEdq4DLWZOhbdEA _Myqqm9xmEdqEPrOCkNZ5Vg _8Ugn8GvtEdqG6fBIPwe-mw _MyqqsdxmEdqEPrOCkNZ5Vg _MyqqtNxmEdqEPrOCkNZ5Vg _iY7sMGvsEdqG6fBIPwe-mw _MyqqudxmEdqEPrOCkNZ5Vg _Myqqq9xmEdqEPrOCkNZ5Vg _MyqqotxmEdqEPrOCkNZ5Vg _MyqqgtxmEdqEPrOCkNZ5Vg _Myqqn9xmEdqEPrOCkNZ5Vg _MyqqjNxmEdqEPrOCkNZ5Vg _MyqqftxmEdqEPrOCkNZ5Vg _MyqqpdxmEdqEPrOCkNZ5Vg _l2mXcHLzEdqziYxiZo0YtA _MyqqkNxmEdqEPrOCkNZ5Vg _MyqqrtxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD239xmEdqEPrOCkNZ5Vg" source="UML::Activities::CompleteActivities" references="_M4xSatxmEdqEPrOCkNZ5Vg _M4eXtdxmEdqEPrOCkNZ5Vg _MzHWktxmEdqEPrOCkNZ5Vg _M4VNtNxmEdqEPrOCkNZ5Vg _M4VNrdxmEdqEPrOCkNZ5Vg _M4VN0NxmEdqEPrOCkNZ5Vg _M4eX0txmEdqEPrOCkNZ5Vg _M4eX29xmEdqEPrOCkNZ5Vg _M4VNsNxmEdqEPrOCkNZ5Vg _MzQgQNxmEdqEPrOCkNZ5Vg _M4oIg9xmEdqEPrOCkNZ5Vg _M4oIrdxmEdqEPrOCkNZ5Vg _M4VNzNxmEdqEPrOCkNZ5Vg _M4oIl9xmEdqEPrOCkNZ5Vg _M4xSY9xmEdqEPrOCkNZ5Vg _M4oIkdxmEdqEPrOCkNZ5Vg _MyEN69xmEdqEPrOCkNZ5Vg _MyN-fdxmEdqEPrOCkNZ5Vg _M4oIo9xmEdqEPrOCkNZ5Vg _M4xSYtxmEdqEPrOCkNZ5Vg _M4eXdNxmEdqEPrOCkNZ5Vg _M4oIoNxmEdqEPrOCkNZ5Vg _M4eXyNxmEdqEPrOCkNZ5Vg _M4eXhdxmEdqEPrOCkNZ5Vg _M4xSZdxmEdqEPrOCkNZ5Vg _MyEN3dxmEdqEPrOCkNZ5Vg _M1DQANxmEdqEPrOCkNZ5Vg _M4VNxtxmEdqEPrOCkNZ5Vg _M4eXndxmEdqEPrOCkNZ5Vg _M4xSb9xmEdqEPrOCkNZ5Vg _M4eXv9xmEdqEPrOCkNZ5Vg _M4eXodxmEdqEPrOCkNZ5Vg _KyaPMGveEdq4DLWZOhbdEA _MyENl9xmEdqEPrOCkNZ5Vg _M4oIctxmEdqEPrOCkNZ5Vg _M4oId9xmEdqEPrOCkNZ5Vg _rHT3YKOsEdqi_5gqUMOQtA _M4VNydxmEdqEPrOCkNZ5Vg _M4oIftxmEdqEPrOCkNZ5Vg _M4oIidxmEdqEPrOCkNZ5Vg _M4oIlNxmEdqEPrOCkNZ5Vg _M4oIndxmEdqEPrOCkNZ5Vg _M4oIktxmEdqEPrOCkNZ5Vg _MyN-cNxmEdqEPrOCkNZ5Vg _M4xSbdxmEdqEPrOCkNZ5Vg _Mx7DtNxmEdqEPrOCkNZ5Vg _M4oIptxmEdqEPrOCkNZ5Vg _M4oIqtxmEdqEPrOCkNZ5Vg _M4oIpdxmEdqEPrOCkNZ5Vg _M4oIrtxmEdqEPrOCkNZ5Vg _M4eX1txmEdqEPrOCkNZ5Vg _M4oIqdxmEdqEPrOCkNZ5Vg _M4xSYNxmEdqEPrOCkNZ5Vg _M4eXjdxmEdqEPrOCkNZ5Vg _M4oIj9xmEdqEPrOCkNZ5Vg _MyN-d9xmEdqEPrOCkNZ5Vg _M4eXu9xmEdqEPrOCkNZ5Vg _M4oInNxmEdqEPrOCkNZ5Vg _M4eXkdxmEdqEPrOCkNZ5Vg _M4oIm9xmEdqEPrOCkNZ5Vg _M4eXxNxmEdqEPrOCkNZ5Vg _MzQgY9xmEdqEPrOCkNZ5Vg _MyEN7txmEdqEPrOCkNZ5Vg _M4eXpdxmEdqEPrOCkNZ5Vg _M4eXgtxmEdqEPrOCkNZ5Vg _M4oIotxmEdqEPrOCkNZ5Vg _M4oIp9xmEdqEPrOCkNZ5Vg _M4eXzNxmEdqEPrOCkNZ5Vg _M4eXcNxmEdqEPrOCkNZ5Vg _M4xSaNxmEdqEPrOCkNZ5Vg _M4eXidxmEdqEPrOCkNZ5Vg _M4oImNxmEdqEPrOCkNZ5Vg _TUPtYGveEdq4DLWZOhbdEA _M4eXf9xmEdqEPrOCkNZ5Vg _M4eXuNxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD24NxmEdqEPrOCkNZ5Vg" source="UML::Actions::BasicActions" references="_Mx7DvtxmEdqEPrOCkNZ5Vg _MyEN19xmEdqEPrOCkNZ5Vg _Mx7DsNxmEdqEPrOCkNZ5Vg _MyENk9xmEdqEPrOCkNZ5Vg _MyENzNxmEdqEPrOCkNZ5Vg _MyENwtxmEdqEPrOCkNZ5Vg _MyENs9xmEdqEPrOCkNZ5Vg _Mx7D79xmEdqEPrOCkNZ5Vg _MyENzdxmEdqEPrOCkNZ5Vg _MyENcNxmEdqEPrOCkNZ5Vg _MyENmtxmEdqEPrOCkNZ5Vg _Mx7DuNxmEdqEPrOCkNZ5Vg _MyENsNxmEdqEPrOCkNZ5Vg _MyENuNxmEdqEPrOCkNZ5Vg _MyEN0dxmEdqEPrOCkNZ5Vg _MyENxNxmEdqEPrOCkNZ5Vg _Mx7D29xmEdqEPrOCkNZ5Vg _MyENvtxmEdqEPrOCkNZ5Vg _Mx7Dz9xmEdqEPrOCkNZ5Vg _MyENh9xmEdqEPrOCkNZ5Vg _MyENntxmEdqEPrOCkNZ5Vg _MyENqtxmEdqEPrOCkNZ5Vg _MyENq9xmEdqEPrOCkNZ5Vg _Mx7DxdxmEdqEPrOCkNZ5Vg _Mx7D4txmEdqEPrOCkNZ5Vg _Mx7DrNxmEdqEPrOCkNZ5Vg _MyENotxmEdqEPrOCkNZ5Vg _MyENtdxmEdqEPrOCkNZ5Vg _MyENl9xmEdqEPrOCkNZ5Vg _MyENudxmEdqEPrOCkNZ5Vg _Mx7DwtxmEdqEPrOCkNZ5Vg _MyENp9xmEdqEPrOCkNZ5Vg _MyENrtxmEdqEPrOCkNZ5Vg _Mx7D3txmEdqEPrOCkNZ5Vg _Mx7DodxmEdqEPrOCkNZ5Vg _Mx7DtNxmEdqEPrOCkNZ5Vg _MyEN0NxmEdqEPrOCkNZ5Vg _MyENydxmEdqEPrOCkNZ5Vg _MyENg9xmEdqEPrOCkNZ5Vg _MyENvNxmEdqEPrOCkNZ5Vg _MyENv9xmEdqEPrOCkNZ5Vg _Mx7D69xmEdqEPrOCkNZ5Vg _Mx7DpNxmEdqEPrOCkNZ5Vg _Mx7DqNxmEdqEPrOCkNZ5Vg _MyENwdxmEdqEPrOCkNZ5Vg _MyENf9xmEdqEPrOCkNZ5Vg _Mx7Dy9xmEdqEPrOCkNZ5Vg _MyEN0txmEdqEPrOCkNZ5Vg _MyEN1NxmEdqEPrOCkNZ5Vg _MyENx9xmEdqEPrOCkNZ5Vg _MyENptxmEdqEPrOCkNZ5Vg _MyEN1dxmEdqEPrOCkNZ5Vg _Mx7DyNxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD24dxmEdqEPrOCkNZ5Vg" source="UML::CommonBehaviors::BasicBehaviors" references="_MxxSotxmEdqEPrOCkNZ5Vg _Mx7DgNxmEdqEPrOCkNZ5Vg _MxxSi9xmEdqEPrOCkNZ5Vg _MxxSk9xmEdqEPrOCkNZ5Vg _MxxS09xmEdqEPrOCkNZ5Vg _Mx7DkNxmEdqEPrOCkNZ5Vg _MxxSudxmEdqEPrOCkNZ5Vg _Mx7DhtxmEdqEPrOCkNZ5Vg _MxxSxNxmEdqEPrOCkNZ5Vg _MxxSgNxmEdqEPrOCkNZ5Vg _MxxSh9xmEdqEPrOCkNZ5Vg _MxxSj9xmEdqEPrOCkNZ5Vg _Mx7DmNxmEdqEPrOCkNZ5Vg _Mx7DgdxmEdqEPrOCkNZ5Vg _Mx7Dk9xmEdqEPrOCkNZ5Vg _Mx7DitxmEdqEPrOCkNZ5Vg _MxxS1txmEdqEPrOCkNZ5Vg _iY7sMGvsEdqG6fBIPwe-mw _ChRfcGveEdq4DLWZOhbdEA _MxxS2NxmEdqEPrOCkNZ5Vg _Mx7Di9xmEdqEPrOCkNZ5Vg _Mx7DldxmEdqEPrOCkNZ5Vg _MxxSttxmEdqEPrOCkNZ5Vg _rHT3YKOsEdqi_5gqUMOQtA _MxxSltxmEdqEPrOCkNZ5Vg _MxxS3dxmEdqEPrOCkNZ5Vg _MxxSwNxmEdqEPrOCkNZ5Vg _MxxSyNxmEdqEPrOCkNZ5Vg _Mx7DmtxmEdqEPrOCkNZ5Vg _Mx7Dh9xmEdqEPrOCkNZ5Vg _MxxS29xmEdqEPrOCkNZ5Vg _MxxSntxmEdqEPrOCkNZ5Vg _MxxSrdxmEdqEPrOCkNZ5Vg _Mx7Dg9xmEdqEPrOCkNZ5Vg _MxxS0dxmEdqEPrOCkNZ5Vg _MxxSg9xmEdqEPrOCkNZ5Vg _MxxSvdxmEdqEPrOCkNZ5Vg _Mx7DjtxmEdqEPrOCkNZ5Vg _MxxSsdxmEdqEPrOCkNZ5Vg _TUPtYGveEdq4DLWZOhbdEA"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD24txmEdqEPrOCkNZ5Vg" source="UML::Deployments::Nodes" references="_M1f8JNxmEdqEPrOCkNZ5Vg _M1f8HNxmEdqEPrOCkNZ5Vg _M1f7-9xmEdqEPrOCkNZ5Vg _M1f789xmEdqEPrOCkNZ5Vg _M1f8JtxmEdqEPrOCkNZ5Vg _M1WLWdxmEdqEPrOCkNZ5Vg _M1WLVdxmEdqEPrOCkNZ5Vg _M1f8AdxmEdqEPrOCkNZ5Vg _-lGRgHLzEdqziYxiZo0YtA _Mv1Y4NxmEdqEPrOCkNZ5Vg _M1f8JdxmEdqEPrOCkNZ5Vg _M1f8GtxmEdqEPrOCkNZ5Vg _M1WLXNxmEdqEPrOCkNZ5Vg _M1f8BNxmEdqEPrOCkNZ5Vg _M1WLTtxmEdqEPrOCkNZ5Vg _M1f78NxmEdqEPrOCkNZ5Vg _M1f799xmEdqEPrOCkNZ5Vg _M1f8ItxmEdqEPrOCkNZ5Vg _M1WLQ9xmEdqEPrOCkNZ5Vg _M1WLStxmEdqEPrOCkNZ5Vg _Jp_1oGveEdq4DLWZOhbdEA _M1WLRtxmEdqEPrOCkNZ5Vg _M1f8H9xmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD249xmEdqEPrOCkNZ5Vg" source="UML::CommonBehaviors::Communications" references="_M0wVGdxmEdqEPrOCkNZ5Vg _M0AHM9xmEdqEPrOCkNZ5Vg _M0wVJNxmEdqEPrOCkNZ5Vg _M0wVJ9xmEdqEPrOCkNZ5Vg _M0wVGNxmEdqEPrOCkNZ5Vg _M0AHZdxmEdqEPrOCkNZ5Vg _M0AHTtxmEdqEPrOCkNZ5Vg _M0AHcdxmEdqEPrOCkNZ5Vg _M0wVRNxmEdqEPrOCkNZ5Vg _M0AHbdxmEdqEPrOCkNZ5Vg _M0wVQNxmEdqEPrOCkNZ5Vg _M4X2IGveEdq4DLWZOhbdEA _M0wVONxmEdqEPrOCkNZ5Vg _8Ugn8GvtEdqG6fBIPwe-mw _M0AHZ9xmEdqEPrOCkNZ5Vg _MtAHmdxmEdqEPrOCkNZ5Vg _M0wVQ9xmEdqEPrOCkNZ5Vg _M0wVLdxmEdqEPrOCkNZ5Vg _M0wVNdxmEdqEPrOCkNZ5Vg _M0AHP9xmEdqEPrOCkNZ5Vg _M0AHatxmEdqEPrOCkNZ5Vg _M0AHLNxmEdqEPrOCkNZ5Vg _M0AHRtxmEdqEPrOCkNZ5Vg _M0wVKtxmEdqEPrOCkNZ5Vg _Pu3O0HL0EdqziYxiZo0YtA _M0AHNtxmEdqEPrOCkNZ5Vg _M0wVENxmEdqEPrOCkNZ5Vg _M0wVM9xmEdqEPrOCkNZ5Vg _iY7sMGvsEdqG6fBIPwe-mw _M0AHd9xmEdqEPrOCkNZ5Vg _M0wVPtxmEdqEPrOCkNZ5Vg _M0wVINxmEdqEPrOCkNZ5Vg _MtmkNdxmEdqEPrOCkNZ5Vg _M0wVHNxmEdqEPrOCkNZ5Vg _rHT3YKOsEdqi_5gqUMOQtA _M0wVMNxmEdqEPrOCkNZ5Vg _M0AHSdxmEdqEPrOCkNZ5Vg _MtmkNtxmEdqEPrOCkNZ5Vg _M0AHWNxmEdqEPrOCkNZ5Vg _M0wVHdxmEdqEPrOCkNZ5Vg _M0wVIdxmEdqEPrOCkNZ5Vg _M0AHXtxmEdqEPrOCkNZ5Vg _M0AHQtxmEdqEPrOCkNZ5Vg _M0AHL9xmEdqEPrOCkNZ5Vg _M0wVO9xmEdqEPrOCkNZ5Vg _M0AHUtxmEdqEPrOCkNZ5Vg _M0AHdNxmEdqEPrOCkNZ5Vg _M0AHe9xmEdqEPrOCkNZ5Vg _00owUGvdEdq4DLWZOhbdEA _M0wVMtxmEdqEPrOCkNZ5Vg _M0AHJtxmEdqEPrOCkNZ5Vg _M0AHYtxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDD25NxmEdqEPrOCkNZ5Vg" source="UML::Activities::BasicActivities" references="_MzHWktxmEdqEPrOCkNZ5Vg _MzQgqtxmEdqEPrOCkNZ5Vg _MzaRTNxmEdqEPrOCkNZ5Vg _MzQgvdxmEdqEPrOCkNZ5Vg _MzQgotxmEdqEPrOCkNZ5Vg _MzQgeNxmEdqEPrOCkNZ5Vg _MzaRStxmEdqEPrOCkNZ5Vg _MzQgQNxmEdqEPrOCkNZ5Vg _MzaRQ9xmEdqEPrOCkNZ5Vg _MzaRRdxmEdqEPrOCkNZ5Vg _MzaRQdxmEdqEPrOCkNZ5Vg _MzaRQNxmEdqEPrOCkNZ5Vg _MyEN69xmEdqEPrOCkNZ5Vg _MzQgXdxmEdqEPrOCkNZ5Vg _MzQgTdxmEdqEPrOCkNZ5Vg _MzQghNxmEdqEPrOCkNZ5Vg _MyEN3dxmEdqEPrOCkNZ5Vg _MzQgVdxmEdqEPrOCkNZ5Vg _MzQgmtxmEdqEPrOCkNZ5Vg _MzQgptxmEdqEPrOCkNZ5Vg _MzQgttxmEdqEPrOCkNZ5Vg _MzHWnNxmEdqEPrOCkNZ5Vg _MzaRQtxmEdqEPrOCkNZ5Vg _MzaRR9xmEdqEPrOCkNZ5Vg _MyN-cNxmEdqEPrOCkNZ5Vg _Mx7DtNxmEdqEPrOCkNZ5Vg _MzQgUdxmEdqEPrOCkNZ5Vg _MzQgSdxmEdqEPrOCkNZ5Vg _MzQgiNxmEdqEPrOCkNZ5Vg _MzQgb9xmEdqEPrOCkNZ5Vg _MzQgudxmEdqEPrOCkNZ5Vg _MzQgWdxmEdqEPrOCkNZ5Vg _MzQgY9xmEdqEPrOCkNZ5Vg _MzaRRNxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDf7sNxmEdqEPrOCkNZ5Vg" source="UML::Classes::Dependencies" references="_Myg5Z9xmEdqEPrOCkNZ5Vg _6UV2QGwJEdq7X4sGURiZYA _Myqqb9xmEdqEPrOCkNZ5Vg _csVgUGvtEdqG6fBIPwe-mw _Myg5dtxmEdqEPrOCkNZ5Vg _Myg5fNxmEdqEPrOCkNZ5Vg _Mtmkc9xmEdqEPrOCkNZ5Vg _Myg5ZNxmEdqEPrOCkNZ5Vg _Myg5ctxmEdqEPrOCkNZ5Vg _MtTCOdxmEdqEPrOCkNZ5Vg _Myg5YdxmEdqEPrOCkNZ5Vg _Myg5idxmEdqEPrOCkNZ5Vg _MyqqZ9xmEdqEPrOCkNZ5Vg _MyqqYNxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg _Myg5btxmEdqEPrOCkNZ5Vg _rEDGkGwKEdq7X4sGURiZYA _Myqqc9xmEdqEPrOCkNZ5Vg _ZiwkoGwLEdq7X4sGURiZYA _Myg5gNxmEdqEPrOCkNZ5Vg _MyqqYtxmEdqEPrOCkNZ5Vg _Myg5hdxmEdqEPrOCkNZ5Vg _MyqqbdxmEdqEPrOCkNZ5Vg _Myg5edxmEdqEPrOCkNZ5Vg _jKxnwGwLEdq7X4sGURiZYA _MyqqZdxmEdqEPrOCkNZ5Vg _MyqqatxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDf7sdxmEdqEPrOCkNZ5Vg" source="UML::Components::PackagingComponents" references="_M5E0mNxmEdqEPrOCkNZ5Vg _M5E0ltxmEdqEPrOCkNZ5Vg _M5E0ktxmEdqEPrOCkNZ5Vg _DAbfwa69EdqjppZik4kD8A"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDf7stxmEdqEPrOCkNZ5Vg" source="UML::Activities::StructuredActivities" references="_MyN-tdxmEdqEPrOCkNZ5Vg _MyN-x9xmEdqEPrOCkNZ5Vg _MyXvqdxmEdqEPrOCkNZ5Vg _MyN-4dxmEdqEPrOCkNZ5Vg _MyXvntxmEdqEPrOCkNZ5Vg _MyXvh9xmEdqEPrOCkNZ5Vg _MyXvidxmEdqEPrOCkNZ5Vg _MyXvstxmEdqEPrOCkNZ5Vg _MyN-m9xmEdqEPrOCkNZ5Vg _MyN-qNxmEdqEPrOCkNZ5Vg _MyEN69xmEdqEPrOCkNZ5Vg _MyXvlNxmEdqEPrOCkNZ5Vg _MyN-fdxmEdqEPrOCkNZ5Vg _MyXvqtxmEdqEPrOCkNZ5Vg _MyXve9xmEdqEPrOCkNZ5Vg _MyN-v9xmEdqEPrOCkNZ5Vg _MyXvjNxmEdqEPrOCkNZ5Vg _MyN-rNxmEdqEPrOCkNZ5Vg _MyN-ftxmEdqEPrOCkNZ5Vg _MyXvrdxmEdqEPrOCkNZ5Vg _MyN-3dxmEdqEPrOCkNZ5Vg _MyXvotxmEdqEPrOCkNZ5Vg _MyN-1dxmEdqEPrOCkNZ5Vg _MyXvj9xmEdqEPrOCkNZ5Vg _MyXvftxmEdqEPrOCkNZ5Vg _MyXvtNxmEdqEPrOCkNZ5Vg _MyXvodxmEdqEPrOCkNZ5Vg _MyN-2dxmEdqEPrOCkNZ5Vg _MyXvcNxmEdqEPrOCkNZ5Vg _MyEN3dxmEdqEPrOCkNZ5Vg _MyXvnNxmEdqEPrOCkNZ5Vg _MyN-jdxmEdqEPrOCkNZ5Vg _MyXvldxmEdqEPrOCkNZ5Vg _MyN-udxmEdqEPrOCkNZ5Vg _MyEN49xmEdqEPrOCkNZ5Vg _MyENl9xmEdqEPrOCkNZ5Vg _MyN-c9xmEdqEPrOCkNZ5Vg _MyN-y9xmEdqEPrOCkNZ5Vg _MyXvmNxmEdqEPrOCkNZ5Vg _MyN-pNxmEdqEPrOCkNZ5Vg _MyN-oNxmEdqEPrOCkNZ5Vg _MyN-kdxmEdqEPrOCkNZ5Vg _MyXvpdxmEdqEPrOCkNZ5Vg _MyXvptxmEdqEPrOCkNZ5Vg _MyN-z9xmEdqEPrOCkNZ5Vg _MyEN8txmEdqEPrOCkNZ5Vg _MyN-cNxmEdqEPrOCkNZ5Vg _MyXvmdxmEdqEPrOCkNZ5Vg _MyN-r9xmEdqEPrOCkNZ5Vg _MyEN59xmEdqEPrOCkNZ5Vg _MyN-7dxmEdqEPrOCkNZ5Vg _MyN-ldxmEdqEPrOCkNZ5Vg _MyN-w9xmEdqEPrOCkNZ5Vg _MyXvi9xmEdqEPrOCkNZ5Vg _MyXvkNxmEdqEPrOCkNZ5Vg _MyN-vNxmEdqEPrOCkNZ5Vg _MyN-d9xmEdqEPrOCkNZ5Vg _MyN-stxmEdqEPrOCkNZ5Vg _MyN-6dxmEdqEPrOCkNZ5Vg _MyXvsNxmEdqEPrOCkNZ5Vg _MyXveNxmEdqEPrOCkNZ5Vg _MyN-e9xmEdqEPrOCkNZ5Vg _MyEN7txmEdqEPrOCkNZ5Vg _MyXvk9xmEdqEPrOCkNZ5Vg _MyN-htxmEdqEPrOCkNZ5Vg _MyN-5dxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDpssNxmEdqEPrOCkNZ5Vg" source="UML::UseCases" references="_Mz29d9xmEdqEPrOCkNZ5Vg _6UV2QGwJEdq7X4sGURiZYA _M0AHJdxmEdqEPrOCkNZ5Vg _Mz29mtxmEdqEPrOCkNZ5Vg _Mz29QNxmEdqEPrOCkNZ5Vg _Mz29iNxmEdqEPrOCkNZ5Vg _Mz29gtxmEdqEPrOCkNZ5Vg _M0AHItxmEdqEPrOCkNZ5Vg _Mz29SNxmEdqEPrOCkNZ5Vg _Mz29kdxmEdqEPrOCkNZ5Vg _Mz29otxmEdqEPrOCkNZ5Vg _Mz29b9xmEdqEPrOCkNZ5Vg _Mz29WNxmEdqEPrOCkNZ5Vg _Mz29rNxmEdqEPrOCkNZ5Vg _Mz29XNxmEdqEPrOCkNZ5Vg _Mz29qdxmEdqEPrOCkNZ5Vg _Mz29ldxmEdqEPrOCkNZ5Vg _Mz29n9xmEdqEPrOCkNZ5Vg _M0AHINxmEdqEPrOCkNZ5Vg _Mz29RNxmEdqEPrOCkNZ5Vg _Mz29mNxmEdqEPrOCkNZ5Vg _Mz29OdxmEdqEPrOCkNZ5Vg _Mz29MNxmEdqEPrOCkNZ5Vg _Mz29c9xmEdqEPrOCkNZ5Vg _Mz29TNxmEdqEPrOCkNZ5Vg _Mz29jdxmEdqEPrOCkNZ5Vg _Mz29e9xmEdqEPrOCkNZ5Vg _Mz29a9xmEdqEPrOCkNZ5Vg _Mz29VNxmEdqEPrOCkNZ5Vg _Mz29p9xmEdqEPrOCkNZ5Vg _Mz29UNxmEdqEPrOCkNZ5Vg _Mz29rdxmEdqEPrOCkNZ5Vg _Mz29pdxmEdqEPrOCkNZ5Vg _Mz29ndxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDpssdxmEdqEPrOCkNZ5Vg" source="UML::CompositeStructures::Ports" references="_M1MaA9xmEdqEPrOCkNZ5Vg _M1MZ-dxmEdqEPrOCkNZ5Vg _M1DQNNxmEdqEPrOCkNZ5Vg _aOgw0GveEdq4DLWZOhbdEA _M1MaDNxmEdqEPrOCkNZ5Vg _M1DQRtxmEdqEPrOCkNZ5Vg _M1MaDdxmEdqEPrOCkNZ5Vg _M1DQO9xmEdqEPrOCkNZ5Vg _M1DQQ9xmEdqEPrOCkNZ5Vg _M1MaB9xmEdqEPrOCkNZ5Vg _M1DQP9xmEdqEPrOCkNZ5Vg _M1MaENxmEdqEPrOCkNZ5Vg _M1DQN9xmEdqEPrOCkNZ5Vg _M1DQMdxmEdqEPrOCkNZ5Vg _M1MaEdxmEdqEPrOCkNZ5Vg _M1MaANxmEdqEPrOCkNZ5Vg _ZAuvEGveEdq4DLWZOhbdEA _M1MaBNxmEdqEPrOCkNZ5Vg _M1MZ_dxmEdqEPrOCkNZ5Vg _M1MaCdxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDpsstxmEdqEPrOCkNZ5Vg" source="UML::Activities::ExtraStructuredActivities" references="_M5E0jtxmEdqEPrOCkNZ5Vg _M5E0jNxmEdqEPrOCkNZ5Vg _M47DhNxmEdqEPrOCkNZ5Vg _M47DiNxmEdqEPrOCkNZ5Vg _M5E0j9xmEdqEPrOCkNZ5Vg _M5E0e9xmEdqEPrOCkNZ5Vg _M5E0d9xmEdqEPrOCkNZ5Vg _M5E0iNxmEdqEPrOCkNZ5Vg _M5E0b9xmEdqEPrOCkNZ5Vg _M5E0YNxmEdqEPrOCkNZ5Vg _M5E0jdxmEdqEPrOCkNZ5Vg _M5E0c9xmEdqEPrOCkNZ5Vg _M47DktxmEdqEPrOCkNZ5Vg _M47DgdxmEdqEPrOCkNZ5Vg _M47DmdxmEdqEPrOCkNZ5Vg _M5E0idxmEdqEPrOCkNZ5Vg _M5E0f9xmEdqEPrOCkNZ5Vg _M47DldxmEdqEPrOCkNZ5Vg _M5E0i9xmEdqEPrOCkNZ5Vg _M47DjNxmEdqEPrOCkNZ5Vg _MyXveNxmEdqEPrOCkNZ5Vg _M5E0h9xmEdqEPrOCkNZ5Vg _M5E0kNxmEdqEPrOCkNZ5Vg _M47DndxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDpss9xmEdqEPrOCkNZ5Vg" source="UML::Deployments::Artifacts" references="_M1WLENxmEdqEPrOCkNZ5Vg _M1WLHNxmEdqEPrOCkNZ5Vg _M1WLP9xmEdqEPrOCkNZ5Vg _M1WLKdxmEdqEPrOCkNZ5Vg _M1WLJ9xmEdqEPrOCkNZ5Vg _M1WLLNxmEdqEPrOCkNZ5Vg _M1WLMtxmEdqEPrOCkNZ5Vg _M1WLPNxmEdqEPrOCkNZ5Vg _-lGRgHLzEdqziYxiZo0YtA _M1WLLtxmEdqEPrOCkNZ5Vg _M1WLGNxmEdqEPrOCkNZ5Vg _M1WLFNxmEdqEPrOCkNZ5Vg _M1WLDNxmEdqEPrOCkNZ5Vg _M1WLINxmEdqEPrOCkNZ5Vg _M1WLOdxmEdqEPrOCkNZ5Vg _M1WLI9xmEdqEPrOCkNZ5Vg _M1WLNdxmEdqEPrOCkNZ5Vg _M1WLL9xmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDpstNxmEdqEPrOCkNZ5Vg" source="UML::Activities::CompleteStructuredActivities" references="_M47Da9xmEdqEPrOCkNZ5Vg _M47Dd9xmEdqEPrOCkNZ5Vg _M4xSldxmEdqEPrOCkNZ5Vg _M47DdtxmEdqEPrOCkNZ5Vg _M4xSfdxmEdqEPrOCkNZ5Vg _MzQgQNxmEdqEPrOCkNZ5Vg _M4xSmdxmEdqEPrOCkNZ5Vg _MyN-m9xmEdqEPrOCkNZ5Vg _MyEN69xmEdqEPrOCkNZ5Vg _M4xSp9xmEdqEPrOCkNZ5Vg _MyN-rNxmEdqEPrOCkNZ5Vg _M4xSoNxmEdqEPrOCkNZ5Vg _M47Dc9xmEdqEPrOCkNZ5Vg _M47DadxmEdqEPrOCkNZ5Vg _M47DctxmEdqEPrOCkNZ5Vg _M4xSdNxmEdqEPrOCkNZ5Vg _MzQghNxmEdqEPrOCkNZ5Vg _M4xSkdxmEdqEPrOCkNZ5Vg _M47DZtxmEdqEPrOCkNZ5Vg _MyN-udxmEdqEPrOCkNZ5Vg _MzQgVdxmEdqEPrOCkNZ5Vg _M4xSgNxmEdqEPrOCkNZ5Vg _MzaRQtxmEdqEPrOCkNZ5Vg _MyN-z9xmEdqEPrOCkNZ5Vg _M4xSjdxmEdqEPrOCkNZ5Vg _M47DetxmEdqEPrOCkNZ5Vg _M47Df9xmEdqEPrOCkNZ5Vg _M47DbtxmEdqEPrOCkNZ5Vg _M47Db9xmEdqEPrOCkNZ5Vg _M47DfNxmEdqEPrOCkNZ5Vg _M47DZNxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDpstdxmEdqEPrOCkNZ5Vg" source="UML::Components::BasicComponents" references="_M1MaP9xmEdqEPrOCkNZ5Vg _M1WK_9xmEdqEPrOCkNZ5Vg _M1WK8NxmEdqEPrOCkNZ5Vg _M1MaHdxmEdqEPrOCkNZ5Vg _M1MaJdxmEdqEPrOCkNZ5Vg _M1MaIdxmEdqEPrOCkNZ5Vg _M1MaZNxmEdqEPrOCkNZ5Vg _Myz0XdxmEdqEPrOCkNZ5Vg _M1WLAdxmEdqEPrOCkNZ5Vg _M1MaGtxmEdqEPrOCkNZ5Vg _M1WK99xmEdqEPrOCkNZ5Vg _M1MaYNxmEdqEPrOCkNZ5Vg _M1WK9txmEdqEPrOCkNZ5Vg _M1MaOdxmEdqEPrOCkNZ5Vg _M1MaTNxmEdqEPrOCkNZ5Vg _M1WLANxmEdqEPrOCkNZ5Vg _M1WK-dxmEdqEPrOCkNZ5Vg _M1MaKdxmEdqEPrOCkNZ5Vg _M1WK-txmEdqEPrOCkNZ5Vg _M1MaRdxmEdqEPrOCkNZ5Vg _M1MaSNxmEdqEPrOCkNZ5Vg _M1WK_dxmEdqEPrOCkNZ5Vg _M1MaMdxmEdqEPrOCkNZ5Vg _M1WK-NxmEdqEPrOCkNZ5Vg _DAbfwa69EdqjppZik4kD8A"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDpsttxmEdqEPrOCkNZ5Vg" source="UML::Actions::StructuredActions" references="_M3k_1NxmEdqEPrOCkNZ5Vg _M3k_3txmEdqEPrOCkNZ5Vg _M3k_2dxmEdqEPrOCkNZ5Vg _M3k_ltxmEdqEPrOCkNZ5Vg _M3k_ndxmEdqEPrOCkNZ5Vg _M3k_vdxmEdqEPrOCkNZ5Vg _M3k_zNxmEdqEPrOCkNZ5Vg _M3b1wNxmEdqEPrOCkNZ5Vg _M3b1zdxmEdqEPrOCkNZ5Vg _M3b12txmEdqEPrOCkNZ5Vg _M3b1utxmEdqEPrOCkNZ5Vg _M3k_o9xmEdqEPrOCkNZ5Vg _M3k_wtxmEdqEPrOCkNZ5Vg _M3k_29xmEdqEPrOCkNZ5Vg _M3k_rdxmEdqEPrOCkNZ5Vg _M3k_wdxmEdqEPrOCkNZ5Vg _M3k_qtxmEdqEPrOCkNZ5Vg _M3k_xdxmEdqEPrOCkNZ5Vg _M3k_x9xmEdqEPrOCkNZ5Vg _M3k_sdxmEdqEPrOCkNZ5Vg _M3b13txmEdqEPrOCkNZ5Vg _M3k_ptxmEdqEPrOCkNZ5Vg _M3b1xNxmEdqEPrOCkNZ5Vg _M3k_4NxmEdqEPrOCkNZ5Vg _M3b10dxmEdqEPrOCkNZ5Vg _M3k_kNxmEdqEPrOCkNZ5Vg _M3k_z9xmEdqEPrOCkNZ5Vg _M3k_1txmEdqEPrOCkNZ5Vg _M3k_0dxmEdqEPrOCkNZ5Vg _M3k_mdxmEdqEPrOCkNZ5Vg _M3k_ytxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDpst9xmEdqEPrOCkNZ5Vg" source="UML::AuxiliaryConstructs::Models" references="_NVhqMGv0Edq7X4sGURiZYA _M34hntxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDpsuNxmEdqEPrOCkNZ5Vg" source="UML::Interactions::Fragments" references="_M1y27txmEdqEPrOCkNZ5Vg _M1y2_dxmEdqEPrOCkNZ5Vg _M1pGdtxmEdqEPrOCkNZ5Vg _M1pGLtxmEdqEPrOCkNZ5Vg _M1y24dxmEdqEPrOCkNZ5Vg _M1pGKtxmEdqEPrOCkNZ5Vg _M1pGC9xmEdqEPrOCkNZ5Vg _M1pGB9xmEdqEPrOCkNZ5Vg _MzaRUdxmEdqEPrOCkNZ5Vg _MzaRZdxmEdqEPrOCkNZ5Vg _M1y25txmEdqEPrOCkNZ5Vg _M1y3ANxmEdqEPrOCkNZ5Vg _M1f8RtxmEdqEPrOCkNZ5Vg _M1pGftxmEdqEPrOCkNZ5Vg _M1pGV9xmEdqEPrOCkNZ5Vg _M1pGJ9xmEdqEPrOCkNZ5Vg _M1pGd9xmEdqEPrOCkNZ5Vg _M1f8OtxmEdqEPrOCkNZ5Vg _M1pF7txmEdqEPrOCkNZ5Vg _M1y2-NxmEdqEPrOCkNZ5Vg _M1pGR9xmEdqEPrOCkNZ5Vg _M1pGD9xmEdqEPrOCkNZ5Vg _M1pGStxmEdqEPrOCkNZ5Vg _M1pGMtxmEdqEPrOCkNZ5Vg _M1pGW9xmEdqEPrOCkNZ5Vg _M1f8K9xmEdqEPrOCkNZ5Vg _M1y29dxmEdqEPrOCkNZ5Vg _M1pGfNxmEdqEPrOCkNZ5Vg _M1pGGNxmEdqEPrOCkNZ5Vg _M1y289xmEdqEPrOCkNZ5Vg _M1y2_9xmEdqEPrOCkNZ5Vg _M1pGN9xmEdqEPrOCkNZ5Vg _M1y26dxmEdqEPrOCkNZ5Vg _M1y269xmEdqEPrOCkNZ5Vg _M1y2-txmEdqEPrOCkNZ5Vg _M1y25NxmEdqEPrOCkNZ5Vg _M1y2-dxmEdqEPrOCkNZ5Vg _M1y24NxmEdqEPrOCkNZ5Vg _M1pGedxmEdqEPrOCkNZ5Vg _M1pF6txmEdqEPrOCkNZ5Vg _M1f8PtxmEdqEPrOCkNZ5Vg _M1pF4NxmEdqEPrOCkNZ5Vg _M1y29txmEdqEPrOCkNZ5Vg _M1pGTtxmEdqEPrOCkNZ5Vg _M1pGddxmEdqEPrOCkNZ5Vg _MzaRgdxmEdqEPrOCkNZ5Vg _M1f8QtxmEdqEPrOCkNZ5Vg _M1pGO9xmEdqEPrOCkNZ5Vg _M1y28NxmEdqEPrOCkNZ5Vg _M1pF8txmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NDpsudxmEdqEPrOCkNZ5Vg" source="UML::Activities::FundamentalActivities" references="_MyEN9txmEdqEPrOCkNZ5Vg _MyEN69xmEdqEPrOCkNZ5Vg _MyN-fdxmEdqEPrOCkNZ5Vg _MyN-ftxmEdqEPrOCkNZ5Vg _MyEN3dxmEdqEPrOCkNZ5Vg _MyEN49xmEdqEPrOCkNZ5Vg _MyENl9xmEdqEPrOCkNZ5Vg _MyN-c9xmEdqEPrOCkNZ5Vg _MyEN8txmEdqEPrOCkNZ5Vg _MyN-cNxmEdqEPrOCkNZ5Vg _MyEN59xmEdqEPrOCkNZ5Vg _MyN-d9xmEdqEPrOCkNZ5Vg _MyEN-txmEdqEPrOCkNZ5Vg _MyN-e9xmEdqEPrOCkNZ5Vg _MyEN7txmEdqEPrOCkNZ5Vg _MyN-gNxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ND8noNxmEdqEPrOCkNZ5Vg" source="UML::AuxiliaryConstructs::InformationFlows" references="_M3uw8NxmEdqEPrOCkNZ5Vg _M3uw_NxmEdqEPrOCkNZ5Vg _M3uwvtxmEdqEPrOCkNZ5Vg _M3uw_txmEdqEPrOCkNZ5Vg _M3uw09xmEdqEPrOCkNZ5Vg _M3uw39xmEdqEPrOCkNZ5Vg _M3uw29xmEdqEPrOCkNZ5Vg _M34hkdxmEdqEPrOCkNZ5Vg _M3uwwtxmEdqEPrOCkNZ5Vg _M3uw9NxmEdqEPrOCkNZ5Vg _M3uw-dxmEdqEPrOCkNZ5Vg _M3uw69xmEdqEPrOCkNZ5Vg _M34hkNxmEdqEPrOCkNZ5Vg _M34hlNxmEdqEPrOCkNZ5Vg _M3uw99xmEdqEPrOCkNZ5Vg _M34hmNxmEdqEPrOCkNZ5Vg _M3uw7NxmEdqEPrOCkNZ5Vg _M3uw49xmEdqEPrOCkNZ5Vg _M3uwstxmEdqEPrOCkNZ5Vg _M34hmdxmEdqEPrOCkNZ5Vg _M3uw19xmEdqEPrOCkNZ5Vg _M34hldxmEdqEPrOCkNZ5Vg _M3uw89xmEdqEPrOCkNZ5Vg _M3uw59xmEdqEPrOCkNZ5Vg _M3uw79xmEdqEPrOCkNZ5Vg _M3uwz9xmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NEGYoNxmEdqEPrOCkNZ5Vg" source="UML::CompositeStructures::Collaborations" references="_6UV2QGwJEdq7X4sGURiZYA _MzHWiNxmEdqEPrOCkNZ5Vg _MzHWg9xmEdqEPrOCkNZ5Vg _MzHWjdxmEdqEPrOCkNZ5Vg _MzHWe9xmEdqEPrOCkNZ5Vg _MzHWcdxmEdqEPrOCkNZ5Vg _MzHWftxmEdqEPrOCkNZ5Vg _MzHWetxmEdqEPrOCkNZ5Vg _MzHWXNxmEdqEPrOCkNZ5Vg _MzHWadxmEdqEPrOCkNZ5Vg _KyaPMGveEdq4DLWZOhbdEA _MzHWj9xmEdqEPrOCkNZ5Vg _MzHWbdxmEdqEPrOCkNZ5Vg _MzHWitxmEdqEPrOCkNZ5Vg _MzHWhdxmEdqEPrOCkNZ5Vg _MzHWUNxmEdqEPrOCkNZ5Vg _MzHWgNxmEdqEPrOCkNZ5Vg _MzHWZNxmEdqEPrOCkNZ5Vg _MzHWYNxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NEQJoNxmEdqEPrOCkNZ5Vg" source="UML::Classes::AssociationClasses" references="_M5XvbdxmEdqEPrOCkNZ5Vg _M5XvVtxmEdqEPrOCkNZ5Vg _M5XvadxmEdqEPrOCkNZ5Vg _M5XvZdxmEdqEPrOCkNZ5Vg _M5XvXdxmEdqEPrOCkNZ5Vg _Jp_1oGveEdq4DLWZOhbdEA"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NEZTkNxmEdqEPrOCkNZ5Vg" source="UML::CompositeStructures::InvocationActions" references="_M2id59xmEdqEPrOCkNZ5Vg _M2id6NxmEdqEPrOCkNZ5Vg _M2id39xmEdqEPrOCkNZ5Vg _M0AHRtxmEdqEPrOCkNZ5Vg _M2id49xmEdqEPrOCkNZ5Vg _M2id5NxmEdqEPrOCkNZ5Vg _M2id2txmEdqEPrOCkNZ5Vg _Mx7DyNxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NFI6cNxmEdqEPrOCkNZ5Vg" source="UML::AuxiliaryConstructs::Profiles" references="_2QuT0GvdEdq4DLWZOhbdEA _M3SEzdxmEdqEPrOCkNZ5Vg"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NFvXYNxmEdqEPrOCkNZ5Vg" source="UML::CompositeStructures::StructuredClasses" references="_00owUGvdEdq4DLWZOhbdEA"/>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NFvXYdxmEdqEPrOCkNZ5Vg" source="UML::CompositeStructures::StructuredActivities" references="_MyN-htxmEdqEPrOCkNZ5Vg"/>
</eAnnotations>
<packageImport xmi:type="uml:PackageImport" xmi:id="__as3cGvaEdq4DLWZOhbdEA">
<importedPackage xmi:type="uml:Model" href="Ecore.uml#439EC3AE03B5"/>
</packageImport>
<packagedElement xmi:type="uml:PrimitiveType" xmi:id="_XqvEIGvsEdqG6fBIPwe-mw" name="Integer">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2w8rMWCEdqI1bY5Lwi8Hg" annotatedElement="_XqvEIGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MuCpKNxmEdqEPrOCkNZ5Vg" annotatedElement="_XqvEIGvsEdqG6fBIPwe-mw">
<body>An instance of Integer is an element in the (infinite) set of integers (...-2, -1, 0, 1, 2...). It is used for integer attributes and integer expressions in the metamodel.</body>
</ownedComment>
</packagedElement>
<packagedElement xmi:type="uml:PrimitiveType" xmi:id="_UdivYGvsEdqG6fBIPwe-mw" name="Boolean">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2w8rcWCEdqI1bY5Lwi8Hg" annotatedElement="_UdivYGvsEdqG6fBIPwe-mw">
- <body>Boolean is an instance of PrimitiveType. In the metamodel, Boolean defines an enumeration that denotes a logical condition. Its enumeration literals are:
-
- - true: The Boolean condition is satisfied.
-
- - false: The Boolean condition is not satisfied.
-
-
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MuMaENxmEdqEPrOCkNZ5Vg" annotatedElement="_UdivYGvsEdqG6fBIPwe-mw">
+ <body>Boolean is an instance of PrimitiveType. In the metamodel, Boolean defines an enumeration that denotes a logical condition. Its enumeration literals are:&#xD;
+ - true = The Boolean condition is satisfied.&#xD;
+ - false = The Boolean condition is not satisfied.&#xD;
+&#xD;
It is used for Boolean attribute and Boolean expressions in the metamodel, such as OCL expression.</body>
</ownedComment>
</packagedElement>
<packagedElement xmi:type="uml:PrimitiveType" xmi:id="_aAyVgGvsEdqG6fBIPwe-mw" name="String">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2w8rsWCEdqI1bY5Lwi8Hg" annotatedElement="_aAyVgGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MuWLENxmEdqEPrOCkNZ5Vg" annotatedElement="_aAyVgGvsEdqG6fBIPwe-mw">
<body>An instance of String defines a piece of text. The semantics of the string itself depends on its purpose, it can be a comment, computational language expression, OCL expression, etc. It is used for String attributes and String expressions in the metamodel.</body>
</ownedComment>
</packagedElement>
<packagedElement xmi:type="uml:PrimitiveType" xmi:id="_dRZxsGvsEdqG6fBIPwe-mw" name="UnlimitedNatural">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2w8r8WCEdqI1bY5Lwi8Hg" annotatedElement="_dRZxsGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MuWLEdxmEdqEPrOCkNZ5Vg" annotatedElement="_dRZxsGvsEdqG6fBIPwe-mw">
<body>An instance of UnlimitedNatural is an element in the (infinite) set of naturals (0, 1, 2...). The value of infinity is shown using an asterisk ('*').</body>
</ownedComment>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g2LG2MWCEdqI1bY5Lwi8Hg" name="Comment">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG2cWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG2MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MtTCYNxmEdqEPrOCkNZ5Vg" name="Comment">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCYdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCYNxmEdqEPrOCkNZ5Vg">
<body>A comment is a textual annotation that can be attached to a set of elements.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g26trMWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG2MWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MufVBNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCYNxmEdqEPrOCkNZ5Vg">
<body>A comment gives the ability to attach various remarks to elements. A comment carries no semantic force, but may contain information that is useful to a modeler. A comment can be owned by any element.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2LG2sWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2LG28WCEdqI1bY5Lwi8Hg" name="body" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG3MWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG28WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtTCYtxmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtTCY9xmEdqEPrOCkNZ5Vg" name="body" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCZNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCY9xmEdqEPrOCkNZ5Vg">
<body>Specifies a string that is the comment.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g26trcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3EeoMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MufVBdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MufVBtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2LG38WCEdqI1bY5Lwi8Hg" name="annotatedElement" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" association="_g2eBxMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG4MWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG38WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtTCZ9xmEdqEPrOCkNZ5Vg" name="annotatedElement" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" association="_MtmkWtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCaNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCZ9xmEdqEPrOCkNZ5Vg">
<body>References the Element(s) being commented.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3EeocWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3EeosWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MufVB9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MufVCNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_JBgfoKPAEdqi_5gqUMOQtA" name="DirectedRelationship" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01DEsWCEdqI1bY5Lwi8Hg" annotatedElement="_JBgfoKPAEdqi_5gqUMOQtA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsGvq9xmEdqEPrOCkNZ5Vg" annotatedElement="_JBgfoKPAEdqi_5gqUMOQtA">
<body>A directed relationship references one or more source elements and one or more target elements. DirectedRelationship is an abstract metaclass.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g01DE8WCEdqI1bY5Lwi8Hg" general="_DH62EKPAEdqi_5gqUMOQtA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g01DFMWCEdqI1bY5Lwi8Hg" name="source" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_g1Ru4MWCEdqI1bY5Lwi8Hg" association="_g2eByMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01DFcWCEdqI1bY5Lwi8Hg" annotatedElement="_g01DFMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsGvrNxmEdqEPrOCkNZ5Vg" general="_DH62EKPAEdqi_5gqUMOQtA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsGvrdxmEdqEPrOCkNZ5Vg" name="source" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_Msjbb9xmEdqEPrOCkNZ5Vg" association="_MtmkXtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsGvrtxmEdqEPrOCkNZ5Vg" annotatedElement="_MsGvrdxmEdqEPrOCkNZ5Vg">
<body>Specifies the sources of the DirectedRelationship.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3Eeo8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3EepMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MupGANxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MupGAdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g01DGMWCEdqI1bY5Lwi8Hg" name="target" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_g1Ru4MWCEdqI1bY5Lwi8Hg" association="_g2eBy8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01DGcWCEdqI1bY5Lwi8Hg" annotatedElement="_g01DGMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsGvsdxmEdqEPrOCkNZ5Vg" name="target" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_Msjbb9xmEdqEPrOCkNZ5Vg" association="_MtmkYdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsGvstxmEdqEPrOCkNZ5Vg" annotatedElement="_MsGvsdxmEdqEPrOCkNZ5Vg">
<body>Specifies the targets of the DirectedRelationship.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3EepcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3EepsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MupGAtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MupGA9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g3XZrMWCEdqI1bY5Lwi8Hg" name="LiteralSpecification" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZrcWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZrMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mu8A8NxmEdqEPrOCkNZ5Vg" name="LiteralSpecification" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8A8dxmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8A8NxmEdqEPrOCkNZ5Vg">
<body>A literal specification is an abstract specialization of ValueSpecification that identifies a literal constant being modeled.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g3XZrsWCEdqI1bY5Lwi8Hg" general="_g1Ru8MWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mu8A8txmEdqEPrOCkNZ5Vg" general="_Msjbf9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_Dy77oGveEdq4DLWZOhbdEA" name="LiteralInteger">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZr8WCEdqI1bY5Lwi8Hg" annotatedElement="_Dy77oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8A89xmEdqEPrOCkNZ5Vg" annotatedElement="_Dy77oGveEdq4DLWZOhbdEA">
<body>A literal integer contains an Integer-valued attribute.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g3XZsMWCEdqI1bY5Lwi8Hg" general="_g3XZrMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g3XZscWCEdqI1bY5Lwi8Hg" name="value" type="_XqvEIGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZssWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZscWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mu8A9NxmEdqEPrOCkNZ5Vg" general="_Mu8A8NxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mu8A9dxmEdqEPrOCkNZ5Vg" name="value" type="_XqvEIGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8A9txmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8A9dxmEdqEPrOCkNZ5Vg">
<body>The specified Integer value.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_g3XZs8WCEdqI1bY5Lwi8Hg" type="_XqvEIGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_Mu8A99xmEdqEPrOCkNZ5Vg" type="_XqvEIGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_e2SLUGWKEdq-f4093SZhVA" name="stringValue" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_hAkRkGWKEdq-f4093SZhVA" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3XZtMWCEdqI1bY5Lwi8Hg" name="isComputable" isQuery="true" redefinedOperation="_g1Ru9MWCEdqI1bY5Lwi8Hg" bodyCondition="_g3XZtsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZtcWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZtMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Mu8A-NxmEdqEPrOCkNZ5Vg" name="isComputable" isQuery="true" redefinedOperation="_Msjbg9xmEdqEPrOCkNZ5Vg" bodyCondition="_Mu8A-txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8A-dxmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8A-NxmEdqEPrOCkNZ5Vg">
<body>The query isComputable() is redefined to be true.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZtsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3XZtMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZt8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mu8A-txmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Mu8A-NxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mu8A-9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3XZuMWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Mu8A_NxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3XZucWCEdqI1bY5Lwi8Hg" name="integerValue" isQuery="true" redefinedOperation="_g1Ru-cWCEdqI1bY5Lwi8Hg" bodyCondition="_g3XZu8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZusWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZucWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Mu8A_dxmEdqEPrOCkNZ5Vg" name="integerValue" isQuery="true" redefinedOperation="_MsjbiNxmEdqEPrOCkNZ5Vg" bodyCondition="_Mu8A_9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8A_txmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8A_dxmEdqEPrOCkNZ5Vg">
<body>The query integerValue() gives the value.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZu8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3XZucWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZvMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mu8A_9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Mu8A_dxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mu8BANxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = value</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3XZvcWCEdqI1bY5Lwi8Hg" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Mu8BAdxmEdqEPrOCkNZ5Vg" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g3XZvsWCEdqI1bY5Lwi8Hg" name="LiteralString">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZv8WCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZvsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mu8BAtxmEdqEPrOCkNZ5Vg" name="LiteralString">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BA9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8BAtxmEdqEPrOCkNZ5Vg">
<body>A literal string contains a String-valued attribute.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g3XZwMWCEdqI1bY5Lwi8Hg" general="_g3XZrMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g3XZwcWCEdqI1bY5Lwi8Hg" name="value" type="_aAyVgGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZwsWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZwcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mu8BBNxmEdqEPrOCkNZ5Vg" general="_Mu8A8NxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mu8BBdxmEdqEPrOCkNZ5Vg" name="value" type="_aAyVgGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BBtxmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8BBdxmEdqEPrOCkNZ5Vg">
<body>The specified String value.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3XZw8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3XZxMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mu8BB9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mu8BCNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3XZxcWCEdqI1bY5Lwi8Hg" name="isComputable" isQuery="true" redefinedOperation="_g1Ru9MWCEdqI1bY5Lwi8Hg" bodyCondition="_g3XZx8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZxsWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZxcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Mu8BCdxmEdqEPrOCkNZ5Vg" name="isComputable" isQuery="true" redefinedOperation="_Msjbg9xmEdqEPrOCkNZ5Vg" bodyCondition="_Mu8BC9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BCtxmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8BCdxmEdqEPrOCkNZ5Vg">
<body>The query isComputable() is redefined to be true.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZx8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3XZxcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZyMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mu8BC9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Mu8BCdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mu8BDNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3XZycWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Mu8BDdxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3XZysWCEdqI1bY5Lwi8Hg" name="stringValue" isQuery="true" redefinedOperation="_g1RvA8WCEdqI1bY5Lwi8Hg" bodyCondition="_g3XZzMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZy8WCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZysWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Mu8BDtxmEdqEPrOCkNZ5Vg" name="stringValue" isQuery="true" redefinedOperation="_MsjbktxmEdqEPrOCkNZ5Vg" bodyCondition="_Mu8BENxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BD9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8BDtxmEdqEPrOCkNZ5Vg">
<body>The query stringValue() gives the value.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZzMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3XZysWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZzcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mu8BENxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Mu8BDtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mu8BEdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = value</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3XZzsWCEdqI1bY5Lwi8Hg" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Mu8BEtxmEdqEPrOCkNZ5Vg" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_FFMNsGveEdq4DLWZOhbdEA" name="LiteralBoolean">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZz8WCEdqI1bY5Lwi8Hg" annotatedElement="_FFMNsGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BE9xmEdqEPrOCkNZ5Vg" annotatedElement="_FFMNsGveEdq4DLWZOhbdEA">
<body>A literal boolean contains a Boolean-valued attribute.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g3XZ0MWCEdqI1bY5Lwi8Hg" general="_g3XZrMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g3XZ0cWCEdqI1bY5Lwi8Hg" name="value" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZ0sWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZ0cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mu8BFNxmEdqEPrOCkNZ5Vg" general="_Mu8A8NxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mu8BFdxmEdqEPrOCkNZ5Vg" name="value" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BFtxmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8BFdxmEdqEPrOCkNZ5Vg">
<body>The specified Boolean value.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g3XZ08WCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_Mu8BF9xmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_aXS3gGWKEdq-f4093SZhVA" name="stringValue" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_cFthIGWKEdq-f4093SZhVA" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3XZ1MWCEdqI1bY5Lwi8Hg" name="isComputable" isQuery="true" redefinedOperation="_g1Ru9MWCEdqI1bY5Lwi8Hg" bodyCondition="_g3XZ1sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZ1cWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZ1MWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Mu8BGNxmEdqEPrOCkNZ5Vg" name="isComputable" isQuery="true" redefinedOperation="_Msjbg9xmEdqEPrOCkNZ5Vg" bodyCondition="_Mu8BGtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BGdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8BGNxmEdqEPrOCkNZ5Vg">
<body>The query isComputable() is redefined to be true.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZ1sWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3XZ1MWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZ18WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mu8BGtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Mu8BGNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mu8BG9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3XZ2MWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Mu8BHNxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3XZ2cWCEdqI1bY5Lwi8Hg" name="booleanValue" isQuery="true" redefinedOperation="_g1Ru_sWCEdqI1bY5Lwi8Hg" bodyCondition="_g3XZ28WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZ2sWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZ2cWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Mu8BHdxmEdqEPrOCkNZ5Vg" name="booleanValue" isQuery="true" redefinedOperation="_MsjbjdxmEdqEPrOCkNZ5Vg" bodyCondition="_Mu8BH9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BHtxmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8BHdxmEdqEPrOCkNZ5Vg">
<body>The query booleanValue() gives the value.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZ28WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3XZ2cWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZ3MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mu8BH9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Mu8BHdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mu8BINxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = value</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3XZ3cWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Mu8BIdxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g3XZ3sWCEdqI1bY5Lwi8Hg" name="LiteralNull">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZ38WCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZ3sWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mu8BItxmEdqEPrOCkNZ5Vg" name="LiteralNull">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BI9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8BItxmEdqEPrOCkNZ5Vg">
<body>A literal null is used to represent null, i.e., the absence of a value.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g3XZ4MWCEdqI1bY5Lwi8Hg" general="_g3XZrMWCEdqI1bY5Lwi8Hg"/>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3XZ4cWCEdqI1bY5Lwi8Hg" name="isComputable" isQuery="true" redefinedOperation="_g1Ru9MWCEdqI1bY5Lwi8Hg" bodyCondition="_g3XZ48WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZ4sWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZ4cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mu8BJNxmEdqEPrOCkNZ5Vg" general="_Mu8A8NxmEdqEPrOCkNZ5Vg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Mu8BJdxmEdqEPrOCkNZ5Vg" name="isComputable" isQuery="true" redefinedOperation="_Msjbg9xmEdqEPrOCkNZ5Vg" bodyCondition="_Mu8BJ9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BJtxmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8BJdxmEdqEPrOCkNZ5Vg">
<body>The query isComputable() is redefined to be true.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZ48WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3XZ4cWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZ5MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mu8BJ9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Mu8BJdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mu8BKNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3XZ5cWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Mu8BKdxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3XZ5sWCEdqI1bY5Lwi8Hg" name="isNull" isQuery="true" redefinedOperation="_g1RvDcWCEdqI1bY5Lwi8Hg" bodyCondition="_g3XZ6MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZ58WCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZ5sWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Mu8BKtxmEdqEPrOCkNZ5Vg" name="isNull" isQuery="true" redefinedOperation="_MsjbnNxmEdqEPrOCkNZ5Vg" bodyCondition="_Mu8BLNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BK9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8BKtxmEdqEPrOCkNZ5Vg">
<body>The query isNull() returns true.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZ6MWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3XZ5sWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZ6cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mu8BLNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Mu8BKtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mu8BLdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3XZ6sWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Mu8BLtxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g1ua0MWCEdqI1bY5Lwi8Hg" name="Constraint">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua0cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua0MWCEdqI1bY5Lwi8Hg">
- <body>Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_Ms2WYtxmEdqEPrOCkNZ5Vg" name="Constraint">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WY9xmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WYtxmEdqEPrOCkNZ5Vg">
+ <body>Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.&#xD;
Constraint is a condition (a Boolean expression) that restricts the extension of the associated element beyond what is imposed by the other language constructs applied to the element. Constraint contains an optional name, although they are commonly unnamed.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZ68WCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua0MWCEdqI1bY5Lwi8Hg">
- <body>Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BL9xmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WYtxmEdqEPrOCkNZ5Vg">
+ <body>Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.&#xD;
Constraint is a condition (a Boolean expression) that restricts the extension of the associated element beyond what is imposed by the other language constructs applied to that element. Constraint contains an optional name, although they are commonly unnamed.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1ua0sWCEdqI1bY5Lwi8Hg" name="not_apply_to_self" constrainedElement="_g1ua0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua08WCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua0sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Ms2WZNxmEdqEPrOCkNZ5Vg" name="not_apply_to_self" constrainedElement="_Ms2WYtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WZdxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WZNxmEdqEPrOCkNZ5Vg">
<body>A constraint cannot be applied to itself.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g1ua1MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Ms2WZtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>not constrainedElement->includes(self)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1ua1cWCEdqI1bY5Lwi8Hg" name="value_specification_boolean" constrainedElement="_g1ua0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua1sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua1cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Ms2WZ9xmEdqEPrOCkNZ5Vg" name="value_specification_boolean" constrainedElement="_Ms2WYtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WaNxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WZ9xmEdqEPrOCkNZ5Vg">
<body>The value specification for a constraint must evaluate to a Boolean value.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g1ua18WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Ms2WadxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.specification().booleanValue().isOclKindOf(Boolean)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZ7MWCEdqI1bY5Lwi8Hg" name="boolean_value" constrainedElement="_g1ua0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZ7cWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZ7MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mu8BMNxmEdqEPrOCkNZ5Vg" name="boolean_value" constrainedElement="_Ms2WYtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BMdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8BMNxmEdqEPrOCkNZ5Vg">
<body>The value specification for a constraint must evaluate to a Boolean value.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZ7sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mu8BMtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZ78WCEdqI1bY5Lwi8Hg" name="no_side_effects" constrainedElement="_g1ua0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZ8MWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZ78WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mu8BM9xmEdqEPrOCkNZ5Vg" name="no_side_effects" constrainedElement="_Ms2WYtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BNNxmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8BM9xmEdqEPrOCkNZ5Vg">
<body>Evaluating the value specification for a constraint must not have side effects.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZ8cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mu8BNdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZ8sWCEdqI1bY5Lwi8Hg" name="not_applied_to_self" constrainedElement="_g1ua0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZ88WCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZ8sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mu8BNtxmEdqEPrOCkNZ5Vg" name="not_applied_to_self" constrainedElement="_Ms2WYtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BN9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mu8BNtxmEdqEPrOCkNZ5Vg">
<body>A constraint cannot be applied to itself.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZ9MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mu8BONxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>not constrainedElement->includes(self)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1ua2MWCEdqI1bY5Lwi8Hg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ua2cWCEdqI1bY5Lwi8Hg" name="constrainedElement" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" isOrdered="true" association="_g2eB1MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua2sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua2cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Ms2WatxmEdqEPrOCkNZ5Vg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2Wa9xmEdqEPrOCkNZ5Vg" name="constrainedElement" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" isOrdered="true" association="_MtmkatxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WbNxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2Wa9xmEdqEPrOCkNZ5Vg">
<body>The ordered set of Elements referenced by this Constraint.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3gjgMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3gjgcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mu8BOdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mu8BOtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ua3cWCEdqI1bY5Lwi8Hg" name="specification" visibility="public" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g2eB1sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua3sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua3cWCEdqI1bY5Lwi8Hg">
- <body>A condition that must be true when evaluated in order for the constraint to be satisfied.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2Wb9xmEdqEPrOCkNZ5Vg" name="specification" visibility="public" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MtmkbNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WcNxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2Wb9xmEdqEPrOCkNZ5Vg">
+ <body>A condition that must be true when evaluated in order for the constraint to be satisfied.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3gjgsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua3cWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BO9xmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2Wb9xmEdqEPrOCkNZ5Vg">
<body>A condition that must be true when evaluated in order for the constraint to be satisfied.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3gjg8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3gjhMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mu8BPNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mu8BPdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ua4cWCEdqI1bY5Lwi8Hg" name="context" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_g2eCA8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3gjhcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua4cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2Wc9xmEdqEPrOCkNZ5Vg" name="context" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_MtmkmdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mu8BPtxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2Wc9xmEdqEPrOCkNZ5Vg">
<body>Specifies the namespace that owns the NamedElement.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3gjhsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3gjh8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mu8BP9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mu8BQNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_RPl78GwIEdq7X4sGURiZYA" name="ElementImport">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14L8MWCEdqI1bY5Lwi8Hg" annotatedElement="_RPl78GwIEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHpNxmEdqEPrOCkNZ5Vg" annotatedElement="_RPl78GwIEdq7X4sGURiZYA">
<body>An element import is defined as a directed relationship between an importing namespace and a packageable element. The name of the packageable element or its alias is to be added to the namespace of the importing namespace. It is also possible to control whether the imported element can be further imported.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g14L8cWCEdqI1bY5Lwi8Hg" name="visibility_public_or_private" constrainedElement="_RPl78GwIEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14L8sWCEdqI1bY5Lwi8Hg" annotatedElement="_g14L8cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtAHpdxmEdqEPrOCkNZ5Vg" name="visibility_public_or_private" constrainedElement="_RPl78GwIEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHptxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHpdxmEdqEPrOCkNZ5Vg">
<body>The visibility of an ElementImport is either public or private.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3gjiMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mu8BQdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.visibility = #public or self.visibility = #private</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g14L9MWCEdqI1bY5Lwi8Hg" name="imported_element_is_public" constrainedElement="_RPl78GwIEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14L9cWCEdqI1bY5Lwi8Hg" annotatedElement="_g14L9MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtAHqNxmEdqEPrOCkNZ5Vg" name="imported_element_is_public" constrainedElement="_RPl78GwIEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHqdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHqNxmEdqEPrOCkNZ5Vg">
<body>An importedElement has either public visibility or no visibility at all.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3gjicWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mu8BQtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.importedElement.visibility.notEmpty() implies self.importedElement.visibility = #public</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g14L98WCEdqI1bY5Lwi8Hg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g14L-MWCEdqI1bY5Lwi8Hg" name="visibility" visibility="public" type="_AyM_oGwMEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14L-cWCEdqI1bY5Lwi8Hg" annotatedElement="_g14L-MWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtAHq9xmEdqEPrOCkNZ5Vg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHrNxmEdqEPrOCkNZ5Vg" name="visibility" visibility="public" type="_AyM_oGwMEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHrdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHrNxmEdqEPrOCkNZ5Vg">
<body>Specifies the visibility of the imported PackageableElement within the importing Package. The default visibility is the same as that of the imported element. If the imported element does not have a visibility, it is possible to add visibility to the element import.</body>
</ownedComment>
- <defaultValue xmi:type="uml:InstanceValue" xmi:id="_g3gjisWCEdqI1bY5Lwi8Hg" type="_AyM_oGwMEdq7X4sGURiZYA" instance="_g2LG9sWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_Mu8BQ9xmEdqEPrOCkNZ5Vg" type="_AyM_oGwMEdq7X4sGURiZYA" instance="_MtTCftxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g14L-8WCEdqI1bY5Lwi8Hg" name="alias" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14L_MWCEdqI1bY5Lwi8Hg" annotatedElement="_g14L-8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHr9xmEdqEPrOCkNZ5Vg" name="alias" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHsNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHr9xmEdqEPrOCkNZ5Vg">
<body>Specifies the name that should be added to the namespace of the importing Package in lieu of the name of the imported PackagableElement. The aliased name must not clash with any other member name in the importing Package. By default, no alias is used.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3gji8WCEdqI1bY5Lwi8Hg" annotatedElement="_g14L-8WCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvFx8NxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHr9xmEdqEPrOCkNZ5Vg">
<body>Specifies the name that should be added to the namespace of the importing Pack-age in lieu of the name of the imported PackagableElement. The aliased name must not clash with any other member name in the importing Package. By default, no alias is used.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3gjjMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3gjjcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvFx8dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvFx8txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g14L_8WCEdqI1bY5Lwi8Hg" name="importedElement" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" subsettedProperty="_g01DGMWCEdqI1bY5Lwi8Hg" association="_g2UQ7MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14MAMWCEdqI1bY5Lwi8Hg" annotatedElement="_g14L_8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHs9xmEdqEPrOCkNZ5Vg" name="importedElement" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" subsettedProperty="_MsGvsdxmEdqEPrOCkNZ5Vg" association="_MtmkPdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHtNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHs9xmEdqEPrOCkNZ5Vg">
<body>Specifies the PackageableElement whose name is to be added to a Namespace.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3gjjsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3gjj8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvFx89xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvFx9NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g14MA8WCEdqI1bY5Lwi8Hg" name="importingNamespace" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" subsettedProperty="_g01DFMWCEdqI1bY5Lwi8Hg _g01DJ8WCEdqI1bY5Lwi8Hg" association="_g2UQ78WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14MBMWCEdqI1bY5Lwi8Hg" annotatedElement="_g14MA8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtJ4QNxmEdqEPrOCkNZ5Vg" name="importingNamespace" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" subsettedProperty="_MsGvrdxmEdqEPrOCkNZ5Vg _MsQga9xmEdqEPrOCkNZ5Vg" association="_MtmkQNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4QdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4QNxmEdqEPrOCkNZ5Vg">
<body>Specifies the Namespace that imports a PackageableElement from another Package.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3gjkMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3gjkcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvFx9dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvFx9txmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g14MB8WCEdqI1bY5Lwi8Hg" name="getName" visibility="public" isQuery="true" bodyCondition="_g14MCcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14MCMWCEdqI1bY5Lwi8Hg" annotatedElement="_g14MB8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtJ4RNxmEdqEPrOCkNZ5Vg" name="getName" visibility="public" isQuery="true" bodyCondition="_MtJ4RtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4RdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4RNxmEdqEPrOCkNZ5Vg">
<body>The query getName() returns the name under which the imported PackageableElement will be known in the importing namespace.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g14MCcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g14MB8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3gjksWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtJ4RtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtJ4RNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvFx99xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if self.alias->notEmpty() then&#xA; self.alias&#xA;else&#xA; self.importedElement.name&#xA;endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g14MC8WCEdqI1bY5Lwi8Hg" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtJ4SNxmEdqEPrOCkNZ5Vg" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_Gjgl0GveEdq4DLWZOhbdEA" name="MultiplicityElement" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-z98WCEdqI1bY5Lwi8Hg" annotatedElement="_Gjgl0GveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQghtxmEdqEPrOCkNZ5Vg" annotatedElement="_Gjgl0GveEdq4DLWZOhbdEA">
<body>A MultiplicityElement is an abstract metaclass which includes optional attributes for defining the bounds of a multiplicity. A MultiplicityElement also includes specifications of whether the values in an instantiation of this element must be unique or ordered.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0-z-MWCEdqI1bY5Lwi8Hg" name="upper_gt_0" constrainedElement="_Gjgl0GveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-z-cWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-z-MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgh9xmEdqEPrOCkNZ5Vg" name="upper_gt_0" constrainedElement="_Gjgl0GveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgiNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgh9xmEdqEPrOCkNZ5Vg">
<body>A multiplicity must define at least one valid cardinality that is greater than zero.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3qUgMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvFx-NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>upperBound()->notEmpty() implies upperBound() > 0</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0-z_sWCEdqI1bY5Lwi8Hg" name="lower_ge_0" constrainedElement="_Gjgl0GveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-z_8WCEdqI1bY5Lwi8Hg" annotatedElement="_g0-z_sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgjdxmEdqEPrOCkNZ5Vg" name="lower_ge_0" constrainedElement="_Gjgl0GveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgjtxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgjdxmEdqEPrOCkNZ5Vg">
<body>The lower bound must be a non-negative integer literal.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3qUgcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvFx-dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>lowerBound()->notEmpty() implies lowerBound() >= 0</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0-z-8WCEdqI1bY5Lwi8Hg" name="upper_ge_lower" constrainedElement="_Gjgl0GveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-z_MWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-z-8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgitxmEdqEPrOCkNZ5Vg" name="upper_ge_lower" constrainedElement="_Gjgl0GveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgi9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgitxmEdqEPrOCkNZ5Vg">
<body>The upper bound must be greater than or equal to the lower bound.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3qUgsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvFx-txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(upperBound()->notEmpty() and lowerBound()->notEmpty()) implies upperBound() >= lowerBound()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3qUg8WCEdqI1bY5Lwi8Hg" name="value_specification_no_side_effects" constrainedElement="_Gjgl0GveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3qUhMWCEdqI1bY5Lwi8Hg" annotatedElement="_g3qUg8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MvFx-9xmEdqEPrOCkNZ5Vg" name="value_specification_no_side_effects" constrainedElement="_Gjgl0GveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvFx_NxmEdqEPrOCkNZ5Vg" annotatedElement="_MvFx-9xmEdqEPrOCkNZ5Vg">
<body>If a non-literal ValueSpecification is used for the lower or upper bound, then evaluating that specification must not have side effects.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3qUhcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvFx_dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3qUhsWCEdqI1bY5Lwi8Hg" name="value_specification_constant" constrainedElement="_Gjgl0GveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3qUh8WCEdqI1bY5Lwi8Hg" annotatedElement="_g3qUhsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MvFx_txmEdqEPrOCkNZ5Vg" name="value_specification_constant" constrainedElement="_Gjgl0GveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvFx_9xmEdqEPrOCkNZ5Vg" annotatedElement="_MvFx_txmEdqEPrOCkNZ5Vg">
<body>If a non-literal ValueSpecification is used for the lower or upper bound, then that specification must be a constant expression.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3qUiMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvFyANxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g0-0AcWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g0-0AsWCEdqI1bY5Lwi8Hg" name="isOrdered" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-0A8WCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0AsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsQgkNxmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsQgkdxmEdqEPrOCkNZ5Vg" name="isOrdered" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgktxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgkdxmEdqEPrOCkNZ5Vg">
<body>For a multivalued multiplicity, this attribute specifies whether the values in an instantiation of this element are sequentially ordered..</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3qUicWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0AsWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvFyAdxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgkdxmEdqEPrOCkNZ5Vg">
<body>For a multivalued multiplicity, this attribute specifies whether the values in an instantiation of this element are sequentially ordered.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g3qUisWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MvFyAtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g0-0BcWCEdqI1bY5Lwi8Hg" name="isUnique" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-0BsWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0BcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsQglNxmEdqEPrOCkNZ5Vg" name="isUnique" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgldxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQglNxmEdqEPrOCkNZ5Vg">
<body>For a multivalued multiplicity, this attributes specifies whether the values in an instantiation of this element are unique.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g3qUi8WCEdqI1bY5Lwi8Hg" value="true"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MvFyA9xmEdqEPrOCkNZ5Vg" value="true"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g0-0DcWCEdqI1bY5Lwi8Hg" name="upper" visibility="public" type="_dRZxsGvsEdqG6fBIPwe-mw" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-0DsWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0DcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsQgnNxmEdqEPrOCkNZ5Vg" name="upper" visibility="public" type="_dRZxsGvsEdqG6fBIPwe-mw" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgndxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgnNxmEdqEPrOCkNZ5Vg">
<body>Specifies the upper bound of the multiplicity interval.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3qUjMWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0DcWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvFyBNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgnNxmEdqEPrOCkNZ5Vg">
<body>Specifies the upper bound of the multiplicity interval, if it is expressed as an unlimited natural.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3qUjcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3qUjsWCEdqI1bY5Lwi8Hg"/>
- <defaultValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3qUj8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvFyBdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvFyBtxmEdqEPrOCkNZ5Vg"/>
+ <defaultValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvFyB9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g0-0CMWCEdqI1bY5Lwi8Hg" name="lower" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-0CcWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0CMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsQgl9xmEdqEPrOCkNZ5Vg" name="lower" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgmNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgl9xmEdqEPrOCkNZ5Vg">
<body>Specifies the lower bound of the multiplicity interval.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3qUkMWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0CMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvFyCNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgl9xmEdqEPrOCkNZ5Vg">
<body>Specifies the lower bound of the multiplicity interval, if it is expressed as an integer.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3qUkcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3qUksWCEdqI1bY5Lwi8Hg"/>
- <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_g3qUk8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvFyCdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvFyCtxmEdqEPrOCkNZ5Vg"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_MvFyC9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g3qUlMWCEdqI1bY5Lwi8Hg" name="upperValue" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g7Fb8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3qUlcWCEdqI1bY5Lwi8Hg" annotatedElement="_g3qUlMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MvO74NxmEdqEPrOCkNZ5Vg" name="upperValue" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MxUmn9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvO74dxmEdqEPrOCkNZ5Vg" annotatedElement="_MvO74NxmEdqEPrOCkNZ5Vg">
<body>The specification of the upper bound for this multiplicity.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3qUlsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3qUl8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvO74txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvO749xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g3qUmMWCEdqI1bY5Lwi8Hg" name="lowerValue" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g7Fb9cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3qUmcWCEdqI1bY5Lwi8Hg" annotatedElement="_g3qUmMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MvO75NxmEdqEPrOCkNZ5Vg" name="lowerValue" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MxUmpNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvO75dxmEdqEPrOCkNZ5Vg" annotatedElement="_MvO75NxmEdqEPrOCkNZ5Vg">
<body>The specification of the lower bound for this multiplicity.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3qUmsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3qUm8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvO75txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvO759xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_qtCaIFYkEdqB6vblk3tuMA" name="setLower" visibility="protected">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_scWboFYkEdqB6vblk3tuMA" name="newLower" visibility="protected" type="_XqvEIGvsEdqG6fBIPwe-mw" effect="read"/>
@@ -527,345 +520,339 @@ Constraint is a condition (a Boolean expression) that restricts the extension of
<ownedOperation xmi:type="uml:Operation" xmi:id="_vlEgEFYkEdqB6vblk3tuMA" name="setUpper" visibility="protected">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_xJp4QFYkEdqB6vblk3tuMA" name="newUpper" visibility="protected" type="_dRZxsGvsEdqG6fBIPwe-mw" effect="read"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3qUnMWCEdqI1bY5Lwi8Hg" name="lower" isQuery="true" bodyCondition="_g3qUnsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3qUncWCEdqI1bY5Lwi8Hg" annotatedElement="_g3qUnMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MvO76NxmEdqEPrOCkNZ5Vg" name="lower" isQuery="true" bodyCondition="_MvO76txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvO76dxmEdqEPrOCkNZ5Vg" annotatedElement="_MvO76NxmEdqEPrOCkNZ5Vg">
<body>The derived lower attribute must equal the lowerBound.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3qUnsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3qUnMWCEdqI1bY5Lwi8Hg _g0-0CMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3qUn8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MvO76txmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MvO76NxmEdqEPrOCkNZ5Vg _MsQgl9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvO769xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = lowerBound()</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3qUoMWCEdqI1bY5Lwi8Hg" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MvO77NxmEdqEPrOCkNZ5Vg" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3qUocWCEdqI1bY5Lwi8Hg" name="upper" isQuery="true" bodyCondition="_g3qUo8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3qUosWCEdqI1bY5Lwi8Hg" annotatedElement="_g3qUocWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MvO77dxmEdqEPrOCkNZ5Vg" name="upper" isQuery="true" bodyCondition="_MvO779xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvO77txmEdqEPrOCkNZ5Vg" annotatedElement="_MvO77dxmEdqEPrOCkNZ5Vg">
<body>The derived upper attribute must equal the upperBound.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3qUo8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3qUocWCEdqI1bY5Lwi8Hg _g0-0DcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3qUpMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MvO779xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MvO77dxmEdqEPrOCkNZ5Vg _MsQgnNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvO78NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = upperBound()</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3qUpcWCEdqI1bY5Lwi8Hg" type="_dRZxsGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MvO78dxmEdqEPrOCkNZ5Vg" type="_dRZxsGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g0-0EsWCEdqI1bY5Lwi8Hg" name="isMultivalued" visibility="public" isQuery="true" precondition="_g0-0FMWCEdqI1bY5Lwi8Hg" bodyCondition="_g0-0FsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-0E8WCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0EsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsQgodxmEdqEPrOCkNZ5Vg" name="isMultivalued" visibility="public" isQuery="true" precondition="_MsQgo9xmEdqEPrOCkNZ5Vg" bodyCondition="_MsQgpdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgotxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgodxmEdqEPrOCkNZ5Vg">
<body>The query isMultivalued() checks whether this multiplicity has an upper bound greater than one.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0-0FMWCEdqI1bY5Lwi8Hg" constrainedElement="_g0-0EsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3qUpsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgo9xmEdqEPrOCkNZ5Vg" constrainedElement="_MsQgodxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvO78txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>upperBound()->notEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0-0FsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g0-0EsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3qUp8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgpdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsQgodxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvO789xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = upperBound() > 1</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0-0GMWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsQgp9xmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g0-0IcWCEdqI1bY5Lwi8Hg" name="includesCardinality" visibility="public" isQuery="true" precondition="_g0-0I8WCEdqI1bY5Lwi8Hg" bodyCondition="_g0-0JcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-0IsWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0IcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsQgsNxmEdqEPrOCkNZ5Vg" name="includesCardinality" visibility="public" isQuery="true" precondition="_MsQgstxmEdqEPrOCkNZ5Vg" bodyCondition="_MsQgtNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgsdxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgsNxmEdqEPrOCkNZ5Vg">
<body>The query includesCardinality() checks whether the specified cardinality is valid for this multiplicity.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0-0I8WCEdqI1bY5Lwi8Hg" constrainedElement="_g0-0IcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g30FgMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgstxmEdqEPrOCkNZ5Vg" constrainedElement="_MsQgsNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvO79NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>upperBound()->notEmpty() and lowerBound()->notEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0-0JcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g0-0IcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g30FgcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgtNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsQgsNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvO79dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = (lowerBound() &lt;= C) and (upperBound() >= C)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0-0J8WCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0-0KMWCEdqI1bY5Lwi8Hg" name="C" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsQgttxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsQgt9xmEdqEPrOCkNZ5Vg" name="C" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g0-0GcWCEdqI1bY5Lwi8Hg" name="includesMultiplicity" visibility="public" isQuery="true" precondition="_g0-0G8WCEdqI1bY5Lwi8Hg" bodyCondition="_g0-0HcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-0GsWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0GcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsQgqNxmEdqEPrOCkNZ5Vg" name="includesMultiplicity" visibility="public" isQuery="true" precondition="_MsQgqtxmEdqEPrOCkNZ5Vg" bodyCondition="_MsQgrNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgqdxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgqNxmEdqEPrOCkNZ5Vg">
<body>The query includesMultiplicity() checks whether this multiplicity includes all the cardinalities allowed by the specified multiplicity.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0-0G8WCEdqI1bY5Lwi8Hg" constrainedElement="_g0-0GcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g30FgsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgqtxmEdqEPrOCkNZ5Vg" constrainedElement="_MsQgqNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvO79txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.upperBound()->notEmpty() and self.lowerBound()->notEmpty()&#xA;and M.upperBound()->notEmpty() and M.lowerBound()->notEmpty()&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0-0HcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g0-0GcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g30Fg8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgrNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsQgqNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvO799xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = (self.lowerBound() &lt;= M.lowerBound()) and (self.upperBound() >= M.upperBound())</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0-0H8WCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0-0IMWCEdqI1bY5Lwi8Hg" name="M" visibility="public" type="_Gjgl0GveEdq4DLWZOhbdEA"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsQgrtxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsQgr9xmEdqEPrOCkNZ5Vg" name="M" visibility="public" type="_Gjgl0GveEdq4DLWZOhbdEA"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g0-0KcWCEdqI1bY5Lwi8Hg" name="lowerBound" visibility="public" isQuery="true" bodyCondition="_g0-0K8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-0KsWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0KcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsQguNxmEdqEPrOCkNZ5Vg" name="lowerBound" visibility="public" isQuery="true" bodyCondition="_MsQgutxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgudxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQguNxmEdqEPrOCkNZ5Vg">
<body>The query lowerBound() returns the lower bound of the multiplicity as an integer.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0-0K8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g0-0KcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g30FhMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgutxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsQguNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvO7-NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if lowerValue->isEmpty() then 1 else lowerValue.integerValue() endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0-0LcWCEdqI1bY5Lwi8Hg" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsQgvNxmEdqEPrOCkNZ5Vg" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g0-0LsWCEdqI1bY5Lwi8Hg" name="upperBound" visibility="public" isQuery="true" bodyCondition="_g0-0MMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-0L8WCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0LsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsaRYNxmEdqEPrOCkNZ5Vg" name="upperBound" visibility="public" isQuery="true" bodyCondition="_MsaRYtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRYdxmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRYNxmEdqEPrOCkNZ5Vg">
<body>The query upperBound() returns the upper bound of the multiplicity for a bounded multiplicity as an unlimited natural.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0-0MMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g0-0LsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g30FhcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsaRYtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsaRYNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvO7-dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if upperValue->isEmpty() then 1 else upperValue.unlimitedValue() endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0-0MsWCEdqI1bY5Lwi8Hg" visibility="public" type="_dRZxsGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsaRZNxmEdqEPrOCkNZ5Vg" visibility="public" type="_dRZxsGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g1Ru6cWCEdqI1bY5Lwi8Hg" name="TypedElement" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1Ru6sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1Ru6cWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MsjbeNxmEdqEPrOCkNZ5Vg" name="TypedElement" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbedxmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbeNxmEdqEPrOCkNZ5Vg">
<body>A typed element is an element that has a type that serves as a constraint on the range of values the element can represent. Typed element is an abstract metaclass.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g30FhsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1Ru6cWCEdqI1bY5Lwi8Hg">
- <body>A typed element is an element that has a type that serves as a constraint on the range of values the element can represent.
-
-Typed element is an abstract metaclass.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvO7-txmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbeNxmEdqEPrOCkNZ5Vg">
+ <body>A typed element is an element that has a type that serves as a constraint on the range of values the element can represent.&#xD;
+Typed element is an abstract metaclass.&#xD;
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1Ru68WCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1Ru7MWCEdqI1bY5Lwi8Hg" name="type" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" association="_g2UQsMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1Ru7cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1Ru7MWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsjbetxmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Msjbe9xmEdqEPrOCkNZ5Vg" name="type" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" association="_MtczMNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbfNxmEdqEPrOCkNZ5Vg" annotatedElement="_Msjbe9xmEdqEPrOCkNZ5Vg">
<body>Redefines the corresponding property from Basic to derive this information from the return result for this Operation.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g30Fh8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1Ru7MWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvO7-9xmEdqEPrOCkNZ5Vg" annotatedElement="_Msjbe9xmEdqEPrOCkNZ5Vg">
<body>The type of the TypedElement.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g30FiMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g30FicWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvO7_NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvO7_dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g0-z8MWCEdqI1bY5Lwi8Hg" name="Feature" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-z8cWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-z8MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MsQgf9xmEdqEPrOCkNZ5Vg" name="Feature" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQggNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgf9xmEdqEPrOCkNZ5Vg">
<body>A feature declares a behavioral or structural characteristic of instances of classifiers. Feature is an abstract metaclass.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g0-z8sWCEdqI1bY5Lwi8Hg" general="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5AYUMWCEdqI1bY5Lwi8Hg" name="isStatic" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5AYUcWCEdqI1bY5Lwi8Hg" annotatedElement="_g5AYUMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsQggdxmEdqEPrOCkNZ5Vg" general="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mvrn0NxmEdqEPrOCkNZ5Vg" name="isStatic" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mvrn0dxmEdqEPrOCkNZ5Vg" annotatedElement="_Mvrn0NxmEdqEPrOCkNZ5Vg">
<body>Specifies whether this feature characterizes individual instances classified by the classifier (false) or the classifier itself (true).</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g5AYUsWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_Mvrn0txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g0-z88WCEdqI1bY5Lwi8Hg" name="featuringClassifier" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_g2eB0sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-z9MWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-z88WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsQggtxmEdqEPrOCkNZ5Vg" name="featuringClassifier" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_MtmkaNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgg9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsQggtxmEdqEPrOCkNZ5Vg">
<body>Redefines the corresponding association in Abstractions.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5AYU8WCEdqI1bY5Lwi8Hg" annotatedElement="_g0-z88WCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mvrn09xmEdqEPrOCkNZ5Vg" annotatedElement="_MsQggtxmEdqEPrOCkNZ5Vg">
<body>The Classifiers that have this Feature as a feature.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5AYVMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5AYVcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mvrn1NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mvrn1dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g1H-GcWCEdqI1bY5Lwi8Hg" name="RedefinableElement" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H-GsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H-GcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MsjbUNxmEdqEPrOCkNZ5Vg" name="RedefinableElement" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbUdxmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbUNxmEdqEPrOCkNZ5Vg">
<body>A redefinable element is an element that, when defined in the context of a classifier, can be redefined more specifically or differently in the context of another classifier that specializes (directly or indirectly) the context classifier. </body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5AYVsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H-GcWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mvrn1txmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbUNxmEdqEPrOCkNZ5Vg">
<body>A redefinable element is a named element that can be redefined in the context of a generalization. RedefinableElement is an abstract metaclass.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1H-G8WCEdqI1bY5Lwi8Hg" name="redefinition_context_valid" constrainedElement="_g1H-GcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H-HMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H-G8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsjbUtxmEdqEPrOCkNZ5Vg" name="redefinition_context_valid" constrainedElement="_MsjbUNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbU9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbUtxmEdqEPrOCkNZ5Vg">
<body>At least one of the redefinition contexts of the redefining element must be a specialization of at least one of the redefinition contexts for each redefined element.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5AYV8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvrn19xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.redefinedElement->forAll(e | self.isRedefinitionContextValid(e))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1H-HsWCEdqI1bY5Lwi8Hg" name="redefinition_consistent" constrainedElement="_g1H-GcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H-H8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1H-HsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsjbVdxmEdqEPrOCkNZ5Vg" name="redefinition_consistent" constrainedElement="_MsjbUNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbVtxmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbVdxmEdqEPrOCkNZ5Vg">
<body>A redefining element must be consistent with each redefined element.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5AYWMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvrn2NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.redefinedElement->forAll(re | re.isConsistentWith(self))</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1H-IcWCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5AYWcWCEdqI1bY5Lwi8Hg" name="isLeaf" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5AYWsWCEdqI1bY5Lwi8Hg" annotatedElement="_g5AYWcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsjbWNxmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mvrn2dxmEdqEPrOCkNZ5Vg" name="isLeaf" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mvrn2txmEdqEPrOCkNZ5Vg" annotatedElement="_Mvrn2dxmEdqEPrOCkNZ5Vg">
<body>Indicates whether it is possible to further specialize a RedefinableElement. If the value is true, then it is not possible to further specialize the RedefinableElement.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g5AYW8WCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_Mvrn29xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1H-JsWCEdqI1bY5Lwi8Hg" name="redefinedElement" visibility="public" type="_g1H-GcWCEdqI1bY5Lwi8Hg" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_g2eB0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H-J8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1H-JsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsjbXdxmEdqEPrOCkNZ5Vg" name="redefinedElement" visibility="public" type="_MsjbUNxmEdqEPrOCkNZ5Vg" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_MtmkZtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbXtxmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbXdxmEdqEPrOCkNZ5Vg">
<body>The redefinable element that is being redefined by this element.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5AYXMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5AYXcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mvrn3NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mvrn3dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1H-IsWCEdqI1bY5Lwi8Hg" name="redefinitionContext" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_g2eBzsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H-I8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1H-IsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsjbWdxmEdqEPrOCkNZ5Vg" name="redefinitionContext" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_MtmkZNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbWtxmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbWdxmEdqEPrOCkNZ5Vg">
<body>References the contexts that this element may be redefined from.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5AYXsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5AYX8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mvrn3txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mvrn39xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1H-KsWCEdqI1bY5Lwi8Hg" name="isConsistentWith" visibility="public" isQuery="true" precondition="_g5AYYMWCEdqI1bY5Lwi8Hg" bodyCondition="_g1H-LMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H-K8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1H-KsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsjbYdxmEdqEPrOCkNZ5Vg" name="isConsistentWith" visibility="public" isQuery="true" precondition="_Mvrn4NxmEdqEPrOCkNZ5Vg" bodyCondition="_MsjbY9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbYtxmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbYdxmEdqEPrOCkNZ5Vg">
<body>The query isConsistentWith() specifies, for any two RedefinableElements in a context in which redefinition is possible, whether redefinition would be logically consistent. By default, this is false; this operation must be overridden for subclasses of RedefinableElement to define the consistency conditions.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g5AYYMWCEdqI1bY5Lwi8Hg" constrainedElement="_g1H-KsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5AYYcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mvrn4NxmEdqEPrOCkNZ5Vg" constrainedElement="_MsjbYdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvrn4dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>redefinee.isRedefinitionContextValid(self)&#xA;&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1H-LMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1H-KsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5AYYsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsjbY9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsjbYdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvrn4txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = false</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1H-LsWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1H-L8WCEdqI1bY5Lwi8Hg" name="redefinee" visibility="public" type="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsjbZdxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsjbZtxmEdqEPrOCkNZ5Vg" name="redefinee" visibility="public" type="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1H-MMWCEdqI1bY5Lwi8Hg" name="isRedefinitionContextValid" visibility="public" isQuery="true" bodyCondition="_g1H-MsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H-McWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H-MMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsjbZ9xmEdqEPrOCkNZ5Vg" name="isRedefinitionContextValid" visibility="public" isQuery="true" bodyCondition="_MsjbadxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbaNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbZ9xmEdqEPrOCkNZ5Vg">
<body>The query isRedefinitionContextValid() specifies whether the redefinition contexts of this RedefinableElement are properly related to the redefinition contexts of the specified RedefinableElement to allow this element to redefine the other. By default at least one of the redefinition contexts of this element must be a specialization of at least one of the redefinition contexts of the specified element.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1H-MsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1H-MMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5AYY8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsjbadxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsjbZ9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvrn49xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = redefinitionContext->exists(c | c.allParents()->includes(redefined.redefinitionContext)))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1H-NMWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1H-NcWCEdqI1bY5Lwi8Hg" name="redefined" visibility="public" type="_g1H-GcWCEdqI1bY5Lwi8Hg" effect="read"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Msjba9xmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsjbbNxmEdqEPrOCkNZ5Vg" name="redefined" visibility="public" type="_MsjbUNxmEdqEPrOCkNZ5Vg" effect="read"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g1Ru5MWCEdqI1bY5Lwi8Hg" name="StructuralFeature" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1Ru5cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1Ru5MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Msjbc9xmEdqEPrOCkNZ5Vg" name="StructuralFeature" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbdNxmEdqEPrOCkNZ5Vg" annotatedElement="_Msjbc9xmEdqEPrOCkNZ5Vg">
<body>A structural feature is a typed feature of a classifier that specifies the structure of instances of the classifier. Structural feature is an abstract metaclass.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiTMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1Ru5MWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y3NxmEdqEPrOCkNZ5Vg" annotatedElement="_Msjbc9xmEdqEPrOCkNZ5Vg">
<body>A structural feature is a typed feature of a classifier that specify the structure of instances of the classifier. Structural feature is an abstract metaclass.
By specializing multiplicity element, it supports a multiplicity that specifies valid cardinalities for the collection of values associated with an instantiation of the structural feature.
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1Ru5sWCEdqI1bY5Lwi8Hg" general="_g0-z8MWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1Ru58WCEdqI1bY5Lwi8Hg" general="_g1Ru6cWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1Ru6MWCEdqI1bY5Lwi8Hg" general="_Gjgl0GveEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5JiTcWCEdqI1bY5Lwi8Hg" name="isReadOnly" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiTsWCEdqI1bY5Lwi8Hg" annotatedElement="_g5JiTcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsjbddxmEdqEPrOCkNZ5Vg" general="_MsQgf9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsjbdtxmEdqEPrOCkNZ5Vg" general="_MsjbeNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Msjbd9xmEdqEPrOCkNZ5Vg" general="_Gjgl0GveEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mv1Y3dxmEdqEPrOCkNZ5Vg" name="isReadOnly" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y3txmEdqEPrOCkNZ5Vg" annotatedElement="_Mv1Y3dxmEdqEPrOCkNZ5Vg">
<body>States whether the feature's value may be modified by a client.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g5JiT8WCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_Mv1Y39xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g5JiZcWCEdqI1bY5Lwi8Hg" name="Slot">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiZsWCEdqI1bY5Lwi8Hg" annotatedElement="_g5JiZcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mv1Y9dxmEdqEPrOCkNZ5Vg" name="Slot">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y9txmEdqEPrOCkNZ5Vg" annotatedElement="_Mv1Y9dxmEdqEPrOCkNZ5Vg">
<body>A slot is owned by an instance specification. It specifies the value or values for its defining feature, which must be a structural feature of a classifier of the instance specification owning the slot.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g5JiZ8WCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5JiaMWCEdqI1bY5Lwi8Hg" name="owningInstance" type="_g5JiUMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g6yhDcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiacWCEdqI1bY5Lwi8Hg" annotatedElement="_g5JiaMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mv1Y99xmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mv1Y-NxmEdqEPrOCkNZ5Vg" name="owningInstance" type="_Mv1Y4NxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MxLcp9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y-dxmEdqEPrOCkNZ5Vg" annotatedElement="_Mv1Y-NxmEdqEPrOCkNZ5Vg">
<body>The instance specification that owns this slot.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5JiasWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5Jia8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv1Y-txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv1Y-9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5JibMWCEdqI1bY5Lwi8Hg" name="definingFeature" type="_g1Ru5MWCEdqI1bY5Lwi8Hg" association="_g6yhD8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JibcWCEdqI1bY5Lwi8Hg" annotatedElement="_g5JibMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mv1Y_NxmEdqEPrOCkNZ5Vg" name="definingFeature" type="_Msjbc9xmEdqEPrOCkNZ5Vg" association="_MxLcqdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y_dxmEdqEPrOCkNZ5Vg" annotatedElement="_Mv1Y_NxmEdqEPrOCkNZ5Vg">
<body>The structural feature that specifies the values that may be held by the slot.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5JibsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5Jib8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv1Y_txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv1Y_9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5JicMWCEdqI1bY5Lwi8Hg" name="value" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" isOrdered="true" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g7Fb_MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiccWCEdqI1bY5Lwi8Hg" annotatedElement="_g5JicMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mv1ZANxmEdqEPrOCkNZ5Vg" name="value" type="_Msjbf9xmEdqEPrOCkNZ5Vg" isOrdered="true" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MxUmq9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1ZAdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mv1ZANxmEdqEPrOCkNZ5Vg">
<body>The value or values corresponding to the defining feature for the owning instance specification.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5JicsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5Jic8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv1ZAtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv1ZA9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_SnNPIGwIEdq7X4sGURiZYA" name="PackageImport">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BV4MWCEdqI1bY5Lwi8Hg" annotatedElement="_SnNPIGwIEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4d9xmEdqEPrOCkNZ5Vg" annotatedElement="_SnNPIGwIEdq7X4sGURiZYA">
<body>A package import is defined as a directed relationship that identifies a package whose members are to be imported by a namespace.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2BV4cWCEdqI1bY5Lwi8Hg" name="public_or_private" constrainedElement="_SnNPIGwIEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BV4sWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BV4cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtJ4eNxmEdqEPrOCkNZ5Vg" name="public_or_private" constrainedElement="_SnNPIGwIEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4edxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4eNxmEdqEPrOCkNZ5Vg">
<body>The visibility of a PackageImport is either public or private.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5dEQMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mv_J2dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.visibility = #public or self.visibility = #private</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2BV5MWCEdqI1bY5Lwi8Hg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2BV5cWCEdqI1bY5Lwi8Hg" name="visibility" visibility="public" type="_AyM_oGwMEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BV5sWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BV5cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtJ4e9xmEdqEPrOCkNZ5Vg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtJ4fNxmEdqEPrOCkNZ5Vg" name="visibility" visibility="public" type="_AyM_oGwMEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4fdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4fNxmEdqEPrOCkNZ5Vg">
<body>Specifies the visibility of the imported PackageableElements within the importing Namespace, i.e., whether imported elements will in turn be visible to other packages that use that importingPackage as an importedPackage. If the PackageImport is public, the imported elements will be visible outside the package, while if it is private they will not.</body>
</ownedComment>
- <defaultValue xmi:type="uml:InstanceValue" xmi:id="_g5dEQcWCEdqI1bY5Lwi8Hg" type="_AyM_oGwMEdq7X4sGURiZYA" instance="_g2LG9sWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_Mv_J2txmEdqEPrOCkNZ5Vg" type="_AyM_oGwMEdq7X4sGURiZYA" instance="_MtTCftxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2BV7MWCEdqI1bY5Lwi8Hg" name="importingNamespace" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" subsettedProperty="_g01DFMWCEdqI1bY5Lwi8Hg _g01DJ8WCEdqI1bY5Lwi8Hg" association="_g2UQ8sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BV7cWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BV7MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtJ4g9xmEdqEPrOCkNZ5Vg" name="importingNamespace" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" subsettedProperty="_MsGvrdxmEdqEPrOCkNZ5Vg _MsQga9xmEdqEPrOCkNZ5Vg" association="_MtmkQ9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4hNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4g9xmEdqEPrOCkNZ5Vg">
<body>Specifies the Namespace that imports the members from a Package.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5dEQsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5dEQ8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv_J29xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv_J3NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2BV6MWCEdqI1bY5Lwi8Hg" name="importedPackage" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_g01DGMWCEdqI1bY5Lwi8Hg" association="_g2UQ6cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BV6cWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BV6MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtJ4f9xmEdqEPrOCkNZ5Vg" name="importedPackage" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_MsGvsdxmEdqEPrOCkNZ5Vg" association="_MtmkOtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4gNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4f9xmEdqEPrOCkNZ5Vg">
<body>Specifies the Package whose members are imported into a Namespace.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5dERMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5dERcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv_J3dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv_J3txmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="__1ap4HLzEdqziYxiZo0YtA" name="DataType">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kp78WCEdqI1bY5Lwi8Hg" annotatedElement="__1ap4HLzEdqziYxiZo0YtA">
- <body>A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.
-
-
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WQNxmEdqEPrOCkNZ5Vg" annotatedElement="__1ap4HLzEdqziYxiZo0YtA">
+ <body>A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.&#xD;
+&#xD;
A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6C6JMWCEdqI1bY5Lwi8Hg" annotatedElement="__1ap4HLzEdqziYxiZo0YtA">
- <body>A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.
-
-A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mwk_tdxmEdqEPrOCkNZ5Vg" annotatedElement="__1ap4HLzEdqziYxiZo0YtA">
+ <body>A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.&#xD;
+A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.&#xD;
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1kp8MWCEdqI1bY5Lwi8Hg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1kp8cWCEdqI1bY5Lwi8Hg" name="ownedAttribute" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g0iIAMWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg" association="_g2UQ0sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kp8sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1kp8cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Ms2WQdxmEdqEPrOCkNZ5Vg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2WQtxmEdqEPrOCkNZ5Vg" name="ownedAttribute" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_Mrz0ctxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg" association="_MtczUtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WQ9xmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WQtxmEdqEPrOCkNZ5Vg">
<body>The Attributes owned by the DataType.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6C6JcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6C6JsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwk_ttxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mwk_t9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1kp9cWCEdqI1bY5Lwi8Hg" name="ownedOperation" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g0iIBMWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg" association="_g2UQ1cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kp9sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1kp9cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2WRtxmEdqEPrOCkNZ5Vg" name="ownedOperation" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_Mrz0dtxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg" association="_MtczVdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WR9xmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WRtxmEdqEPrOCkNZ5Vg">
<body>The Operations owned by the DataType.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6C6J8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6C6KMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwk_uNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mwk_udxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_FDM9YHL0EdqziYxiZo0YtA" name="createOwnedOperation">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_FDM9YXL0EdqziYxiZo0YtA" type="_M4X2IGveEdq4DLWZOhbdEA" direction="return"/>
@@ -899,244 +886,231 @@ A typical use of data types would be to represent programming language primitive
<ownedParameter xmi:type="uml:Parameter" xmi:id="_WJZCRHL0EdqziYxiZo0YtA" name="lower" type="_XqvEIGvsEdqG6fBIPwe-mw" effect="read"/>
<ownedParameter xmi:type="uml:Parameter" xmi:id="_WJZCRXL0EdqziYxiZo0YtA" name="upper" type="_dRZxsGvsEdqG6fBIPwe-mw" effect="read"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1kp-cWCEdqI1bY5Lwi8Hg" name="inherit" isQuery="true" redefinedOperation="_g01DAsWCEdqI1bY5Lwi8Hg" bodyCondition="_g1kp-8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kp-sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1kp-cWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Ms2WStxmEdqEPrOCkNZ5Vg" name="inherit" isQuery="true" redefinedOperation="_MsGvm9xmEdqEPrOCkNZ5Vg" bodyCondition="_Ms2WTNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WS9xmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WStxmEdqEPrOCkNZ5Vg">
<body>The inherit operation is overridden to exclude redefined properties.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1kp-8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1kp-cWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g1kp_MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Ms2WTNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Ms2WStxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Ms2WTdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = inhs->excluding(inh | ownedMember->select(oclIsKindOf(RedefinableElement))->select(redefinedElement->includes(inh)))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1kp_cWCEdqI1bY5Lwi8Hg" type="_csVgUGvtEdqG6fBIPwe-mw" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g1kp_sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g1kp_8WCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Ms2WTtxmEdqEPrOCkNZ5Vg" type="_csVgUGvtEdqG6fBIPwe-mw" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Ms2WT9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Ms2WUNxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1kqAMWCEdqI1bY5Lwi8Hg" name="inhs" type="_csVgUGvtEdqG6fBIPwe-mw">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g1kqAcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g1kqAsWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Ms2WUdxmEdqEPrOCkNZ5Vg" name="inhs" type="_csVgUGvtEdqG6fBIPwe-mw">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Ms2WUtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Ms2WU9xmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_I6N3UGwGEdq7X4sGURiZYA" name="Enumeration">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kqA8WCEdqI1bY5Lwi8Hg" annotatedElement="_I6N3UGwGEdq7X4sGURiZYA">
- <body>Enumeration is a kind of data type, whose instances may be any of a number of predefined enumeration literals.
-
-It is possible to extend the set of applicable enumeration literals in other packages or profiles.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WVNxmEdqEPrOCkNZ5Vg" annotatedElement="_I6N3UGwGEdq7X4sGURiZYA">
+ <body>Enumeration is a kind of data type, whose instances may be any of a number of predefined enumeration literals.&#xD;
+It is possible to extend the set of applicable enumeration literals in other packages or profiles.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6C6KcWCEdqI1bY5Lwi8Hg" annotatedElement="_I6N3UGwGEdq7X4sGURiZYA">
- <body>Enumeration is a kind of data type, whose instances may be any of a number of user-defined enumeration literals.
-
-It is possible to extend the set of applicable enumeration literals in other packages or profiles.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mwk_utxmEdqEPrOCkNZ5Vg" annotatedElement="_I6N3UGwGEdq7X4sGURiZYA">
+ <body>Enumeration is a kind of data type, whose instances may be any of a number of user-defined enumeration literals.&#xD;
+It is possible to extend the set of applicable enumeration literals in other packages or profiles.&#xD;
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1kqBMWCEdqI1bY5Lwi8Hg" general="__1ap4HLzEdqziYxiZo0YtA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1kqBcWCEdqI1bY5Lwi8Hg" name="ownedLiteral" visibility="public" type="_OQcbgGwOEdq7X4sGURiZYA" isOrdered="true" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g2UQ0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kqBsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1kqBcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Ms2WVdxmEdqEPrOCkNZ5Vg" general="__1ap4HLzEdqziYxiZo0YtA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2WVtxmEdqEPrOCkNZ5Vg" name="ownedLiteral" visibility="public" type="_OQcbgGwOEdq7X4sGURiZYA" isOrdered="true" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_MtczUNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WV9xmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WVtxmEdqEPrOCkNZ5Vg">
<body>The ordered collection of literals for the enumeration.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6C6KsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1kqBcWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mwk_u9xmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WVtxmEdqEPrOCkNZ5Vg">
<body>The ordered set of literals for this Enumeration.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6C6K8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6C6LMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwk_vNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mwk_vdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_OQcbgGwOEdq7X4sGURiZYA" name="EnumerationLiteral">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kqCcWCEdqI1bY5Lwi8Hg" annotatedElement="_OQcbgGwOEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WWtxmEdqEPrOCkNZ5Vg" annotatedElement="_OQcbgGwOEdq7X4sGURiZYA">
<body>An enumeration literal is a value of an enumeration.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6C6LcWCEdqI1bY5Lwi8Hg" annotatedElement="_OQcbgGwOEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mwk_vtxmEdqEPrOCkNZ5Vg" annotatedElement="_OQcbgGwOEdq7X4sGURiZYA">
<body>An enumeration literal is a user-defined data value for an enumeration.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g6C6LsWCEdqI1bY5Lwi8Hg" general="_g5JiUMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1kqC8WCEdqI1bY5Lwi8Hg" name="enumeration" visibility="public" type="_I6N3UGwGEdq7X4sGURiZYA" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_g2UQ0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kqDMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1kqC8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mwk_v9xmEdqEPrOCkNZ5Vg" general="_Mv1Y4NxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2WXNxmEdqEPrOCkNZ5Vg" name="enumeration" visibility="public" type="_I6N3UGwGEdq7X4sGURiZYA" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_MtczUNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WXdxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WXNxmEdqEPrOCkNZ5Vg">
<body>The enumeration that this literal belongs to.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6C6L8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1kqC8WCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mwk_wNxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WXNxmEdqEPrOCkNZ5Vg">
<body>The Enumeration that this EnumerationLiteral is a member of.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6C6MMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6C6McWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwk_wdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mwk_wtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_V6vuYGwGEdq7X4sGURiZYA" name="PrimitiveType">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kqD8WCEdqI1bY5Lwi8Hg" annotatedElement="_V6vuYGwGEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WYNxmEdqEPrOCkNZ5Vg" annotatedElement="_V6vuYGwGEdq7X4sGURiZYA">
<body>A primitive type defines a predefined data type, without any relevant substructure (i.e. it has no parts in the context of the UML). A primitive datatype may have an algebra and operations defined out of UML, for example, mathematically.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1kqEMWCEdqI1bY5Lwi8Hg" general="__1ap4HLzEdqziYxiZo0YtA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Ms2WYdxmEdqEPrOCkNZ5Vg" general="__1ap4HLzEdqziYxiZo0YtA"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_AwvxoGwNEdq7X4sGURiZYA" name="Association">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1RvEsWCEdqI1bY5Lwi8Hg" annotatedElement="_AwvxoGwNEdq7X4sGURiZYA">
- <body>An association specifies a semantic relationship that can occur between typed instances. It has at least two ends represented by properties, each of which is connected to the type of the end. More than one end of an association may have the same type.
-
-
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbodxmEdqEPrOCkNZ5Vg" annotatedElement="_AwvxoGwNEdq7X4sGURiZYA">
+ <body>An association specifies a semantic relationship that can occur between typed instances. It has at least two ends represented by properties, each of which is connected to the type of the end. More than one end of an association may have the same type.&#xD;
+&#xD;
An end property of an association that is owned by an end class or that is a navigable owned end of the association indicates that the association is navigable from the opposite ends, otherwise the association is not navigable from the opposite ends.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g6C6MsWCEdqI1bY5Lwi8Hg" name="specialized_end_number" constrainedElement="_AwvxoGwNEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6C6M8WCEdqI1bY5Lwi8Hg" annotatedElement="_g6C6MsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mwk_w9xmEdqEPrOCkNZ5Vg" name="specialized_end_number" constrainedElement="_AwvxoGwNEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mwk_xNxmEdqEPrOCkNZ5Vg" annotatedElement="_Mwk_w9xmEdqEPrOCkNZ5Vg">
<body>An association specializing another association has the same number of ends as the other association.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6C6NMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mwk_xdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.parents()->forAll(p | p.memberEnd.size() = self.memberEnd.size())</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g6C6NcWCEdqI1bY5Lwi8Hg" name="specialized_end_types" constrainedElement="_AwvxoGwNEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6C6NsWCEdqI1bY5Lwi8Hg" annotatedElement="_g6C6NcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mwk_xtxmEdqEPrOCkNZ5Vg" name="specialized_end_types" constrainedElement="_AwvxoGwNEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mwk_x9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mwk_xtxmEdqEPrOCkNZ5Vg">
<body>When an association specializes another association, every end of the specific association corresponds to an end of the general association, and the specific end reaches the same type or a subtype of the more general end.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6C6N8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mwk_yNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g6C6OMWCEdqI1bY5Lwi8Hg" name="binary_associations" constrainedElement="_AwvxoGwNEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6C6OcWCEdqI1bY5Lwi8Hg" annotatedElement="_g6C6OMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mwk_ydxmEdqEPrOCkNZ5Vg" name="binary_associations" constrainedElement="_AwvxoGwNEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mwk_ytxmEdqEPrOCkNZ5Vg" annotatedElement="_Mwk_ydxmEdqEPrOCkNZ5Vg">
<body>Only binary associations can be aggregations.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6C6OsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mwk_y9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.memberEnd->exists(aggregation &lt;> Aggregation::none) implies self.memberEnd->size() = 2</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1RvE8WCEdqI1bY5Lwi8Hg" name="association_ends" constrainedElement="_AwvxoGwNEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1RvFMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1RvE8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsjbotxmEdqEPrOCkNZ5Vg" name="association_ends" constrainedElement="_AwvxoGwNEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Msjbo9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbotxmEdqEPrOCkNZ5Vg">
<body>Association ends of associations with more than two ends must be owned by the association.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6C6O8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mwk_zNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>if memberEnd->size() > 2 then ownedEnd->includesAll(memberEnd)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1RvF8WCEdqI1bY5Lwi8Hg" general="_DH62EKPAEdqi_5gqUMOQtA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1RvFsWCEdqI1bY5Lwi8Hg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1RvGMWCEdqI1bY5Lwi8Hg" name="isDerived" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1RvGcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1RvGMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsjbptxmEdqEPrOCkNZ5Vg" general="_DH62EKPAEdqi_5gqUMOQtA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsjbpdxmEdqEPrOCkNZ5Vg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Msjbp9xmEdqEPrOCkNZ5Vg" name="isDerived" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbqNxmEdqEPrOCkNZ5Vg" annotatedElement="_Msjbp9xmEdqEPrOCkNZ5Vg">
<body>Specifies whether the association is derived from other model elements such as other associations or constraints.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g6C6PMWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_Mwk_zdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1RvG8WCEdqI1bY5Lwi8Hg" name="ownedEnd" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g1bf5MWCEdqI1bY5Lwi8Hg _g0iIBMWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg" association="_g2UQucWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1RvHMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1RvG8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsjbqtxmEdqEPrOCkNZ5Vg" name="ownedEnd" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_MsjbstxmEdqEPrOCkNZ5Vg _Mrz0dtxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg" association="_MtczOdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Msjbq9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbqtxmEdqEPrOCkNZ5Vg">
<body>The ends that are owned by the association itself. This is an ordered association.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6C6PcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1RvG8WCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mwk_ztxmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbqtxmEdqEPrOCkNZ5Vg">
<body>The ends that are owned by the association itself.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6C6PsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6C6P8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwk_z9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mwk_0NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bf4MWCEdqI1bY5Lwi8Hg" name="endType" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" isOrdered="true" isReadOnly="true" isDerived="true" subsettedProperty="_g1Ru4MWCEdqI1bY5Lwi8Hg" association="_g2UQzcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bf4cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bf4MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsjbrtxmEdqEPrOCkNZ5Vg" name="endType" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" isOrdered="true" isReadOnly="true" isDerived="true" subsettedProperty="_Msjbb9xmEdqEPrOCkNZ5Vg" association="_MtczTdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Msjbr9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbrtxmEdqEPrOCkNZ5Vg">
<body>References the classifiers that are used as types of the ends of the association.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6C6QMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6C6QcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwk_0dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mwk_0txmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bf5MWCEdqI1bY5Lwi8Hg" name="memberEnd" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" subsettedProperty="_g1H96MWCEdqI1bY5Lwi8Hg" association="_g2eBt8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bf5cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bf5MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsjbstxmEdqEPrOCkNZ5Vg" name="memberEnd" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" subsettedProperty="_MsaRetxmEdqEPrOCkNZ5Vg" association="_MtmkTdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Msjbs9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbstxmEdqEPrOCkNZ5Vg">
<body>Each end represents participation of instances of the classifier connected to the end in links of the association. This is an ordered association.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6MrIMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bf5MWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mwk_09xmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbstxmEdqEPrOCkNZ5Vg">
<body>Each end represents participation of instances of the classifier connected to the end in links of the association.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6MrIcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6MrIsWCEdqI1bY5Lwi8Hg" value="2"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwk_1NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mwk_1dxmEdqEPrOCkNZ5Vg" value="2"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bf6MWCEdqI1bY5Lwi8Hg" name="navigableOwnedEnd" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" subsettedProperty="_g1RvG8WCEdqI1bY5Lwi8Hg" association="_g2eB58WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bf6cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bf6MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsjbttxmEdqEPrOCkNZ5Vg" name="navigableOwnedEnd" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" subsettedProperty="_MsjbqtxmEdqEPrOCkNZ5Vg" association="_MtmkfdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Msjbt9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbttxmEdqEPrOCkNZ5Vg">
<body>The navigable ends that are owned by the association itself.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6MrI8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6MrJMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwk_1txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mwk_19xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_WSPusK69EdqjppZik4kD8A" name="isBinary">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_YmN8cK69EdqjppZik4kD8A" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g6MrJcWCEdqI1bY5Lwi8Hg" name="endType" isQuery="true" bodyCondition="_g6MrJ8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6MrJsWCEdqI1bY5Lwi8Hg" annotatedElement="_g6MrJcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Mwk_2NxmEdqEPrOCkNZ5Vg" name="endType" isQuery="true" bodyCondition="_Mwk_2txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mwk_2dxmEdqEPrOCkNZ5Vg" annotatedElement="_Mwk_2NxmEdqEPrOCkNZ5Vg">
<body>endType is derived from the types of the member ends.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g6MrJ8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g6MrJcWCEdqI1bY5Lwi8Hg _g1bf4MWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6MrKMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mwk_2txmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Mwk_2NxmEdqEPrOCkNZ5Vg _MsjbrtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mwk_29xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = self.memberEnd->collect(e | e.type)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g6MrKcWCEdqI1bY5Lwi8Hg" type="_ynRtoGvtEdqG6fBIPwe-mw" isOrdered="true" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6MrKsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6MrK8WCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Mwk_3NxmEdqEPrOCkNZ5Vg" type="_ynRtoGvtEdqG6fBIPwe-mw" isOrdered="true" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwk_3dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mwk_3txmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_DH62EKPAEdqi_5gqUMOQtA" name="Relationship" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H-NsWCEdqI1bY5Lwi8Hg" annotatedElement="_DH62EKPAEdqi_5gqUMOQtA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbbdxmEdqEPrOCkNZ5Vg" annotatedElement="_DH62EKPAEdqi_5gqUMOQtA">
<body>A relationship references one or more related elements. Relationship is an abstract metaclass.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1H-N8WCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1Ru4MWCEdqI1bY5Lwi8Hg" name="relatedElement" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_g2eBxsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1Ru4cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1Ru4MWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsjbbtxmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Msjbb9xmEdqEPrOCkNZ5Vg" name="relatedElement" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_MtmkXNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbcNxmEdqEPrOCkNZ5Vg" annotatedElement="_Msjbb9xmEdqEPrOCkNZ5Vg">
<body>Specifies the elements related by the Relationship.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6fmEMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6fmEcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mw36pdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mw36ptxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g2BV8MWCEdqI1bY5Lwi8Hg" name="PackageMerge">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BV8cWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BV8MWCEdqI1bY5Lwi8Hg">
- <body>A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both.
-
-
-
-This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.
-
-
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_MtJ4h9xmEdqEPrOCkNZ5Vg" name="PackageMerge">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4iNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4h9xmEdqEPrOCkNZ5Vg">
+ <body>A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both.&#xD;
+&#xD;
+This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.&#xD;
+&#xD;
Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6fmEsWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BV8MWCEdqI1bY5Lwi8Hg">
- <body>A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both. This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.
-
-
-
-Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mw36p9xmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4h9xmEdqEPrOCkNZ5Vg">
+ <body>A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both. This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.&#xD;
+&#xD;
+Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.&#xD;
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2BV8sWCEdqI1bY5Lwi8Hg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2BV88WCEdqI1bY5Lwi8Hg" name="receivingPackage" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_g01DFMWCEdqI1bY5Lwi8Hg _g01DJ8WCEdqI1bY5Lwi8Hg" association="_g2eBvcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BV9MWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BV88WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtJ4idxmEdqEPrOCkNZ5Vg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtJ4itxmEdqEPrOCkNZ5Vg" name="receivingPackage" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_MsGvrdxmEdqEPrOCkNZ5Vg _MsQga9xmEdqEPrOCkNZ5Vg" association="_MtmkU9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4i9xmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4itxmEdqEPrOCkNZ5Vg">
<body>References the Package that is being extended with the contents of the merged package of the PackageMerge.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6fmE8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6fmFMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mw36qNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mw36qdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2BV98WCEdqI1bY5Lwi8Hg" name="mergedPackage" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_g01DGMWCEdqI1bY5Lwi8Hg" association="_g2eBwMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BV-MWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BV98WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtJ4jtxmEdqEPrOCkNZ5Vg" name="mergedPackage" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_MsGvsdxmEdqEPrOCkNZ5Vg" association="_MtmkVtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4j9xmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4jtxmEdqEPrOCkNZ5Vg">
<body>References the Package that is to be merged with the receiving package of the PackageMerge.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6fmFcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6fmFsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mw36qtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mw36q9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_PyCx8GveEdq4DLWZOhbdEA" name="InstanceValue">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6fmF8WCEdqI1bY5Lwi8Hg" annotatedElement="_PyCx8GveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mw36rNxmEdqEPrOCkNZ5Vg" annotatedElement="_PyCx8GveEdq4DLWZOhbdEA">
<body>An instance value specifies the value modeled by an instance specification.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g6fmGMWCEdqI1bY5Lwi8Hg" general="_g1Ru8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g6fmGcWCEdqI1bY5Lwi8Hg" name="instance" type="_g5JiUMWCEdqI1bY5Lwi8Hg" association="_g7Fb-sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6fmGsWCEdqI1bY5Lwi8Hg" annotatedElement="_g6fmGcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mw36rdxmEdqEPrOCkNZ5Vg" general="_Msjbf9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mw36rtxmEdqEPrOCkNZ5Vg" name="instance" type="_Mv1Y4NxmEdqEPrOCkNZ5Vg" association="_MxUmqdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mw36r9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mw36rtxmEdqEPrOCkNZ5Vg">
<body>The instance that is the specified value.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6fmG8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6fmHMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mw36sNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mw36sdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_QUJ-oWWKEdq-f4093SZhVA" name="stringValue" isQuery="true">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_SQIjIGWKEdq-f4093SZhVA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
@@ -1144,58 +1118,58 @@ Conceptually, a package merge can be viewed as an operation that takes the conte
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_Q-yR4GveEdq4DLWZOhbdEA" name="LiteralUnlimitedNatural">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6fmHcWCEdqI1bY5Lwi8Hg" annotatedElement="_Q-yR4GveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mw36stxmEdqEPrOCkNZ5Vg" annotatedElement="_Q-yR4GveEdq4DLWZOhbdEA">
<body>A literal unlimited natural contains a UnlimitedNatural-valued attribute.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g6fmHsWCEdqI1bY5Lwi8Hg" general="_g3XZrMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g6fmH8WCEdqI1bY5Lwi8Hg" name="value" type="_dRZxsGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6fmIMWCEdqI1bY5Lwi8Hg" annotatedElement="_g6fmH8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mw36s9xmEdqEPrOCkNZ5Vg" general="_Mu8A8NxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mw36tNxmEdqEPrOCkNZ5Vg" name="value" type="_dRZxsGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mw36tdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mw36tNxmEdqEPrOCkNZ5Vg">
<body>The specified UnlimitedNatural value.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6fmIcWCEdqI1bY5Lwi8Hg" type="_dRZxsGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mw36ttxmEdqEPrOCkNZ5Vg" type="_dRZxsGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_lSARkGWKEdq-f4093SZhVA" name="stringValue" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_nyfRUGWKEdq-f4093SZhVA" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g6fmIsWCEdqI1bY5Lwi8Hg" name="isComputable" isQuery="true" redefinedOperation="_g1Ru9MWCEdqI1bY5Lwi8Hg" bodyCondition="_g6fmJMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6fmI8WCEdqI1bY5Lwi8Hg" annotatedElement="_g6fmIsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Mw36t9xmEdqEPrOCkNZ5Vg" name="isComputable" isQuery="true" redefinedOperation="_Msjbg9xmEdqEPrOCkNZ5Vg" bodyCondition="_Mw36udxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mw36uNxmEdqEPrOCkNZ5Vg" annotatedElement="_Mw36t9xmEdqEPrOCkNZ5Vg">
<body>The query isComputable() is redefined to be true.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g6fmJMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g6fmIsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6fmJcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mw36udxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Mw36t9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mw36utxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g6fmJsWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Mw36u9xmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g6fmJ8WCEdqI1bY5Lwi8Hg" name="unlimitedValue" isQuery="true" redefinedOperation="_g1RvCMWCEdqI1bY5Lwi8Hg" bodyCondition="_g6fmKcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6fmKMWCEdqI1bY5Lwi8Hg" annotatedElement="_g6fmJ8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Mw36vNxmEdqEPrOCkNZ5Vg" name="unlimitedValue" isQuery="true" redefinedOperation="_Msjbl9xmEdqEPrOCkNZ5Vg" bodyCondition="_Mw36vtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mw36vdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mw36vNxmEdqEPrOCkNZ5Vg">
<body>The query unlimitedValue() gives the value.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g6fmKcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g6fmJ8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6fmKsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mw36vtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Mw36vNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mw36v9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = value</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g6fmK8WCEdqI1bY5Lwi8Hg" type="_dRZxsGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Mw36wNxmEdqEPrOCkNZ5Vg" type="_dRZxsGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ynRtoGvtEdqG6fBIPwe-mw" name="Type" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BV-8WCEdqI1bY5Lwi8Hg" annotatedElement="_ynRtoGvtEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4ktxmEdqEPrOCkNZ5Vg" annotatedElement="_ynRtoGvtEdqG6fBIPwe-mw">
<body>A type serves as a constraint on the range of values represented by a typed element. Type is an abstract metaclass.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2BV_cWCEdqI1bY5Lwi8Hg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2BV_sWCEdqI1bY5Lwi8Hg" name="package" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_g2eBtcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BV_8WCEdqI1bY5Lwi8Hg" annotatedElement="_g2BV_sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtJ4lNxmEdqEPrOCkNZ5Vg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtJ4ldxmEdqEPrOCkNZ5Vg" name="package" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_MtmkS9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4ltxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4ldxmEdqEPrOCkNZ5Vg">
<body>References the owning package of a package.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6fmLMWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BV_sWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxBroNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4ldxmEdqEPrOCkNZ5Vg">
<body>Specifies the owning package of this classifier, if any.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6fmLcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6fmLsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxBrodxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxBrotxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_RNEaIGwNEdq7X4sGURiZYA" name="createAssociation">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_URUOQGwNEdq7X4sGURiZYA" type="_AwvxoGwNEdq7X4sGURiZYA" direction="return"/>
@@ -1217,518 +1191,495 @@ Conceptually, a package merge can be viewed as an operation that takes the conte
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_7CRvMKPAEdqi_5gqUMOQtA"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g2BWAsWCEdqI1bY5Lwi8Hg" name="conformsTo" visibility="public" isQuery="true" bodyCondition="_g2BWBMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BWA8WCEdqI1bY5Lwi8Hg" annotatedElement="_g2BWAsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtJ4mdxmEdqEPrOCkNZ5Vg" name="conformsTo" visibility="public" isQuery="true" bodyCondition="_MtJ4m9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4mtxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4mdxmEdqEPrOCkNZ5Vg">
<body>The query conformsTo() gives true for a type that conforms to another. By default, two types do not conform to each other. This query is intended to be redefined for specific conformance situations.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2BWBMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g2BWAsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6fmL8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtJ4m9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtJ4mdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MxBro9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = false</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2BWBsWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2BWB8WCEdqI1bY5Lwi8Hg" name="other" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtJ4ndxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtJ4ntxmEdqEPrOCkNZ5Vg" name="other" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g2LG0cWCEdqI1bY5Lwi8Hg" name="Expression">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG0sWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG0cWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MtTCWdxmEdqEPrOCkNZ5Vg" name="Expression">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCWtxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCWdxmEdqEPrOCkNZ5Vg">
<body>An expression is a structured tree of symbols that denotes a (possibly empty) set of values when evaluated in a context.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6pXEMWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG0cWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxBrpNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCWdxmEdqEPrOCkNZ5Vg">
<body>An expression represents a node in an expression tree, which may be non-terminal or terminal. It defines a symbol, and has a possibly empty sequence of operands which are value specifications.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2LG08WCEdqI1bY5Lwi8Hg" general="_g1Ru8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g6pXEcWCEdqI1bY5Lwi8Hg" name="symbol" type="_aAyVgGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6pXEsWCEdqI1bY5Lwi8Hg" annotatedElement="_g6pXEcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtTCW9xmEdqEPrOCkNZ5Vg" general="_Msjbf9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxBrpdxmEdqEPrOCkNZ5Vg" name="symbol" type="_aAyVgGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxBrptxmEdqEPrOCkNZ5Vg" annotatedElement="_MxBrpdxmEdqEPrOCkNZ5Vg">
<body>The symbol associated with the node in the expression tree.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6pXE8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6pXFMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxBrp9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxBrqNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2LG1MWCEdqI1bY5Lwi8Hg" name="operand" visibility="public" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" isOrdered="true" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g2eB4sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG1cWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG1MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtTCXNxmEdqEPrOCkNZ5Vg" name="operand" visibility="public" type="_Msjbf9xmEdqEPrOCkNZ5Vg" isOrdered="true" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MtmkeNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCXdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCXNxmEdqEPrOCkNZ5Vg">
<body>Specifies a sequence of operands.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6pXFcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6pXFsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxBrqdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxBrqtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_B3q9cGwNEdq7X4sGURiZYA" name="AggregationKind">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6pXF8WCEdqI1bY5Lwi8Hg" annotatedElement="_B3q9cGwNEdq7X4sGURiZYA">
- <body>AggregationKind is an enumeration of the following literal values:
-• none Indicates that the property has no aggregation.
-• shared Indicates that the property has a shared aggregation.
-• composite Indicates that the property is aggregated compositely, i.e., the composite object has
-responsibility for the existence and storage of the composed objects (parts).
-</body>
- </ownedComment>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g6pXGMWCEdqI1bY5Lwi8Hg" name="none">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6pXGcWCEdqI1bY5Lwi8Hg" annotatedElement="_g6pXGMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxBrq9xmEdqEPrOCkNZ5Vg" annotatedElement="_B3q9cGwNEdq7X4sGURiZYA">
+ <body>AggregationKind is an enumeration of the following literal values:&#xD;
+ - none = Indicates that the property has no aggregation.&#xD;
+ - shared = Indicates that the property has a shared aggregation.&#xD;
+ - composite = Indicates that the property is aggregated compositely, i.e., the composite object has responsibility for the existence and storage of the composed objects (parts).</body>
+ </ownedComment>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MxBrrNxmEdqEPrOCkNZ5Vg" name="none">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxBrrdxmEdqEPrOCkNZ5Vg" annotatedElement="_MxBrrNxmEdqEPrOCkNZ5Vg">
<body>Indicates that the property has no aggregation.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g6pXGsWCEdqI1bY5Lwi8Hg" name="shared">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6pXG8WCEdqI1bY5Lwi8Hg" annotatedElement="_g6pXGsWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MxBrrtxmEdqEPrOCkNZ5Vg" name="shared">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxBrr9xmEdqEPrOCkNZ5Vg" annotatedElement="_MxBrrtxmEdqEPrOCkNZ5Vg">
<body>Indicates that the property has a shared aggregation.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g6pXHMWCEdqI1bY5Lwi8Hg" name="composite">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6pXHcWCEdqI1bY5Lwi8Hg" annotatedElement="_g6pXHMWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MxBrsNxmEdqEPrOCkNZ5Vg" name="composite">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxBrsdxmEdqEPrOCkNZ5Vg" annotatedElement="_MxBrsNxmEdqEPrOCkNZ5Vg">
<body>Indicates that the property is aggregated compositely, i.e., the composite object has responsibility for the existence and storage of the composed objects (parts).</body>
</ownedComment>
</ownedLiteral>
</packagedElement>
- <packagedElement xmi:type="uml:Enumeration" xmi:id="_g2LG48WCEdqI1bY5Lwi8Hg" name="ParameterDirectionKind">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG5MWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG48WCEdqI1bY5Lwi8Hg">
- <body>ParameterDirectionKind is an enumeration of the following literal values:
-
- - in Indicates that parameter values are passed into the behavioral element by the caller.
-
- - inout Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.
-
- - out Indicates that parameter values are passed from a behavioral element out to the caller.
-
- - return Indicates that parameter values are passed as return values from a behavioral element back to the caller.
-
-</body>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_MtTCa9xmEdqEPrOCkNZ5Vg" name="ParameterDirectionKind">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCbNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCa9xmEdqEPrOCkNZ5Vg">
+ <body>ParameterDirectionKind is an enumeration of the following literal values:&#xD;
+ - in = Indicates that parameter values are passed into the behavioral element by the caller.&#xD;
+ - inout = Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.&#xD;
+ - out = Indicates that parameter values are passed from a behavioral element out to the caller.&#xD;
+ - return = Indicates that parameter values are passed as return values from a behavioral element back to the caller.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6pXHsWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG48WCEdqI1bY5Lwi8Hg">
- <body>ParameterDirectionKind is an enumeration of the following literal values:
-• in Indicates that parameter values are passed into the behavioral element by the caller.
-• inout Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.
-• out Indicates that parameter values are passed from a behavioral element out to the caller.
-• return Indicates that parameter values are passed as return values from a behavioral element back to the caller.
-</body>
- </ownedComment>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g2LG5cWCEdqI1bY5Lwi8Hg" name="in">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG5sWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG5cWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MtTCbdxmEdqEPrOCkNZ5Vg" name="in">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCbtxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCbdxmEdqEPrOCkNZ5Vg">
<body>Indicates that parameter values are passed into the behavioral element by the caller.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g2LG58WCEdqI1bY5Lwi8Hg" name="inout">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG6MWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG58WCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MtTCb9xmEdqEPrOCkNZ5Vg" name="inout">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCcNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCb9xmEdqEPrOCkNZ5Vg">
<body>Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g2LG6cWCEdqI1bY5Lwi8Hg" name="out">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG6sWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG6cWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MtTCcdxmEdqEPrOCkNZ5Vg" name="out">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCctxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCcdxmEdqEPrOCkNZ5Vg">
<body>Indicates that parameter values are passed from a behavioral element out to the caller.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g2LG68WCEdqI1bY5Lwi8Hg" name="return">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG7MWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG68WCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MtTCc9xmEdqEPrOCkNZ5Vg" name="return">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCdNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCc9xmEdqEPrOCkNZ5Vg">
<body>Indicates that parameter values are passed as return values from a behavioral element back to the caller.</body>
</ownedComment>
</ownedLiteral>
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_AyM_oGwMEdq7X4sGURiZYA" name="VisibilityKind">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG7cWCEdqI1bY5Lwi8Hg" annotatedElement="_AyM_oGwMEdq7X4sGURiZYA">
- <body>VisibilityKind is an enumeration of the following literal values:
-
- - public
-
- - private
-
- - protected
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCddxmEdqEPrOCkNZ5Vg" annotatedElement="_AyM_oGwMEdq7X4sGURiZYA">
+ <body>VisibilityKind is an enumeration of the following literal values:&#xD;
+ - public&#xD;
+ - private&#xD;
+ - protected&#xD;
- package</body>
</ownedComment>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g2LG7sWCEdqI1bY5Lwi8Hg" name="bestVisibility" visibility="public" isQuery="true" precondition="_g6pXIMWCEdqI1bY5Lwi8Hg" bodyCondition="_g2LG8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG78WCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG7sWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtTCdtxmEdqEPrOCkNZ5Vg" name="bestVisibility" visibility="public" isQuery="true" precondition="_MxBrs9xmEdqEPrOCkNZ5Vg" bodyCondition="_MtTCeNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCd9xmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCdtxmEdqEPrOCkNZ5Vg">
<body>The query bestVisibility() examines a set of VisibilityKinds, and returns public as the preferred visibility.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6pXH8WCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG7sWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxBrstxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCdtxmEdqEPrOCkNZ5Vg">
<body>The query bestVisibility() examines a set of VisibilityKinds that includes only public and private, and returns public as the preferred visibility.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g6pXIMWCEdqI1bY5Lwi8Hg" constrainedElement="_g2LG7sWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6pXIcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MxBrs9xmEdqEPrOCkNZ5Vg" constrainedElement="_MtTCdtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MxBrtNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>pre: not vis->includes(#protected) and not vis->includes(#package)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2LG8MWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g2LG7sWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6yhAMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtTCeNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtTCdtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MxBrtdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if vis->includes(#public) then #public else #private endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2LG8sWCEdqI1bY5Lwi8Hg" visibility="public" type="_AyM_oGwMEdq7X4sGURiZYA" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2LG88WCEdqI1bY5Lwi8Hg" name="vis" visibility="public" type="_AyM_oGwMEdq7X4sGURiZYA">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6yhAcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6yhAsWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtTCetxmEdqEPrOCkNZ5Vg" visibility="public" type="_AyM_oGwMEdq7X4sGURiZYA" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtTCe9xmEdqEPrOCkNZ5Vg" name="vis" visibility="public" type="_AyM_oGwMEdq7X4sGURiZYA">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxBrttxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxBrt9xmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g2LG9sWCEdqI1bY5Lwi8Hg" name="public">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG98WCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG9sWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MtTCftxmEdqEPrOCkNZ5Vg" name="public">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCf9xmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCftxmEdqEPrOCkNZ5Vg">
<body>A public element is visible to all elements that can access the contents of the namespace that owns it.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g2LG-MWCEdqI1bY5Lwi8Hg" name="private">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG-cWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG-MWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MtTCgNxmEdqEPrOCkNZ5Vg" name="private">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCgdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCgNxmEdqEPrOCkNZ5Vg">
<body>A private element is only visible inside the namespace that owns it.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g2LG-sWCEdqI1bY5Lwi8Hg" name="protected">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG-8WCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG-sWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MtTCgtxmEdqEPrOCkNZ5Vg" name="protected">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCg9xmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCgtxmEdqEPrOCkNZ5Vg">
<body>A protected element is visible to elements that have a generalization relationship to the namespace that owns it.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g2LG_MWCEdqI1bY5Lwi8Hg" name="package">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LG_cWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LG_MWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MtTChNxmEdqEPrOCkNZ5Vg" name="package">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTChdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTChNxmEdqEPrOCkNZ5Vg">
<body>A package element is owned by a namespace that is not a package, and is visible to elements that are in the same package as its owning namespace. Only named elements that are not owned by packages can be marked as having package visibility. Any element marked as having package visibility is visible to all elements within the nearest enclosing package (given that other owning elements have proper visibility). Outside the nearest enclosing package, an element marked as having package visibility is not visible.</body>
</ownedComment>
</ownedLiteral>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eBw8WCEdqI1bY5Lwi8Hg" name="A_ownedElement_owner" memberEnd="_g01DI8WCEdqI1bY5Lwi8Hg _g01DJ8WCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eByMWCEdqI1bY5Lwi8Hg" name="A_source_directedRelationship" memberEnd="_g2eBysWCEdqI1bY5Lwi8Hg _g01DFMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eBycWCEdqI1bY5Lwi8Hg" general="_g2eBxsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eBysWCEdqI1bY5Lwi8Hg" visibility="public" type="_JBgfoKPAEdqi_5gqUMOQtA" redefinedProperty="_g2eBx8WCEdqI1bY5Lwi8Hg" association="_g2eByMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkWdxmEdqEPrOCkNZ5Vg" name="A_ownedElement_owner" memberEnd="_MsQgZ9xmEdqEPrOCkNZ5Vg _MsQga9xmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkXtxmEdqEPrOCkNZ5Vg" name="A_source_directedRelationship" memberEnd="_MtmkYNxmEdqEPrOCkNZ5Vg _MsGvrdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkX9xmEdqEPrOCkNZ5Vg" general="_MtmkXNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkYNxmEdqEPrOCkNZ5Vg" visibility="public" type="_JBgfoKPAEdqi_5gqUMOQtA" redefinedProperty="_MtmkXdxmEdqEPrOCkNZ5Vg" association="_MtmkXtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eBy8WCEdqI1bY5Lwi8Hg" name="A_target_directedRelationship" memberEnd="_g2eBzcWCEdqI1bY5Lwi8Hg _g01DGMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eBzMWCEdqI1bY5Lwi8Hg" general="_g2eBxsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eBzcWCEdqI1bY5Lwi8Hg" visibility="public" type="_JBgfoKPAEdqi_5gqUMOQtA" redefinedProperty="_g2eBx8WCEdqI1bY5Lwi8Hg" association="_g2eBy8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkYdxmEdqEPrOCkNZ5Vg" name="A_target_directedRelationship" memberEnd="_MtmkY9xmEdqEPrOCkNZ5Vg _MsGvsdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkYtxmEdqEPrOCkNZ5Vg" general="_MtmkXNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkY9xmEdqEPrOCkNZ5Vg" visibility="public" type="_JBgfoKPAEdqi_5gqUMOQtA" redefinedProperty="_MtmkXdxmEdqEPrOCkNZ5Vg" association="_MtmkYdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB1MWCEdqI1bY5Lwi8Hg" name="A_constrainedElement_constraint" memberEnd="_g2eB1cWCEdqI1bY5Lwi8Hg _g1ua2cWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eB1cWCEdqI1bY5Lwi8Hg" visibility="public" type="_g1ua0MWCEdqI1bY5Lwi8Hg" association="_g2eB1MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkatxmEdqEPrOCkNZ5Vg" name="A_constrainedElement_constraint" memberEnd="_Mtmka9xmEdqEPrOCkNZ5Vg _Ms2Wa9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Mtmka9xmEdqEPrOCkNZ5Vg" visibility="public" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" association="_MtmkatxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQsMWCEdqI1bY5Lwi8Hg" name="A_type_typedElement" memberEnd="_g2UQscWCEdqI1bY5Lwi8Hg _g1Ru7MWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQscWCEdqI1bY5Lwi8Hg" visibility="public" type="_g1Ru6cWCEdqI1bY5Lwi8Hg" association="_g2UQsMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczMNxmEdqEPrOCkNZ5Vg" name="A_type_typedElement" memberEnd="_MtczMdxmEdqEPrOCkNZ5Vg _Msjbe9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtczMdxmEdqEPrOCkNZ5Vg" visibility="public" type="_MsjbeNxmEdqEPrOCkNZ5Vg" association="_MtczMNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g6yhA8WCEdqI1bY5Lwi8Hg" name="A_generalization_specific" memberEnd="_g4jsZcWCEdqI1bY5Lwi8Hg _g5AYasWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g6yhBMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g6yhBcWCEdqI1bY5Lwi8Hg" general="_g2eByMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxBruNxmEdqEPrOCkNZ5Vg" name="A_generalization_specific" memberEnd="_MvYs5dxmEdqEPrOCkNZ5Vg _Mvrn6txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxBrudxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxBrutxmEdqEPrOCkNZ5Vg" general="_MtmkXtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g6yhBsWCEdqI1bY5Lwi8Hg" name="A_general_generalization" memberEnd="_g5AYbsWCEdqI1bY5Lwi8Hg _g6yhCMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g6yhB8WCEdqI1bY5Lwi8Hg" general="_g2eBy8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g6yhCMWCEdqI1bY5Lwi8Hg" type="_C7AF4GwREdq14q0ETb1t3g" redefinedProperty="_g2eBzcWCEdqI1bY5Lwi8Hg" association="_g6yhBsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxLcoNxmEdqEPrOCkNZ5Vg" name="A_general_generalization" memberEnd="_Mvrn7txmEdqEPrOCkNZ5Vg _MxLcotxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxLcodxmEdqEPrOCkNZ5Vg" general="_MtmkYdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxLcotxmEdqEPrOCkNZ5Vg" type="_C7AF4GwREdq14q0ETb1t3g" redefinedProperty="_MtmkY9xmEdqEPrOCkNZ5Vg" association="_MxLcoNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB0sWCEdqI1bY5Lwi8Hg" name="A_feature_featuringClassifier" memberEnd="_g0-z88WCEdqI1bY5Lwi8Hg _g0iIBMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eB08WCEdqI1bY5Lwi8Hg" general="_g2eB4MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkaNxmEdqEPrOCkNZ5Vg" name="A_feature_featuringClassifier" memberEnd="_MsQggtxmEdqEPrOCkNZ5Vg _Mrz0dtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkadxmEdqEPrOCkNZ5Vg" general="_MtmkdtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQ38WCEdqI1bY5Lwi8Hg" name="A_ownedParameter_ownerFormalParam" memberEnd="_g2UQ4cWCEdqI1bY5Lwi8Hg _g14L4cWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ4MWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQ4cWCEdqI1bY5Lwi8Hg" name="ownerFormalParam" visibility="public" type="_rHT3YKOsEdqi_5gqUMOQtA" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_g2UQ38WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6yhCcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6yhCsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkMNxmEdqEPrOCkNZ5Vg" name="A_ownedParameter_ownerFormalParam" memberEnd="_MtmkMtxmEdqEPrOCkNZ5Vg _MtAHldxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkMdxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkMtxmEdqEPrOCkNZ5Vg" name="ownerFormalParam" visibility="public" type="_rHT3YKOsEdqi_5gqUMOQtA" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_MtmkMNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxLco9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxLcpNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g6yhC8WCEdqI1bY5Lwi8Hg" name="A_classifier_instanceSpecification" memberEnd="_g5JiWcWCEdqI1bY5Lwi8Hg _g6yhDMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g6yhDMWCEdqI1bY5Lwi8Hg" type="_g5JiUMWCEdqI1bY5Lwi8Hg" association="_g6yhC8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxLcpdxmEdqEPrOCkNZ5Vg" name="A_classifier_instanceSpecification" memberEnd="_Mv1Y6dxmEdqEPrOCkNZ5Vg _MxLcptxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxLcptxmEdqEPrOCkNZ5Vg" type="_Mv1Y4NxmEdqEPrOCkNZ5Vg" association="_MxLcpdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g6yhDcWCEdqI1bY5Lwi8Hg" name="A_slot_owningInstance" memberEnd="_g5JiaMWCEdqI1bY5Lwi8Hg _g5JiXcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g6yhDsWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxLcp9xmEdqEPrOCkNZ5Vg" name="A_slot_owningInstance" memberEnd="_Mv1Y7dxmEdqEPrOCkNZ5Vg _Mv1Y-NxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxLcqNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g6yhD8WCEdqI1bY5Lwi8Hg" name="A_definingFeature_slot" memberEnd="_g5JibMWCEdqI1bY5Lwi8Hg _g6yhEMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g6yhEMWCEdqI1bY5Lwi8Hg" type="_g5JiZcWCEdqI1bY5Lwi8Hg" association="_g6yhD8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxLcqdxmEdqEPrOCkNZ5Vg" name="A_definingFeature_slot" memberEnd="_Mv1Y_NxmEdqEPrOCkNZ5Vg _MxLcqtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxLcqtxmEdqEPrOCkNZ5Vg" type="_Mv1Y9dxmEdqEPrOCkNZ5Vg" association="_MxLcqdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eBxMWCEdqI1bY5Lwi8Hg" name="A_annotatedElement_comment" memberEnd="_g2eBxcWCEdqI1bY5Lwi8Hg _g2LG38WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eBxcWCEdqI1bY5Lwi8Hg" visibility="public" type="_g2LG2MWCEdqI1bY5Lwi8Hg" association="_g2eBxMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkWtxmEdqEPrOCkNZ5Vg" name="A_annotatedElement_comment" memberEnd="_MtmkW9xmEdqEPrOCkNZ5Vg _MtTCZ9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkW9xmEdqEPrOCkNZ5Vg" visibility="public" type="_MtTCYNxmEdqEPrOCkNZ5Vg" association="_MtmkWtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB7MWCEdqI1bY5Lwi8Hg" name="A_ownedComment_owningElement" memberEnd="_g2eB7sWCEdqI1bY5Lwi8Hg _g01DK8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eB7cWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eB7sWCEdqI1bY5Lwi8Hg" name="owningElement" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g2eB7MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6yhEcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6yhEsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkgtxmEdqEPrOCkNZ5Vg" name="A_ownedComment_owningElement" memberEnd="_MtmkhNxmEdqEPrOCkNZ5Vg _MsQgb9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mtmkg9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkhNxmEdqEPrOCkNZ5Vg" name="owningElement" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MtmkgtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxLcq9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxLcrNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQ7MWCEdqI1bY5Lwi8Hg" name="A_importedElement_elementImport" memberEnd="_g2UQ7sWCEdqI1bY5Lwi8Hg _g14L_8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ7cWCEdqI1bY5Lwi8Hg" general="_g2eBy8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQ7sWCEdqI1bY5Lwi8Hg" visibility="public" type="_RPl78GwIEdq7X4sGURiZYA" redefinedProperty="_g2eBzcWCEdqI1bY5Lwi8Hg" association="_g2UQ7MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkPdxmEdqEPrOCkNZ5Vg" name="A_importedElement_elementImport" memberEnd="_MtmkP9xmEdqEPrOCkNZ5Vg _MtAHs9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkPtxmEdqEPrOCkNZ5Vg" general="_MtmkYdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkP9xmEdqEPrOCkNZ5Vg" visibility="public" type="_RPl78GwIEdq7X4sGURiZYA" redefinedProperty="_MtmkY9xmEdqEPrOCkNZ5Vg" association="_MtmkPdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB8cWCEdqI1bY5Lwi8Hg" name="A_inheritedMember_classifier" memberEnd="_g2eB88WCEdqI1bY5Lwi8Hg _g0r5BMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eB8sWCEdqI1bY5Lwi8Hg" general="_g2eB4MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eB88WCEdqI1bY5Lwi8Hg" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" redefinedProperty="_g2eB4cWCEdqI1bY5Lwi8Hg" association="_g2eB8cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mtmkh9xmEdqEPrOCkNZ5Vg" name="A_inheritedMember_classifier" memberEnd="_MtmkidxmEdqEPrOCkNZ5Vg _Mr9lcNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkiNxmEdqEPrOCkNZ5Vg" general="_MtmkdtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkidxmEdqEPrOCkNZ5Vg" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" redefinedProperty="_Mtmkd9xmEdqEPrOCkNZ5Vg" association="_Mtmkh9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g6yhE8WCEdqI1bY5Lwi8Hg" name="A_nestedClassifier_class" memberEnd="_g5dESMWCEdqI1bY5Lwi8Hg _g6yhFsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g6yhFMWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g6yhFcWCEdqI1bY5Lwi8Hg" general="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g6yhFsWCEdqI1bY5Lwi8Hg" name="class" type="_00owUGvdEdq4DLWZOhbdEA" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg _g1H-IsWCEdqI1bY5Lwi8Hg" association="_g6yhE8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6yhF8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6yhGMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxLcrdxmEdqEPrOCkNZ5Vg" name="A_nestedClassifier_class" memberEnd="_Mv_J4dxmEdqEPrOCkNZ5Vg _MxLcsNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxLcrtxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxLcr9xmEdqEPrOCkNZ5Vg" general="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxLcsNxmEdqEPrOCkNZ5Vg" name="class" type="_00owUGvdEdq4DLWZOhbdEA" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg _MsjbWdxmEdqEPrOCkNZ5Vg" association="_MxLcrdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxLcsdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxLcstxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQssWCEdqI1bY5Lwi8Hg" name="A_ownedAttribute_class" memberEnd="_g1bgLsWCEdqI1bY5Lwi8Hg _g1bf8cWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQtMWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hPzHsMWCEdqI1bY5Lwi8Hg" general="_g84Lt8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczMtxmEdqEPrOCkNZ5Vg" name="A_ownedAttribute_class" memberEnd="_MstMU9xmEdqEPrOCkNZ5Vg _MstMkNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczNNxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_NCwU0NxmEdqEPrOCkNZ5Vg" general="_My9lZtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQtcWCEdqI1bY5Lwi8Hg" name="A_ownedOperation_class" memberEnd="_g1ubDMWCEdqI1bY5Lwi8Hg _g1bf9cWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQtsWCEdqI1bY5Lwi8Hg" general="_g2eB0sWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQt8WCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQuMWCEdqI1bY5Lwi8Hg" general="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczNdxmEdqEPrOCkNZ5Vg" name="A_ownedOperation_class" memberEnd="_Ms2WntxmEdqEPrOCkNZ5Vg _MstMV9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczNtxmEdqEPrOCkNZ5Vg" general="_MtmkaNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczN9xmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczONxmEdqEPrOCkNZ5Vg" general="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB9MWCEdqI1bY5Lwi8Hg" name="A_precondition_preContext" memberEnd="_g2eB9sWCEdqI1bY5Lwi8Hg _g1ubJMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eB9cWCEdqI1bY5Lwi8Hg" general="_g2eCA8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eB9sWCEdqI1bY5Lwi8Hg" name="preContext" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" subsettedProperty="_g1ua4cWCEdqI1bY5Lwi8Hg" association="_g2eB9MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g68SAMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g68SAcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkitxmEdqEPrOCkNZ5Vg" name="A_precondition_preContext" memberEnd="_MtmkjNxmEdqEPrOCkNZ5Vg _MtAHVNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mtmki9xmEdqEPrOCkNZ5Vg" general="_MtmkmdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkjNxmEdqEPrOCkNZ5Vg" name="preContext" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" subsettedProperty="_Ms2Wc9xmEdqEPrOCkNZ5Vg" association="_MtmkitxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxLctdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxLcttxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB-cWCEdqI1bY5Lwi8Hg" name="A_postcondition_postContext" memberEnd="_g2eB-8WCEdqI1bY5Lwi8Hg _g1ubJ8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eB-sWCEdqI1bY5Lwi8Hg" general="_g2eCA8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eB-8WCEdqI1bY5Lwi8Hg" name="postContext" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" subsettedProperty="_g1ua4cWCEdqI1bY5Lwi8Hg" association="_g2eB-cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g68SAsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g68SA8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mtmkj9xmEdqEPrOCkNZ5Vg" name="A_postcondition_postContext" memberEnd="_MtmkkdxmEdqEPrOCkNZ5Vg _MtAHV9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkkNxmEdqEPrOCkNZ5Vg" general="_MtmkmdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkkdxmEdqEPrOCkNZ5Vg" name="postContext" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" subsettedProperty="_Ms2Wc9xmEdqEPrOCkNZ5Vg" association="_Mtmkj9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxLct9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxLcuNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQ3MWCEdqI1bY5Lwi8Hg" name="A_redefinedOperation_operation" memberEnd="_g2UQ3sWCEdqI1bY5Lwi8Hg _g1ubGMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ3cWCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQ3sWCEdqI1bY5Lwi8Hg" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" redefinedProperty="_g2eB0cWCEdqI1bY5Lwi8Hg" association="_g2UQ3MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczXNxmEdqEPrOCkNZ5Vg" name="A_redefinedOperation_operation" memberEnd="_MtczXtxmEdqEPrOCkNZ5Vg _MtAHSNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczXdxmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtczXtxmEdqEPrOCkNZ5Vg" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" redefinedProperty="_MtmkZ9xmEdqEPrOCkNZ5Vg" association="_MtczXNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQw8WCEdqI1bY5Lwi8Hg" name="A_redefinedProperty_property" memberEnd="_g2UQxcWCEdqI1bY5Lwi8Hg _g1bgNsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQxMWCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQxcWCEdqI1bY5Lwi8Hg" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" redefinedProperty="_g2eB0cWCEdqI1bY5Lwi8Hg" association="_g2UQw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczQ9xmEdqEPrOCkNZ5Vg" name="A_redefinedProperty_property" memberEnd="_MtczRdxmEdqEPrOCkNZ5Vg _MstMmNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczRNxmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtczRdxmEdqEPrOCkNZ5Vg" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" redefinedProperty="_MtmkZ9xmEdqEPrOCkNZ5Vg" association="_MtczQ9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQucWCEdqI1bY5Lwi8Hg" name="A_ownedEnd_owningAssociation" memberEnd="_g1bgMsWCEdqI1bY5Lwi8Hg _g1RvG8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQusWCEdqI1bY5Lwi8Hg" general="_g2eBt8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQu8WCEdqI1bY5Lwi8Hg" general="_g2eB0sWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQvMWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczOdxmEdqEPrOCkNZ5Vg" name="A_ownedEnd_owningAssociation" memberEnd="_MstMlNxmEdqEPrOCkNZ5Vg _MsjbqtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczOtxmEdqEPrOCkNZ5Vg" general="_MtmkTdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczO9xmEdqEPrOCkNZ5Vg" general="_MtmkaNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczPNxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQ0sWCEdqI1bY5Lwi8Hg" name="A_ownedAttribute_datatype" memberEnd="_g1kp8cWCEdqI1bY5Lwi8Hg _g1bgQsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ08WCEdqI1bY5Lwi8Hg" general="_g2UQvcWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ1MWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczUtxmEdqEPrOCkNZ5Vg" name="A_ownedAttribute_datatype" memberEnd="_MstMpNxmEdqEPrOCkNZ5Vg _Ms2WQtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczU9xmEdqEPrOCkNZ5Vg" general="_MtczPdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczVNxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQ1cWCEdqI1bY5Lwi8Hg" name="A_ownedOperation_datatype" memberEnd="_g1ubEMWCEdqI1bY5Lwi8Hg _g1kp9cWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ1sWCEdqI1bY5Lwi8Hg" general="_g2eB0sWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ18WCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ2MWCEdqI1bY5Lwi8Hg" general="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczVdxmEdqEPrOCkNZ5Vg" name="A_ownedOperation_datatype" memberEnd="_MtAHQNxmEdqEPrOCkNZ5Vg _Ms2WRtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczVtxmEdqEPrOCkNZ5Vg" general="_MtmkaNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczV9xmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczWNxmEdqEPrOCkNZ5Vg" general="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQ0MWCEdqI1bY5Lwi8Hg" name="A_ownedLiteral_enumeration" memberEnd="_g1kqBcWCEdqI1bY5Lwi8Hg _g1kqC8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ0cWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczUNxmEdqEPrOCkNZ5Vg" name="A_ownedLiteral_enumeration" memberEnd="_Ms2WXNxmEdqEPrOCkNZ5Vg _Ms2WVtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczUdxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQ78WCEdqI1bY5Lwi8Hg" name="A_elementImport_importingNamespace" memberEnd="_g14MA8WCEdqI1bY5Lwi8Hg _g0-0PMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ8MWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ8cWCEdqI1bY5Lwi8Hg" general="_g2eByMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkQNxmEdqEPrOCkNZ5Vg" name="A_elementImport_importingNamespace" memberEnd="_MtJ4QNxmEdqEPrOCkNZ5Vg _MsaRbtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkQdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkQtxmEdqEPrOCkNZ5Vg" general="_MtmkXtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQ8sWCEdqI1bY5Lwi8Hg" name="A_packageImport_importingNamespace" memberEnd="_g1H94MWCEdqI1bY5Lwi8Hg _g2BV7MWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ88WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ9MWCEdqI1bY5Lwi8Hg" general="_g2eByMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkQ9xmEdqEPrOCkNZ5Vg" name="A_packageImport_importingNamespace" memberEnd="_MtJ4g9xmEdqEPrOCkNZ5Vg _MsaRctxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkRNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkRdxmEdqEPrOCkNZ5Vg" general="_MtmkXtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQ6cWCEdqI1bY5Lwi8Hg" name="A_importedPackage_packageImport" memberEnd="_g2UQ68WCEdqI1bY5Lwi8Hg _g2BV6MWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ6sWCEdqI1bY5Lwi8Hg" general="_g2eBy8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQ68WCEdqI1bY5Lwi8Hg" visibility="public" type="_SnNPIGwIEdq7X4sGURiZYA" redefinedProperty="_g2eBzcWCEdqI1bY5Lwi8Hg" association="_g2UQ6cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkOtxmEdqEPrOCkNZ5Vg" name="A_importedPackage_packageImport" memberEnd="_MtmkPNxmEdqEPrOCkNZ5Vg _MtJ4f9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkO9xmEdqEPrOCkNZ5Vg" general="_MtmkYdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkPNxmEdqEPrOCkNZ5Vg" visibility="public" type="_SnNPIGwIEdq7X4sGURiZYA" redefinedProperty="_MtmkY9xmEdqEPrOCkNZ5Vg" association="_MtmkOtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g68SBMWCEdqI1bY5Lwi8Hg" name="A_redefinedClassifier_classifier" memberEnd="_g4s2VMWCEdqI1bY5Lwi8Hg _g68SBsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g68SBcWCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g68SBsWCEdqI1bY5Lwi8Hg" type="_6UV2QGwJEdq7X4sGURiZYA" redefinedProperty="_g2eB0cWCEdqI1bY5Lwi8Hg" association="_g68SBMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxUmkNxmEdqEPrOCkNZ5Vg" name="A_redefinedClassifier_classifier" memberEnd="_MvYs8NxmEdqEPrOCkNZ5Vg _MxUmktxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxUmkdxmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxUmktxmEdqEPrOCkNZ5Vg" type="_6UV2QGwJEdq7X4sGURiZYA" redefinedProperty="_MtmkZ9xmEdqEPrOCkNZ5Vg" association="_MxUmkNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB1sWCEdqI1bY5Lwi8Hg" name="A_specification_owningConstraint" memberEnd="_g2eB2MWCEdqI1bY5Lwi8Hg _g1ua3cWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eB18WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eB2MWCEdqI1bY5Lwi8Hg" name="owningConstraint" visibility="public" type="_g1ua0MWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g2eB1sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g68SB8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g68SCMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkbNxmEdqEPrOCkNZ5Vg" name="A_specification_owningConstraint" memberEnd="_MtmkbtxmEdqEPrOCkNZ5Vg _Ms2Wb9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkbdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkbtxmEdqEPrOCkNZ5Vg" name="owningConstraint" visibility="public" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MtmkbNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxUmk9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxUmlNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g68SCcWCEdqI1bY5Lwi8Hg" name="A_defaultValue_owningParameter" memberEnd="_g5JiRcWCEdqI1bY5Lwi8Hg _g68SC8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g68SCsWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g68SC8WCEdqI1bY5Lwi8Hg" name="owningParameter" type="_KyaPMGveEdq4DLWZOhbdEA" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g68SCcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g68SDMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g68SDcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxUmldxmEdqEPrOCkNZ5Vg" name="A_defaultValue_owningParameter" memberEnd="_Mv1Y1dxmEdqEPrOCkNZ5Vg _MxUml9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxUmltxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxUml9xmEdqEPrOCkNZ5Vg" name="owningParameter" type="_KyaPMGveEdq4DLWZOhbdEA" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MxUmldxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxUmmNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxUmmdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g68SDsWCEdqI1bY5Lwi8Hg" name="A_defaultValue_owningProperty" memberEnd="_g5mORsWCEdqI1bY5Lwi8Hg _g68SEMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g68SD8WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g68SEMWCEdqI1bY5Lwi8Hg" name="owningProperty" type="_Jp_1oGveEdq4DLWZOhbdEA" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g68SDsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g68SEcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g68SEsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxUmmtxmEdqEPrOCkNZ5Vg" name="A_defaultValue_owningProperty" memberEnd="_MwIT5txmEdqEPrOCkNZ5Vg _MxUmnNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxUmm9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxUmnNxmEdqEPrOCkNZ5Vg" name="owningProperty" type="_Jp_1oGveEdq4DLWZOhbdEA" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MxUmmtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxUmndxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxUmntxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eCA8WCEdqI1bY5Lwi8Hg" name="A_ownedRule_context" memberEnd="_g1ua4cWCEdqI1bY5Lwi8Hg _g1H97MWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eCBMWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkmdxmEdqEPrOCkNZ5Vg" name="A_ownedRule_context" memberEnd="_MsaRftxmEdqEPrOCkNZ5Vg _Ms2Wc9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkmtxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB4MWCEdqI1bY5Lwi8Hg" name="A_member_namespace" memberEnd="_g2eB4cWCEdqI1bY5Lwi8Hg _g1H96MWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eB4cWCEdqI1bY5Lwi8Hg" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" association="_g2eB4MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkdtxmEdqEPrOCkNZ5Vg" name="A_member_namespace" memberEnd="_Mtmkd9xmEdqEPrOCkNZ5Vg _MsaRetxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Mtmkd9xmEdqEPrOCkNZ5Vg" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" association="_MtmkdtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eBxsWCEdqI1bY5Lwi8Hg" name="A_relatedElement_relationship" memberEnd="_g2eBx8WCEdqI1bY5Lwi8Hg _g1Ru4MWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eBx8WCEdqI1bY5Lwi8Hg" visibility="public" type="_DH62EKPAEdqi_5gqUMOQtA" association="_g2eBxsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkXNxmEdqEPrOCkNZ5Vg" name="A_relatedElement_relationship" memberEnd="_MtmkXdxmEdqEPrOCkNZ5Vg _Msjbb9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkXdxmEdqEPrOCkNZ5Vg" visibility="public" type="_DH62EKPAEdqi_5gqUMOQtA" association="_MtmkXNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQzcWCEdqI1bY5Lwi8Hg" name="A_endType_association" memberEnd="_g2UQz8WCEdqI1bY5Lwi8Hg _g1bf4MWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQzsWCEdqI1bY5Lwi8Hg" general="_g2eBxsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQz8WCEdqI1bY5Lwi8Hg" visibility="public" type="_AwvxoGwNEdq7X4sGURiZYA" redefinedProperty="_g2eBx8WCEdqI1bY5Lwi8Hg" association="_g2UQzcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczTdxmEdqEPrOCkNZ5Vg" name="A_endType_association" memberEnd="_MtczT9xmEdqEPrOCkNZ5Vg _MsjbrtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczTtxmEdqEPrOCkNZ5Vg" general="_MtmkXNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtczT9xmEdqEPrOCkNZ5Vg" visibility="public" type="_AwvxoGwNEdq7X4sGURiZYA" redefinedProperty="_MtmkXdxmEdqEPrOCkNZ5Vg" association="_MtczTdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7Fb8MWCEdqI1bY5Lwi8Hg" name="A_upperValue_owningUpper" memberEnd="_g3qUlMWCEdqI1bY5Lwi8Hg _g7Fb8sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7Fb8cWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7Fb8sWCEdqI1bY5Lwi8Hg" name="owningUpper" type="_Gjgl0GveEdq4DLWZOhbdEA" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g7Fb8MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7Fb88WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7Fb9MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxUmn9xmEdqEPrOCkNZ5Vg" name="A_upperValue_owningUpper" memberEnd="_MvO74NxmEdqEPrOCkNZ5Vg _MxUmodxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxUmoNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxUmodxmEdqEPrOCkNZ5Vg" name="owningUpper" type="_Gjgl0GveEdq4DLWZOhbdEA" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MxUmn9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxUmotxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxUmo9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7Fb9cWCEdqI1bY5Lwi8Hg" name="A_lowerValue_owningLower" memberEnd="_g3qUmMWCEdqI1bY5Lwi8Hg _g7Fb98WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7Fb9sWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7Fb98WCEdqI1bY5Lwi8Hg" name="owningLower" type="_Gjgl0GveEdq4DLWZOhbdEA" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g7Fb9cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7Fb-MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7Fb-cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxUmpNxmEdqEPrOCkNZ5Vg" name="A_lowerValue_owningLower" memberEnd="_MvO75NxmEdqEPrOCkNZ5Vg _MxUmptxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxUmpdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxUmptxmEdqEPrOCkNZ5Vg" name="owningLower" type="_Gjgl0GveEdq4DLWZOhbdEA" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MxUmpNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxUmp9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxUmqNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eBvcWCEdqI1bY5Lwi8Hg" name="A_receivingPackage_packageMerge" memberEnd="_g2BVyMWCEdqI1bY5Lwi8Hg _g2BV88WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eBv8WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eBvsWCEdqI1bY5Lwi8Hg" general="_g2eByMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkU9xmEdqEPrOCkNZ5Vg" name="A_receivingPackage_packageMerge" memberEnd="_MtJ4X9xmEdqEPrOCkNZ5Vg _MtJ4itxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkVdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkVNxmEdqEPrOCkNZ5Vg" general="_MtmkXtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eBwMWCEdqI1bY5Lwi8Hg" name="A_mergedPackage_packageMerge" memberEnd="_g2eBwsWCEdqI1bY5Lwi8Hg _g2BV98WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eBwcWCEdqI1bY5Lwi8Hg" general="_g2eBy8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eBwsWCEdqI1bY5Lwi8Hg" visibility="public" type="_g2BV8MWCEdqI1bY5Lwi8Hg" redefinedProperty="_g2eBzcWCEdqI1bY5Lwi8Hg" association="_g2eBwMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkVtxmEdqEPrOCkNZ5Vg" name="A_mergedPackage_packageMerge" memberEnd="_MtmkWNxmEdqEPrOCkNZ5Vg _MtJ4jtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkV9xmEdqEPrOCkNZ5Vg" general="_MtmkYdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkWNxmEdqEPrOCkNZ5Vg" visibility="public" type="_MtJ4h9xmEdqEPrOCkNZ5Vg" redefinedProperty="_MtmkY9xmEdqEPrOCkNZ5Vg" association="_MtmkVtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7Fb-sWCEdqI1bY5Lwi8Hg" name="A_instance_instanceValue" memberEnd="_g6fmGcWCEdqI1bY5Lwi8Hg _g7Fb-8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7Fb-8WCEdqI1bY5Lwi8Hg" type="_PyCx8GveEdq4DLWZOhbdEA" association="_g7Fb-sWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxUmqdxmEdqEPrOCkNZ5Vg" name="A_instance_instanceValue" memberEnd="_Mw36rtxmEdqEPrOCkNZ5Vg _MxUmqtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxUmqtxmEdqEPrOCkNZ5Vg" type="_PyCx8GveEdq4DLWZOhbdEA" association="_MxUmqdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7Fb_MWCEdqI1bY5Lwi8Hg" name="A_value_owningSlot" memberEnd="_g5JicMWCEdqI1bY5Lwi8Hg _g7Fb_sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7Fb_cWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7Fb_sWCEdqI1bY5Lwi8Hg" name="owningSlot" type="_g5JiZcWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g7Fb_MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7Fb_8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7FcAMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxUmq9xmEdqEPrOCkNZ5Vg" name="A_value_owningSlot" memberEnd="_Mv1ZANxmEdqEPrOCkNZ5Vg _MxUmrdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxUmrNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxUmrdxmEdqEPrOCkNZ5Vg" name="owningSlot" type="_Mv1Y9dxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MxUmq9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxUmrtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxUmr9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7FcAcWCEdqI1bY5Lwi8Hg" name="A_specification_owningInstanceSpec" memberEnd="_g5JiYcWCEdqI1bY5Lwi8Hg _g7FcA8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7FcAsWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7FcA8WCEdqI1bY5Lwi8Hg" name="owningInstanceSpec" type="_g5JiUMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g7FcAcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7FcBMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7FcBcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxUmsNxmEdqEPrOCkNZ5Vg" name="A_specification_owningInstanceSpec" memberEnd="_Mv1Y8dxmEdqEPrOCkNZ5Vg _MxUmstxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxUmsdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxUmstxmEdqEPrOCkNZ5Vg" name="owningInstanceSpec" type="_Mv1Y4NxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MxUmsNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxUms9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxUmtNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eBsMWCEdqI1bY5Lwi8Hg" name="A_packagedElement_owningPackage" memberEnd="_g2eBssWCEdqI1bY5Lwi8Hg _g14MEsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eBscWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eBssWCEdqI1bY5Lwi8Hg" name="owningPackage" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_g2eBsMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7FcBsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7FcB8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkRtxmEdqEPrOCkNZ5Vg" name="A_packagedElement_owningPackage" memberEnd="_MtmkSNxmEdqEPrOCkNZ5Vg _MtJ4T9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkR9xmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkSNxmEdqEPrOCkNZ5Vg" name="owningPackage" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_MtmkRtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxUmtdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxUmttxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQ5sWCEdqI1bY5Lwi8Hg" name="A_importedMember_namespace" memberEnd="_g2UQ6MWCEdqI1bY5Lwi8Hg _g0-0OMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ58WCEdqI1bY5Lwi8Hg" general="_g2eB4MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQ6MWCEdqI1bY5Lwi8Hg" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" redefinedProperty="_g2eB4cWCEdqI1bY5Lwi8Hg" association="_g2UQ5sWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkN9xmEdqEPrOCkNZ5Vg" name="A_importedMember_namespace" memberEnd="_MtmkOdxmEdqEPrOCkNZ5Vg _MsaRatxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkONxmEdqEPrOCkNZ5Vg" general="_MtmkdtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkOdxmEdqEPrOCkNZ5Vg" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" redefinedProperty="_Mtmkd9xmEdqEPrOCkNZ5Vg" association="_MtmkN9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQyMWCEdqI1bY5Lwi8Hg" name="A_opposite_property" memberEnd="_g2UQycWCEdqI1bY5Lwi8Hg _g1bgPsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQycWCEdqI1bY5Lwi8Hg" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_g2UQyMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczSNxmEdqEPrOCkNZ5Vg" name="A_opposite_property" memberEnd="_MtczSdxmEdqEPrOCkNZ5Vg _MstMoNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtczSdxmEdqEPrOCkNZ5Vg" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_MtczSNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQxsWCEdqI1bY5Lwi8Hg" name="A_subsettedProperty_property" memberEnd="_g2UQx8WCEdqI1bY5Lwi8Hg _g1bgOsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQx8WCEdqI1bY5Lwi8Hg" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_g2UQxsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczRtxmEdqEPrOCkNZ5Vg" name="A_subsettedProperty_property" memberEnd="_MtczR9xmEdqEPrOCkNZ5Vg _MstMnNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtczR9xmEdqEPrOCkNZ5Vg" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_MtczRtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eBt8WCEdqI1bY5Lwi8Hg" name="A_memberEnd_association" memberEnd="_g1bgRsWCEdqI1bY5Lwi8Hg _g1bf5MWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eBuMWCEdqI1bY5Lwi8Hg" general="_g2eB4MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkTdxmEdqEPrOCkNZ5Vg" name="A_memberEnd_association" memberEnd="_MsjbstxmEdqEPrOCkNZ5Vg _MstMqNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkTtxmEdqEPrOCkNZ5Vg" general="_MtmkdtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eBtcWCEdqI1bY5Lwi8Hg" name="A_ownedType_package" memberEnd="_g14MFsWCEdqI1bY5Lwi8Hg _g2BV_sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eBtsWCEdqI1bY5Lwi8Hg" general="_g2eBsMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkS9xmEdqEPrOCkNZ5Vg" name="A_ownedType_package" memberEnd="_MtJ4ldxmEdqEPrOCkNZ5Vg _MtJ4U9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkTNxmEdqEPrOCkNZ5Vg" general="_MtmkRtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eBucWCEdqI1bY5Lwi8Hg" name="A_nestedPackage_nestingPackage" memberEnd="_g2BVxMWCEdqI1bY5Lwi8Hg _g2BVwMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eBusWCEdqI1bY5Lwi8Hg" general="_g2eBsMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkT9xmEdqEPrOCkNZ5Vg" name="A_nestedPackage_nestingPackage" memberEnd="_MtJ4W9xmEdqEPrOCkNZ5Vg _MtJ4V9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkUNxmEdqEPrOCkNZ5Vg" general="_MtmkRtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB0MWCEdqI1bY5Lwi8Hg" name="A_redefinedElement_redefinableElement" memberEnd="_g2eB0cWCEdqI1bY5Lwi8Hg _g1H-JsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eB0cWCEdqI1bY5Lwi8Hg" visibility="public" type="_g1H-GcWCEdqI1bY5Lwi8Hg" association="_g2eB0MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7FcCMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7FcCcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkZtxmEdqEPrOCkNZ5Vg" name="A_redefinedElement_redefinableElement" memberEnd="_MtmkZ9xmEdqEPrOCkNZ5Vg _MsjbXdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkZ9xmEdqEPrOCkNZ5Vg" visibility="public" type="_MsjbUNxmEdqEPrOCkNZ5Vg" association="_MtmkZtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxeXkNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxeXkdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eBzsWCEdqI1bY5Lwi8Hg" name="A_redefinitionContext_redefinableElement" memberEnd="_g2eBz8WCEdqI1bY5Lwi8Hg _g1H-IsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eBz8WCEdqI1bY5Lwi8Hg" visibility="public" type="_g1H-GcWCEdqI1bY5Lwi8Hg" association="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkZNxmEdqEPrOCkNZ5Vg" name="A_redefinitionContext_redefinableElement" memberEnd="_MtmkZdxmEdqEPrOCkNZ5Vg _MsjbWdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkZdxmEdqEPrOCkNZ5Vg" visibility="public" type="_MsjbUNxmEdqEPrOCkNZ5Vg" association="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB28WCEdqI1bY5Lwi8Hg" name="A_general_classifier" memberEnd="_g2eB3MWCEdqI1bY5Lwi8Hg _g0r5AMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eB3MWCEdqI1bY5Lwi8Hg" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" association="_g2eB28WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkcdxmEdqEPrOCkNZ5Vg" name="A_general_classifier" memberEnd="_MtmkctxmEdqEPrOCkNZ5Vg _Mrz0etxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkctxmEdqEPrOCkNZ5Vg" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" association="_MtmkcdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQysWCEdqI1bY5Lwi8Hg" name="A_superClass_class" memberEnd="_g2UQzMWCEdqI1bY5Lwi8Hg _g1bf-cWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQy8WCEdqI1bY5Lwi8Hg" general="_g2eB28WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQzMWCEdqI1bY5Lwi8Hg" visibility="public" type="_00owUGvdEdq4DLWZOhbdEA" redefinedProperty="_g2eB3MWCEdqI1bY5Lwi8Hg" association="_g2UQysWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczStxmEdqEPrOCkNZ5Vg" name="A_superClass_class" memberEnd="_MtczTNxmEdqEPrOCkNZ5Vg _MstMW9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczS9xmEdqEPrOCkNZ5Vg" general="_MtmkcdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtczTNxmEdqEPrOCkNZ5Vg" visibility="public" type="_00owUGvdEdq4DLWZOhbdEA" redefinedProperty="_MtmkctxmEdqEPrOCkNZ5Vg" association="_MtczStxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB_sWCEdqI1bY5Lwi8Hg" name="A_bodyCondition_bodyContext" memberEnd="_g2eCAMWCEdqI1bY5Lwi8Hg _g1ubKsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eB_8WCEdqI1bY5Lwi8Hg" general="_g2eCA8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eCAMWCEdqI1bY5Lwi8Hg" name="bodyContext" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" subsettedProperty="_g1ua4cWCEdqI1bY5Lwi8Hg" association="_g2eB_sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7FcCsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7FcC8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmklNxmEdqEPrOCkNZ5Vg" name="A_bodyCondition_bodyContext" memberEnd="_MtmkltxmEdqEPrOCkNZ5Vg _MtAHWtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkldxmEdqEPrOCkNZ5Vg" general="_MtmkmdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkltxmEdqEPrOCkNZ5Vg" name="bodyContext" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" subsettedProperty="_Ms2Wc9xmEdqEPrOCkNZ5Vg" association="_MtmklNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxeXktxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxeXk9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eBu8WCEdqI1bY5Lwi8Hg" name="A_type_operation" memberEnd="_g2eBvMWCEdqI1bY5Lwi8Hg _g1ubHMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eBvMWCEdqI1bY5Lwi8Hg" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" association="_g2eBu8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkUdxmEdqEPrOCkNZ5Vg" name="A_type_operation" memberEnd="_MtmkUtxmEdqEPrOCkNZ5Vg _MtAHTNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkUtxmEdqEPrOCkNZ5Vg" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" association="_MtmkUdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB6sWCEdqI1bY5Lwi8Hg" name="A_ownedParameter_operation" memberEnd="_g14L2sWCEdqI1bY5Lwi8Hg _g1ubIMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eB68WCEdqI1bY5Lwi8Hg" general="_g2UQ38WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkgNxmEdqEPrOCkNZ5Vg" name="A_ownedParameter_operation" memberEnd="_MtAHUNxmEdqEPrOCkNZ5Vg _MtAHjtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkgdxmEdqEPrOCkNZ5Vg" general="_MtmkMNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB4sWCEdqI1bY5Lwi8Hg" name="A_operand_expression" memberEnd="_g2eB5MWCEdqI1bY5Lwi8Hg _g2LG1MWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eB48WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eB5MWCEdqI1bY5Lwi8Hg" name="expression" visibility="public" type="_g2LG0cWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g2eB4sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7FcDMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7FcDcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkeNxmEdqEPrOCkNZ5Vg" name="A_operand_expression" memberEnd="_MtmketxmEdqEPrOCkNZ5Vg _MtTCXNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkedxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmketxmEdqEPrOCkNZ5Vg" name="expression" visibility="public" type="_MtTCWdxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MtmkeNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxeXlNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxeXldxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQ2cWCEdqI1bY5Lwi8Hg" name="A_raisedException_operation" memberEnd="_g2UQ28WCEdqI1bY5Lwi8Hg _g1ubFMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQ2sWCEdqI1bY5Lwi8Hg" general="_g2UQ5MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQ28WCEdqI1bY5Lwi8Hg" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" redefinedProperty="_g2UQ5cWCEdqI1bY5Lwi8Hg" association="_g2UQ2cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczWdxmEdqEPrOCkNZ5Vg" name="A_raisedException_operation" memberEnd="_MtczW9xmEdqEPrOCkNZ5Vg _MtAHRNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczWtxmEdqEPrOCkNZ5Vg" general="_MtmkNdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtczW9xmEdqEPrOCkNZ5Vg" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" redefinedProperty="_MtmkNtxmEdqEPrOCkNZ5Vg" association="_MtczWdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB58WCEdqI1bY5Lwi8Hg" name="A_navigableOwnedEnd_association" memberEnd="_g2eB6cWCEdqI1bY5Lwi8Hg _g1bf6MWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eB6MWCEdqI1bY5Lwi8Hg" general="_g2UQucWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2eB6cWCEdqI1bY5Lwi8Hg" visibility="public" type="_AwvxoGwNEdq7X4sGURiZYA" redefinedProperty="_g2eB4cWCEdqI1bY5Lwi8Hg" association="_g2eB58WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkfdxmEdqEPrOCkNZ5Vg" name="A_navigableOwnedEnd_association" memberEnd="_Mtmkf9xmEdqEPrOCkNZ5Vg _MsjbttxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkftxmEdqEPrOCkNZ5Vg" general="_MtczOdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Mtmkf9xmEdqEPrOCkNZ5Vg" visibility="public" type="_AwvxoGwNEdq7X4sGURiZYA" redefinedProperty="_Mtmkd9xmEdqEPrOCkNZ5Vg" association="_MtmkfdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ChRfcGveEdq4DLWZOhbdEA" name="OpaqueExpression">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua5MWCEdqI1bY5Lwi8Hg" annotatedElement="_ChRfcGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WdtxmEdqEPrOCkNZ5Vg" annotatedElement="_ChRfcGveEdq4DLWZOhbdEA">
<body>An opaque expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3NolMWCEdqI1bY5Lwi8Hg" annotatedElement="_ChRfcGveEdq4DLWZOhbdEA">
- <body>An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.
-
-One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Muy3A9xmEdqEPrOCkNZ5Vg" annotatedElement="_ChRfcGveEdq4DLWZOhbdEA">
+ <body>An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xD;
+One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iH4MWCEdqI1bY5Lwi8Hg" annotatedElement="_ChRfcGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSptxmEdqEPrOCkNZ5Vg" annotatedElement="_ChRfcGveEdq4DLWZOhbdEA">
<body>Provides a mechanism for precisely defining the behavior of an opaque expression. An opaque expression is defined by a behavior restricted to return one result.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1ua5cWCEdqI1bY5Lwi8Hg" name="language_body_size" constrainedElement="_ChRfcGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua5sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua5cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Ms2Wd9xmEdqEPrOCkNZ5Vg" name="language_body_size" constrainedElement="_ChRfcGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WeNxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2Wd9xmEdqEPrOCkNZ5Vg">
<body>If the language attribute is not empty, then the size of the body and language arrays must be the same.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3NolcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Muy3BNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>language->notEmpty() implies (body->size() = language->size())</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7iH4cWCEdqI1bY5Lwi8Hg" name="only_return_result_parameters" constrainedElement="_ChRfcGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iH4sWCEdqI1bY5Lwi8Hg" annotatedElement="_g7iH4cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MxxSp9xmEdqEPrOCkNZ5Vg" name="only_return_result_parameters" constrainedElement="_ChRfcGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSqNxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSp9xmEdqEPrOCkNZ5Vg">
<body>The behavior may only have return result parameters.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7iH48WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MxxSqdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>self.behavior.notEmpty() implies&#xA;&#xA; self.behavior.ownedParameters->select(p | p.direction&lt;>#return)->isEmpty()</body>
+ <body>self.behavior.notEmpty() implies&#xD;&#xA; self.behavior.ownedParameters->select(p | p.direction&lt;>#return)->isEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7iH5MWCEdqI1bY5Lwi8Hg" name="one_return_result_parameter" constrainedElement="_ChRfcGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iH5cWCEdqI1bY5Lwi8Hg" annotatedElement="_g7iH5MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MxxSqtxmEdqEPrOCkNZ5Vg" name="one_return_result_parameter" constrainedElement="_ChRfcGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSq9xmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSqtxmEdqEPrOCkNZ5Vg">
<body>The behavior must have exactly one return result parameter.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7iH5sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MxxSrNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>self.behavior.notEmpty() implies&#xA;&#xA; self.behavior.ownedParameter->select(p | p.direction=#return)->size() = 1</body>
+ <body>self.behavior.notEmpty() implies&#xD;&#xA; self.behavior.ownedParameter->select(p | p.direction=#return)->size() = 1</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1ua6MWCEdqI1bY5Lwi8Hg" general="_g1Ru8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ua6cWCEdqI1bY5Lwi8Hg" name="body" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua6sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua6cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Ms2WetxmEdqEPrOCkNZ5Vg" general="_Msjbf9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2We9xmEdqEPrOCkNZ5Vg" name="body" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WfNxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2We9xmEdqEPrOCkNZ5Vg">
<body>The text of the expression, possibly in multiple languages.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3NolsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3Nol8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Muy3BdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Muy3BtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ua7cWCEdqI1bY5Lwi8Hg" name="language" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua7sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua7cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2Wf9xmEdqEPrOCkNZ5Vg" name="language" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WgNxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2Wf9xmEdqEPrOCkNZ5Vg">
<body>Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the language. If languages are unspecified, it might be implicit from the expression body or the context. Languages are matched to body strings by order.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3NomMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua7cWCEdqI1bY5Lwi8Hg">
- <body>Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the languages. If the languages are unspecified, they might be implicit from the expression body or the context. Languages are matched to body strings by order.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Muy3B9xmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2Wf9xmEdqEPrOCkNZ5Vg">
+ <body>Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the languages. If the languages are unspecified, they might be implicit from the expression body or the context. Languages are matched to body strings by order.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3NomcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3NomsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Muy3CNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Muy3CdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7iH58WCEdqI1bY5Lwi8Hg" name="result" type="_KyaPMGveEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" association="_g7iIIMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iH6MWCEdqI1bY5Lwi8Hg" annotatedElement="_g7iH58WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSrdxmEdqEPrOCkNZ5Vg" name="result" type="_KyaPMGveEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" association="_Mx7DhtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSrtxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSrdxmEdqEPrOCkNZ5Vg">
<body>Restricts an opaque expression to return exactly one return result. When the invocation of the opaque expression completes, a single set of values is returned to its owner. This association is derived from the single return result parameter of the associated behavior.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7iH6cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7iH6sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxSr9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxSsNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7iH68WCEdqI1bY5Lwi8Hg" name="behavior" type="_TUPtYGveEdq4DLWZOhbdEA" association="_g7iIJMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iH7MWCEdqI1bY5Lwi8Hg" annotatedElement="_g7iH68WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSsdxmEdqEPrOCkNZ5Vg" name="behavior" type="_TUPtYGveEdq4DLWZOhbdEA" association="_Mx7DitxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSstxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSsdxmEdqEPrOCkNZ5Vg">
<body>Specifies the behavior of the opaque expression.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7iH7cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7iH7sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxSs9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxStNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_mv9LcFYiEdqB6vblk3tuMA" name="getResult" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_vXTbwFYiEdqB6vblk3tuMA" type="_KyaPMGveEdq4DLWZOhbdEA" direction="return">
@@ -1739,740 +1690,729 @@ One predefined language for specifying expressions is OCL. Natural language or p
<ownedOperation xmi:type="uml:Operation" xmi:id="_qQchgGWKEdq-f4093SZhVA" name="stringValue" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_sRo9MGWKEdq-f4093SZhVA" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3XZkMWCEdqI1bY5Lwi8Hg" name="value" isQuery="true" precondition="_g3XZk8WCEdqI1bY5Lwi8Hg" bodyCondition="_g3XZlcWCEdqI1bY5Lwi8Hg">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_g3XZkcWCEdqI1bY5Lwi8Hg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZksWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZkMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Muy3CtxmEdqEPrOCkNZ5Vg" name="value" isQuery="true" precondition="_Muy3DdxmEdqEPrOCkNZ5Vg" bodyCondition="_Muy3D9xmEdqEPrOCkNZ5Vg">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Muy3C9xmEdqEPrOCkNZ5Vg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Muy3DNxmEdqEPrOCkNZ5Vg" annotatedElement="_Muy3CtxmEdqEPrOCkNZ5Vg">
<body>The query value() gives an integer value for an expression intended to produce one.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZk8WCEdqI1bY5Lwi8Hg" constrainedElement="_g3XZkMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZlMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Muy3DdxmEdqEPrOCkNZ5Vg" constrainedElement="_Muy3CtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Muy3DtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.isIntegral()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZlcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3XZkMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZlsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Muy3D9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Muy3CtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Muy3ENxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3XZl8WCEdqI1bY5Lwi8Hg" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Muy3EdxmEdqEPrOCkNZ5Vg" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3XZmMWCEdqI1bY5Lwi8Hg" name="isIntegral" isQuery="true" bodyCondition="_g3XZmsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZmcWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZmMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Muy3EtxmEdqEPrOCkNZ5Vg" name="isIntegral" isQuery="true" bodyCondition="_Muy3FNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Muy3E9xmEdqEPrOCkNZ5Vg" annotatedElement="_Muy3EtxmEdqEPrOCkNZ5Vg">
<body>The query isIntegral() tells whether an expression is intended to produce an integer.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZmsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3XZmMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZm8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Muy3FNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Muy3EtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Muy3FdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = false</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3XZnMWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Muy3FtxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3XZncWCEdqI1bY5Lwi8Hg" name="isPositive" isQuery="true" precondition="_g3XZoMWCEdqI1bY5Lwi8Hg" bodyCondition="_g3XZosWCEdqI1bY5Lwi8Hg">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_g3XZnsWCEdqI1bY5Lwi8Hg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZn8WCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZncWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Muy3F9xmEdqEPrOCkNZ5Vg" name="isPositive" isQuery="true" precondition="_Muy3GtxmEdqEPrOCkNZ5Vg" bodyCondition="_Muy3HNxmEdqEPrOCkNZ5Vg">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Muy3GNxmEdqEPrOCkNZ5Vg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Muy3GdxmEdqEPrOCkNZ5Vg" annotatedElement="_Muy3F9xmEdqEPrOCkNZ5Vg">
<body>The query isPositive() tells whether an integer expression has a positive value.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZoMWCEdqI1bY5Lwi8Hg" constrainedElement="_g3XZncWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZocWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Muy3GtxmEdqEPrOCkNZ5Vg" constrainedElement="_Muy3F9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Muy3G9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.isIntegral()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZosWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3XZncWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZo8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Muy3HNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Muy3F9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Muy3HdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = false</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3XZpMWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Muy3HtxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g3XZpcWCEdqI1bY5Lwi8Hg" name="isNonNegative" isQuery="true" precondition="_g3XZp8WCEdqI1bY5Lwi8Hg" bodyCondition="_g3XZqcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3XZpsWCEdqI1bY5Lwi8Hg" annotatedElement="_g3XZpcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Muy3H9xmEdqEPrOCkNZ5Vg" name="isNonNegative" isQuery="true" precondition="_Muy3IdxmEdqEPrOCkNZ5Vg" bodyCondition="_Muy3I9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Muy3INxmEdqEPrOCkNZ5Vg" annotatedElement="_Muy3H9xmEdqEPrOCkNZ5Vg">
<body>The query isNonNegative() tells whether an integer expression has a non-negative value.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZp8WCEdqI1bY5Lwi8Hg" constrainedElement="_g3XZpcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZqMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Muy3IdxmEdqEPrOCkNZ5Vg" constrainedElement="_Muy3H9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Muy3ItxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.isIntegral()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g3XZqcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g3XZpcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3XZqsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Muy3I9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Muy3H9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Muy3JNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = false</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g3XZq8WCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Muy3JdxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7iH98WCEdqI1bY5Lwi8Hg" name="OpaqueBehavior">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iH-MWCEdqI1bY5Lwi8Hg" annotatedElement="_g7iH98WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MxxSvdxmEdqEPrOCkNZ5Vg" name="OpaqueBehavior">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSvtxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSvdxmEdqEPrOCkNZ5Vg">
<body>An behavior with implementation-specific semantics.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7iH-cWCEdqI1bY5Lwi8Hg" general="_TUPtYGveEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7iH-sWCEdqI1bY5Lwi8Hg" name="body" type="_aAyVgGvsEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iH-8WCEdqI1bY5Lwi8Hg" annotatedElement="_g7iH-sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxxSv9xmEdqEPrOCkNZ5Vg" general="_TUPtYGveEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSwNxmEdqEPrOCkNZ5Vg" name="body" type="_aAyVgGvsEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSwdxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSwNxmEdqEPrOCkNZ5Vg">
<body>Specifies the behavior in one or more languages.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7iH_MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7iH_cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxSwtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxSw9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7iH_sWCEdqI1bY5Lwi8Hg" name="language" type="_aAyVgGvsEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iH_8WCEdqI1bY5Lwi8Hg" annotatedElement="_g7iH_sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSxNxmEdqEPrOCkNZ5Vg" name="language" type="_aAyVgGvsEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSxdxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSxNxmEdqEPrOCkNZ5Vg">
<body>Languages the body strings use in the same order as the body strings.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7iIAMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7iIAcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxSxtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxSx9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7iIAsWCEdqI1bY5Lwi8Hg" name="FunctionBehavior">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iIA8WCEdqI1bY5Lwi8Hg" annotatedElement="_g7iIAsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MxxSyNxmEdqEPrOCkNZ5Vg" name="FunctionBehavior">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSydxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSyNxmEdqEPrOCkNZ5Vg">
<body>A function behavior is an opaque behavior that does not access or modify any objects or other external data.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7iIBMWCEdqI1bY5Lwi8Hg" name="one_output_parameter" constrainedElement="_g7iIAsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iIBcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7iIBMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MxxSytxmEdqEPrOCkNZ5Vg" name="one_output_parameter" constrainedElement="_MxxSyNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSy9xmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSytxmEdqEPrOCkNZ5Vg">
<body>A function behavior has at least one output parameter.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7iIBsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MxxSzNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>self.ownedParameters->&#xA;&#xA; select(p | p.direction=#out or p.direction=#inout or p.direction=#return)->size() >= 1</body>
+ <body>self.ownedParameters->&#xD;&#xA; select(p | p.direction=#out or p.direction=#inout or p.direction=#return)->size() >= 1</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7iIB8WCEdqI1bY5Lwi8Hg" name="types_of_parameters" constrainedElement="_g7iIAsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iICMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7iIB8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MxxSzdxmEdqEPrOCkNZ5Vg" name="types_of_parameters" constrainedElement="_MxxSyNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSztxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSzdxmEdqEPrOCkNZ5Vg">
<body>The types of parameters are all data types, which may not nest anything but other datatypes.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7iICcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MxxSz9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>def: hasAllDataTypeAttributes(d : DataType) : Boolean =&#xA;&#xA; d.ownedAttribute->forAll(a |&#xA;&#xA; a.type.oclIsTypeOf(DataType) and&#xA;&#xA; hasAllDataTypeAttributes(a.type))&#xA;&#xA;self.ownedParameters->forAll(p | p.type.notEmpty() and&#xA;&#xA; p.oclIsTypeOf(DataType) and hasAllDataTypeAttributes(p))</body>
+ <body>def: hasAllDataTypeAttributes(d : DataType) : Boolean =&#xD;&#xA; d.ownedAttribute->forAll(a |&#xD;&#xA; a.type.oclIsTypeOf(DataType) and&#xD;&#xA; hasAllDataTypeAttributes(a.type))&#xD;&#xA;self.ownedParameters->forAll(p | p.type.notEmpty() and&#xD;&#xA; p.oclIsTypeOf(DataType) and hasAllDataTypeAttributes(p))</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7iICsWCEdqI1bY5Lwi8Hg" general="_g7iH98WCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxxS0NxmEdqEPrOCkNZ5Vg" general="_MxxSvdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7iIC8WCEdqI1bY5Lwi8Hg" name="A_behavioredClassifier_ownedBehavior" memberEnd="_g7Y-H8WCEdqI1bY5Lwi8Hg _g7iIDcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7iIDMWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7iIDcWCEdqI1bY5Lwi8Hg" type="_iY7sMGvsEdqG6fBIPwe-mw" association="_g7iIC8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7iIDsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7iID8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxxS0dxmEdqEPrOCkNZ5Vg" name="A_behavioredClassifier_ownedBehavior" memberEnd="_MxxSntxmEdqEPrOCkNZ5Vg _MxxS09xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxxS0txmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxxS09xmEdqEPrOCkNZ5Vg" type="_iY7sMGvsEdqG6fBIPwe-mw" association="_MxxS0dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxS1NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxS1dxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7iIEMWCEdqI1bY5Lwi8Hg" name="A_classifierBehavior_behavioredClassifier" memberEnd="_g7Y-I8WCEdqI1bY5Lwi8Hg _g7iIEsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7iIEcWCEdqI1bY5Lwi8Hg" general="_g7iIC8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7iIEsWCEdqI1bY5Lwi8Hg" type="_iY7sMGvsEdqG6fBIPwe-mw" redefinedProperty="_g7iIDcWCEdqI1bY5Lwi8Hg" association="_g7iIEMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7iIE8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7iIFMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxxS1txmEdqEPrOCkNZ5Vg" name="A_classifierBehavior_behavioredClassifier" memberEnd="_MxxSotxmEdqEPrOCkNZ5Vg _MxxS2NxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxxS19xmEdqEPrOCkNZ5Vg" general="_MxxS0dxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxxS2NxmEdqEPrOCkNZ5Vg" type="_iY7sMGvsEdqG6fBIPwe-mw" redefinedProperty="_MxxS09xmEdqEPrOCkNZ5Vg" association="_MxxS1txmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxS2dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxS2txmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7iIFcWCEdqI1bY5Lwi8Hg" name="A_redefinedBehavior_behavior" memberEnd="_g7Y-BMWCEdqI1bY5Lwi8Hg _g7iIF8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7iIFsWCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7iIF8WCEdqI1bY5Lwi8Hg" type="_TUPtYGveEdq4DLWZOhbdEA" association="_g7iIFcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7iIGMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7iIGcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MxxS29xmEdqEPrOCkNZ5Vg" name="A_redefinedBehavior_behavior" memberEnd="_MxxSg9xmEdqEPrOCkNZ5Vg _MxxS3dxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxxS3NxmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MxxS3dxmEdqEPrOCkNZ5Vg" type="_TUPtYGveEdq4DLWZOhbdEA" association="_MxxS29xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxS3txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxS39xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7iIGsWCEdqI1bY5Lwi8Hg" name="A_method_specification" memberEnd="_g7iH88WCEdqI1bY5Lwi8Hg _g7Y-CMWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7iIG8WCEdqI1bY5Lwi8Hg" name="A_behavior_ownedParameter" memberEnd="_g7Y-DMWCEdqI1bY5Lwi8Hg _g7iIHcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7iIHMWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7iIHcWCEdqI1bY5Lwi8Hg" type="_TUPtYGveEdq4DLWZOhbdEA" association="_g7iIG8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7iIHsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7iIH8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mx7DgNxmEdqEPrOCkNZ5Vg" name="A_method_specification" memberEnd="_MxxSh9xmEdqEPrOCkNZ5Vg _MxxSudxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mx7DgdxmEdqEPrOCkNZ5Vg" name="A_behavior_ownedParameter" memberEnd="_MxxSi9xmEdqEPrOCkNZ5Vg _Mx7Dg9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mx7DgtxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Mx7Dg9xmEdqEPrOCkNZ5Vg" type="_TUPtYGveEdq4DLWZOhbdEA" association="_Mx7DgdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7DhNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7DhdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7iIIMWCEdqI1bY5Lwi8Hg" name="A_result_opaqueExpression" memberEnd="_g7iH58WCEdqI1bY5Lwi8Hg _g7iIIcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7iIIcWCEdqI1bY5Lwi8Hg" type="_ChRfcGveEdq4DLWZOhbdEA" association="_g7iIIMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7iIIsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7iII8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mx7DhtxmEdqEPrOCkNZ5Vg" name="A_result_opaqueExpression" memberEnd="_MxxSrdxmEdqEPrOCkNZ5Vg _Mx7Dh9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Mx7Dh9xmEdqEPrOCkNZ5Vg" type="_ChRfcGveEdq4DLWZOhbdEA" association="_Mx7DhtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7DiNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7DidxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7iIJMWCEdqI1bY5Lwi8Hg" name="A_behavior_opaqueExpression" memberEnd="_g7iH68WCEdqI1bY5Lwi8Hg _g7iIJcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7iIJcWCEdqI1bY5Lwi8Hg" type="_ChRfcGveEdq4DLWZOhbdEA" association="_g7iIJMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7iIJsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7iIJ8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mx7DitxmEdqEPrOCkNZ5Vg" name="A_behavior_opaqueExpression" memberEnd="_MxxSsdxmEdqEPrOCkNZ5Vg _Mx7Di9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Mx7Di9xmEdqEPrOCkNZ5Vg" type="_ChRfcGveEdq4DLWZOhbdEA" association="_Mx7DitxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7DjNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7DjdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7iIKMWCEdqI1bY5Lwi8Hg" name="A_context_behavior" memberEnd="_g7Y-EMWCEdqI1bY5Lwi8Hg _g7iIKsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7iIKcWCEdqI1bY5Lwi8Hg" general="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7iIKsWCEdqI1bY5Lwi8Hg" type="_TUPtYGveEdq4DLWZOhbdEA" association="_g7iIKMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7iIK8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7iILMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mx7DjtxmEdqEPrOCkNZ5Vg" name="A_context_behavior" memberEnd="_MxxSj9xmEdqEPrOCkNZ5Vg _Mx7DkNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mx7Dj9xmEdqEPrOCkNZ5Vg" general="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Mx7DkNxmEdqEPrOCkNZ5Vg" type="_TUPtYGveEdq4DLWZOhbdEA" association="_Mx7DjtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7DkdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7DktxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7r44MWCEdqI1bY5Lwi8Hg" name="A_precondition_behavior" memberEnd="_g7Y-FMWCEdqI1bY5Lwi8Hg _g7r44sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7r44cWCEdqI1bY5Lwi8Hg" general="_g2eCA8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7r44sWCEdqI1bY5Lwi8Hg" type="_TUPtYGveEdq4DLWZOhbdEA" subsettedProperty="_g1ua4cWCEdqI1bY5Lwi8Hg" association="_g7r44MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7r448WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7r45MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mx7Dk9xmEdqEPrOCkNZ5Vg" name="A_precondition_behavior" memberEnd="_MxxSk9xmEdqEPrOCkNZ5Vg _Mx7DldxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mx7DlNxmEdqEPrOCkNZ5Vg" general="_MtmkmdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Mx7DldxmEdqEPrOCkNZ5Vg" type="_TUPtYGveEdq4DLWZOhbdEA" subsettedProperty="_Ms2Wc9xmEdqEPrOCkNZ5Vg" association="_Mx7Dk9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7DltxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7Dl9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7r45cWCEdqI1bY5Lwi8Hg" name="A_postcondition_behavior" memberEnd="_g7Y-F8WCEdqI1bY5Lwi8Hg _g7r458WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7r45sWCEdqI1bY5Lwi8Hg" general="_g2eCA8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g7r458WCEdqI1bY5Lwi8Hg" type="_TUPtYGveEdq4DLWZOhbdEA" subsettedProperty="_g1ua4cWCEdqI1bY5Lwi8Hg" association="_g7r45cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7r46MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7r46cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mx7DmNxmEdqEPrOCkNZ5Vg" name="A_postcondition_behavior" memberEnd="_MxxSltxmEdqEPrOCkNZ5Vg _Mx7DmtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mx7DmdxmEdqEPrOCkNZ5Vg" general="_MtmkmdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Mx7DmtxmEdqEPrOCkNZ5Vg" type="_TUPtYGveEdq4DLWZOhbdEA" subsettedProperty="_Ms2Wc9xmEdqEPrOCkNZ5Vg" association="_Mx7DmNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7Dm9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7DnNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7r47sWCEdqI1bY5Lwi8Hg" name="OpaqueAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r478WCEdqI1bY5Lwi8Hg" annotatedElement="_g7r47sWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mx7DodxmEdqEPrOCkNZ5Vg" name="OpaqueAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7DotxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DodxmEdqEPrOCkNZ5Vg">
<body>An action with implementation-specific semantics.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7r48MWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7r48cWCEdqI1bY5Lwi8Hg" name="body" type="_aAyVgGvsEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r48sWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r48cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mx7Do9xmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mx7DpNxmEdqEPrOCkNZ5Vg" name="body" type="_aAyVgGvsEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7DpdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DpNxmEdqEPrOCkNZ5Vg">
<body>Specifies the action in one or more languages.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7r488WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7r49MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7DptxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7Dp9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7r49cWCEdqI1bY5Lwi8Hg" name="language" type="_aAyVgGvsEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r49sWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r49cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mx7DqNxmEdqEPrOCkNZ5Vg" name="language" type="_aAyVgGvsEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7DqdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DqNxmEdqEPrOCkNZ5Vg">
<body>Languages the body strings use, in the same order as the body strings</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7r498WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7r4-MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7DqtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7Dq9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7r4-cWCEdqI1bY5Lwi8Hg" name="inputValue" type="_g7r5EsWCEdqI1bY5Lwi8Hg" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_g71qK8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r4-sWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r4-cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mx7DrNxmEdqEPrOCkNZ5Vg" name="inputValue" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_MyEN0txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7DrdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DrNxmEdqEPrOCkNZ5Vg">
<body>Provides input to the action.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7r4-8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7r4_MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7DrtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7Dr9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7r4_cWCEdqI1bY5Lwi8Hg" name="outputValue" type="_g7r5D8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_g71qLsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r4_sWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r4_cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mx7DsNxmEdqEPrOCkNZ5Vg" name="outputValue" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_MyEN1dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7DsdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DsNxmEdqEPrOCkNZ5Vg">
<body>Takes output from the action.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7r4_8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7r5AMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7DstxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7Ds9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7r5BcWCEdqI1bY5Lwi8Hg" name="ValuePin">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5BsWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5BcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mx7DuNxmEdqEPrOCkNZ5Vg" name="ValuePin">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7DudxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DuNxmEdqEPrOCkNZ5Vg">
<body>A value pin is an input pin that provides a value by evaluating a value specification.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7r5B8WCEdqI1bY5Lwi8Hg" name="compatible_type" constrainedElement="_g7r5BcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5CMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5B8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mx7DutxmEdqEPrOCkNZ5Vg" name="compatible_type" constrainedElement="_Mx7DuNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7Du9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DutxmEdqEPrOCkNZ5Vg">
<body>The type of value specification must be compatible with the type of the value pin.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7r5CcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mx7DvNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7r5CsWCEdqI1bY5Lwi8Hg" general="_g7r5EsWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7r5C8WCEdqI1bY5Lwi8Hg" name="value" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" association="_g71qJcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5DMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5C8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mx7DvdxmEdqEPrOCkNZ5Vg" general="_Mx7DxdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mx7DvtxmEdqEPrOCkNZ5Vg" name="value" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" association="_MyENzNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7Dv9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DvtxmEdqEPrOCkNZ5Vg">
<body>Value that the pin will provide.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7r5DcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7r5DsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7DwNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7DwdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7r5D8WCEdqI1bY5Lwi8Hg" name="OutputPin">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5EMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5D8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mx7DwtxmEdqEPrOCkNZ5Vg" name="OutputPin">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7Dw9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DwtxmEdqEPrOCkNZ5Vg">
<body>An output pin is a pin that holds output values produced by an action.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7r5EcWCEdqI1bY5Lwi8Hg" general="_g7r5AcWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mx7DxNxmEdqEPrOCkNZ5Vg" general="_Mx7DtNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7r5EsWCEdqI1bY5Lwi8Hg" name="InputPin">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5E8WCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5EsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mx7DxdxmEdqEPrOCkNZ5Vg" name="InputPin">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7DxtxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DxdxmEdqEPrOCkNZ5Vg">
<body>An input pin is a pin that holds input values to be consumed by an action.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7r5FMWCEdqI1bY5Lwi8Hg" general="_g7r5AcWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mx7Dx9xmEdqEPrOCkNZ5Vg" general="_Mx7DtNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7r5HMWCEdqI1bY5Lwi8Hg" name="CallAction" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5HcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5HMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mx7Dz9xmEdqEPrOCkNZ5Vg" name="CallAction" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7D0NxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7Dz9xmEdqEPrOCkNZ5Vg">
<body>CallAction is an abstract class for actions that invoke behavior and receive return values.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7r5HsWCEdqI1bY5Lwi8Hg" name="synchronous_call" constrainedElement="_g7r5HMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5H8WCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5HsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mx7D0dxmEdqEPrOCkNZ5Vg" name="synchronous_call" constrainedElement="_Mx7Dz9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7D0txmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7D0dxmEdqEPrOCkNZ5Vg">
<body>Only synchronous call actions can have result pins.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7r5IMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mx7D09xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7r5IcWCEdqI1bY5Lwi8Hg" name="number_and_order" constrainedElement="_g7r5HMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5IsWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5IcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mx7D1NxmEdqEPrOCkNZ5Vg" name="number_and_order" constrainedElement="_Mx7Dz9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7D1dxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7D1NxmEdqEPrOCkNZ5Vg">
<body>The number and order of argument pins must be the same as the number and order of parameters of the invoked behavior or behavioral feature. Pins are matched to parameters by order.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7r5I8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mx7D1txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7r5JMWCEdqI1bY5Lwi8Hg" name="type_ordering_multiplicity" constrainedElement="_g7r5HMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5JcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5JMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mx7D19xmEdqEPrOCkNZ5Vg" name="type_ordering_multiplicity" constrainedElement="_Mx7Dz9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7D2NxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7D19xmEdqEPrOCkNZ5Vg">
<body>The type, ordering, and multiplicity of an argument pin must be the same as the corresponding parameter of the behavior or behavioral feature.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7r5JsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mx7D2dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7r5J8WCEdqI1bY5Lwi8Hg" general="_g7r5FcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7r5KMWCEdqI1bY5Lwi8Hg" name="isSynchronous" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5KcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5KMWCEdqI1bY5Lwi8Hg">
- <body>If true, the call is synchronous and the caller waits for completion of the invoked behavior.
-
-If false, the call is asynchronous and the caller proceeds immediately and does not expect a return values.
-
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mx7D2txmEdqEPrOCkNZ5Vg" general="_Mx7DyNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mx7D29xmEdqEPrOCkNZ5Vg" name="isSynchronous" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7D3NxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7D29xmEdqEPrOCkNZ5Vg">
+ <body>If true, the call is synchronous and the caller waits for completion of the invoked behavior.&#xD;
+If false, the call is asynchronous and the caller proceeds immediately and does not expect a return values.&#xD;
</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g7r5KsWCEdqI1bY5Lwi8Hg" value="true"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_Mx7D3dxmEdqEPrOCkNZ5Vg" value="true"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7r5K8WCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" isOrdered="true" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_g71qFcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5LMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5K8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mx7D3txmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" isOrdered="true" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_MyENvNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7D39xmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7D3txmEdqEPrOCkNZ5Vg">
<body>A list of output pins where the results of performing the invocation are placed.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7r5LcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7r5LsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7D4NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7D4dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7r5L8WCEdqI1bY5Lwi8Hg" name="SendSignalAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5MMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5L8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mx7D4txmEdqEPrOCkNZ5Vg" name="SendSignalAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7D49xmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7D4txmEdqEPrOCkNZ5Vg">
<body>SendSignalAction is an action that creates a signal instance from its inputs, and transmits it to the target object, where it may cause the firing of a state machine transition or the execution of an activity. The argument values are available to the execution of associated behaviors. The requestor continues execution immediately. Any reply message is ignored and is not transmitted to the requestor. If the input is already a signal instance, use SendObjectAction.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7r5McWCEdqI1bY5Lwi8Hg" name="number_order" constrainedElement="_g7r5L8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5MsWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5McWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mx7D5NxmEdqEPrOCkNZ5Vg" name="number_order" constrainedElement="_Mx7D4txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7D5dxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7D5NxmEdqEPrOCkNZ5Vg">
<body>The number and order of argument pins must be the same as the number and order of attributes in the signal.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7r5M8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mx7D5txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7r5NMWCEdqI1bY5Lwi8Hg" name="type_ordering_multiplicity" constrainedElement="_g7r5L8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5NcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5NMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mx7D59xmEdqEPrOCkNZ5Vg" name="type_ordering_multiplicity" constrainedElement="_Mx7D4txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7D6NxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7D59xmEdqEPrOCkNZ5Vg">
<body>The type, ordering, and multiplicity of an argument pin must be the same as the corresponding attribute of the signal.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7r5NsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mx7D6dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7r5N8WCEdqI1bY5Lwi8Hg" general="_g7r5FcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7r5OMWCEdqI1bY5Lwi8Hg" name="target" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_g71qDMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5OcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5OMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mx7D6txmEdqEPrOCkNZ5Vg" general="_Mx7DyNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mx7D69xmEdqEPrOCkNZ5Vg" name="target" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_MyENs9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7D7NxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7D69xmEdqEPrOCkNZ5Vg">
<body>The target object to which the signal is sent.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7r5OsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7r5O8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7D7dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7D7txmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7r5PMWCEdqI1bY5Lwi8Hg" name="signal" type="_Pu3O0HL0EdqziYxiZo0YtA" association="_g71qEcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5PcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5PMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mx7D79xmEdqEPrOCkNZ5Vg" name="signal" type="_Pu3O0HL0EdqziYxiZo0YtA" association="_MyENuNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7D8NxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7D79xmEdqEPrOCkNZ5Vg">
<body>The type of signal transmitted to the target object.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7r5PsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7r5P8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7D8dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7D8txmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7r5QMWCEdqI1bY5Lwi8Hg" name="CallOperationAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5QcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5QMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MyENcNxmEdqEPrOCkNZ5Vg" name="CallOperationAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENcdxmEdqEPrOCkNZ5Vg" annotatedElement="_MyENcNxmEdqEPrOCkNZ5Vg">
<body>CallOperationAction is an action that transmits an operation call request to the target object, where it may cause the invocation of associated behavior. The argument values of the action are available to the execution of the invoked behavior. If the action is marked synchronous, the execution of the call operation action waits until the execution of the invoked behavior completes and a reply transmission is returned to the caller; otherwise execution of the action is complete when the invocation of the operation is established and the execution of the invoked operation proceeds concurrently with the execution of the calling behavior. Any values returned as part of the reply transmission are put on the result output pins of the call operation action. Upon receipt of the reply transmission, execution of the call operation action is complete.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7r5QsWCEdqI1bY5Lwi8Hg" name="argument_pin_equal_parameter" constrainedElement="_g7r5QMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5Q8WCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5QsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MyENctxmEdqEPrOCkNZ5Vg" name="argument_pin_equal_parameter" constrainedElement="_MyENcNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENc9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyENctxmEdqEPrOCkNZ5Vg">
<body>The number of argument pins and the number of owned parameters of the operation of type in and in-out must be equal.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7r5RMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MyENdNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7r5RcWCEdqI1bY5Lwi8Hg" name="result_pin_equal_parameter" constrainedElement="_g7r5QMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5RsWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5RcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MyENddxmEdqEPrOCkNZ5Vg" name="result_pin_equal_parameter" constrainedElement="_MyENcNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENdtxmEdqEPrOCkNZ5Vg" annotatedElement="_MyENddxmEdqEPrOCkNZ5Vg">
<body>The number of result pins and the number of owned parameters of the operation of type return, out, and in-out must be equal.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7r5R8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MyENd9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7r5SMWCEdqI1bY5Lwi8Hg" name="type_ordering_multiplicity" constrainedElement="_g7r5QMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5ScWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5SMWCEdqI1bY5Lwi8Hg">
- <body>The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding owned parameter of the operation.
-
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MyENeNxmEdqEPrOCkNZ5Vg" name="type_ordering_multiplicity" constrainedElement="_MyENcNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENedxmEdqEPrOCkNZ5Vg" annotatedElement="_MyENeNxmEdqEPrOCkNZ5Vg">
+ <body>The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding owned parameter of the operation.&#xD;
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7r5SsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MyENetxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7r5S8WCEdqI1bY5Lwi8Hg" name="type_target_pin" constrainedElement="_g7r5QMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5TMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5S8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MyENe9xmEdqEPrOCkNZ5Vg" name="type_target_pin" constrainedElement="_MyENcNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENfNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyENe9xmEdqEPrOCkNZ5Vg">
<body>The type of the target pin must be the same as the type that owns the operation.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7r5TcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MyENfdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7r5TsWCEdqI1bY5Lwi8Hg" general="_g7r5HMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7r5T8WCEdqI1bY5Lwi8Hg" name="operation" type="_M4X2IGveEdq4DLWZOhbdEA" association="_g71qA8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5UMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5T8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyENftxmEdqEPrOCkNZ5Vg" general="_Mx7Dz9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyENf9xmEdqEPrOCkNZ5Vg" name="operation" type="_M4X2IGveEdq4DLWZOhbdEA" association="_MyENqtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENgNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyENf9xmEdqEPrOCkNZ5Vg">
<body>The operation to be invoked by the action execution.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7r5UcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7r5UsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENgdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENgtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7r5U8WCEdqI1bY5Lwi8Hg" name="target" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_g71qB8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5VMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5U8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyENg9xmEdqEPrOCkNZ5Vg" name="target" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_MyENrtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENhNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyENg9xmEdqEPrOCkNZ5Vg">
<body>The target object to which the request is sent. The classifier of the target object is used to dynamically determine a behavior to invoke. This object constitutes the context of the execution of the operation.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7r5VcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7r5VsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENhdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENhtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g71p4MWCEdqI1bY5Lwi8Hg" name="CallBehaviorAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g71p4cWCEdqI1bY5Lwi8Hg" annotatedElement="_g71p4MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MyENh9xmEdqEPrOCkNZ5Vg" name="CallBehaviorAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENiNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyENh9xmEdqEPrOCkNZ5Vg">
<body>CallBehaviorAction is a call action that invokes a behavior directly rather than invoking a behavioral feature that, in turn, results in the invocation of that behavior. The argument values of the action are available to the execution of the invoked behavior. For synchronous calls the execution of the call behavior action waits until the execution of the invoked behavior completes and a result is returned on its output pin. The action completes immediately without a result, if the call is asynchronous. In particular, the invoked behavior may be an activity.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g71p4sWCEdqI1bY5Lwi8Hg" name="argument_pin_equal_parameter" constrainedElement="_g71p4MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g71p48WCEdqI1bY5Lwi8Hg" annotatedElement="_g71p4sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MyENidxmEdqEPrOCkNZ5Vg" name="argument_pin_equal_parameter" constrainedElement="_MyENh9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENitxmEdqEPrOCkNZ5Vg" annotatedElement="_MyENidxmEdqEPrOCkNZ5Vg">
<body>The number of argument pins and the number of parameters of the behavior of type in and in-out must be equal.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g71p5MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MyENi9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g71p5cWCEdqI1bY5Lwi8Hg" name="result_pin_equal_parameter" constrainedElement="_g71p4MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g71p5sWCEdqI1bY5Lwi8Hg" annotatedElement="_g71p5cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MyENjNxmEdqEPrOCkNZ5Vg" name="result_pin_equal_parameter" constrainedElement="_MyENh9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENjdxmEdqEPrOCkNZ5Vg" annotatedElement="_MyENjNxmEdqEPrOCkNZ5Vg">
<body>The number of result pins and the number of parameters of the behavior of type return, out, and in-out must be equal.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g71p58WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MyENjtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g71p6MWCEdqI1bY5Lwi8Hg" name="type_ordering_multiplicity" constrainedElement="_g71p4MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g71p6cWCEdqI1bY5Lwi8Hg" annotatedElement="_g71p6MWCEdqI1bY5Lwi8Hg">
- <body>The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding parameter of the behavior.
-
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MyENj9xmEdqEPrOCkNZ5Vg" name="type_ordering_multiplicity" constrainedElement="_MyENh9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENkNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyENj9xmEdqEPrOCkNZ5Vg">
+ <body>The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding parameter of the behavior.&#xD;
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g71p6sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MyENkdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g71p68WCEdqI1bY5Lwi8Hg" general="_g7r5HMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g71p7MWCEdqI1bY5Lwi8Hg" name="behavior" type="_TUPtYGveEdq4DLWZOhbdEA" association="_g71p_8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g71p7cWCEdqI1bY5Lwi8Hg" annotatedElement="_g71p7MWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyENktxmEdqEPrOCkNZ5Vg" general="_Mx7Dz9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyENk9xmEdqEPrOCkNZ5Vg" name="behavior" type="_TUPtYGveEdq4DLWZOhbdEA" association="_MyENptxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENlNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyENk9xmEdqEPrOCkNZ5Vg">
<body>The invoked behavior. It must be capable of accepting and returning control.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g71p7sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g71p78WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENldxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENltxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g71p_8WCEdqI1bY5Lwi8Hg" name="A_behavior_callBehaviorAction" memberEnd="_g71p7MWCEdqI1bY5Lwi8Hg _g71qAMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g71qAMWCEdqI1bY5Lwi8Hg" type="_g71p4MWCEdqI1bY5Lwi8Hg" association="_g71p_8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g71qAcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g71qAsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyENptxmEdqEPrOCkNZ5Vg" name="A_behavior_callBehaviorAction" memberEnd="_MyENk9xmEdqEPrOCkNZ5Vg _MyENp9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyENp9xmEdqEPrOCkNZ5Vg" type="_MyENh9xmEdqEPrOCkNZ5Vg" association="_MyENptxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENqNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENqdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g71qA8WCEdqI1bY5Lwi8Hg" name="A_operation_callOperationAction" memberEnd="_g7r5T8WCEdqI1bY5Lwi8Hg _g71qBMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g71qBMWCEdqI1bY5Lwi8Hg" type="_g7r5QMWCEdqI1bY5Lwi8Hg" association="_g71qA8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g71qBcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g71qBsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyENqtxmEdqEPrOCkNZ5Vg" name="A_operation_callOperationAction" memberEnd="_MyENf9xmEdqEPrOCkNZ5Vg _MyENq9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyENq9xmEdqEPrOCkNZ5Vg" type="_MyENcNxmEdqEPrOCkNZ5Vg" association="_MyENqtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENrNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENrdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g71qB8WCEdqI1bY5Lwi8Hg" name="A_target_callOperationAction" memberEnd="_g7r5U8WCEdqI1bY5Lwi8Hg _g71qCcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g71qCMWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g71qCcWCEdqI1bY5Lwi8Hg" type="_g7r5QMWCEdqI1bY5Lwi8Hg" association="_g71qB8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g71qCsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g71qC8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyENrtxmEdqEPrOCkNZ5Vg" name="A_target_callOperationAction" memberEnd="_MyENg9xmEdqEPrOCkNZ5Vg _MyENsNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyENr9xmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyENsNxmEdqEPrOCkNZ5Vg" type="_MyENcNxmEdqEPrOCkNZ5Vg" association="_MyENrtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENsdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENstxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g71qDMWCEdqI1bY5Lwi8Hg" name="A_target_sendSignalAction" memberEnd="_g7r5OMWCEdqI1bY5Lwi8Hg _g71qDsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g71qDcWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g71qDsWCEdqI1bY5Lwi8Hg" type="_g7r5L8WCEdqI1bY5Lwi8Hg" association="_g71qDMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g71qD8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g71qEMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyENs9xmEdqEPrOCkNZ5Vg" name="A_target_sendSignalAction" memberEnd="_Mx7D69xmEdqEPrOCkNZ5Vg _MyENtdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyENtNxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyENtdxmEdqEPrOCkNZ5Vg" type="_Mx7D4txmEdqEPrOCkNZ5Vg" association="_MyENs9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENttxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENt9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g71qEcWCEdqI1bY5Lwi8Hg" name="A_signal_sendSignalAction" memberEnd="_g7r5PMWCEdqI1bY5Lwi8Hg _g71qEsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g71qEsWCEdqI1bY5Lwi8Hg" type="_g7r5L8WCEdqI1bY5Lwi8Hg" association="_g71qEcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g71qE8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g71qFMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyENuNxmEdqEPrOCkNZ5Vg" name="A_signal_sendSignalAction" memberEnd="_Mx7D79xmEdqEPrOCkNZ5Vg _MyENudxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyENudxmEdqEPrOCkNZ5Vg" type="_Mx7D4txmEdqEPrOCkNZ5Vg" association="_MyENuNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENutxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENu9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g71qFcWCEdqI1bY5Lwi8Hg" name="A_result_callAction" memberEnd="_g7r5K8WCEdqI1bY5Lwi8Hg _g71qF8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g71qFsWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g71qF8WCEdqI1bY5Lwi8Hg" type="_g7r5HMWCEdqI1bY5Lwi8Hg" redefinedProperty="_g71qHcWCEdqI1bY5Lwi8Hg" association="_g71qFcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyENvNxmEdqEPrOCkNZ5Vg" name="A_result_callAction" memberEnd="_Mx7D3txmEdqEPrOCkNZ5Vg _MyENvtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyENvdxmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyENvtxmEdqEPrOCkNZ5Vg" type="_Mx7Dz9xmEdqEPrOCkNZ5Vg" redefinedProperty="_MyENxNxmEdqEPrOCkNZ5Vg" association="_MyENvNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g71qGMWCEdqI1bY5Lwi8Hg" name="A_argument_invocationAction" memberEnd="_g7r5GMWCEdqI1bY5Lwi8Hg _g71qGsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g71qGcWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g71qGsWCEdqI1bY5Lwi8Hg" type="_g7r5FcWCEdqI1bY5Lwi8Hg" redefinedProperty="_g71qIsWCEdqI1bY5Lwi8Hg" association="_g71qGMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyENv9xmEdqEPrOCkNZ5Vg" name="A_argument_invocationAction" memberEnd="_Mx7Dy9xmEdqEPrOCkNZ5Vg _MyENwdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyENwNxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyENwdxmEdqEPrOCkNZ5Vg" type="_Mx7DyNxmEdqEPrOCkNZ5Vg" redefinedProperty="_MyENydxmEdqEPrOCkNZ5Vg" association="_MyENv9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g71qG8WCEdqI1bY5Lwi8Hg" name="A_action_output" memberEnd="_g71p88WCEdqI1bY5Lwi8Hg _g71qHcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g71qHMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g71qHcWCEdqI1bY5Lwi8Hg" type="_g71p8MWCEdqI1bY5Lwi8Hg" association="_g71qG8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g71qHsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g71qH8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyENwtxmEdqEPrOCkNZ5Vg" name="A_action_output" memberEnd="_MyENmtxmEdqEPrOCkNZ5Vg _MyENxNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyENw9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyENxNxmEdqEPrOCkNZ5Vg" type="_MyENl9xmEdqEPrOCkNZ5Vg" association="_MyENwtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENxdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENxtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g71qIMWCEdqI1bY5Lwi8Hg" name="A_action_input" memberEnd="_g71p98WCEdqI1bY5Lwi8Hg _g71qIsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g71qIcWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g71qIsWCEdqI1bY5Lwi8Hg" type="_g71p8MWCEdqI1bY5Lwi8Hg" association="_g71qIMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g71qI8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g71qJMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyENx9xmEdqEPrOCkNZ5Vg" name="A_action_input" memberEnd="_MyENntxmEdqEPrOCkNZ5Vg _MyENydxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyENyNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyENydxmEdqEPrOCkNZ5Vg" type="_MyENl9xmEdqEPrOCkNZ5Vg" association="_MyENx9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENytxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENy9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g71qJcWCEdqI1bY5Lwi8Hg" name="A_value_valuePin" memberEnd="_g7r5C8WCEdqI1bY5Lwi8Hg _g71qJsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g71qJsWCEdqI1bY5Lwi8Hg" type="_g7r5BcWCEdqI1bY5Lwi8Hg" association="_g71qJcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g71qJ8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g71qKMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyENzNxmEdqEPrOCkNZ5Vg" name="A_value_valuePin" memberEnd="_Mx7DvtxmEdqEPrOCkNZ5Vg _MyENzdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyENzdxmEdqEPrOCkNZ5Vg" type="_Mx7DuNxmEdqEPrOCkNZ5Vg" association="_MyENzNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENztxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENz9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g71qKcWCEdqI1bY5Lwi8Hg" name="A_context_action" memberEnd="_g71p-8WCEdqI1bY5Lwi8Hg _g71qKsWCEdqI1bY5Lwi8Hg" isDerived="true">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g71qKsWCEdqI1bY5Lwi8Hg" type="_g71p8MWCEdqI1bY5Lwi8Hg" association="_g71qKcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyEN0NxmEdqEPrOCkNZ5Vg" name="A_context_action" memberEnd="_MyENotxmEdqEPrOCkNZ5Vg _MyEN0dxmEdqEPrOCkNZ5Vg" isDerived="true">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyEN0dxmEdqEPrOCkNZ5Vg" type="_MyENl9xmEdqEPrOCkNZ5Vg" association="_MyEN0NxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g71qK8WCEdqI1bY5Lwi8Hg" name="A_inputValue_opaqueAction" memberEnd="_g7r4-cWCEdqI1bY5Lwi8Hg _g71qLcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g71qLMWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g71qLcWCEdqI1bY5Lwi8Hg" type="_g7r47sWCEdqI1bY5Lwi8Hg" redefinedProperty="_g71qIsWCEdqI1bY5Lwi8Hg" association="_g71qK8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyEN0txmEdqEPrOCkNZ5Vg" name="A_inputValue_opaqueAction" memberEnd="_Mx7DrNxmEdqEPrOCkNZ5Vg _MyEN1NxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyEN09xmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyEN1NxmEdqEPrOCkNZ5Vg" type="_Mx7DodxmEdqEPrOCkNZ5Vg" redefinedProperty="_MyENydxmEdqEPrOCkNZ5Vg" association="_MyEN0txmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g71qLsWCEdqI1bY5Lwi8Hg" name="A_outputValue_opaqueAction" memberEnd="_g7r4_cWCEdqI1bY5Lwi8Hg _g71qMMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g71qL8WCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g71qMMWCEdqI1bY5Lwi8Hg" type="_g7r47sWCEdqI1bY5Lwi8Hg" redefinedProperty="_g71qHcWCEdqI1bY5Lwi8Hg" association="_g71qLsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyEN1dxmEdqEPrOCkNZ5Vg" name="A_outputValue_opaqueAction" memberEnd="_Mx7DsNxmEdqEPrOCkNZ5Vg _MyEN19xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyEN1txmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyEN19xmEdqEPrOCkNZ5Vg" type="_Mx7DodxmEdqEPrOCkNZ5Vg" redefinedProperty="_MyENxNxmEdqEPrOCkNZ5Vg" association="_MyEN1dxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7-z9cWCEdqI1bY5Lwi8Hg" name="A_subgroup_superGroup" memberEnd="_g7-z38WCEdqI1bY5Lwi8Hg _g7-z28WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7-z9sWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyN-gNxmEdqEPrOCkNZ5Vg" name="A_subgroup_superGroup" memberEnd="_MyEN9txmEdqEPrOCkNZ5Vg _MyEN-txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyN-gdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g8IlBcWCEdqI1bY5Lwi8Hg" name="SequenceNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8IlBsWCEdqI1bY5Lwi8Hg" annotatedElement="_g8IlBcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MyXve9xmEdqEPrOCkNZ5Vg" name="SequenceNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyXvfNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyXve9xmEdqEPrOCkNZ5Vg">
<body>A sequence node is a structured activity node that executes its actions in order.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8IlB8WCEdqI1bY5Lwi8Hg" general="_g7-0EMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8IlCMWCEdqI1bY5Lwi8Hg" name="executableNode" type="_g8IlAsWCEdqI1bY5Lwi8Hg" isOrdered="true" aggregation="composite" redefinedProperty="_g7-0GcWCEdqI1bY5Lwi8Hg" association="_g8Ru58WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8IlCcWCEdqI1bY5Lwi8Hg" annotatedElement="_g8IlCMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyXvfdxmEdqEPrOCkNZ5Vg" general="_MyN-m9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyXvftxmEdqEPrOCkNZ5Vg" name="executableNode" type="_MyXveNxmEdqEPrOCkNZ5Vg" isOrdered="true" aggregation="composite" redefinedProperty="_MyN-pNxmEdqEPrOCkNZ5Vg" association="_MyXvstxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyXvf9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyXvftxmEdqEPrOCkNZ5Vg">
<body>An ordered set of executable nodes.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8IlCsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8IlC8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyXvgNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyXvgdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8IlEcWCEdqI1bY5Lwi8Hg" name="A_scope_variable" memberEnd="_g7-0FcWCEdqI1bY5Lwi8Hg _g7-0AsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8IlEsWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvh9xmEdqEPrOCkNZ5Vg" name="A_scope_variable" memberEnd="_MyN-jdxmEdqEPrOCkNZ5Vg _MyN-oNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyXviNxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8IlE8WCEdqI1bY5Lwi8Hg" name="A_node_inStructuredNode" memberEnd="_g8Ik-sWCEdqI1bY5Lwi8Hg _g7-0GcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8IlFMWCEdqI1bY5Lwi8Hg" general="_g7-z8sWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvidxmEdqEPrOCkNZ5Vg" name="A_node_inStructuredNode" memberEnd="_MyN-pNxmEdqEPrOCkNZ5Vg _MyXvcNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyXvitxmEdqEPrOCkNZ5Vg" general="_MyN-fdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8RuwMWCEdqI1bY5Lwi8Hg" name="A_clause_test" memberEnd="_g8Ik1sWCEdqI1bY5Lwi8Hg _g8RuwcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8RuwcWCEdqI1bY5Lwi8Hg" type="_g8Ik0MWCEdqI1bY5Lwi8Hg" association="_g8RuwMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8RuwsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ruw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvi9xmEdqEPrOCkNZ5Vg" name="A_clause_test" memberEnd="_MyN-1dxmEdqEPrOCkNZ5Vg _MyXvjNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyXvjNxmEdqEPrOCkNZ5Vg" type="_MyN-z9xmEdqEPrOCkNZ5Vg" association="_MyXvi9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyXvjdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyXvjtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8RuxMWCEdqI1bY5Lwi8Hg" name="A_clause_body" memberEnd="_g8Ik2sWCEdqI1bY5Lwi8Hg _g8RuxcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8RuxcWCEdqI1bY5Lwi8Hg" type="_g8Ik0MWCEdqI1bY5Lwi8Hg" association="_g8RuxMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8RuxsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Rux8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvj9xmEdqEPrOCkNZ5Vg" name="A_clause_body" memberEnd="_MyN-2dxmEdqEPrOCkNZ5Vg _MyXvkNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyXvkNxmEdqEPrOCkNZ5Vg" type="_MyN-z9xmEdqEPrOCkNZ5Vg" association="_MyXvj9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyXvkdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyXvktxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8RuyMWCEdqI1bY5Lwi8Hg" name="A_predecessorClause_successorClause" memberEnd="_g8Ik3sWCEdqI1bY5Lwi8Hg _g8Ik4sWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8RuycWCEdqI1bY5Lwi8Hg" name="A_loopNode_bodyPart" memberEnd="_g7-0NMWCEdqI1bY5Lwi8Hg _g8RuysWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8RuysWCEdqI1bY5Lwi8Hg" type="_g7-0LsWCEdqI1bY5Lwi8Hg" association="_g8RuycWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ruy8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8RuzMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvk9xmEdqEPrOCkNZ5Vg" name="A_predecessorClause_successorClause" memberEnd="_MyN-3dxmEdqEPrOCkNZ5Vg _MyN-4dxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvlNxmEdqEPrOCkNZ5Vg" name="A_loopNode_bodyPart" memberEnd="_MyN-v9xmEdqEPrOCkNZ5Vg _MyXvldxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyXvldxmEdqEPrOCkNZ5Vg" type="_MyN-udxmEdqEPrOCkNZ5Vg" association="_MyXvlNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyXvltxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyXvl9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8RuzcWCEdqI1bY5Lwi8Hg" name="A_loopNode_setupPart" memberEnd="_g7-0OMWCEdqI1bY5Lwi8Hg _g8RuzsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8RuzsWCEdqI1bY5Lwi8Hg" type="_g7-0LsWCEdqI1bY5Lwi8Hg" association="_g8RuzcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ruz8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ru0MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvmNxmEdqEPrOCkNZ5Vg" name="A_loopNode_setupPart" memberEnd="_MyN-w9xmEdqEPrOCkNZ5Vg _MyXvmdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyXvmdxmEdqEPrOCkNZ5Vg" type="_MyN-udxmEdqEPrOCkNZ5Vg" association="_MyXvmNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyXvmtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyXvm9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8Ru0cWCEdqI1bY5Lwi8Hg" name="A_clause_conditionalNode" memberEnd="_g7-0KsWCEdqI1bY5Lwi8Hg _g8Ru08WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8Ru0sWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8Ru08WCEdqI1bY5Lwi8Hg" type="_g7-0IcWCEdqI1bY5Lwi8Hg" association="_g8Ru0cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ru1MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ru1cWCEdqI1bY5Lwi8Hg" value="1"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvnNxmEdqEPrOCkNZ5Vg" name="A_clause_conditionalNode" memberEnd="_MyN-tdxmEdqEPrOCkNZ5Vg _MyXvntxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyXvndxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyXvntxmEdqEPrOCkNZ5Vg" type="_MyN-rNxmEdqEPrOCkNZ5Vg" association="_MyXvnNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyXvn9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyXvoNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8Ru1sWCEdqI1bY5Lwi8Hg" name="A_decider_clause" memberEnd="_g8Ik5sWCEdqI1bY5Lwi8Hg _g8Ru18WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8Ru18WCEdqI1bY5Lwi8Hg" type="_g8Ik0MWCEdqI1bY5Lwi8Hg" association="_g8Ru1sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ru2MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ru2cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvodxmEdqEPrOCkNZ5Vg" name="A_decider_clause" memberEnd="_MyN-5dxmEdqEPrOCkNZ5Vg _MyXvotxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyXvotxmEdqEPrOCkNZ5Vg" type="_MyN-z9xmEdqEPrOCkNZ5Vg" association="_MyXvodxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyXvo9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyXvpNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8Ru2sWCEdqI1bY5Lwi8Hg" name="A_decider_loopNode" memberEnd="_g7-0PMWCEdqI1bY5Lwi8Hg _g8Ru28WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8Ru28WCEdqI1bY5Lwi8Hg" type="_g7-0LsWCEdqI1bY5Lwi8Hg" association="_g8Ru2sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ru3MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ru3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvpdxmEdqEPrOCkNZ5Vg" name="A_decider_loopNode" memberEnd="_MyN-x9xmEdqEPrOCkNZ5Vg _MyXvptxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyXvptxmEdqEPrOCkNZ5Vg" type="_MyN-udxmEdqEPrOCkNZ5Vg" association="_MyXvpdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyXvp9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyXvqNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8Ru3sWCEdqI1bY5Lwi8Hg" name="A_test_loopNode" memberEnd="_g7-0QMWCEdqI1bY5Lwi8Hg _g8Ru38WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8Ru38WCEdqI1bY5Lwi8Hg" type="_g7-0LsWCEdqI1bY5Lwi8Hg" association="_g8Ru3sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ru4MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ru4cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvqdxmEdqEPrOCkNZ5Vg" name="A_test_loopNode" memberEnd="_MyN-y9xmEdqEPrOCkNZ5Vg _MyXvqtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyXvqtxmEdqEPrOCkNZ5Vg" type="_MyN-udxmEdqEPrOCkNZ5Vg" association="_MyXvqdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyXvq9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyXvrNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8Ru4sWCEdqI1bY5Lwi8Hg" name="A_activity_structuredNode" memberEnd="_g7-0HcWCEdqI1bY5Lwi8Hg _g8Ik6sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8Ru48WCEdqI1bY5Lwi8Hg" general="_g7-z8MWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8Ru5MWCEdqI1bY5Lwi8Hg" general="_g7-z88WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvrdxmEdqEPrOCkNZ5Vg" name="A_activity_structuredNode" memberEnd="_MyN-6dxmEdqEPrOCkNZ5Vg _MyN-qNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyXvrtxmEdqEPrOCkNZ5Vg" general="_MyN-e9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyXvr9xmEdqEPrOCkNZ5Vg" general="_MyN-ftxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8Ru5cWCEdqI1bY5Lwi8Hg" name="A_variable_activityScope" memberEnd="_g7-0BsWCEdqI1bY5Lwi8Hg _g8Ik7sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8Ru5sWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvsNxmEdqEPrOCkNZ5Vg" name="A_variable_activityScope" memberEnd="_MyN-kdxmEdqEPrOCkNZ5Vg _MyN-7dxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyXvsdxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8Ru58WCEdqI1bY5Lwi8Hg" name="A_executableNode_sequenceNode" memberEnd="_g8IlCMWCEdqI1bY5Lwi8Hg _g8Ru6cWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8Ru6MWCEdqI1bY5Lwi8Hg" general="_g8IlE8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8Ru6cWCEdqI1bY5Lwi8Hg" type="_g8IlBcWCEdqI1bY5Lwi8Hg" association="_g8Ru58WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ru6sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ru68WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyXvstxmEdqEPrOCkNZ5Vg" name="A_executableNode_sequenceNode" memberEnd="_MyXvftxmEdqEPrOCkNZ5Vg _MyXvtNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyXvs9xmEdqEPrOCkNZ5Vg" general="_MyXvidxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyXvtNxmEdqEPrOCkNZ5Vg" type="_MyXve9xmEdqEPrOCkNZ5Vg" association="_MyXvstxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyXvtdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyXvttxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7-z8MWCEdqI1bY5Lwi8Hg" name="A_node_activity" memberEnd="_g7-z6MWCEdqI1bY5Lwi8Hg _g71qPMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7-z8cWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyN-e9xmEdqEPrOCkNZ5Vg" name="A_node_activity" memberEnd="_MyEN49xmEdqEPrOCkNZ5Vg _MyN-c9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyN-fNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g8Ru7cWCEdqI1bY5Lwi8Hg" name="Usage">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ru7sWCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ru7cWCEdqI1bY5Lwi8Hg">
- <body>A usage is a relationship in which one element requires another element (or set of elements) for its full implementation or operation. In the metamodel, a Usage is a Dependency in which the client requires the presence of the supplier.
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_Myg5YdxmEdqEPrOCkNZ5Vg" name="Usage">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myg5YtxmEdqEPrOCkNZ5Vg" annotatedElement="_Myg5YdxmEdqEPrOCkNZ5Vg">
+ <body>A usage is a relationship in which one element requires another element (or set of elements) for its full implementation or operation. In the metamodel, a Usage is a Dependency in which the client requires the presence of the supplier.&#xD;
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8Ru78WCEdqI1bY5Lwi8Hg" general="_rEDGkGwKEdq7X4sGURiZYA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myg5Y9xmEdqEPrOCkNZ5Vg" general="_rEDGkGwKEdq7X4sGURiZYA"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g8Ru8MWCEdqI1bY5Lwi8Hg" name="Abstraction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ru8cWCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ru8MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Myg5ZNxmEdqEPrOCkNZ5Vg" name="Abstraction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myg5ZdxmEdqEPrOCkNZ5Vg" annotatedElement="_Myg5ZNxmEdqEPrOCkNZ5Vg">
<body>An abstraction is a relationship that relates two elements or sets of elements that represent the same concept at different levels of abstraction or from different viewpoints. In the metamodel, an Abstraction is a Dependency in which there is a mapping between the supplier and the client.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8Ru8sWCEdqI1bY5Lwi8Hg" general="_rEDGkGwKEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8Ru88WCEdqI1bY5Lwi8Hg" name="mapping" type="_ChRfcGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g8bf4MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ru9MWCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ru88WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myg5ZtxmEdqEPrOCkNZ5Vg" general="_rEDGkGwKEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myg5Z9xmEdqEPrOCkNZ5Vg" name="mapping" type="_ChRfcGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MyqqYNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myg5aNxmEdqEPrOCkNZ5Vg" annotatedElement="_Myg5Z9xmEdqEPrOCkNZ5Vg">
<body>An composition of an Expression that states the abstraction relationship between the supplier and the client. In some cases, such as Derivation, it is usually formal and unidirectional; in other cases, such as Trace, it is usually informal and bidirectional. The mapping expression is optional and may be omitted if the precise relationship between the elements is not specified.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ru9cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ru9sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myg5adxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myg5atxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_rEDGkGwKEdq7X4sGURiZYA" name="Dependency">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ru98WCEdqI1bY5Lwi8Hg" annotatedElement="_rEDGkGwKEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myg5a9xmEdqEPrOCkNZ5Vg" annotatedElement="_rEDGkGwKEdq7X4sGURiZYA">
<body>A dependency is a relationship that signifies that a single or a set of model elements requires other model elements for their specification or implementation. This means that the complete semantics of the depending elements is either semantically or structurally dependent on the definition of the supplier element(s).</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8Ru-MWCEdqI1bY5Lwi8Hg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8Ru-cWCEdqI1bY5Lwi8Hg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8Ru-sWCEdqI1bY5Lwi8Hg" name="supplier" type="_csVgUGvtEdqG6fBIPwe-mw" subsettedProperty="_g01DGMWCEdqI1bY5Lwi8Hg" association="_g8lQw8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ru-8WCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ru-sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myg5bNxmEdqEPrOCkNZ5Vg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myg5bdxmEdqEPrOCkNZ5Vg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myg5btxmEdqEPrOCkNZ5Vg" name="supplier" type="_csVgUGvtEdqG6fBIPwe-mw" subsettedProperty="_MsGvsdxmEdqEPrOCkNZ5Vg" association="_MyqqbdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myg5b9xmEdqEPrOCkNZ5Vg" annotatedElement="_Myg5btxmEdqEPrOCkNZ5Vg">
<body>The element(s) independent of the client element(s), in the same respect and the same dependency relationship. In some directed dependency relationships (such as Refinement Abstractions), a common convention in the domain of class-based OO software is to put the more abstract element in this role. Despite this convention, users of UML may stipulate a sense of dependency suitable for their domain, which makes a more abstract element dependent on that which is more specific.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ru_MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ru_cWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myg5cNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myg5cdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8bfwMWCEdqI1bY5Lwi8Hg" name="client" type="_csVgUGvtEdqG6fBIPwe-mw" subsettedProperty="_g01DFMWCEdqI1bY5Lwi8Hg" association="_g8lQycWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8bfwcWCEdqI1bY5Lwi8Hg" annotatedElement="_g8bfwMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myg5ctxmEdqEPrOCkNZ5Vg" name="client" type="_csVgUGvtEdqG6fBIPwe-mw" subsettedProperty="_MsGvrdxmEdqEPrOCkNZ5Vg" association="_Myqqc9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myg5c9xmEdqEPrOCkNZ5Vg" annotatedElement="_Myg5ctxmEdqEPrOCkNZ5Vg">
<body>The element(s) dependent on the supplier element(s). In some cases (such as a Trace Abstraction) the assignment of direction (that is, the designation of the client element) is at the discretion of the modeler, and is a stipulation.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8bfwsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8bfw8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myg5dNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myg5ddxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g8bfxMWCEdqI1bY5Lwi8Hg" name="Realization">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8bfxcWCEdqI1bY5Lwi8Hg" annotatedElement="_g8bfxMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Myg5dtxmEdqEPrOCkNZ5Vg" name="Realization">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myg5d9xmEdqEPrOCkNZ5Vg" annotatedElement="_Myg5dtxmEdqEPrOCkNZ5Vg">
<body>Realization is a specialized abstraction relationship between two sets of model elements, one representing a specification (the supplier) and the other represents an implementation of the latter (the client). Realization can be used to model stepwise refinement, optimizations, transformations, templates, model synthesis, framework composition, etc.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8bfxsWCEdqI1bY5Lwi8Hg" general="_g8Ru8MWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myg5eNxmEdqEPrOCkNZ5Vg" general="_Myg5ZNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g8bfx8WCEdqI1bY5Lwi8Hg" name="Substitution">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8bfyMWCEdqI1bY5Lwi8Hg" annotatedElement="_g8bfx8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Myg5edxmEdqEPrOCkNZ5Vg" name="Substitution">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myg5etxmEdqEPrOCkNZ5Vg" annotatedElement="_Myg5edxmEdqEPrOCkNZ5Vg">
<body>A substitution is a relationship between two classifiers signifies that the substitutingClassifier complies with the contract specified by the contract classifier. This implies that instances of the substitutingClassifier are runtime substitutable where instances of the contract classifier are expected.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8bfycWCEdqI1bY5Lwi8Hg" general="_g8bfxMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8bfysWCEdqI1bY5Lwi8Hg" name="contract" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_g8Ru-sWCEdqI1bY5Lwi8Hg" association="_g8bf5cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8bfy8WCEdqI1bY5Lwi8Hg" annotatedElement="_g8bfysWCEdqI1bY5Lwi8Hg"/>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8bfzMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8bfzcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myg5e9xmEdqEPrOCkNZ5Vg" general="_Myg5dtxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myg5fNxmEdqEPrOCkNZ5Vg" name="contract" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_Myg5btxmEdqEPrOCkNZ5Vg" association="_MyqqZdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myg5fdxmEdqEPrOCkNZ5Vg" annotatedElement="_Myg5fNxmEdqEPrOCkNZ5Vg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myg5ftxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myg5f9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8bfzsWCEdqI1bY5Lwi8Hg" name="substitutingClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_g8bfwMWCEdqI1bY5Lwi8Hg" association="_g8lQwMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8bfz8WCEdqI1bY5Lwi8Hg" annotatedElement="_g8bfzsWCEdqI1bY5Lwi8Hg"/>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8bf0MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8bf0cWCEdqI1bY5Lwi8Hg" value="1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myg5gNxmEdqEPrOCkNZ5Vg" name="substitutingClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_Myg5ctxmEdqEPrOCkNZ5Vg" association="_MyqqatxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myg5gdxmEdqEPrOCkNZ5Vg" annotatedElement="_Myg5gNxmEdqEPrOCkNZ5Vg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myg5gtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myg5g9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ZiwkoGwLEdq7X4sGURiZYA" name="Namespace" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-0M8WCEdqI1bY5Lwi8Hg" annotatedElement="_ZiwkoGwLEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRZdxmEdqEPrOCkNZ5Vg" annotatedElement="_ZiwkoGwLEdq7X4sGURiZYA">
<body>A namespace has the ability to import either individial members or all members of a package, thereby making it possible to refer to those named elements without qualification in the importing namespace. In the case of conflicts, it is necessary to use qualified names or aliases to disambiguate the referenced elements.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6MrLMWCEdqI1bY5Lwi8Hg" annotatedElement="_ZiwkoGwLEdq7X4sGURiZYA">
- <body>A namespace is a named element that can own other named elements. Each named element may be owned by at most one namespace. A namespace provides a means for identifying named elements by name. Named elements can be identified by name in a namespace either by being directly owned by the namespace or by being introduced into the namespace by other means e.g. importing or inheriting. Namespace is an abstract metaclass.
-
-
-
-A namespace can own constraints. The constraint does not necessarily apply to the namespace itself, but may also apply to elements in the namespace.
-
-
-
-A namespace has the ability to import either individual members or all members of a package, thereby making it possible to refer to those named elements without qualification in the importing namespace. In the case of conflicts, it is necessary to use qualified names or aliases to disambiguate the referenced elements.
-
-
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwuwsNxmEdqEPrOCkNZ5Vg" annotatedElement="_ZiwkoGwLEdq7X4sGURiZYA">
+ <body>A namespace is a named element that can own other named elements. Each named element may be owned by at most one namespace. A namespace provides a means for identifying named elements by name. Named elements can be identified by name in a namespace either by being directly owned by the namespace or by being introduced into the namespace by other means e.g. importing or inheriting. Namespace is an abstract metaclass.&#xD;
+&#xD;
+A namespace can own constraints. The constraint does not necessarily apply to the namespace itself, but may also apply to elements in the namespace.&#xD;
+&#xD;
+A namespace has the ability to import either individual members or all members of a package, thereby making it possible to refer to those named elements without qualification in the importing namespace. In the case of conflicts, it is necessary to use qualified names or aliases to disambiguate the referenced elements.&#xD;
+&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8bf3cWCEdqI1bY5Lwi8Hg" annotatedElement="_ZiwkoGwLEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myg5j9xmEdqEPrOCkNZ5Vg" annotatedElement="_ZiwkoGwLEdq7X4sGURiZYA">
<body>A namespace is a named element that can own other named elements. Each named element may be owned by at most one namespace. A namespace provides a means for identifying named elements by name. Named elements can be identified by name in a namespace either by being directly owned by the namespace or by being introduced into the namespace by other means e.g. importing or inheriting. Namespace is an abstract metaclass.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0-0NMWCEdqI1bY5Lwi8Hg" name="members_distinguishable" constrainedElement="_ZiwkoGwLEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-0NcWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0NMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsaRZtxmEdqEPrOCkNZ5Vg" name="members_distinguishable" constrainedElement="_ZiwkoGwLEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRZ9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRZtxmEdqEPrOCkNZ5Vg">
<body>All the members of a Namespace are distinguishable within it.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6MrLcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwuwsdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>membersAreDistinguishable()</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g0-0N8WCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g0-0PMWCEdqI1bY5Lwi8Hg" name="elementImport" visibility="public" type="_RPl78GwIEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g2UQ78WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-0PcWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0PMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsaRadxmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsaRbtxmEdqEPrOCkNZ5Vg" name="elementImport" visibility="public" type="_RPl78GwIEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MtmkQNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRb9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRbtxmEdqEPrOCkNZ5Vg">
<body>References the ElementImports owned by the Namespace.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6MrLsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6MrL8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwuwstxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mwuws9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1H94MWCEdqI1bY5Lwi8Hg" name="packageImport" visibility="public" type="_SnNPIGwIEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g2UQ8sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H94cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H94MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsaRctxmEdqEPrOCkNZ5Vg" name="packageImport" visibility="public" type="_SnNPIGwIEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MtmkQ9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRc9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRctxmEdqEPrOCkNZ5Vg">
<body>References the PackageImports owned by the Namespace.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6MrMMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6MrMcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwuwtNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwuwtdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1H97MWCEdqI1bY5Lwi8Hg" name="ownedRule" visibility="public" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g2eCA8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6MrMsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H97MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsaRftxmEdqEPrOCkNZ5Vg" name="ownedRule" visibility="public" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_MtmkmdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwuwttxmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRftxmEdqEPrOCkNZ5Vg">
<body>Specifies a set of Constraints owned by this Namespace.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6MrM8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6MrNMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwuwt9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwuwuNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1H96MWCEdqI1bY5Lwi8Hg" name="member" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_g2eB4MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H96cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H96MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsaRetxmEdqEPrOCkNZ5Vg" name="member" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_MtmkdtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRe9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRetxmEdqEPrOCkNZ5Vg">
<body>Redefines the corresponding property of Abstractions::Namespaces::Namespace.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6MrOMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H96MWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwuwvNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRetxmEdqEPrOCkNZ5Vg">
<body>A collection of NamedElements identifiable within the Namespace, either by being owned or by being introduced by importing or inheritance.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6MrOcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6MrOsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwuwvdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwuwvtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g0-0OMWCEdqI1bY5Lwi8Hg" name="importedMember" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" subsettedProperty="_g1H96MWCEdqI1bY5Lwi8Hg" association="_g2UQ5sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0-0OcWCEdqI1bY5Lwi8Hg" annotatedElement="_g0-0OMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsaRatxmEdqEPrOCkNZ5Vg" name="importedMember" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" subsettedProperty="_MsaRetxmEdqEPrOCkNZ5Vg" association="_MtmkN9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRa9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRatxmEdqEPrOCkNZ5Vg">
<body>References the PackageableElements that are members of this Namespace as a result of either PackageImports or ElementImports.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6MrO8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6MrPMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwuwv9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwuwwNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1H95MWCEdqI1bY5Lwi8Hg" name="ownedMember" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" isDerivedUnion="true" aggregation="composite" subsettedProperty="_g1H96MWCEdqI1bY5Lwi8Hg _g01DI8WCEdqI1bY5Lwi8Hg" association="_g2eB3cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H95cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H95MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsaRdtxmEdqEPrOCkNZ5Vg" name="ownedMember" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" isDerivedUnion="true" aggregation="composite" subsettedProperty="_MsaRetxmEdqEPrOCkNZ5Vg _MsQgZ9xmEdqEPrOCkNZ5Vg" association="_Mtmkc9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRd9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRdtxmEdqEPrOCkNZ5Vg">
<body>Redefines the corresponding property of Abstractions::Namespaces::Namespace.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6MrNcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H95MWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwuwudxmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRdtxmEdqEPrOCkNZ5Vg">
<body>A collection of NamedElements owned by the Namespace.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8bf3sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8bf38WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myg5kNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myg5kdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_vI18QGwLEdq7X4sGURiZYA" name="createElementImport">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_xwes4GwLEdq7X4sGURiZYA" type="_RPl78GwIEdq7X4sGURiZYA" direction="return"/>
@@ -2496,229 +2436,229 @@ A namespace has the ability to import either individual members or all members o
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_6sF9AGwLEdq7X4sGURiZYA"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1H978WCEdqI1bY5Lwi8Hg" name="importedMember" visibility="public" isQuery="true" bodyCondition="_g1H98cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H98MWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H978WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsaRgdxmEdqEPrOCkNZ5Vg" name="importedMember" visibility="public" isQuery="true" bodyCondition="_MsaRg9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRgtxmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRgdxmEdqEPrOCkNZ5Vg">
<body>The importedMember property is derived from the ElementImports and the PackageImports. References the PackageableElements that are members of this Namespace as a result of either PackageImports or ElementImports.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6MrPcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H978WCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwuwwdxmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRgdxmEdqEPrOCkNZ5Vg">
<body>The importedMember property is derived from the ElementImports and the PackageImports.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1H98cWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1H978WCEdqI1bY5Lwi8Hg _g0-0OMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6MrPsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsaRg9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsaRgdxmEdqEPrOCkNZ5Vg _MsaRatxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwuwwtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = self.importMembers(self.elementImport.importedElement.asSet()-&#xA;>union(self.packageImport.importedPackage->collect(p | p.visibleMembers())))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1H988WCEdqI1bY5Lwi8Hg" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6MrP8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6MrQMWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsaRhdxmEdqEPrOCkNZ5Vg" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwuww9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwuwxNxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1H99sWCEdqI1bY5Lwi8Hg" name="getNamesOfMember" visibility="public" isQuery="true" bodyCondition="_g1H9-MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H998WCEdqI1bY5Lwi8Hg" annotatedElement="_g1H99sWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsaRiNxmEdqEPrOCkNZ5Vg" name="getNamesOfMember" visibility="public" isQuery="true" bodyCondition="_MsaRitxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRidxmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRiNxmEdqEPrOCkNZ5Vg">
<body>The query getNamesOfMember() is overridden to take account of importing. It gives back the set of names that an element would have in an importing namespace, either because it is owned, or if not owned then imported individually, or if not individually then from a package.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6MrQcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H99sWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwuwxdxmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRiNxmEdqEPrOCkNZ5Vg">
<body>The query getNamesOfMember() gives a set of all of the names that a member would have in a Namespace. In general a member can have multiple names in a Namespace if it is imported more than once with different aliases. The query takes account of importing. It gives back the set of names that an element would have in an importing namespace, either because it is owned, or if not owned then imported individually, or if not individually then from a package.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1H9-MWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1H99sWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6MrQsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsaRitxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsaRiNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwuwxtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if self.ownedMember ->includes(element)&#xA;then Set{}->include(element.name)&#xA;else let elementImports: ElementImport = self.elementImport->select(ei | ei.importedElement = element) in&#xA; if elementImports->notEmpty()&#xA; then elementImports->collect(el | el.getName())&#xA; else self.packageImport->select(pi | pi.importedPackage.visibleMembers()->includes(element))-> collect(pi | pi.importedPackage.getNamesOfMember(element))&#xA; endif&#xA;endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1H9-sWCEdqI1bY5Lwi8Hg" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6MrQ8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6MrRMWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsaRjNxmEdqEPrOCkNZ5Vg" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwuwx9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwuwyNxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1H9_cWCEdqI1bY5Lwi8Hg" name="element" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsaRj9xmEdqEPrOCkNZ5Vg" name="element" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1H-EsWCEdqI1bY5Lwi8Hg" name="membersAreDistinguishable" visibility="public" isQuery="true" bodyCondition="_g1H-FMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H-E8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1H-EsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsaRpNxmEdqEPrOCkNZ5Vg" name="membersAreDistinguishable" visibility="public" isQuery="true" bodyCondition="_MsaRptxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRpdxmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRpNxmEdqEPrOCkNZ5Vg">
<body>The Boolean query membersAreDistinguishable() determines whether all of the namespace's members are distinguishable within it.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1H-FMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1H-EsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6MrRcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsaRptxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsaRpNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwuwydxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = self.member->forAll( memb |&#xA;self.member->excluding(memb)->forAll(other |&#xA;memb.isDistinguishableFrom(other, self)))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1H-FsWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsaRqNxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1H9_sWCEdqI1bY5Lwi8Hg" name="importMembers" visibility="public" isQuery="true" bodyCondition="_g1H-AMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H9_8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1H9_sWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsaRkNxmEdqEPrOCkNZ5Vg" name="importMembers" visibility="public" isQuery="true" bodyCondition="_MsaRktxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRkdxmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRkNxmEdqEPrOCkNZ5Vg">
<body>The query importMembers() defines which of a set of PackageableElements are actually imported into the namespace. This excludes hidden ones, i.e., those which have names that conflict with names of owned members, and also excludes elements which would have the same name when imported.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1H-AMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1H9_sWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6MrRsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsaRktxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsaRkNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwuwytxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = self.excludeCollisions(imps)->select(imp | self.ownedMember->forAll(mem |&#xA;mem.imp.isDistinguishableFrom(mem, self)))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1H-AsWCEdqI1bY5Lwi8Hg" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6MrR8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6MrSMWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsaRlNxmEdqEPrOCkNZ5Vg" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwuwy9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwuwzNxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1H-BcWCEdqI1bY5Lwi8Hg" name="imps" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g1H-BsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g1H-B8WCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsaRl9xmEdqEPrOCkNZ5Vg" name="imps" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MsaRmNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MsaRmdxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1H-CMWCEdqI1bY5Lwi8Hg" name="excludeCollisions" visibility="public" isQuery="true" bodyCondition="_g1H-CsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H-CcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1H-CMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsaRmtxmEdqEPrOCkNZ5Vg" name="excludeCollisions" visibility="public" isQuery="true" bodyCondition="_MsaRnNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRm9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsaRmtxmEdqEPrOCkNZ5Vg">
<body>The query excludeCollisions() excludes from a set of PackageableElements any that would not be distinguishable from each other in this namespace.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1H-CsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1H-CMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6V1EMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsaRnNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsaRmtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwuwzdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = imps->reject(imp1 | imps.exists(imp2 | not imp1.isDistinguishableFrom(imp2, self)))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1H-DMWCEdqI1bY5Lwi8Hg" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6V1EcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6V1EsWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsaRntxmEdqEPrOCkNZ5Vg" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwuwztxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mwuwz9xmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1H-D8WCEdqI1bY5Lwi8Hg" name="imps" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g1H-EMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g1H-EcWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsaRodxmEdqEPrOCkNZ5Vg" name="imps" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MsaRotxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MsaRo9xmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8bf4MWCEdqI1bY5Lwi8Hg" name="A_mapping_abstraction" memberEnd="_g8Ru88WCEdqI1bY5Lwi8Hg _g8bf4sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8bf4cWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8bf4sWCEdqI1bY5Lwi8Hg" type="_g8Ru8MWCEdqI1bY5Lwi8Hg" association="_g8bf4MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8bf48WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8bf5MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyqqYNxmEdqEPrOCkNZ5Vg" name="A_mapping_abstraction" memberEnd="_Myg5Z9xmEdqEPrOCkNZ5Vg _MyqqYtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqqYdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyqqYtxmEdqEPrOCkNZ5Vg" type="_Myg5ZNxmEdqEPrOCkNZ5Vg" association="_MyqqYNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqY9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyqqZNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8bf5cWCEdqI1bY5Lwi8Hg" name="A_contract_substitution" memberEnd="_g8bfysWCEdqI1bY5Lwi8Hg _g8bf58WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8bf5sWCEdqI1bY5Lwi8Hg" general="_g8lQw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8bf58WCEdqI1bY5Lwi8Hg" type="_g8bfx8WCEdqI1bY5Lwi8Hg" association="_g8bf5cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8bf6MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8bf6cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyqqZdxmEdqEPrOCkNZ5Vg" name="A_contract_substitution" memberEnd="_Myg5fNxmEdqEPrOCkNZ5Vg _MyqqZ9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqqZtxmEdqEPrOCkNZ5Vg" general="_MyqqbdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyqqZ9xmEdqEPrOCkNZ5Vg" type="_Myg5edxmEdqEPrOCkNZ5Vg" association="_MyqqZdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqaNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyqqadxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8lQwMWCEdqI1bY5Lwi8Hg" name="A_substitution_substitutingClassifier" memberEnd="_g8bf08WCEdqI1bY5Lwi8Hg _g8bfzsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8lQwcWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8lQwsWCEdqI1bY5Lwi8Hg" general="_g8lQycWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyqqatxmEdqEPrOCkNZ5Vg" name="A_substitution_substitutingClassifier" memberEnd="_Myg5gNxmEdqEPrOCkNZ5Vg _Myg5hdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myqqa9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqqbNxmEdqEPrOCkNZ5Vg" general="_Myqqc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8lQw8WCEdqI1bY5Lwi8Hg" name="A_supplierDependency_supplier" memberEnd="_g8Ru-sWCEdqI1bY5Lwi8Hg _g8lQxcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8lQxMWCEdqI1bY5Lwi8Hg" general="_g2eBy8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8lQxcWCEdqI1bY5Lwi8Hg" name="supplierDependency" type="_rEDGkGwKEdq7X4sGURiZYA" association="_g8lQw8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQxsWCEdqI1bY5Lwi8Hg" annotatedElement="_g8lQxcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyqqbdxmEdqEPrOCkNZ5Vg" name="A_supplierDependency_supplier" memberEnd="_Myg5btxmEdqEPrOCkNZ5Vg _Myqqb9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqqbtxmEdqEPrOCkNZ5Vg" general="_MtmkYdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Myqqb9xmEdqEPrOCkNZ5Vg" name="supplierDependency" type="_rEDGkGwKEdq7X4sGURiZYA" association="_MyqqbdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyqqcNxmEdqEPrOCkNZ5Vg" annotatedElement="_Myqqb9xmEdqEPrOCkNZ5Vg">
<body>Indicates the dependencies that reference the supplier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8lQx8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8lQyMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqcdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyqqctxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8lQycWCEdqI1bY5Lwi8Hg" name="A_clientDependency_client" memberEnd="_g8bfwMWCEdqI1bY5Lwi8Hg _g8bf18WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8lQysWCEdqI1bY5Lwi8Hg" general="_g2eByMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Myqqc9xmEdqEPrOCkNZ5Vg" name="A_clientDependency_client" memberEnd="_Myg5idxmEdqEPrOCkNZ5Vg _Myg5ctxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqqdNxmEdqEPrOCkNZ5Vg" general="_MtmkXtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2eB3cWCEdqI1bY5Lwi8Hg" name="A_ownedMember_namespace" memberEnd="_g2BWG8WCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eB3sWCEdqI1bY5Lwi8Hg" general="_g2eB4MWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2eB38WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mtmkc9xmEdqEPrOCkNZ5Vg" name="A_ownedMember_namespace" memberEnd="_MtTCOdxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkdNxmEdqEPrOCkNZ5Vg" general="_MtmkdtxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtmkddxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_l2mXcHLzEdqziYxiZo0YtA" name="InterfaceRealization">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQ4MWCEdqI1bY5Lwi8Hg" annotatedElement="_l2mXcHLzEdqziYxiZo0YtA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyqqitxmEdqEPrOCkNZ5Vg" annotatedElement="_l2mXcHLzEdqziYxiZo0YtA">
<body>An InterfaceRealization is a specialized Realization relationship between a Classifier and an Interface. This relationship signifies that the realizing classifier conforms to the contract specified by the Interface.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8lQ4cWCEdqI1bY5Lwi8Hg" general="_g8bfxMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8lQ4sWCEdqI1bY5Lwi8Hg" name="contract" type="_8Ugn8GvtEdqG6fBIPwe-mw" subsettedProperty="_g8Ru-sWCEdqI1bY5Lwi8Hg" association="_g8uausWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQ48WCEdqI1bY5Lwi8Hg" annotatedElement="_g8lQ4sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myqqi9xmEdqEPrOCkNZ5Vg" general="_Myg5dtxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyqqjNxmEdqEPrOCkNZ5Vg" name="contract" type="_8Ugn8GvtEdqG6fBIPwe-mw" subsettedProperty="_Myg5btxmEdqEPrOCkNZ5Vg" association="_MyqqqdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyqqjdxmEdqEPrOCkNZ5Vg" annotatedElement="_MyqqjNxmEdqEPrOCkNZ5Vg">
<body>References the Interface specifying the conformance contract.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8lQ5MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8lQ5cWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqjtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myqqj9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8lQ5sWCEdqI1bY5Lwi8Hg" name="implementingClassifier" type="_iY7sMGvsEdqG6fBIPwe-mw" subsettedProperty="_g8bfwMWCEdqI1bY5Lwi8Hg" association="_g8uav8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQ58WCEdqI1bY5Lwi8Hg" annotatedElement="_g8lQ5sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyqqkNxmEdqEPrOCkNZ5Vg" name="implementingClassifier" type="_iY7sMGvsEdqG6fBIPwe-mw" subsettedProperty="_Myg5ctxmEdqEPrOCkNZ5Vg" association="_MyqqrtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyqqkdxmEdqEPrOCkNZ5Vg" annotatedElement="_MyqqkNxmEdqEPrOCkNZ5Vg">
<body>References the BehavioredClassifier that owns this Interfacerealization (i.e., the classifier that realizes the Interface to which it points).</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8lQ6MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8lQ6cWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqktxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myqqk9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8uasMWCEdqI1bY5Lwi8Hg" name="A_interface_ownedAttribute" memberEnd="_g8lQ0MWCEdqI1bY5Lwi8Hg _g8uas8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8uascWCEdqI1bY5Lwi8Hg" general="_g2UQvcWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8uassWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8uas8WCEdqI1bY5Lwi8Hg" type="_8Ugn8GvtEdqG6fBIPwe-mw" subsettedProperty="_g2UQwMWCEdqI1bY5Lwi8Hg _g2BWG8WCEdqI1bY5Lwi8Hg _g0-z88WCEdqI1bY5Lwi8Hg" association="_g8uasMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8uatMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8uatcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Myqqn9xmEdqEPrOCkNZ5Vg" name="A_interface_ownedAttribute" memberEnd="_MyqqetxmEdqEPrOCkNZ5Vg _MyqqotxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqqoNxmEdqEPrOCkNZ5Vg" general="_MtczPdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqqodxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyqqotxmEdqEPrOCkNZ5Vg" type="_8Ugn8GvtEdqG6fBIPwe-mw" subsettedProperty="_MtczQNxmEdqEPrOCkNZ5Vg _MtTCOdxmEdqEPrOCkNZ5Vg _MsQggtxmEdqEPrOCkNZ5Vg" association="_Myqqn9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myqqo9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyqqpNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8uatsWCEdqI1bY5Lwi8Hg" name="A_interface_ownedOperation" memberEnd="_g8lQ1MWCEdqI1bY5Lwi8Hg _g8lQ8cWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8uat8WCEdqI1bY5Lwi8Hg" general="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8uauMWCEdqI1bY5Lwi8Hg" general="_g2eB0sWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8uaucWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyqqpdxmEdqEPrOCkNZ5Vg" name="A_interface_ownedOperation" memberEnd="_Myqqm9xmEdqEPrOCkNZ5Vg _MyqqftxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqqptxmEdqEPrOCkNZ5Vg" general="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myqqp9xmEdqEPrOCkNZ5Vg" general="_MtmkaNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqqqNxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8uausWCEdqI1bY5Lwi8Hg" name="A_contract_interfaceRealization" memberEnd="_g8lQ4sWCEdqI1bY5Lwi8Hg _g8uavMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8uau8WCEdqI1bY5Lwi8Hg" general="_g8lQw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8uavMWCEdqI1bY5Lwi8Hg" type="_l2mXcHLzEdqziYxiZo0YtA" association="_g8uausWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8uavcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8uavsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyqqqdxmEdqEPrOCkNZ5Vg" name="A_contract_interfaceRealization" memberEnd="_MyqqjNxmEdqEPrOCkNZ5Vg _Myqqq9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqqqtxmEdqEPrOCkNZ5Vg" general="_MyqqbdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Myqqq9xmEdqEPrOCkNZ5Vg" type="_l2mXcHLzEdqziYxiZo0YtA" association="_MyqqqdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqrNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyqqrdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8uav8WCEdqI1bY5Lwi8Hg" name="A_interfaceRealization_implementingClassifier" memberEnd="_g8lQ7MWCEdqI1bY5Lwi8Hg _g8lQ5sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8uawMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8uawcWCEdqI1bY5Lwi8Hg" general="_g8lQycWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyqqrtxmEdqEPrOCkNZ5Vg" name="A_interfaceRealization_implementingClassifier" memberEnd="_MyqqltxmEdqEPrOCkNZ5Vg _MyqqkNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myqqr9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqqsNxmEdqEPrOCkNZ5Vg" general="_Myqqc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8uawsWCEdqI1bY5Lwi8Hg" name="A_nestedClassifier_interface" memberEnd="_g8lQ2MWCEdqI1bY5Lwi8Hg _g8uaxcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8uaw8WCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8uaxMWCEdqI1bY5Lwi8Hg" general="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8uaxcWCEdqI1bY5Lwi8Hg" type="_8Ugn8GvtEdqG6fBIPwe-mw" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg _g1H-IsWCEdqI1bY5Lwi8Hg" association="_g8uawsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8uaxsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8uax8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyqqsdxmEdqEPrOCkNZ5Vg" name="A_nestedClassifier_interface" memberEnd="_MyqqgtxmEdqEPrOCkNZ5Vg _MyqqtNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqqstxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myqqs9xmEdqEPrOCkNZ5Vg" general="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyqqtNxmEdqEPrOCkNZ5Vg" type="_8Ugn8GvtEdqG6fBIPwe-mw" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg _MsjbWdxmEdqEPrOCkNZ5Vg" association="_MyqqsdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqtdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyqqttxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g8uayMWCEdqI1bY5Lwi8Hg" name="A_interface_redefinedInterface" memberEnd="_g8lQ3MWCEdqI1bY5Lwi8Hg _g8uaysWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g8uaycWCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g8uaysWCEdqI1bY5Lwi8Hg" type="_8Ugn8GvtEdqG6fBIPwe-mw" association="_g8uayMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8uay8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8uazMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Myqqt9xmEdqEPrOCkNZ5Vg" name="A_interface_redefinedInterface" memberEnd="_MyqqhtxmEdqEPrOCkNZ5Vg _MyqqudxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqquNxmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MyqqudxmEdqEPrOCkNZ5Vg" type="_8Ugn8GvtEdqG6fBIPwe-mw" association="_Myqqt9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqutxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myqqu9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_FQiVsGwYEdqHKKVoxc0dlA" name="StructuredClassifier" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua9MWCEdqI1bY5Lwi8Hg" annotatedElement="_FQiVsGwYEdqHKKVoxc0dlA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0d9xmEdqEPrOCkNZ5Vg" annotatedElement="_FQiVsGwYEdqHKKVoxc0dlA">
<body>A structured classifier is an abstract metaclass that represents any classifier whose behavior can be fully or partly described by the collaboration of owned or referenced instances.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g8ua9cWCEdqI1bY5Lwi8Hg" name="multiplicities" constrainedElement="_FQiVsGwYEdqHKKVoxc0dlA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua9sWCEdqI1bY5Lwi8Hg" annotatedElement="_g8ua9cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Myz0eNxmEdqEPrOCkNZ5Vg" name="multiplicities" constrainedElement="_FQiVsGwYEdqHKKVoxc0dlA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0edxmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0eNxmEdqEPrOCkNZ5Vg">
<body>The multiplicities on connected elements must be consistent.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g8ua98WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Myz0etxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8ua-MWCEdqI1bY5Lwi8Hg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8ua-cWCEdqI1bY5Lwi8Hg" name="ownedAttribute" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g8ubAcWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg _g0iIAMWCEdqI1bY5Lwi8Hg" association="_g84Lt8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua-sWCEdqI1bY5Lwi8Hg" annotatedElement="_g8ua-cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myz0e9xmEdqEPrOCkNZ5Vg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myz0fNxmEdqEPrOCkNZ5Vg" name="ownedAttribute" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_My9lUNxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg _Mrz0ctxmEdqEPrOCkNZ5Vg" association="_My9lZtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0fdxmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0fNxmEdqEPrOCkNZ5Vg">
<body>References the properties owned by the classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8ua-8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8ua_MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myz0ftxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myz0f9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8ua_cWCEdqI1bY5Lwi8Hg" name="part" type="_Jp_1oGveEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" association="_g84LvsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua_sWCEdqI1bY5Lwi8Hg" annotatedElement="_g8ua_cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myz0gNxmEdqEPrOCkNZ5Vg" name="part" type="_Jp_1oGveEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" association="_My9lbdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0gdxmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0gNxmEdqEPrOCkNZ5Vg">
<body>References the properties specifying instances that the classifier owns by composition. This association is derived, selecting those owned properties where isComposite is true.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8ua_8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8ubAMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myz0gtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myz0g9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8ubAcWCEdqI1bY5Lwi8Hg" name="role" type="_g8ubCcWCEdqI1bY5Lwi8Hg" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_g1H96MWCEdqI1bY5Lwi8Hg" association="_g84LwsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ubAsWCEdqI1bY5Lwi8Hg" annotatedElement="_g8ubAcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_My9lUNxmEdqEPrOCkNZ5Vg" name="role" type="_My9lWNxmEdqEPrOCkNZ5Vg" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_MsaRetxmEdqEPrOCkNZ5Vg" association="_My9lcdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_My9lUdxmEdqEPrOCkNZ5Vg" annotatedElement="_My9lUNxmEdqEPrOCkNZ5Vg">
<body>References the roles that instances may play in this classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8ubA8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8ubBMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_My9lUtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_My9lU9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8ubBcWCEdqI1bY5Lwi8Hg" name="ownedConnector" type="_g8ua2sWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g0iIBMWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg" association="_g84Lx8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ubBsWCEdqI1bY5Lwi8Hg" annotatedElement="_g8ubBcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_My9lVNxmEdqEPrOCkNZ5Vg" name="ownedConnector" type="_Myz0XdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_Mrz0dtxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg" association="_My9ldtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_My9lVdxmEdqEPrOCkNZ5Vg" annotatedElement="_My9lVNxmEdqEPrOCkNZ5Vg">
<body>References the connectors owned by the classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8ubB8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8ubCMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_My9lVtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_My9lV9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_YorvMHL0EdqziYxiZo0YtA" name="createOwnedAttribute">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_YorvMXL0EdqziYxiZo0YtA" type="_Jp_1oGveEdq4DLWZOhbdEA" direction="return"/>
@@ -2734,408 +2674,394 @@ A namespace has the ability to import either individual members or all members o
<ownedParameter xmi:type="uml:Parameter" xmi:id="_YorvNXL0EdqziYxiZo0YtA" name="upper" type="_dRZxsGvsEdqG6fBIPwe-mw" effect="read"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g84Ls8WCEdqI1bY5Lwi8Hg" name="A_type_connector" memberEnd="_g8ua5sWCEdqI1bY5Lwi8Hg _g84LtMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g84LtMWCEdqI1bY5Lwi8Hg" type="_g8ua2sWCEdqI1bY5Lwi8Hg" association="_g84Ls8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g84LtcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g84LtsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_My9lYtxmEdqEPrOCkNZ5Vg" name="A_type_connector" memberEnd="_Myz0adxmEdqEPrOCkNZ5Vg _My9lY9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_My9lY9xmEdqEPrOCkNZ5Vg" type="_Myz0XdxmEdqEPrOCkNZ5Vg" association="_My9lYtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_My9lZNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_My9lZdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g84Lt8WCEdqI1bY5Lwi8Hg" name="A_ownedAttribute_structuredClassifier" memberEnd="_g8ua-cWCEdqI1bY5Lwi8Hg _g84Lu8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g84LuMWCEdqI1bY5Lwi8Hg" general="_g84LwsWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g84LucWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g84LusWCEdqI1bY5Lwi8Hg" general="_g2UQvcWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g84Lu8WCEdqI1bY5Lwi8Hg" type="_FQiVsGwYEdqHKKVoxc0dlA" redefinedProperty="_g84LxMWCEdqI1bY5Lwi8Hg" association="_g84Lt8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g84LvMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g84LvcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_My9lZtxmEdqEPrOCkNZ5Vg" name="A_ownedAttribute_structuredClassifier" memberEnd="_Myz0fNxmEdqEPrOCkNZ5Vg _My9latxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_My9lZ9xmEdqEPrOCkNZ5Vg" general="_My9lcdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_My9laNxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_My9ladxmEdqEPrOCkNZ5Vg" general="_MtczPdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_My9latxmEdqEPrOCkNZ5Vg" type="_FQiVsGwYEdqHKKVoxc0dlA" redefinedProperty="_My9lc9xmEdqEPrOCkNZ5Vg" association="_My9lZtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_My9la9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_My9lbNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g84LvsWCEdqI1bY5Lwi8Hg" name="A_part_structuredClassifier" memberEnd="_g8ua_cWCEdqI1bY5Lwi8Hg _g84Lv8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g84Lv8WCEdqI1bY5Lwi8Hg" type="_FQiVsGwYEdqHKKVoxc0dlA" association="_g84LvsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g84LwMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g84LwcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_My9lbdxmEdqEPrOCkNZ5Vg" name="A_part_structuredClassifier" memberEnd="_Myz0gNxmEdqEPrOCkNZ5Vg _My9lbtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_My9lbtxmEdqEPrOCkNZ5Vg" type="_FQiVsGwYEdqHKKVoxc0dlA" association="_My9lbdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_My9lb9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_My9lcNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g84LwsWCEdqI1bY5Lwi8Hg" name="A_role_structuredClassifier" memberEnd="_g8ubAcWCEdqI1bY5Lwi8Hg _g84LxMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g84Lw8WCEdqI1bY5Lwi8Hg" general="_g2eB4MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g84LxMWCEdqI1bY5Lwi8Hg" type="_FQiVsGwYEdqHKKVoxc0dlA" association="_g84LwsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g84LxcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g84LxsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_My9lcdxmEdqEPrOCkNZ5Vg" name="A_role_structuredClassifier" memberEnd="_My9lUNxmEdqEPrOCkNZ5Vg _My9lc9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_My9lctxmEdqEPrOCkNZ5Vg" general="_MtmkdtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_My9lc9xmEdqEPrOCkNZ5Vg" type="_FQiVsGwYEdqHKKVoxc0dlA" association="_My9lcdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_My9ldNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_My9lddxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g84Lx8WCEdqI1bY5Lwi8Hg" name="A_ownedConnector_structuredClassifier" memberEnd="_g8ubBcWCEdqI1bY5Lwi8Hg _g84Ly8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g84LyMWCEdqI1bY5Lwi8Hg" general="_g2eB0sWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g84LycWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g84LysWCEdqI1bY5Lwi8Hg" general="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g84Ly8WCEdqI1bY5Lwi8Hg" type="_FQiVsGwYEdqHKKVoxc0dlA" subsettedProperty="_g1H-IsWCEdqI1bY5Lwi8Hg" association="_g84Lx8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g84LzMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g84LzcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_My9ldtxmEdqEPrOCkNZ5Vg" name="A_ownedConnector_structuredClassifier" memberEnd="_My9lVNxmEdqEPrOCkNZ5Vg _My9letxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_My9ld9xmEdqEPrOCkNZ5Vg" general="_MtmkaNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_My9leNxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_My9ledxmEdqEPrOCkNZ5Vg" general="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_My9letxmEdqEPrOCkNZ5Vg" type="_FQiVsGwYEdqHKKVoxc0dlA" subsettedProperty="_MsjbWdxmEdqEPrOCkNZ5Vg" association="_My9ldtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_My9le9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_My9lfNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g84LzsWCEdqI1bY5Lwi8Hg" name="A_redefinedConnector_connector" memberEnd="_g8ua6sWCEdqI1bY5Lwi8Hg _g84L0MWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g84Lz8WCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g84L0MWCEdqI1bY5Lwi8Hg" type="_g8ua2sWCEdqI1bY5Lwi8Hg" association="_g84LzsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g84L0cWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g84L0sWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_My9lfdxmEdqEPrOCkNZ5Vg" name="A_redefinedConnector_connector" memberEnd="_Myz0bdxmEdqEPrOCkNZ5Vg _My9lf9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_My9lftxmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_My9lf9xmEdqEPrOCkNZ5Vg" type="_Myz0XdxmEdqEPrOCkNZ5Vg" association="_My9lfdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_My9lgNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_My9lgdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g84L08WCEdqI1bY5Lwi8Hg" name="A_end_connector" memberEnd="_g8ua7sWCEdqI1bY5Lwi8Hg _g84L1cWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g84L1MWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g84L1cWCEdqI1bY5Lwi8Hg" type="_g8ua2sWCEdqI1bY5Lwi8Hg" association="_g84L08WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g84L1sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g84L18WCEdqI1bY5Lwi8Hg" value="1"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_My9lgtxmEdqEPrOCkNZ5Vg" name="A_end_connector" memberEnd="_Myz0cdxmEdqEPrOCkNZ5Vg _My9lhNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_My9lg9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_My9lhNxmEdqEPrOCkNZ5Vg" type="_Myz0XdxmEdqEPrOCkNZ5Vg" association="_My9lgtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_My9lhdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_My9lhtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g84L2MWCEdqI1bY5Lwi8Hg" name="A_definingEnd_connectorEnd" memberEnd="_g8ua0sWCEdqI1bY5Lwi8Hg _g84L2cWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g84L2cWCEdqI1bY5Lwi8Hg" type="_aOgw0GveEdq4DLWZOhbdEA" association="_g84L2MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g84L2sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g84L28WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_My9lh9xmEdqEPrOCkNZ5Vg" name="A_definingEnd_connectorEnd" memberEnd="_Myz0VdxmEdqEPrOCkNZ5Vg _My9liNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_My9liNxmEdqEPrOCkNZ5Vg" type="_aOgw0GveEdq4DLWZOhbdEA" association="_My9lh9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_My9lidxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_My9litxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g84L3MWCEdqI1bY5Lwi8Hg" name="A_end_role" memberEnd="_g8ua1sWCEdqI1bY5Lwi8Hg _g8ubDMWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQvcWCEdqI1bY5Lwi8Hg" name="A_attribute_classifier" memberEnd="_g0iIAMWCEdqI1bY5Lwi8Hg _g2UQwMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQvsWCEdqI1bY5Lwi8Hg" general="_g2eB0sWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2UQv8WCEdqI1bY5Lwi8Hg" general="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQwMWCEdqI1bY5Lwi8Hg" name="classifier" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_g1H-IsWCEdqI1bY5Lwi8Hg" association="_g2UQvcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g84L3cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g84L3sWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_My9li9xmEdqEPrOCkNZ5Vg" name="A_end_role" memberEnd="_My9lW9xmEdqEPrOCkNZ5Vg _Myz0WdxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtczPdxmEdqEPrOCkNZ5Vg" name="A_attribute_classifier" memberEnd="_Mrz0ctxmEdqEPrOCkNZ5Vg _MtczQNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczPtxmEdqEPrOCkNZ5Vg" general="_MtmkaNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtczP9xmEdqEPrOCkNZ5Vg" general="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtczQNxmEdqEPrOCkNZ5Vg" name="classifier" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_MsjbWdxmEdqEPrOCkNZ5Vg" association="_MtczPdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_My9ljNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_My9ljdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7-z-8WCEdqI1bY5Lwi8Hg" name="Variable">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-z_MWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-z-8WCEdqI1bY5Lwi8Hg">
- <body>A variable specifies data storage shared by the actions within a group. There are actions to write and read variables. These actions are treated as side effecting actions, similar to the actions to write and read object attributes and associations. There are no sequencing constraints among actions that access the same variable. Such actions must be explicitly coordinated by control flows or other constraints.
-
-
-
-Any values contained by a variable must conform to the type of the variable and have cardinalities allowed by the multiplicity of the variable.
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_MyN-htxmEdqEPrOCkNZ5Vg" name="Variable">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-h9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-htxmEdqEPrOCkNZ5Vg">
+ <body>A variable specifies data storage shared by the actions within a group. There are actions to write and read variables. These actions are treated as side effecting actions, similar to the actions to write and read object attributes and associations. There are no sequencing constraints among actions that access the same variable. Such actions must be explicitly coordinated by control flows or other constraints.&#xD;
+&#xD;
+Any values contained by a variable must conform to the type of the variable and have cardinalities allowed by the multiplicity of the variable.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g84L4sWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-z-8WCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_My9lkdxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-htxmEdqEPrOCkNZ5Vg">
<body>A variable is considered a connectable element.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7-z_cWCEdqI1bY5Lwi8Hg" name="owned" constrainedElement="_g7-z-8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-z_sWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-z_cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MyN-iNxmEdqEPrOCkNZ5Vg" name="owned" constrainedElement="_MyN-htxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-idxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-iNxmEdqEPrOCkNZ5Vg">
<body>A variable is owned by a StructuredNode or Activity, but not both.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7-z_8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MyN-itxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7-0AcWCEdqI1bY5Lwi8Hg" general="_Gjgl0GveEdq4DLWZOhbdEA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g84L48WCEdqI1bY5Lwi8Hg" general="_g8ubCcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-0AsWCEdqI1bY5Lwi8Hg" name="scope" type="_g7-0EMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_g8IlEcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0A8WCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0AsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyN-jNxmEdqEPrOCkNZ5Vg" general="_Gjgl0GveEdq4DLWZOhbdEA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_My9lktxmEdqEPrOCkNZ5Vg" general="_My9lWNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-jdxmEdqEPrOCkNZ5Vg" name="scope" type="_MyN-m9xmEdqEPrOCkNZ5Vg" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_MyXvh9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-jtxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-jdxmEdqEPrOCkNZ5Vg">
<body>A structured activity node that owns the variable.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7-0BMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7-0BcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-j9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-kNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-0BsWCEdqI1bY5Lwi8Hg" name="activityScope" type="_g71qNsWCEdqI1bY5Lwi8Hg" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_g8Ru5cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0B8WCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0BsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-kdxmEdqEPrOCkNZ5Vg" name="activityScope" type="_MyEN3dxmEdqEPrOCkNZ5Vg" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_MyXvsNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-ktxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-kdxmEdqEPrOCkNZ5Vg">
<body>An activity that owns the variable.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7-0CMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7-0CcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-k9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-lNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g7-0CsWCEdqI1bY5Lwi8Hg" name="isAccessibleBy" isQuery="true" bodyCondition="_g7-0DMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0C8WCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0CsWCEdqI1bY5Lwi8Hg">
- <body>The isAccessibleBy() operation is not defined in standard UML. Implementations should define it to specify which actions can access a variable.
-
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MyN-ldxmEdqEPrOCkNZ5Vg" name="isAccessibleBy" isQuery="true" bodyCondition="_MyN-l9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-ltxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-ldxmEdqEPrOCkNZ5Vg">
+ <body>The isAccessibleBy() operation is not defined in standard UML. Implementations should define it to specify which actions can access a variable.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7-0DMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g7-0CsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7-0DcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MyN-l9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MyN-ldxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MyN-mNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g7-0DsWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g7-0D8WCEdqI1bY5Lwi8Hg" name="a" type="_g71p8MWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MyN-mdxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MyN-mtxmEdqEPrOCkNZ5Vg" name="a" type="_MyENl9xmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9B8sMWCEdqI1bY5Lwi8Hg" name="CollaborationUse">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9B8scWCEdqI1bY5Lwi8Hg" annotatedElement="_g9B8sMWCEdqI1bY5Lwi8Hg">
- <body>A collaboration use represents one particular use of a collaboration to explain the relationships between the properties of a classifier. A collaboration use shows how the pattern described by a collaboration is applied in a given context, by binding specific entities from that context to the roles of the collaboration. Depending on the context, these entities could be structural features of a classifier, instance specifications, or even roles in some containing collaboration. There may be multiple occurrences of a given collaboration within a classifier, each involving a different set of roles and connectors. A given role or connector may be involved in multiple occurrences of the same or different collaborations.
-
-
-
-Associated dependencies map features of the collaboration type to features in the classifier. These dependencies indicate which role in the classifier plays which role in the collaboration.
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzHWUNxmEdqEPrOCkNZ5Vg" name="CollaborationUse">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWUdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWUNxmEdqEPrOCkNZ5Vg">
+ <body>A collaboration use represents one particular use of a collaboration to explain the relationships between the properties of a classifier. A collaboration use shows how the pattern described by a collaboration is applied in a given context, by binding specific entities from that context to the roles of the collaboration. Depending on the context, these entities could be structural features of a classifier, instance specifications, or even roles in some containing collaboration. There may be multiple occurrences of a given collaboration within a classifier, each involving a different set of roles and connectors. A given role or connector may be involved in multiple occurrences of the same or different collaborations.&#xD;
+&#xD;
+Associated dependencies map features of the collaboration type to features in the classifier. These dependencies indicate which role in the classifier plays which role in the collaboration.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9B8ssWCEdqI1bY5Lwi8Hg" name="client_elements" constrainedElement="_g9B8sMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9B8s8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9B8ssWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzHWUtxmEdqEPrOCkNZ5Vg" name="client_elements" constrainedElement="_MzHWUNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWU9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWUtxmEdqEPrOCkNZ5Vg">
<body>All the client elements of a roleBinding are in one classifier and all supplier elements of a roleBinding are in one collaboration and they are compatible.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9B8tMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzHWVNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9B8tcWCEdqI1bY5Lwi8Hg" name="every_role" constrainedElement="_g9B8sMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9B8tsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9B8tcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzHWVdxmEdqEPrOCkNZ5Vg" name="every_role" constrainedElement="_MzHWUNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWVtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWVdxmEdqEPrOCkNZ5Vg">
<body>Every role in the collaboration is bound within the collaboration use to a connectable element within the classifier or operation.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9B8t8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzHWV9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9B8uMWCEdqI1bY5Lwi8Hg" name="connectors" constrainedElement="_g9B8sMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9B8ucWCEdqI1bY5Lwi8Hg" annotatedElement="_g9B8uMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzHWWNxmEdqEPrOCkNZ5Vg" name="connectors" constrainedElement="_MzHWUNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWWdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWWNxmEdqEPrOCkNZ5Vg">
<body>The connectors in the classifier connect according to the connectors in the collaboration</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9B8usWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzHWWtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9B8u8WCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9B8vMWCEdqI1bY5Lwi8Hg" name="type" type="_g9B8xMWCEdqI1bY5Lwi8Hg" association="_g9B82sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9B8vcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9B8vMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzHWW9xmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzHWXNxmEdqEPrOCkNZ5Vg" name="type" type="_MzHWZNxmEdqEPrOCkNZ5Vg" association="_MzHWetxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWXdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWXNxmEdqEPrOCkNZ5Vg">
<body>The collaboration which is used in this occurrence. The collaboration defines the cooperation between its roles which are mapped to properties of the classifier owning the collaboration use.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9B8vsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9B8v8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzHWXtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzHWX9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9B8wMWCEdqI1bY5Lwi8Hg" name="roleBinding" type="_rEDGkGwKEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g9B83sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9B8wcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9B8wMWCEdqI1bY5Lwi8Hg">
- <body>A mapping between features of the collaboration type and features of the classifier or operation. This mapping indicates which connectable element of the classifier or operation plays which role(s) in the collaboration. A connectable element may be bound to multiple roles in the same collaboration use (that is, it may play multiple roles).
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzHWYNxmEdqEPrOCkNZ5Vg" name="roleBinding" type="_rEDGkGwKEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MzHWftxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWYdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWYNxmEdqEPrOCkNZ5Vg">
+ <body>A mapping between features of the collaboration type and features of the classifier or operation. This mapping indicates which connectable element of the classifier or operation plays which role(s) in the collaboration. A connectable element may be bound to multiple roles in the same collaboration use (that is, it may play multiple roles).&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9B8wsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9B8w8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzHWYtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzHWY9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9B8xMWCEdqI1bY5Lwi8Hg" name="Collaboration">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9B8xcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9B8xMWCEdqI1bY5Lwi8Hg">
- <body>A collaboration is represented as a kind of classifier and defines a set of cooperating entities to be played by instances (its roles), as well as a set of connectors that define communication paths between the participating instances. The cooperating entities are the properties of the collaboration.
-
-
-
-A collaboration specifies a view (or projection) of a set of cooperating classifiers. It describes the required links between instances that play the roles of the collaboration, as well as the features required of the classifiers that specify the participating instances. Several collaborations may describe different projections of the same set of classifiers.
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzHWZNxmEdqEPrOCkNZ5Vg" name="Collaboration">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWZdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWZNxmEdqEPrOCkNZ5Vg">
+ <body>A collaboration is represented as a kind of classifier and defines a set of cooperating entities to be played by instances (its roles), as well as a set of connectors that define communication paths between the participating instances. The cooperating entities are the properties of the collaboration.&#xD;
+&#xD;
+A collaboration specifies a view (or projection) of a set of cooperating classifiers. It describes the required links between instances that play the roles of the collaboration, as well as the features required of the classifiers that specify the participating instances. Several collaborations may describe different projections of the same set of classifiers.&#xD;
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9B8x8WCEdqI1bY5Lwi8Hg" general="_FQiVsGwYEdqHKKVoxc0dlA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9B8yMWCEdqI1bY5Lwi8Hg" general="_iY7sMGvsEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9B8ycWCEdqI1bY5Lwi8Hg" name="collaborationRole" type="_g8ubCcWCEdqI1bY5Lwi8Hg" subsettedProperty="_g8ubAcWCEdqI1bY5Lwi8Hg" association="_g9B87cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9B8ysWCEdqI1bY5Lwi8Hg" annotatedElement="_g9B8ycWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzHWZ9xmEdqEPrOCkNZ5Vg" general="_FQiVsGwYEdqHKKVoxc0dlA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzHWaNxmEdqEPrOCkNZ5Vg" general="_iY7sMGvsEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzHWadxmEdqEPrOCkNZ5Vg" name="collaborationRole" type="_My9lWNxmEdqEPrOCkNZ5Vg" subsettedProperty="_My9lUNxmEdqEPrOCkNZ5Vg" association="_MzHWjdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWatxmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWadxmEdqEPrOCkNZ5Vg">
<body>References connectable elements (possibly owned by other classifiers) which represent roles that instances may play in this collaboration.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9B8y8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9B8zMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzHWa9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzHWbNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9B82sWCEdqI1bY5Lwi8Hg" name="A_type_collaborationUse" memberEnd="_g9B8vMWCEdqI1bY5Lwi8Hg _g9B828WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9B828WCEdqI1bY5Lwi8Hg" type="_g9B8sMWCEdqI1bY5Lwi8Hg" association="_g9B82sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9B83MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9B83cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzHWetxmEdqEPrOCkNZ5Vg" name="A_type_collaborationUse" memberEnd="_MzHWXNxmEdqEPrOCkNZ5Vg _MzHWe9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MzHWe9xmEdqEPrOCkNZ5Vg" type="_MzHWUNxmEdqEPrOCkNZ5Vg" association="_MzHWetxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzHWfNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzHWfdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9B83sWCEdqI1bY5Lwi8Hg" name="A_roleBinding_collaborationUse" memberEnd="_g9B8wMWCEdqI1bY5Lwi8Hg _g9B84MWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9B838WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9B84MWCEdqI1bY5Lwi8Hg" type="_g9B8sMWCEdqI1bY5Lwi8Hg" association="_g9B83sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9B84cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9B84sWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzHWftxmEdqEPrOCkNZ5Vg" name="A_roleBinding_collaborationUse" memberEnd="_MzHWYNxmEdqEPrOCkNZ5Vg _MzHWgNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzHWf9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MzHWgNxmEdqEPrOCkNZ5Vg" type="_MzHWUNxmEdqEPrOCkNZ5Vg" association="_MzHWftxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzHWgdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzHWgtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9B848WCEdqI1bY5Lwi8Hg" name="A_classifier_representation" memberEnd="_g9B8zcWCEdqI1bY5Lwi8Hg _g9B85cWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9B85MWCEdqI1bY5Lwi8Hg" general="_g9B86MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9B85cWCEdqI1bY5Lwi8Hg" type="_6UV2QGwJEdq7X4sGURiZYA" redefinedProperty="_g9B86sWCEdqI1bY5Lwi8Hg" association="_g9B848WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9B85sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9B858WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzHWg9xmEdqEPrOCkNZ5Vg" name="A_classifier_representation" memberEnd="_MzHWbdxmEdqEPrOCkNZ5Vg _MzHWhdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzHWhNxmEdqEPrOCkNZ5Vg" general="_MzHWiNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MzHWhdxmEdqEPrOCkNZ5Vg" type="_6UV2QGwJEdq7X4sGURiZYA" redefinedProperty="_MzHWitxmEdqEPrOCkNZ5Vg" association="_MzHWg9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzHWhtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzHWh9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9B86MWCEdqI1bY5Lwi8Hg" name="A_collaborationUse_classifier" memberEnd="_g9B80cWCEdqI1bY5Lwi8Hg _g9B86sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9B86cWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9B86sWCEdqI1bY5Lwi8Hg" type="_6UV2QGwJEdq7X4sGURiZYA" association="_g9B86MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9B868WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9B87MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzHWiNxmEdqEPrOCkNZ5Vg" name="A_collaborationUse_classifier" memberEnd="_MzHWcdxmEdqEPrOCkNZ5Vg _MzHWitxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzHWidxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MzHWitxmEdqEPrOCkNZ5Vg" type="_6UV2QGwJEdq7X4sGURiZYA" association="_MzHWiNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzHWi9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzHWjNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9B87cWCEdqI1bY5Lwi8Hg" name="A_collaborationRole_collaboration" memberEnd="_g9B8ycWCEdqI1bY5Lwi8Hg _g9B878WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9B87sWCEdqI1bY5Lwi8Hg" general="_g84LwsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9B878WCEdqI1bY5Lwi8Hg" type="_g9B8xMWCEdqI1bY5Lwi8Hg" redefinedProperty="_g84LxMWCEdqI1bY5Lwi8Hg" association="_g9B87cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9B88MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9B88cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzHWjdxmEdqEPrOCkNZ5Vg" name="A_collaborationRole_collaboration" memberEnd="_MzHWadxmEdqEPrOCkNZ5Vg _MzHWj9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzHWjtxmEdqEPrOCkNZ5Vg" general="_My9lcdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MzHWj9xmEdqEPrOCkNZ5Vg" type="_MzHWZNxmEdqEPrOCkNZ5Vg" redefinedProperty="_My9lc9xmEdqEPrOCkNZ5Vg" association="_MzHWjdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzHWkNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzHWkdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9LGqsWCEdqI1bY5Lwi8Hg" name="ControlNode" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGq8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGqsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzHWnNxmEdqEPrOCkNZ5Vg" name="ControlNode" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWndxmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWnNxmEdqEPrOCkNZ5Vg">
<body>A control node is an activity node used to coordinate the flows between other nodes. It covers initial node, final node and its children, fork node, join node, decision node, and merge node.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9LGrMWCEdqI1bY5Lwi8Hg" general="_g7-z5cWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzHWntxmEdqEPrOCkNZ5Vg" general="_MyN-cNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9LGysWCEdqI1bY5Lwi8Hg" name="ControlFlow">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGy8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGysWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzQgXdxmEdqEPrOCkNZ5Vg" name="ControlFlow">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgXtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgXdxmEdqEPrOCkNZ5Vg">
<body>Objects and data cannot pass along a control flow edge.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LGzMWCEdqI1bY5Lwi8Hg" name="object_nodes" constrainedElement="_g9LGysWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGzcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGzMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgX9xmEdqEPrOCkNZ5Vg" name="object_nodes" constrainedElement="_MzQgXdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgYNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgX9xmEdqEPrOCkNZ5Vg">
<body>Control flows may not have object nodes at either end, except for object nodes with control type.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LGzsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgYdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9LGz8WCEdqI1bY5Lwi8Hg" general="_g9LGrcWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzQgYtxmEdqEPrOCkNZ5Vg" general="_MzQgQNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9LG3MWCEdqI1bY5Lwi8Hg" name="InitialNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG3cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG3MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzQgb9xmEdqEPrOCkNZ5Vg" name="InitialNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgcNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgb9xmEdqEPrOCkNZ5Vg">
<body>An activity may have more than one initial node.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LG3sWCEdqI1bY5Lwi8Hg" name="no_incoming_edges" constrainedElement="_g9LG3MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG38WCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG3sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgcdxmEdqEPrOCkNZ5Vg" name="no_incoming_edges" constrainedElement="_MzQgb9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgctxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgcdxmEdqEPrOCkNZ5Vg">
<body>An initial node has no incoming edges.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LG4MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgc9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LG4cWCEdqI1bY5Lwi8Hg" name="control_edges" constrainedElement="_g9LG3MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG4sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG4cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgdNxmEdqEPrOCkNZ5Vg" name="control_edges" constrainedElement="_MzQgb9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgddxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgdNxmEdqEPrOCkNZ5Vg">
<body>Only control edges can have initial nodes as source.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LG48WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgdtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9LG5MWCEdqI1bY5Lwi8Hg" general="_g9LGqsWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzQgd9xmEdqEPrOCkNZ5Vg" general="_MzHWnNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9LG9cWCEdqI1bY5Lwi8Hg" name="ActivityParameterNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG9sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG9cWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzQgiNxmEdqEPrOCkNZ5Vg" name="ActivityParameterNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgidxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgiNxmEdqEPrOCkNZ5Vg">
<body>Activity parameter nodes are object nodes at the beginning and end of flows that provide a means to accept inputs to an activity and provide outputs from the activity, through the activity parameters.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LG98WCEdqI1bY5Lwi8Hg" name="has_parameters" constrainedElement="_g9LG9cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG-MWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG98WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgitxmEdqEPrOCkNZ5Vg" name="has_parameters" constrainedElement="_MzQgiNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgi9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgitxmEdqEPrOCkNZ5Vg">
<body>Activity parameter nodes must have parameters from the containing activity.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LG-cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgjNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LG-sWCEdqI1bY5Lwi8Hg" name="same_type" constrainedElement="_g9LG9cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG-8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG-sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgjdxmEdqEPrOCkNZ5Vg" name="same_type" constrainedElement="_MzQgiNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgjtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgjdxmEdqEPrOCkNZ5Vg">
<body>The type of an activity parameter node is the same as the type of its parameter.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LG_MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgj9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LG_cWCEdqI1bY5Lwi8Hg" name="no_edges" constrainedElement="_g9LG9cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG_sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG_cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgkNxmEdqEPrOCkNZ5Vg" name="no_edges" constrainedElement="_MzQgiNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgkdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgkNxmEdqEPrOCkNZ5Vg">
<body>An activity parameter node may have all incoming edges or all outgoing edges, but it must not have both incoming and outgoing edges.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LG_8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgktxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LHAMWCEdqI1bY5Lwi8Hg" name="no_incoming_edges" constrainedElement="_g9LG9cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LHAcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LHAMWCEdqI1bY5Lwi8Hg">
- <body>Activity parameter object nodes with no incoming edges and one or more outgoing edges must have a parameter with in or inout direction.
-
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgk9xmEdqEPrOCkNZ5Vg" name="no_incoming_edges" constrainedElement="_MzQgiNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQglNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgk9xmEdqEPrOCkNZ5Vg">
+ <body>Activity parameter object nodes with no incoming edges and one or more outgoing edges must have a parameter with in or inout direction.&#xD;
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LHAsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgldxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LHA8WCEdqI1bY5Lwi8Hg" name="no_outgoing_edges" constrainedElement="_g9LG9cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LHBMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LHA8WCEdqI1bY5Lwi8Hg">
- <body>Activity parameter object nodes with no outgoing edges and one or more incoming edges must have a parameter with out, inout, or return direction.
-
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgltxmEdqEPrOCkNZ5Vg" name="no_outgoing_edges" constrainedElement="_MzQgiNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgl9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgltxmEdqEPrOCkNZ5Vg">
+ <body>Activity parameter object nodes with no outgoing edges and one or more incoming edges must have a parameter with out, inout, or return direction.&#xD;
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LHBcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgmNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9LHBsWCEdqI1bY5Lwi8Hg" general="_g9LGoMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9LHB8WCEdqI1bY5Lwi8Hg" name="parameter" type="_KyaPMGveEdq4DLWZOhbdEA" association="_g9U3tMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LHCMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LHB8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzQgmdxmEdqEPrOCkNZ5Vg" general="_MzHWktxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzQgmtxmEdqEPrOCkNZ5Vg" name="parameter" type="_KyaPMGveEdq4DLWZOhbdEA" association="_MzaRQ9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgm9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgmtxmEdqEPrOCkNZ5Vg">
<body>The parameter the object node will be accepting or providing values for.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9LHCcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9LHCsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzQgnNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzQgndxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9U3r8WCEdqI1bY5Lwi8Hg" name="A_activity_edge" memberEnd="_g9LGtsWCEdqI1bY5Lwi8Hg _g9U3q8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9U3sMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzQgvdxmEdqEPrOCkNZ5Vg" name="A_activity_edge" memberEnd="_MzQgSdxmEdqEPrOCkNZ5Vg _MzQgudxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzQgvtxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9U3scWCEdqI1bY5Lwi8Hg" name="A_outgoing_source" memberEnd="_g9LHD8WCEdqI1bY5Lwi8Hg _g9LGusWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9U3ssWCEdqI1bY5Lwi8Hg" name="A_target_incoming" memberEnd="_g9LHE8WCEdqI1bY5Lwi8Hg _g9LGvsWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9U3tMWCEdqI1bY5Lwi8Hg" name="A_parameter_activityParameterNode" memberEnd="_g9LHB8WCEdqI1bY5Lwi8Hg _g9U3tcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9U3tcWCEdqI1bY5Lwi8Hg" type="_g9LG9cWCEdqI1bY5Lwi8Hg" association="_g9U3tMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzaRQNxmEdqEPrOCkNZ5Vg" name="A_outgoing_source" memberEnd="_MzQgTdxmEdqEPrOCkNZ5Vg _MzQgotxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzaRQdxmEdqEPrOCkNZ5Vg" name="A_target_incoming" memberEnd="_MzQgUdxmEdqEPrOCkNZ5Vg _MzQgptxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzaRQ9xmEdqEPrOCkNZ5Vg" name="A_parameter_activityParameterNode" memberEnd="_MzQgmtxmEdqEPrOCkNZ5Vg _MzaRRNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MzaRRNxmEdqEPrOCkNZ5Vg" type="_MzQgiNxmEdqEPrOCkNZ5Vg" association="_MzaRQ9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9U3tsWCEdqI1bY5Lwi8Hg" name="A_redefinedNode_activityNode" memberEnd="_g9LHF8WCEdqI1bY5Lwi8Hg _g9U3uMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9U3t8WCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9U3uMWCEdqI1bY5Lwi8Hg" type="_g7-z5cWCEdqI1bY5Lwi8Hg" redefinedProperty="_g2eB0cWCEdqI1bY5Lwi8Hg" association="_g9U3tsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9U3ucWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9U3usWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzaRRdxmEdqEPrOCkNZ5Vg" name="A_redefinedNode_activityNode" memberEnd="_MzQgqtxmEdqEPrOCkNZ5Vg _MzaRR9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzaRRtxmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MzaRR9xmEdqEPrOCkNZ5Vg" type="_MyN-cNxmEdqEPrOCkNZ5Vg" redefinedProperty="_MtmkZ9xmEdqEPrOCkNZ5Vg" association="_MzaRRdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRSNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRSdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9U3u8WCEdqI1bY5Lwi8Hg" name="A_redefinedEdge_activityEdge" memberEnd="_g9LGxsWCEdqI1bY5Lwi8Hg _g9U3vcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9U3vMWCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9U3vcWCEdqI1bY5Lwi8Hg" type="_g9LGrcWCEdqI1bY5Lwi8Hg" redefinedProperty="_g2eB0cWCEdqI1bY5Lwi8Hg" association="_g9U3u8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9U3vsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9U3v8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzaRStxmEdqEPrOCkNZ5Vg" name="A_redefinedEdge_activityEdge" memberEnd="_MzQgWdxmEdqEPrOCkNZ5Vg _MzaRTNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzaRS9xmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MzaRTNxmEdqEPrOCkNZ5Vg" type="_MzQgQNxmEdqEPrOCkNZ5Vg" redefinedProperty="_MtmkZ9xmEdqEPrOCkNZ5Vg" association="_MzaRStxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRTdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRTtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_gfgNwGveEdq4DLWZOhbdEA" name="Message">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBu8WCEdqI1bY5Lwi8Hg" annotatedElement="_gfgNwGveEdq4DLWZOhbdEA">
- <body>A Message is a NamedElement that defines a particular communication between Lifelines of an Interaction. A communication can be e.g. raising a signal, invoking an Operation, creating or destroying an Instance. The Message specifies not only the kind of communication given by the dispatching ExecutionSpecification, but also the sender and the receiver. A Message associates normally two OccurrenceSpecifications - one sending OccurrenceSpecification and one receiving OccurrenceSpecification.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRkNxmEdqEPrOCkNZ5Vg" annotatedElement="_gfgNwGveEdq4DLWZOhbdEA">
+ <body>A Message is a NamedElement that defines a particular communication between Lifelines of an Interaction. A communication can be e.g. raising a signal, invoking an Operation, creating or destroying an Instance. The Message specifies not only the kind of communication given by the dispatching ExecutionSpecification, but also the sender and the receiver. A Message associates normally two OccurrenceSpecifications - one sending OccurrenceSpecification and one receiving OccurrenceSpecification.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9eBvMWCEdqI1bY5Lwi8Hg" name="sending_receiving_message_event" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBvcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBvMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzaRkdxmEdqEPrOCkNZ5Vg" name="sending_receiving_message_event" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRktxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRkdxmEdqEPrOCkNZ5Vg">
<body>If the sending MessageEvent and the receiving MessageEvent of the same Message are on the same Lifeline, the sending MessageEvent must be ordered before the receiving MessageEvent.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9eBvsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzaRk9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9eBv8WCEdqI1bY5Lwi8Hg" name="signature_refer_to" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBwMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBv8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzaRlNxmEdqEPrOCkNZ5Vg" name="signature_refer_to" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRldxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRlNxmEdqEPrOCkNZ5Vg">
<body>The signature must either refer an Operation (in which case messageSort is either synchCall or asynchCall) or a Signal (in which case messageSort is asynchSignal). The name of the NamedElement referenced by signature must be the same as that of the Message.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9eBwcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzaRltxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9eBwsWCEdqI1bY5Lwi8Hg" name="signature_is_operation" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBw8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBwsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzaRl9xmEdqEPrOCkNZ5Vg" name="signature_is_operation" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRmNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRl9xmEdqEPrOCkNZ5Vg">
<body>In the case when the Message signature is an Operation, the arguments of the Message must correspond to the parameters of the Operation. A Parameter corresponds to an Argument if the Argument is of the same Class or a specialization of that of the Parameter.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9eBxMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzaRmdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9eBxcWCEdqI1bY5Lwi8Hg" name="signature_is_signal" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBxsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBxcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzaRmtxmEdqEPrOCkNZ5Vg" name="signature_is_signal" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRm9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRmtxmEdqEPrOCkNZ5Vg">
<body>In the case when the Message signature is a Signal, the arguments of the Message must correspond to the attributes of the Signal. A Message Argument corresponds to a Signal Attribute if the Arguement is of the same Class or a specialization of that of the Attribute.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9eBx8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzaRnNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9eByMWCEdqI1bY5Lwi8Hg" name="arguments" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBycWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eByMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzaRndxmEdqEPrOCkNZ5Vg" name="arguments" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRntxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRndxmEdqEPrOCkNZ5Vg">
<body>Arguments of a Message must only be:
i) attributes of the sending lifeline
ii) constants
@@ -3144,83 +3070,83 @@ iv) explicit parameters of the enclosing Interaction
v) attributes of the class owning the Interaction
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9eBysWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzaRn9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9eBy8WCEdqI1bY5Lwi8Hg" name="cannot_cross_boundaries" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBzMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBy8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzaRoNxmEdqEPrOCkNZ5Vg" name="cannot_cross_boundaries" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRodxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRoNxmEdqEPrOCkNZ5Vg">
<body>Messages cannot cross bounderies of CombinedFragments or their operands.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9eBzcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzaRotxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9eBzsWCEdqI1bY5Lwi8Hg" name="occurrence_specifications" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBz8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBzsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzaRo9xmEdqEPrOCkNZ5Vg" name="occurrence_specifications" constrainedElement="_gfgNwGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRpNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRo9xmEdqEPrOCkNZ5Vg">
<body>If the MessageEnds are both OccurrenceSpecifications then the connector must go between the Parts represented by the Lifelines of the two MessageEnds.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9eB0MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzaRpdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9eB0cWCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eB0sWCEdqI1bY5Lwi8Hg" name="messageKind" type="_Y_jskGvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eB08WCEdqI1bY5Lwi8Hg" annotatedElement="_g9eB0sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzaRptxmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRp9xmEdqEPrOCkNZ5Vg" name="messageKind" type="_Y_jskGvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRqNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRp9xmEdqEPrOCkNZ5Vg">
<body>The derived kind of the Message (complete, lost, found or unknown)</body>
</ownedComment>
- <defaultValue xmi:type="uml:InstanceValue" xmi:id="_g9eB1MWCEdqI1bY5Lwi8Hg" type="_Y_jskGvtEdqG6fBIPwe-mw" instance="_g9ny7cWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_MzaRqdxmEdqEPrOCkNZ5Vg" type="_Y_jskGvtEdqG6fBIPwe-mw" instance="_MzkCydxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eB1cWCEdqI1bY5Lwi8Hg" name="messageSort" type="_g9ny78WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eB1sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eB1cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRqtxmEdqEPrOCkNZ5Vg" name="messageSort" type="_MzkCy9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRq9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRqtxmEdqEPrOCkNZ5Vg">
<body>The sort of communication reflected by the Message</body>
</ownedComment>
- <defaultValue xmi:type="uml:InstanceValue" xmi:id="_g9eB18WCEdqI1bY5Lwi8Hg" type="_g9ny78WCEdqI1bY5Lwi8Hg" instance="_g9ny8cWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_MzaRrNxmEdqEPrOCkNZ5Vg" type="_MzkCy9xmEdqEPrOCkNZ5Vg" instance="_MzkCzdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eB2MWCEdqI1bY5Lwi8Hg" name="receiveEvent" type="_g9eCHMWCEdqI1bY5Lwi8Hg" association="_g9xjksWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eB2cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eB2MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRrdxmEdqEPrOCkNZ5Vg" name="receiveEvent" type="_MzkCZdxmEdqEPrOCkNZ5Vg" association="_MztMN9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRrtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRrdxmEdqEPrOCkNZ5Vg">
<body>References the Receiving of the Message</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eB2sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eB28WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRr9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRsNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eB3MWCEdqI1bY5Lwi8Hg" name="sendEvent" type="_g9eCHMWCEdqI1bY5Lwi8Hg" association="_g9xjlsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eB3cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eB3MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRsdxmEdqEPrOCkNZ5Vg" name="sendEvent" type="_MzkCZdxmEdqEPrOCkNZ5Vg" association="_MztMO9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRstxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRsdxmEdqEPrOCkNZ5Vg">
<body>References the Sending of the Message.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eB3sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eB38WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRs9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRtNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eB4MWCEdqI1bY5Lwi8Hg" name="connector" type="_g8ua2sWCEdqI1bY5Lwi8Hg" association="_g9xjpMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eB4cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eB4MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRtdxmEdqEPrOCkNZ5Vg" name="connector" type="_Myz0XdxmEdqEPrOCkNZ5Vg" association="_MztMSdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRttxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRtdxmEdqEPrOCkNZ5Vg">
<body>The Connector on which this Message is sent.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eB4sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eB48WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRt9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRuNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eB5MWCEdqI1bY5Lwi8Hg" name="interaction" type="_g9U3wsWCEdqI1bY5Lwi8Hg" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_g9xjqMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eB5cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eB5MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRudxmEdqEPrOCkNZ5Vg" name="interaction" type="_MzaRUdxmEdqEPrOCkNZ5Vg" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_MztMTdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRutxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRudxmEdqEPrOCkNZ5Vg">
<body>The enclosing Interaction owning the Message</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eB5sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eB58WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRu9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRvNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eB6MWCEdqI1bY5Lwi8Hg" name="argument" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" isOrdered="true" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g9xjrMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eB6cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eB6MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRvdxmEdqEPrOCkNZ5Vg" name="argument" type="_Msjbf9xmEdqEPrOCkNZ5Vg" isOrdered="true" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MztMUdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRvtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRvdxmEdqEPrOCkNZ5Vg">
<body>The arguments of the Message</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eB6sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eB68WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRv9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRwNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eB7MWCEdqI1bY5Lwi8Hg" name="signature" type="_csVgUGvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" association="_g9xjxsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eB7cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eB7MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRwdxmEdqEPrOCkNZ5Vg" name="signature" type="_csVgUGvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" association="_MztMa9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRwtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRwdxmEdqEPrOCkNZ5Vg">
<body>The definition of the type or signature of the Message (depending on its kind). The associated named element is derived from the message end that constitutes the sending or receiving message event. If both a sending event and a receiving message event are present, the signature is obtained from the sending event.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eB7sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eB78WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRw9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRxNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_8U6CAFYfEdqB6vblk3tuMA" name="getMessageKind" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_-_OTMFYfEdqB6vblk3tuMA" type="_Y_jskGvtEdqG6fBIPwe-mw" direction="return"/>
@@ -3232,881 +3158,841 @@ v) attributes of the class owning the Interaction
</ownedParameter>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9eB8MWCEdqI1bY5Lwi8Hg" name="GeneralOrdering">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eB8cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eB8MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzaRxdxmEdqEPrOCkNZ5Vg" name="GeneralOrdering">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRxtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRxdxmEdqEPrOCkNZ5Vg">
<body>A GeneralOrdering represents a binary relation between two OccurrenceSpecifications, to describe that one OccurrenceSpecification must occur before the other in a valid trace. This mechanism provides the ability to define partial orders of OccurrenceSpecifications that may otherwise not have a specified order. A GeneralOrdering is a specialization of NamedElement.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9eB8sWCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eB88WCEdqI1bY5Lwi8Hg" name="before" type="_g9eCCcWCEdqI1bY5Lwi8Hg" association="_g9xjqsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eB9MWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eB88WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzaRx9xmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRyNxmEdqEPrOCkNZ5Vg" name="before" type="_MzkCUtxmEdqEPrOCkNZ5Vg" association="_MztMT9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRydxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRyNxmEdqEPrOCkNZ5Vg">
<body>The OccurrenceSpecification referenced comes before the OccurrenceSpecification referenced by after.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eB9cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eB9sWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRytxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRy9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eB98WCEdqI1bY5Lwi8Hg" name="after" type="_g9eCCcWCEdqI1bY5Lwi8Hg" association="_g9xjq8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eB-MWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eB98WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCQNxmEdqEPrOCkNZ5Vg" name="after" type="_MzkCUtxmEdqEPrOCkNZ5Vg" association="_MztMUNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCQdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCQNxmEdqEPrOCkNZ5Vg">
<body>The OccurrenceSpecification referenced comes after the OccurrenceSpecification referenced by before.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eB-cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eB-sWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCQtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCQ9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9eB-8WCEdqI1bY5Lwi8Hg" name="ExecutionSpecification" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eB_MWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eB-8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCRNxmEdqEPrOCkNZ5Vg" name="ExecutionSpecification" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCRdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCRNxmEdqEPrOCkNZ5Vg">
<body>An ExecutionSpecification is a specification of the execution of a unit of behavior or action within the Lifeline. The duration of an ExecutionSpecification is represented by two ExecutionOccurrenceSpecifications, the start ExecutionOccurrenceSpecification and the finish ExecutionOccurrenceSpecification.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9eB_cWCEdqI1bY5Lwi8Hg" name="same_lifeline" constrainedElement="_g9eB-8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eB_sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eB_cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzkCRtxmEdqEPrOCkNZ5Vg" name="same_lifeline" constrainedElement="_MzkCRNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCR9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCRtxmEdqEPrOCkNZ5Vg">
<body>The startEvent and the finishEvent must be on the same Lifeline</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9eB_8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzkCSNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>start.lifeline = finish.lifeline</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9eCAMWCEdqI1bY5Lwi8Hg" general="_g9eBrMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eCAcWCEdqI1bY5Lwi8Hg" name="start" type="_g9eCCcWCEdqI1bY5Lwi8Hg" association="_g9ny_8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eCAsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eCAcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCSdxmEdqEPrOCkNZ5Vg" general="_MzaRgdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCStxmEdqEPrOCkNZ5Vg" name="start" type="_MzkCUtxmEdqEPrOCkNZ5Vg" association="_MzkC29xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCS9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCStxmEdqEPrOCkNZ5Vg">
<body>References the OccurrenceSpecification that designates the start of the Action or Behavior</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eCA8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eCBMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCTNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCTdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eCBcWCEdqI1bY5Lwi8Hg" name="finish" type="_g9eCCcWCEdqI1bY5Lwi8Hg" association="_g9nzBMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eCBsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eCBcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCTtxmEdqEPrOCkNZ5Vg" name="finish" type="_MzkCUtxmEdqEPrOCkNZ5Vg" association="_MzkC4NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCT9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCTtxmEdqEPrOCkNZ5Vg">
<body>References the OccurrenceSpecification that designates the finish of the Action or Behavior.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eCB8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eCCMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCUNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCUdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9eCCcWCEdqI1bY5Lwi8Hg" name="OccurrenceSpecification">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eCCsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eCCcWCEdqI1bY5Lwi8Hg">
- <body>An OccurrenceSpecification is the basic semantic unit of Interactions. The sequences of occurrences specified by them are the meanings of Interactions.
-
-OccurrenceSpecifications are ordered along a Lifeline.
-
-The namespace of an OccurrenceSpecification is the Interaction in which it is contained.
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCUtxmEdqEPrOCkNZ5Vg" name="OccurrenceSpecification">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCU9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCUtxmEdqEPrOCkNZ5Vg">
+ <body>An OccurrenceSpecification is the basic semantic unit of Interactions. The sequences of occurrences specified by them are the meanings of Interactions.&#xD;
+OccurrenceSpecifications are ordered along a Lifeline.&#xD;
+The namespace of an OccurrenceSpecification is the Interaction in which it is contained.&#xD;
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9eCC8WCEdqI1bY5Lwi8Hg" general="_g9eBrMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eCDMWCEdqI1bY5Lwi8Hg" name="covered" type="_g9eBkMWCEdqI1bY5Lwi8Hg" redefinedProperty="_g9eBr8WCEdqI1bY5Lwi8Hg" association="_g9xjmsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eCDcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eCDMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCVNxmEdqEPrOCkNZ5Vg" general="_MzaRgdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCVdxmEdqEPrOCkNZ5Vg" name="covered" type="_MzaRZdxmEdqEPrOCkNZ5Vg" redefinedProperty="_MzaRhNxmEdqEPrOCkNZ5Vg" association="_MztMP9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCVtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCVdxmEdqEPrOCkNZ5Vg">
<body>References the Lifeline on which the OccurrenceSpecification appears.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eCDsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eCD8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCV9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCWNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eCEMWCEdqI1bY5Lwi8Hg" name="toAfter" type="_g9eB8MWCEdqI1bY5Lwi8Hg" association="_g9xjqsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eCEcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eCEMWCEdqI1bY5Lwi8Hg">
- <body>References the GeneralOrderings that specify EventOcurrences that must occur after this OccurrenceSpecification
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCWdxmEdqEPrOCkNZ5Vg" name="toAfter" type="_MzaRxdxmEdqEPrOCkNZ5Vg" association="_MztMT9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCWtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCWdxmEdqEPrOCkNZ5Vg">
+ <body>References the GeneralOrderings that specify EventOcurrences that must occur after this OccurrenceSpecification&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eCEsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eCE8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCW9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCXNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eCFMWCEdqI1bY5Lwi8Hg" name="toBefore" type="_g9eB8MWCEdqI1bY5Lwi8Hg" association="_g9xjq8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eCFcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eCFMWCEdqI1bY5Lwi8Hg">
- <body>References the GeneralOrderings that specify EventOcurrences that must occur before this OccurrenceSpecification
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCXdxmEdqEPrOCkNZ5Vg" name="toBefore" type="_MzaRxdxmEdqEPrOCkNZ5Vg" association="_MztMUNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCXtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCXdxmEdqEPrOCkNZ5Vg">
+ <body>References the GeneralOrderings that specify EventOcurrences that must occur before this OccurrenceSpecification&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eCFsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eCF8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCX9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCYNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eCGMWCEdqI1bY5Lwi8Hg" name="event" type="_g-OPz8WCEdqI1bY5Lwi8Hg" association="_g9xj1MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eCGcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eCGMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCYdxmEdqEPrOCkNZ5Vg" name="event" type="_M0AHe9xmEdqEPrOCkNZ5Vg" association="_MztMedxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCYtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCYdxmEdqEPrOCkNZ5Vg">
<body>References a specification of the occurring event.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eCGsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eCG8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCY9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCZNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9eCHMWCEdqI1bY5Lwi8Hg" name="MessageEnd" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eCHcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eCHMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCZdxmEdqEPrOCkNZ5Vg" name="MessageEnd" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCZtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCZdxmEdqEPrOCkNZ5Vg">
<body>A MessageEnd is an abstract NamedElement that represents what can occur at the end of a Message.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9eCHsWCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eCH8WCEdqI1bY5Lwi8Hg" name="message" type="_gfgNwGveEdq4DLWZOhbdEA" association="_g9xj0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eCIMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eCH8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCZ9xmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCaNxmEdqEPrOCkNZ5Vg" name="message" type="_gfgNwGveEdq4DLWZOhbdEA" association="_MztMddxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCadxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCaNxmEdqEPrOCkNZ5Vg">
<body>References a Message.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eCIcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eCIsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCatxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCa9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9nykMWCEdqI1bY5Lwi8Hg" name="StateInvariant">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nykcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nykMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCbNxmEdqEPrOCkNZ5Vg" name="StateInvariant">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCbdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCbNxmEdqEPrOCkNZ5Vg">
<body>A StateInvariant is a runtime constraint on the participants of the interaction. It may be used to specify a variety of different kinds of constraints, such as values of attributes or variables, internal or external states, and so on. A StateInvariant is an InteractionFragment and it is placed on a Lifeline.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9nyksWCEdqI1bY5Lwi8Hg" general="_g9eBrMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9nyk8WCEdqI1bY5Lwi8Hg" name="invariant" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g9xjscWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nylMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyk8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCbtxmEdqEPrOCkNZ5Vg" general="_MzaRgdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCb9xmEdqEPrOCkNZ5Vg" name="invariant" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MztMVtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCcNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCb9xmEdqEPrOCkNZ5Vg">
<body>A Constraint that should hold at runtime for this StateInvariant</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9nylcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9nylsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCcdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCctxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9nyl8WCEdqI1bY5Lwi8Hg" name="covered" type="_g9eBkMWCEdqI1bY5Lwi8Hg" redefinedProperty="_g9eBr8WCEdqI1bY5Lwi8Hg" association="_g9xjtMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nymMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyl8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCc9xmEdqEPrOCkNZ5Vg" name="covered" type="_MzaRZdxmEdqEPrOCkNZ5Vg" redefinedProperty="_MzaRhNxmEdqEPrOCkNZ5Vg" association="_MztMWdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCdNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCc9xmEdqEPrOCkNZ5Vg">
<body>References the Lifeline on which the StateInvariant appears.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9nymcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9nymsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCddxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCdtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9nym8WCEdqI1bY5Lwi8Hg" name="ActionExecutionSpecification">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nynMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nym8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCd9xmEdqEPrOCkNZ5Vg" name="ActionExecutionSpecification">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCeNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCd9xmEdqEPrOCkNZ5Vg">
<body>ActionExecutionSpecification is a kind of ExecutionSpecification representing the execution of an action.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9nyncWCEdqI1bY5Lwi8Hg" name="action_referenced" constrainedElement="_g9nym8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nynsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyncWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzkCedxmEdqEPrOCkNZ5Vg" name="action_referenced" constrainedElement="_MzkCd9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCetxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCedxmEdqEPrOCkNZ5Vg">
<body>The Action referenced by the ActionExecutionSpecification, if any, must be owned by the Interaction owning the ActionExecutionOccurrence.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9nyn8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzkCe9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9nyoMWCEdqI1bY5Lwi8Hg" general="_g9eB-8WCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9nyocWCEdqI1bY5Lwi8Hg" name="action" type="_g71p8MWCEdqI1bY5Lwi8Hg" association="_g9xjwsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nyosWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyocWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCfNxmEdqEPrOCkNZ5Vg" general="_MzkCRNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCfdxmEdqEPrOCkNZ5Vg" name="action" type="_MyENl9xmEdqEPrOCkNZ5Vg" association="_MztMZ9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCftxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCfdxmEdqEPrOCkNZ5Vg">
<body>Action whose execution is occurring.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9nyo8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9nypMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCf9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCgNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9nypcWCEdqI1bY5Lwi8Hg" name="BehaviorExecutionSpecification">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nypsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nypcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCgdxmEdqEPrOCkNZ5Vg" name="BehaviorExecutionSpecification">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCgtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCgdxmEdqEPrOCkNZ5Vg">
<body>BehaviorExecutionSpecification is a kind of ExecutionSpecification representing the execution of a behavior.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9nyp8WCEdqI1bY5Lwi8Hg" general="_g9eB-8WCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9nyqMWCEdqI1bY5Lwi8Hg" name="behavior" type="_TUPtYGveEdq4DLWZOhbdEA" association="_g9xjwMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nyqcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyqMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCg9xmEdqEPrOCkNZ5Vg" general="_MzkCRNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkChNxmEdqEPrOCkNZ5Vg" name="behavior" type="_TUPtYGveEdq4DLWZOhbdEA" association="_MztMZdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkChdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkChNxmEdqEPrOCkNZ5Vg">
<body>Behavior whose execution is occurring.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9nyqsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9nyq8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkChtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCh9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9nyrMWCEdqI1bY5Lwi8Hg" name="ExecutionEvent">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nyrcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyrMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCiNxmEdqEPrOCkNZ5Vg" name="ExecutionEvent">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCidxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCiNxmEdqEPrOCkNZ5Vg">
<body>An ExecutionEvent models the start or finish of an execution occurrence.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9nyrsWCEdqI1bY5Lwi8Hg" general="_g-OPz8WCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCitxmEdqEPrOCkNZ5Vg" general="_M0AHe9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9nyr8WCEdqI1bY5Lwi8Hg" name="CreationEvent">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nysMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyr8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCi9xmEdqEPrOCkNZ5Vg" name="CreationEvent">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCjNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCi9xmEdqEPrOCkNZ5Vg">
<body>A CreationEvent models the creation of an object.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9nyscWCEdqI1bY5Lwi8Hg" name="no_occurrence_above" constrainedElement="_g9nyr8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nyssWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyscWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzkCjdxmEdqEPrOCkNZ5Vg" name="no_occurrence_above" constrainedElement="_MzkCi9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCjtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCjdxmEdqEPrOCkNZ5Vg">
<body>No othet OccurrenceSpecification may appear above an OccurrenceSpecification which references a CreationEvent on a given Lifeline in an InteractionOperand.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9nys8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzkCj9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9nytMWCEdqI1bY5Lwi8Hg" general="_g-OPz8WCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCkNxmEdqEPrOCkNZ5Vg" general="_M0AHe9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9nytcWCEdqI1bY5Lwi8Hg" name="DestructionEvent">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nytsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nytcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCkdxmEdqEPrOCkNZ5Vg" name="DestructionEvent">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCktxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCkdxmEdqEPrOCkNZ5Vg">
<body>A DestructionEvent models the destruction of an object.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9nyt8WCEdqI1bY5Lwi8Hg" name="no_occurrence_specifications_below" constrainedElement="_g9nytcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nyuMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyt8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzkCk9xmEdqEPrOCkNZ5Vg" name="no_occurrence_specifications_below" constrainedElement="_MzkCkdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkClNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCk9xmEdqEPrOCkNZ5Vg">
<body>No other OccurrenceSpecifications may appear below an OccurrenceSpecification which references a DestructionEvent on a given Lifeline in an InteractionOperand.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9nyucWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzkCldxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9nyusWCEdqI1bY5Lwi8Hg" general="_g-OPz8WCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCltxmEdqEPrOCkNZ5Vg" general="_M0AHe9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9nyu8WCEdqI1bY5Lwi8Hg" name="SendOperationEvent">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nyvMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyu8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCl9xmEdqEPrOCkNZ5Vg" name="SendOperationEvent">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCmNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCl9xmEdqEPrOCkNZ5Vg">
<body>A SendOperationEvent models the invocation of an operation call.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9nyvcWCEdqI1bY5Lwi8Hg" general="_g-OPxcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9nyvsWCEdqI1bY5Lwi8Hg" name="operation" type="_M4X2IGveEdq4DLWZOhbdEA" association="_g9xjyMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nyv8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyvsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCmdxmEdqEPrOCkNZ5Vg" general="_M0AHcdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCmtxmEdqEPrOCkNZ5Vg" name="operation" type="_M4X2IGveEdq4DLWZOhbdEA" association="_MztMbdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCm9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCmtxmEdqEPrOCkNZ5Vg">
<body>The operation associated with this event.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9nywMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9nywcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCnNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCndxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9nywsWCEdqI1bY5Lwi8Hg" name="SendSignalEvent">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nyw8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9nywsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCntxmEdqEPrOCkNZ5Vg" name="SendSignalEvent">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCn9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCntxmEdqEPrOCkNZ5Vg">
<body>A SendSignalEvent models the sending of a signal.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9nyxMWCEdqI1bY5Lwi8Hg" general="_g-OPxcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9nyxcWCEdqI1bY5Lwi8Hg" name="signal" type="_Pu3O0HL0EdqziYxiZo0YtA" association="_g9xjzMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nyxsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyxcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCoNxmEdqEPrOCkNZ5Vg" general="_M0AHcdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCodxmEdqEPrOCkNZ5Vg" name="signal" type="_Pu3O0HL0EdqziYxiZo0YtA" association="_MztMcdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCotxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCodxmEdqEPrOCkNZ5Vg">
<body>The signal associated with this event.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9nyx8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9nyyMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCo9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCpNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9nyycWCEdqI1bY5Lwi8Hg" name="MessageOccurrenceSpecification">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nyysWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyycWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCpdxmEdqEPrOCkNZ5Vg" name="MessageOccurrenceSpecification">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCptxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCpdxmEdqEPrOCkNZ5Vg">
<body>Specifies the occurrence of message events, such as sending and receiving of signals or invoking or receiving of operation calls. A message occurrence specification is a kind of message end. Messages are generated either by synchronous operation calls or asynchronous signal sends. They are received by the execution of corresponding accept event actions.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9nyy8WCEdqI1bY5Lwi8Hg" general="_g9eCHMWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9nyzMWCEdqI1bY5Lwi8Hg" general="_g9eCCcWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCp9xmEdqEPrOCkNZ5Vg" general="_MzkCZdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCqNxmEdqEPrOCkNZ5Vg" general="_MzkCUtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9nyzcWCEdqI1bY5Lwi8Hg" name="ExecutionOccurrenceSpecification">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nyzsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nyzcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCqdxmEdqEPrOCkNZ5Vg" name="ExecutionOccurrenceSpecification">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCqtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCqdxmEdqEPrOCkNZ5Vg">
<body>An ExecutionOccurrenceSpecification represents moments in time at which actions or behaviors start or finish.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9nyz8WCEdqI1bY5Lwi8Hg" general="_g9eCCcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9ny0MWCEdqI1bY5Lwi8Hg" name="execution" type="_g9eB-8WCEdqI1bY5Lwi8Hg" association="_g9xj3cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny0cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny0MWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCq9xmEdqEPrOCkNZ5Vg" general="_MzkCUtxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCrNxmEdqEPrOCkNZ5Vg" name="execution" type="_MzkCRNxmEdqEPrOCkNZ5Vg" association="_MztMgtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCrdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCrNxmEdqEPrOCkNZ5Vg">
<body>References the execution specification describing the execution that is started or finished at this execution event.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9ny0sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9ny08WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCrtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCr9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9ny1MWCEdqI1bY5Lwi8Hg" name="event" type="_g9nyrMWCEdqI1bY5Lwi8Hg" redefinedProperty="_g9eCGMWCEdqI1bY5Lwi8Hg" association="_g96tgMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny1cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny1MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCsNxmEdqEPrOCkNZ5Vg" name="event" type="_MzkCiNxmEdqEPrOCkNZ5Vg" redefinedProperty="_MzkCYdxmEdqEPrOCkNZ5Vg" association="_MztMhtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCsdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCsNxmEdqEPrOCkNZ5Vg">
<body>Redefines the event referenced to be restricted to an execution event.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9ny1sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9ny18WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCstxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCs9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9ny2MWCEdqI1bY5Lwi8Hg" name="ReceiveOperationEvent">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny2cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny2MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCtNxmEdqEPrOCkNZ5Vg" name="ReceiveOperationEvent">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCtdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCtNxmEdqEPrOCkNZ5Vg">
<body>A ReceiveOperationEvent models the reception of an operation call.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9ny2sWCEdqI1bY5Lwi8Hg" general="_g-OPxcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9ny28WCEdqI1bY5Lwi8Hg" name="operation" type="_M4X2IGveEdq4DLWZOhbdEA" association="_g96thcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny3MWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny28WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCttxmEdqEPrOCkNZ5Vg" general="_M0AHcdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCt9xmEdqEPrOCkNZ5Vg" name="operation" type="_M4X2IGveEdq4DLWZOhbdEA" association="_MztMi9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCuNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCt9xmEdqEPrOCkNZ5Vg">
<body>The operation associated with this event.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9ny3cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9ny3sWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCudxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCutxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9ny38WCEdqI1bY5Lwi8Hg" name="ReceiveSignalEvent">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny4MWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny38WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzkCu9xmEdqEPrOCkNZ5Vg" name="ReceiveSignalEvent">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCvNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCu9xmEdqEPrOCkNZ5Vg">
<body>A ReceiveSignalEvent models the receiving of a signal.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9ny4cWCEdqI1bY5Lwi8Hg" general="_g-OPxcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9ny4sWCEdqI1bY5Lwi8Hg" name="signal" type="_Pu3O0HL0EdqziYxiZo0YtA" association="_g96ticWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny48WCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny4sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzkCvdxmEdqEPrOCkNZ5Vg" general="_M0AHcdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzkCvtxmEdqEPrOCkNZ5Vg" name="signal" type="_Pu3O0HL0EdqziYxiZo0YtA" association="_MztMj9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCv9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCvtxmEdqEPrOCkNZ5Vg">
<body>The signal associated with this event.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9ny5MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9ny5cWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkCwNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkCwdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_Y_jskGvtEdqG6fBIPwe-mw" name="MessageKind">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny5sWCEdqI1bY5Lwi8Hg" annotatedElement="_Y_jskGvtEdqG6fBIPwe-mw">
- <body>MessageKind is an enumeration of the following values:
-
-- complete = sendEvent and receiveEvent are present
-
-- lost = sendEvent present and receiveEvent absent
-
-- found = sendEvent absent and receiveEvent present
-
-- unknown = sendEvent and receiveEvent absent (should not appear)</body>
- </ownedComment>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g9ny58WCEdqI1bY5Lwi8Hg" name="complete">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny6MWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny58WCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCwtxmEdqEPrOCkNZ5Vg" annotatedElement="_Y_jskGvtEdqG6fBIPwe-mw">
+ <body>MessageKind is an enumeration of the following values:&#xD;
+ - complete = sendEvent and receiveEvent are present&#xD;
+ - lost = sendEvent present and receiveEvent absent&#xD;
+ - found = sendEvent absent and receiveEvent present&#xD;
+ - unknown = sendEvent and receiveEvent absent (should not appear)</body>
+ </ownedComment>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MzkCw9xmEdqEPrOCkNZ5Vg" name="complete">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCxNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCw9xmEdqEPrOCkNZ5Vg">
<body>sendEvent and receiveEvent are present</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g9ny6cWCEdqI1bY5Lwi8Hg" name="lost">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny6sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny6cWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MzkCxdxmEdqEPrOCkNZ5Vg" name="lost">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCxtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCxdxmEdqEPrOCkNZ5Vg">
<body>sendEvent present and receiveEvent absent</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g9ny68WCEdqI1bY5Lwi8Hg" name="found">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny7MWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny68WCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MzkCx9xmEdqEPrOCkNZ5Vg" name="found">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCyNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCx9xmEdqEPrOCkNZ5Vg">
<body>sendEvent absent and receiveEvent present</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g9ny7cWCEdqI1bY5Lwi8Hg" name="unknown">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny7sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny7cWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MzkCydxmEdqEPrOCkNZ5Vg" name="unknown">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCytxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCydxmEdqEPrOCkNZ5Vg">
<body>sendEvent and receiveEvent absent (should not appear)</body>
</ownedComment>
</ownedLiteral>
</packagedElement>
- <packagedElement xmi:type="uml:Enumeration" xmi:id="_g9ny78WCEdqI1bY5Lwi8Hg" name="MessageSort">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny8MWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny78WCEdqI1bY5Lwi8Hg">
- <body>MessageSort is an enumeration of the following values:
-
-- synchCall = the message was generated by a synchronous call to an operation
-
-- asynchCall = the message was generated by an asynchronous call to an operation; i.e., a CallAction with isSynchronous= false
-
-- asynchSignal = the message was generated by an asynchronous send action
-
-- createMessage = the message designating the creation of another lifeline object
-
-- deleteMessage = the message designating the termination of anther lifeline
-
-- reply = the message is a reply message to an operation call</body>
- </ownedComment>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g9ny8cWCEdqI1bY5Lwi8Hg" name="synchCall">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny8sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny8cWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_MzkCy9xmEdqEPrOCkNZ5Vg" name="MessageSort">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCzNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCy9xmEdqEPrOCkNZ5Vg">
+ <body>MessageSort is an enumeration of the following values:&#xD;
+ - synchCall = the message was generated by a synchronous call to an operation&#xD;
+ - asynchCall = the message was generated by an asynchronous call to an operation; i.e., a CallAction for which isSynchronous is false&#xD;
+ - asynchSignal = the message was generated by an asynchronous send action&#xD;
+ - createMessage = the message designating the creation of another lifeline object&#xD;
+ - deleteMessage = the message designating the termination of anther lifeline&#xD;
+ - reply = the message is a reply message to an operation call</body>
+ </ownedComment>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MzkCzdxmEdqEPrOCkNZ5Vg" name="synchCall">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkCztxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCzdxmEdqEPrOCkNZ5Vg">
<body>The message was generated by a synchronous call to an operation.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g9ny88WCEdqI1bY5Lwi8Hg" name="asynchCall">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny9MWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny88WCEdqI1bY5Lwi8Hg">
- <body>The message was generated by an asynchronous call to an operation; i.e., a CallAction with isSynchronous
-
-= false.
-
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MzkCz9xmEdqEPrOCkNZ5Vg" name="asynchCall">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkC0NxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkCz9xmEdqEPrOCkNZ5Vg">
+ <body>The message was generated by an asynchronous call to an operation; i.e., a CallAction with isSynchronous&#xD;
+= false.&#xD;
</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g9ny9cWCEdqI1bY5Lwi8Hg" name="asynchSignal">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny9sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny9cWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MzkC0dxmEdqEPrOCkNZ5Vg" name="asynchSignal">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkC0txmEdqEPrOCkNZ5Vg" annotatedElement="_MzkC0dxmEdqEPrOCkNZ5Vg">
<body>The message was generated by an asynchronous send action.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g9ny98WCEdqI1bY5Lwi8Hg" name="createMessage">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny-MWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny98WCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MzkC09xmEdqEPrOCkNZ5Vg" name="createMessage">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkC1NxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkC09xmEdqEPrOCkNZ5Vg">
<body>The message designating the creation of another lifeline object.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g9ny-cWCEdqI1bY5Lwi8Hg" name="deleteMessage">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny-sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny-cWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MzkC1dxmEdqEPrOCkNZ5Vg" name="deleteMessage">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkC1txmEdqEPrOCkNZ5Vg" annotatedElement="_MzkC1dxmEdqEPrOCkNZ5Vg">
<body>The message designating the termination of another lifeline.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g9ny-8WCEdqI1bY5Lwi8Hg" name="reply">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny_MWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny-8WCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MzkC19xmEdqEPrOCkNZ5Vg" name="reply">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkC2NxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkC19xmEdqEPrOCkNZ5Vg">
<body>The message is a reply message to an operation call.</body>
</ownedComment>
</ownedLiteral>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9ny_cWCEdqI1bY5Lwi8Hg" name="A_covered_coveredBy" memberEnd="_g9eBnMWCEdqI1bY5Lwi8Hg _g9eBr8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9ny_sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny_cWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzkC2dxmEdqEPrOCkNZ5Vg" name="A_covered_coveredBy" memberEnd="_MzaRhNxmEdqEPrOCkNZ5Vg _MzaRcdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkC2txmEdqEPrOCkNZ5Vg" annotatedElement="_MzkC2dxmEdqEPrOCkNZ5Vg">
<body>This association shows the lifelines that make up an interaction. A lifeline may be part of more than one interaction use.</body>
</ownedComment>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9ny_8WCEdqI1bY5Lwi8Hg" name="A_executionSpecification_start" memberEnd="_g9eCAcWCEdqI1bY5Lwi8Hg _g9nzAcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nzAMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9ny_8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzkC29xmEdqEPrOCkNZ5Vg" name="A_executionSpecification_start" memberEnd="_MzkCStxmEdqEPrOCkNZ5Vg _MzkC3dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkC3NxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkC29xmEdqEPrOCkNZ5Vg">
<body>The event shows the time point at which the action begins execution.</body>
</ownedComment>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9nzAcWCEdqI1bY5Lwi8Hg" type="_g9eB-8WCEdqI1bY5Lwi8Hg" association="_g9ny_8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9nzAsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9nzA8WCEdqI1bY5Lwi8Hg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MzkC3dxmEdqEPrOCkNZ5Vg" type="_MzkCRNxmEdqEPrOCkNZ5Vg" association="_MzkC29xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkC3txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkC39xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9nzBMWCEdqI1bY5Lwi8Hg" name="A_executionSpecification_finish" memberEnd="_g9eCBcWCEdqI1bY5Lwi8Hg _g9nzBsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nzBcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nzBMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzkC4NxmEdqEPrOCkNZ5Vg" name="A_executionSpecification_finish" memberEnd="_MzkCTtxmEdqEPrOCkNZ5Vg _MzkC4txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzkC4dxmEdqEPrOCkNZ5Vg" annotatedElement="_MzkC4NxmEdqEPrOCkNZ5Vg">
<body>The event shows the time point at which the action completes execution.</body>
</ownedComment>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9nzBsWCEdqI1bY5Lwi8Hg" type="_g9eB-8WCEdqI1bY5Lwi8Hg" association="_g9nzBMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9nzB8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9nzCMWCEdqI1bY5Lwi8Hg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MzkC4txmEdqEPrOCkNZ5Vg" type="_MzkCRNxmEdqEPrOCkNZ5Vg" association="_MzkC4NxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzkC49xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzkC5NxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9nzCcWCEdqI1bY5Lwi8Hg" name="A_lifeline_represents" memberEnd="_g9eBoMWCEdqI1bY5Lwi8Hg _g9nzC8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9nzCsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9nzCcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMMNxmEdqEPrOCkNZ5Vg" name="A_lifeline_represents" memberEnd="_MzaRddxmEdqEPrOCkNZ5Vg _MztMMtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MztMMdxmEdqEPrOCkNZ5Vg" annotatedElement="_MztMMNxmEdqEPrOCkNZ5Vg">
<body>If a Part has multiplicity, multiple lifelines might be used to show it.</body>
</ownedComment>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9nzC8WCEdqI1bY5Lwi8Hg" type="_g9eBkMWCEdqI1bY5Lwi8Hg" association="_g9nzCcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9nzDMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9nzDcWCEdqI1bY5Lwi8Hg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMMtxmEdqEPrOCkNZ5Vg" type="_MzaRZdxmEdqEPrOCkNZ5Vg" association="_MztMMNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMM9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMNNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjkMWCEdqI1bY5Lwi8Hg" name="A_lifeline_interaction" memberEnd="_g9eBpMWCEdqI1bY5Lwi8Hg _g9U3xsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9xjkcWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMNdxmEdqEPrOCkNZ5Vg" name="A_lifeline_interaction" memberEnd="_MzaRedxmEdqEPrOCkNZ5Vg _MzaRVdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MztMNtxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjksWCEdqI1bY5Lwi8Hg" name="A_receiveEvent_message" memberEnd="_g9eB2MWCEdqI1bY5Lwi8Hg _g9xjk8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xjk8WCEdqI1bY5Lwi8Hg" type="_gfgNwGveEdq4DLWZOhbdEA" association="_g9xjksWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xjlMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xjlcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMN9xmEdqEPrOCkNZ5Vg" name="A_receiveEvent_message" memberEnd="_MzaRrdxmEdqEPrOCkNZ5Vg _MztMONxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMONxmEdqEPrOCkNZ5Vg" type="_gfgNwGveEdq4DLWZOhbdEA" association="_MztMN9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMOdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMOtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjlsWCEdqI1bY5Lwi8Hg" name="A_sendEvent_message" memberEnd="_g9eB3MWCEdqI1bY5Lwi8Hg _g9xjl8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xjl8WCEdqI1bY5Lwi8Hg" type="_gfgNwGveEdq4DLWZOhbdEA" association="_g9xjlsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xjmMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xjmcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMO9xmEdqEPrOCkNZ5Vg" name="A_sendEvent_message" memberEnd="_MzaRsdxmEdqEPrOCkNZ5Vg _MztMPNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMPNxmEdqEPrOCkNZ5Vg" type="_gfgNwGveEdq4DLWZOhbdEA" association="_MztMO9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMPdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMPtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjmsWCEdqI1bY5Lwi8Hg" name="A_events_covered" memberEnd="_g9eCDMWCEdqI1bY5Lwi8Hg _g9xjnMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9xjm8WCEdqI1bY5Lwi8Hg" general="_g9ny_cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xjnMWCEdqI1bY5Lwi8Hg" name="events" type="_g9eCCcWCEdqI1bY5Lwi8Hg" isOrdered="true" association="_g9xjmsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xjncWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xjnsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMP9xmEdqEPrOCkNZ5Vg" name="A_events_covered" memberEnd="_MzkCVdxmEdqEPrOCkNZ5Vg _MztMQdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MztMQNxmEdqEPrOCkNZ5Vg" general="_MzkC2dxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMQdxmEdqEPrOCkNZ5Vg" name="events" type="_MzkCUtxmEdqEPrOCkNZ5Vg" isOrdered="true" association="_MztMP9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMQtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMQ9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjn8WCEdqI1bY5Lwi8Hg" name="A_selector_lifeline" memberEnd="_g9eBqMWCEdqI1bY5Lwi8Hg _g9xjocWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9xjoMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xjocWCEdqI1bY5Lwi8Hg" type="_g9eBkMWCEdqI1bY5Lwi8Hg" association="_g9xjn8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xjosWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xjo8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMRNxmEdqEPrOCkNZ5Vg" name="A_selector_lifeline" memberEnd="_MzaRfdxmEdqEPrOCkNZ5Vg _MztMRtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MztMRdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMRtxmEdqEPrOCkNZ5Vg" type="_MzaRZdxmEdqEPrOCkNZ5Vg" association="_MztMRNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMR9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMSNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjpMWCEdqI1bY5Lwi8Hg" name="A_connector_message" memberEnd="_g9eB4MWCEdqI1bY5Lwi8Hg _g9xjpcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xjpcWCEdqI1bY5Lwi8Hg" type="_gfgNwGveEdq4DLWZOhbdEA" association="_g9xjpMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xjpsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xjp8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMSdxmEdqEPrOCkNZ5Vg" name="A_connector_message" memberEnd="_MzaRtdxmEdqEPrOCkNZ5Vg _MztMStxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMStxmEdqEPrOCkNZ5Vg" type="_gfgNwGveEdq4DLWZOhbdEA" association="_MztMSdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMS9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMTNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjqMWCEdqI1bY5Lwi8Hg" name="A_message_interaction" memberEnd="_g9U3ysWCEdqI1bY5Lwi8Hg _g9eB5MWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9xjqcWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMTdxmEdqEPrOCkNZ5Vg" name="A_message_interaction" memberEnd="_MzaRWdxmEdqEPrOCkNZ5Vg _MzaRudxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MztMTtxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjqsWCEdqI1bY5Lwi8Hg" name="A_before_toAfter" memberEnd="_g9eCEMWCEdqI1bY5Lwi8Hg _g9eB88WCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjq8WCEdqI1bY5Lwi8Hg" name="A_toBefore_after" memberEnd="_g9eB98WCEdqI1bY5Lwi8Hg _g9eCFMWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjrMWCEdqI1bY5Lwi8Hg" name="A_argument_message" memberEnd="_g9eB6MWCEdqI1bY5Lwi8Hg _g9xjrsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9xjrcWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xjrsWCEdqI1bY5Lwi8Hg" type="_gfgNwGveEdq4DLWZOhbdEA" association="_g9xjrMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xjr8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xjsMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMT9xmEdqEPrOCkNZ5Vg" name="A_before_toAfter" memberEnd="_MzaRyNxmEdqEPrOCkNZ5Vg _MzkCWdxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMUNxmEdqEPrOCkNZ5Vg" name="A_toBefore_after" memberEnd="_MzkCXdxmEdqEPrOCkNZ5Vg _MzkCQNxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMUdxmEdqEPrOCkNZ5Vg" name="A_argument_message" memberEnd="_MzaRvdxmEdqEPrOCkNZ5Vg _MztMU9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MztMUtxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMU9xmEdqEPrOCkNZ5Vg" type="_gfgNwGveEdq4DLWZOhbdEA" association="_MztMUdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMVNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMVdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjscWCEdqI1bY5Lwi8Hg" name="A_invariant_stateInvariant" memberEnd="_g9nyk8WCEdqI1bY5Lwi8Hg _g9xjs8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9xjssWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xjs8WCEdqI1bY5Lwi8Hg" type="_g9nykMWCEdqI1bY5Lwi8Hg" association="_g9xjscWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMVtxmEdqEPrOCkNZ5Vg" name="A_invariant_stateInvariant" memberEnd="_MzkCb9xmEdqEPrOCkNZ5Vg _MztMWNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MztMV9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMWNxmEdqEPrOCkNZ5Vg" type="_MzkCbNxmEdqEPrOCkNZ5Vg" association="_MztMVtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjtMWCEdqI1bY5Lwi8Hg" name="A_stateInvariant_covered" memberEnd="_g9nyl8WCEdqI1bY5Lwi8Hg _g9xjtsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9xjtcWCEdqI1bY5Lwi8Hg" general="_g9ny_cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xjtsWCEdqI1bY5Lwi8Hg" name="stateInvariant" type="_g9nykMWCEdqI1bY5Lwi8Hg" association="_g9xjtMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xjt8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xjuMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMWdxmEdqEPrOCkNZ5Vg" name="A_stateInvariant_covered" memberEnd="_MzkCc9xmEdqEPrOCkNZ5Vg _MztMW9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MztMWtxmEdqEPrOCkNZ5Vg" general="_MzkC2dxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMW9xmEdqEPrOCkNZ5Vg" name="stateInvariant" type="_MzkCbNxmEdqEPrOCkNZ5Vg" association="_MztMWdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMXNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMXdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjucWCEdqI1bY5Lwi8Hg" name="A_generalOrdering_interactionFragment" memberEnd="_g9eBs8WCEdqI1bY5Lwi8Hg _g9xju8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9xjusWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xju8WCEdqI1bY5Lwi8Hg" type="_g9eBrMWCEdqI1bY5Lwi8Hg" association="_g9xjucWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xjvMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xjvcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMXtxmEdqEPrOCkNZ5Vg" name="A_generalOrdering_interactionFragment" memberEnd="_MzaRiNxmEdqEPrOCkNZ5Vg _MztMYNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MztMX9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMYNxmEdqEPrOCkNZ5Vg" type="_MzaRgdxmEdqEPrOCkNZ5Vg" association="_MztMXtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMYdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMYtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjvsWCEdqI1bY5Lwi8Hg" name="A_enclosingInteraction_fragment" memberEnd="_g9eBt8WCEdqI1bY5Lwi8Hg _g9U3zsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9xjv8WCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMY9xmEdqEPrOCkNZ5Vg" name="A_enclosingInteraction_fragment" memberEnd="_MzaRjNxmEdqEPrOCkNZ5Vg _MzaRXdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MztMZNxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjwMWCEdqI1bY5Lwi8Hg" name="A_behavior_behaviorExecutionSpecification" memberEnd="_g9nyqMWCEdqI1bY5Lwi8Hg _g9xjwcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xjwcWCEdqI1bY5Lwi8Hg" type="_g9nypcWCEdqI1bY5Lwi8Hg" association="_g9xjwMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMZdxmEdqEPrOCkNZ5Vg" name="A_behavior_behaviorExecutionSpecification" memberEnd="_MzkChNxmEdqEPrOCkNZ5Vg _MztMZtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMZtxmEdqEPrOCkNZ5Vg" type="_MzkCgdxmEdqEPrOCkNZ5Vg" association="_MztMZdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjwsWCEdqI1bY5Lwi8Hg" name="A_action_actionExecutionSpecification" memberEnd="_g9nyocWCEdqI1bY5Lwi8Hg _g9xjw8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xjw8WCEdqI1bY5Lwi8Hg" type="_g9nym8WCEdqI1bY5Lwi8Hg" association="_g9xjwsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xjxMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xjxcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMZ9xmEdqEPrOCkNZ5Vg" name="A_action_actionExecutionSpecification" memberEnd="_MzkCfdxmEdqEPrOCkNZ5Vg _MztMaNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMaNxmEdqEPrOCkNZ5Vg" type="_MzkCd9xmEdqEPrOCkNZ5Vg" association="_MztMZ9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMadxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMatxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjxsWCEdqI1bY5Lwi8Hg" name="A_signature_message" memberEnd="_g9eB7MWCEdqI1bY5Lwi8Hg _g9xjx8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xjx8WCEdqI1bY5Lwi8Hg" type="_gfgNwGveEdq4DLWZOhbdEA" association="_g9xjxsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMa9xmEdqEPrOCkNZ5Vg" name="A_signature_message" memberEnd="_MzaRwdxmEdqEPrOCkNZ5Vg _MztMbNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMbNxmEdqEPrOCkNZ5Vg" type="_gfgNwGveEdq4DLWZOhbdEA" association="_MztMa9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjyMWCEdqI1bY5Lwi8Hg" name="A_operation_sendOperationEvent" memberEnd="_g9nyvsWCEdqI1bY5Lwi8Hg _g9xjycWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xjycWCEdqI1bY5Lwi8Hg" type="_g9nyu8WCEdqI1bY5Lwi8Hg" association="_g9xjyMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xjysWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xjy8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMbdxmEdqEPrOCkNZ5Vg" name="A_operation_sendOperationEvent" memberEnd="_MzkCmtxmEdqEPrOCkNZ5Vg _MztMbtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMbtxmEdqEPrOCkNZ5Vg" type="_MzkCl9xmEdqEPrOCkNZ5Vg" association="_MztMbdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMb9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMcNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xjzMWCEdqI1bY5Lwi8Hg" name="A_signal_sendSignalEvent" memberEnd="_g9nyxcWCEdqI1bY5Lwi8Hg _g9xjzcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xjzcWCEdqI1bY5Lwi8Hg" type="_g9nywsWCEdqI1bY5Lwi8Hg" association="_g9xjzMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xjzsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xjz8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMcdxmEdqEPrOCkNZ5Vg" name="A_signal_sendSignalEvent" memberEnd="_MzkCodxmEdqEPrOCkNZ5Vg _MztMctxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMctxmEdqEPrOCkNZ5Vg" type="_MzkCntxmEdqEPrOCkNZ5Vg" association="_MztMcdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMc9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMdNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xj0MWCEdqI1bY5Lwi8Hg" name="A_message_messageEnd" memberEnd="_g9eCH8WCEdqI1bY5Lwi8Hg _g9xj0cWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xj0cWCEdqI1bY5Lwi8Hg" type="_g9eCHMWCEdqI1bY5Lwi8Hg" association="_g9xj0MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xj0sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xj08WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMddxmEdqEPrOCkNZ5Vg" name="A_message_messageEnd" memberEnd="_MzkCaNxmEdqEPrOCkNZ5Vg _MztMdtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMdtxmEdqEPrOCkNZ5Vg" type="_MzkCZdxmEdqEPrOCkNZ5Vg" association="_MztMddxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMd9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMeNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xj1MWCEdqI1bY5Lwi8Hg" name="A_event_occurrenceSpecification" memberEnd="_g9eCGMWCEdqI1bY5Lwi8Hg _g9xj1cWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xj1cWCEdqI1bY5Lwi8Hg" type="_g9eCCcWCEdqI1bY5Lwi8Hg" association="_g9xj1MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xj1sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xj18WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMedxmEdqEPrOCkNZ5Vg" name="A_event_occurrenceSpecification" memberEnd="_MzkCYdxmEdqEPrOCkNZ5Vg _MztMetxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMetxmEdqEPrOCkNZ5Vg" type="_MzkCUtxmEdqEPrOCkNZ5Vg" association="_MztMedxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMe9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMfNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xj2MWCEdqI1bY5Lwi8Hg" name="A_action_interaction" memberEnd="_g9U30sWCEdqI1bY5Lwi8Hg _g9xj2sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g9xj2cWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xj2sWCEdqI1bY5Lwi8Hg" type="_g9U3wsWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g9xj2MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xj28WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xj3MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMfdxmEdqEPrOCkNZ5Vg" name="A_action_interaction" memberEnd="_MzaRYdxmEdqEPrOCkNZ5Vg _MztMf9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MztMftxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMf9xmEdqEPrOCkNZ5Vg" type="_MzaRUdxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MztMfdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMgNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMgdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9xj3cWCEdqI1bY5Lwi8Hg" name="A_execution_executionOccurrenceSpecification" memberEnd="_g9ny0MWCEdqI1bY5Lwi8Hg _g9xj3sWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g9xj3sWCEdqI1bY5Lwi8Hg" type="_g9nyzcWCEdqI1bY5Lwi8Hg" association="_g9xj3cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9xj38WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9xj4MWCEdqI1bY5Lwi8Hg" value="1"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMgtxmEdqEPrOCkNZ5Vg" name="A_execution_executionOccurrenceSpecification" memberEnd="_MzkCrNxmEdqEPrOCkNZ5Vg _MztMg9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMg9xmEdqEPrOCkNZ5Vg" type="_MzkCqdxmEdqEPrOCkNZ5Vg" association="_MztMgtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMhNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMhdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g96tgMWCEdqI1bY5Lwi8Hg" name="A_event_executionOccurrenceSpecification" memberEnd="_g9ny1MWCEdqI1bY5Lwi8Hg _g96tgsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g96tgcWCEdqI1bY5Lwi8Hg" general="_g9xj1MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g96tgsWCEdqI1bY5Lwi8Hg" type="_g9nyzcWCEdqI1bY5Lwi8Hg" redefinedProperty="_g9xj1cWCEdqI1bY5Lwi8Hg" association="_g96tgMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96tg8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96thMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMhtxmEdqEPrOCkNZ5Vg" name="A_event_executionOccurrenceSpecification" memberEnd="_MzkCsNxmEdqEPrOCkNZ5Vg _MztMiNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MztMh9xmEdqEPrOCkNZ5Vg" general="_MztMedxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMiNxmEdqEPrOCkNZ5Vg" type="_MzkCqdxmEdqEPrOCkNZ5Vg" redefinedProperty="_MztMetxmEdqEPrOCkNZ5Vg" association="_MztMhtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMidxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMitxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g96thcWCEdqI1bY5Lwi8Hg" name="A_operation_receiveOperationEvent" memberEnd="_g9ny28WCEdqI1bY5Lwi8Hg _g96thsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g96thsWCEdqI1bY5Lwi8Hg" type="_g9ny2MWCEdqI1bY5Lwi8Hg" association="_g96thcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96th8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96tiMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMi9xmEdqEPrOCkNZ5Vg" name="A_operation_receiveOperationEvent" memberEnd="_MzkCt9xmEdqEPrOCkNZ5Vg _MztMjNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMjNxmEdqEPrOCkNZ5Vg" type="_MzkCtNxmEdqEPrOCkNZ5Vg" association="_MztMi9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMjdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMjtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g96ticWCEdqI1bY5Lwi8Hg" name="A_signal_receiveSignalEvent" memberEnd="_g9ny4sWCEdqI1bY5Lwi8Hg _g96tisWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g96tisWCEdqI1bY5Lwi8Hg" type="_g9ny38WCEdqI1bY5Lwi8Hg" association="_g96ticWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96ti8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96tjMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MztMj9xmEdqEPrOCkNZ5Vg" name="A_signal_receiveSignalEvent" memberEnd="_MzkCvtxmEdqEPrOCkNZ5Vg _MztMkNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MztMkNxmEdqEPrOCkNZ5Vg" type="_MzkCu9xmEdqEPrOCkNZ5Vg" association="_MztMj9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MztMkdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MztMktxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g96tj8WCEdqI1bY5Lwi8Hg" name="Actor">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96tkMWCEdqI1bY5Lwi8Hg" annotatedElement="_g96tj8WCEdqI1bY5Lwi8Hg">
- <body>An Actor models a type of role played by an entity that interacts with the subject (e.g., by exchanging signals and data), but which is external to the subject (i.e., in the sense that an instance of an actor is not a part of the instance of its corresponding subject). Actors may represent roles played by human users, external hardware, or other subjects. Note that an actor does not necessarily represent a specific physical entity but merely a particular facet (i.e., “role”) of some entity that is relevant to the specification of its associated use cases. Thus, a single physical instance may play the role of several different actors and, conversely, a given actor may be played by multiple different instances.
-
-
-
-Since an actor is external to the subject, it is typically defined in the same classifier or package that incorporates the subject classifier.
-
-</body>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mz29MNxmEdqEPrOCkNZ5Vg" name="Actor">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29MdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29MNxmEdqEPrOCkNZ5Vg">
+ <body>An Actor models a type of role played by an entity that interacts with the subject (e.g., by exchanging signals and data), but which is external to the subject (i.e., in the sense that an instance of an actor is not a part of the instance of its corresponding subject). Actors may represent roles played by human users, external hardware, or other subjects. &#xD;
+Note that an actor does not necessarily represent a specific physical entity but merely a particular facet (i.e., role) of some entity that is relevant to the specification of its associated use cases. Thus, a single physical instance may play the role of several different actors and, conversely, a given actor may be played by multiple different instances.&#xD;
+&#xD;
+Since an actor is external to the subject, it is typically defined in the same classifier or package that incorporates the subject classifier.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g96tkcWCEdqI1bY5Lwi8Hg" name="associations" constrainedElement="_g96tj8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96tksWCEdqI1bY5Lwi8Hg" annotatedElement="_g96tkcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mz29MtxmEdqEPrOCkNZ5Vg" name="associations" constrainedElement="_Mz29MNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29M9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29MtxmEdqEPrOCkNZ5Vg">
<body>An actor can only have associations to use cases, components and classes. Furthermore these associations must be binary.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g96tk8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mz29NNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.ownedAttribute->forAll ( a |&#xA;(a.association->notEmpty()) implies&#xA;((a.association.memberEnd.size() = 2) and&#xA;(a.opposite.class.oclIsKindOf(UseCase) or&#xA;(a.opposite.class.oclIsKindOf(Class) and not a.opposite.class.oclIsKindOf(Behavior))))&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g96tlMWCEdqI1bY5Lwi8Hg" name="must_have_name" constrainedElement="_g96tj8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96tlcWCEdqI1bY5Lwi8Hg" annotatedElement="_g96tlMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mz29NdxmEdqEPrOCkNZ5Vg" name="must_have_name" constrainedElement="_Mz29MNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29NtxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29NdxmEdqEPrOCkNZ5Vg">
<body>An actor must have a name.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g96tlsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mz29N9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>name->notEmpty()</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g96tl8WCEdqI1bY5Lwi8Hg" general="_iY7sMGvsEdqG6fBIPwe-mw"/>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g96tmMWCEdqI1bY5Lwi8Hg" name="Extend">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96tmcWCEdqI1bY5Lwi8Hg" annotatedElement="_g96tmMWCEdqI1bY5Lwi8Hg">
- <body>This relationship specifies that the behavior of a use case may be extended by the behavior of another (usually supplementary) use case. The extension takes place at one or more specific extension points defined in the extended use case. Note, however, that the extended use case is defined independently of the extending use case and is meaningful independently of the extending use case. On the other hand, the extending use case typically defines behavior that may not necessarily be meaningful by itself. Instead, the extending use case defines a set of modular behavior increments that augment an execution of the extended use case under specific conditions.
-
-
-
-Note that the same extending use case can extend more than one use case. Furthermore, an extending use case may itself be extended.
-
-
-
-It is a kind of DirectedRelationship, such that the source is the extending use case and the destination is the extended use case. It is also a kind of NamedElement so that it can have a name in the context of its owning use case. The extend relationship itself is owned by the extending use case.
-
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29ONxmEdqEPrOCkNZ5Vg" general="_iY7sMGvsEdqG6fBIPwe-mw"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mz29OdxmEdqEPrOCkNZ5Vg" name="Extend">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29OtxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29OdxmEdqEPrOCkNZ5Vg">
+ <body>This relationship specifies that the behavior of a use case may be extended by the behavior of another (usually supplementary) use case. The extension takes place at one or more specific extension points defined in the extended use case. Note, however, that the extended use case is defined independently of the extending use case and is meaningful independently of the extending use case. On the other hand, the extending use case typically defines behavior that may not necessarily be meaningful by itself. Instead, the extending use case defines a set of modular behavior increments that augment an execution of the extended use case under specific conditions.&#xD;
+&#xD;
+Note that the same extending use case can extend more than one use case. Furthermore, an extending use case may itself be extended.&#xD;
+&#xD;
+It is a kind of DirectedRelationship, such that the source is the extending use case and the destination is the extended use case. It is also a kind of NamedElement so that it can have a name in the context of its owning use case. The extend relationship itself is owned by the extending use case.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g96tmsWCEdqI1bY5Lwi8Hg" name="extension_points" constrainedElement="_g96tmMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96tm8WCEdqI1bY5Lwi8Hg" annotatedElement="_g96tmsWCEdqI1bY5Lwi8Hg">
- <body>The extension points referenced by the extend relationship must belong to the use case that is being extended.
-
-
-
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mz29O9xmEdqEPrOCkNZ5Vg" name="extension_points" constrainedElement="_Mz29OdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29PNxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29O9xmEdqEPrOCkNZ5Vg">
+ <body>The extension points referenced by the extend relationship must belong to the use case that is being extended.&#xD;
+&#xD;
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g96tnMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mz29PdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>extensionLocation->forAll (xp | extendedCase.extensionPoint->includes(xp))</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g96tncWCEdqI1bY5Lwi8Hg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g96tnsWCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g96tn8WCEdqI1bY5Lwi8Hg" name="extendedCase" type="_g96tu8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DGMWCEdqI1bY5Lwi8Hg" association="_g-EelcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96toMWCEdqI1bY5Lwi8Hg" annotatedElement="_g96tn8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29PtxmEdqEPrOCkNZ5Vg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29P9xmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mz29QNxmEdqEPrOCkNZ5Vg" name="extendedCase" type="_Mz29XNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsGvsdxmEdqEPrOCkNZ5Vg" association="_Mz29ndxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29QdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29QNxmEdqEPrOCkNZ5Vg">
<body>References the use case that is being extended.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96tocWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96tosWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29QtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29Q9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g96to8WCEdqI1bY5Lwi8Hg" name="extension" type="_g96tu8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DFMWCEdqI1bY5Lwi8Hg" association="_g-EemsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96tpMWCEdqI1bY5Lwi8Hg" annotatedElement="_g96to8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mz29RNxmEdqEPrOCkNZ5Vg" name="extension" type="_Mz29XNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsGvrdxmEdqEPrOCkNZ5Vg" association="_Mz29otxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29RdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29RNxmEdqEPrOCkNZ5Vg">
<body>References the use case that represents the extension and owns the extend relationship.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96tpcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96tpsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29RtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29R9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g96tp8WCEdqI1bY5Lwi8Hg" name="condition" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g-Een8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96tqMWCEdqI1bY5Lwi8Hg" annotatedElement="_g96tp8WCEdqI1bY5Lwi8Hg">
- <body>References the condition that must hold when the first extension point is reached for the extension to take place. If no constraint is associated with the extend relationship, the extension is unconditional.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mz29SNxmEdqEPrOCkNZ5Vg" name="condition" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_Mz29p9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29SdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29SNxmEdqEPrOCkNZ5Vg">
+ <body>References the condition that must hold when the first extension point is reached for the extension to take place. If no constraint is associated with the extend relationship, the extension is unconditional.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96tqcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96tqsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29StxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29S9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g96tq8WCEdqI1bY5Lwi8Hg" name="extensionLocation" type="_g96t4cWCEdqI1bY5Lwi8Hg" isOrdered="true" association="_g-EepMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96trMWCEdqI1bY5Lwi8Hg" annotatedElement="_g96tq8WCEdqI1bY5Lwi8Hg">
- <body>An ordered list of extension points belonging to the extended use case, specifying where the respective behavioral fragments of the extending use case are to be inserted. The first fragment in the extending use case is associated with the first extension point in the list, the second fragment with the second point, and so on. (Note that, in most practical cases, the extending use case has just a single behavior fragment, so that the list of extension points is trivial.)
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mz29TNxmEdqEPrOCkNZ5Vg" name="extensionLocation" type="_Mz29gtxmEdqEPrOCkNZ5Vg" isOrdered="true" association="_Mz29rNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29TdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29TNxmEdqEPrOCkNZ5Vg">
+ <body>An ordered list of extension points belonging to the extended use case, specifying where the respective behavioral fragments of the extending use case are to be inserted. The first fragment in the extending use case is associated with the first extension point in the list, the second fragment with the second point, and so on. (Note that, in most practical cases, the extending use case has just a single behavior fragment, so that the list of extension points is trivial.)&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96trcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96trsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29TtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29T9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g96tr8WCEdqI1bY5Lwi8Hg" name="Include">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96tsMWCEdqI1bY5Lwi8Hg" annotatedElement="_g96tr8WCEdqI1bY5Lwi8Hg">
- <body>Note that the included use case is not optional, and is always required for the including use case to execute correctly.
-
-
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mz29UNxmEdqEPrOCkNZ5Vg" name="Include">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29UdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29UNxmEdqEPrOCkNZ5Vg">
+ <body>Note that the included use case is not optional, and is always required for the including use case to execute correctly.&#xD;
+&#xD;
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g96tscWCEdqI1bY5Lwi8Hg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g96tssWCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g96ts8WCEdqI1bY5Lwi8Hg" name="includingCase" type="_g96tu8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DFMWCEdqI1bY5Lwi8Hg" association="_g-EejcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96ttMWCEdqI1bY5Lwi8Hg" annotatedElement="_g96ts8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29UtxmEdqEPrOCkNZ5Vg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29U9xmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mz29VNxmEdqEPrOCkNZ5Vg" name="includingCase" type="_Mz29XNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsGvrdxmEdqEPrOCkNZ5Vg" association="_Mz29ldxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29VdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29VNxmEdqEPrOCkNZ5Vg">
<body>References the use case which will include the addition and owns the include relationship.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96ttcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96ttsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29VtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29V9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g96tt8WCEdqI1bY5Lwi8Hg" name="addition" type="_g96tu8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DGMWCEdqI1bY5Lwi8Hg" association="_g-EekMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96tuMWCEdqI1bY5Lwi8Hg" annotatedElement="_g96tt8WCEdqI1bY5Lwi8Hg">
- <body>References the use case that is to be included.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mz29WNxmEdqEPrOCkNZ5Vg" name="addition" type="_Mz29XNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsGvsdxmEdqEPrOCkNZ5Vg" association="_Mz29mNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29WdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29WNxmEdqEPrOCkNZ5Vg">
+ <body>References the use case that is to be included.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96tucWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96tusWCEdqI1bY5Lwi8Hg" value="1"/>
- </ownedAttribute>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g96tu8WCEdqI1bY5Lwi8Hg" name="UseCase">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96tvMWCEdqI1bY5Lwi8Hg" annotatedElement="_g96tu8WCEdqI1bY5Lwi8Hg">
- <body>A UseCase is a kind of behaviored classifier that represents a declaration of an offered behavior. Each use case specifies some behavior, possibly including variants, that the subject can perform in collaboration with one or more actors. Use cases define the offered behavior of the subject without reference to its internal structure. These behaviors, involving
-
-interactions between the actor and the subject, may result in changes to the state of the subject and communications with its environment. A use case can include possible variations of its basic behavior, including exceptional behavior and error handling.
-
-
-
-The subject of a use case could be a physical system or any other element that may have behavior, such as a component, subsystem or class. Each use case specifies a unit of useful functionality that the subject provides to its users, i.e., a specific way of interacting with the subject. This functionality, which is initiated by an actor, must always be completed for the use case to complete. It is deemed complete if, after its execution, the subject will be in a state in which no further inputs or actions are expected and the use case can be initiated again or in an error state.
-
-
-
-Use cases can be used both for specification of the (external) requirements on a subject and for the specification of the functionality offered by a subject. Moreover, the use cases also state the requirements the specified subject poses on its environment by defining how they should interact with the subject so that it will be able to perform its services.
-
-
-
-The behavior of a use case can be described by a specification that is some kind of Behavior (through its ownedBehavior relationship), such as interactions, activities, and state machines, or by pre-conditions and post-conditions as well as by natural language text where appropriate. It may also be described indirectly through a Collaboration that uses the use case and its actors as the classifiers that type its parts. Which of these techniques to use depends on the nature of the use case behavior as well as on the intended reader. These descriptions can be combined.
-
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29WtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29W9xmEdqEPrOCkNZ5Vg" value="1"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mz29XNxmEdqEPrOCkNZ5Vg" name="UseCase">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29XdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29XNxmEdqEPrOCkNZ5Vg">
+ <body>A UseCase is a kind of behaviored classifier that represents a declaration of an offered behavior. Each use case specifies some behavior, possibly including variants, that the subject can perform in collaboration with one or more actors. Use cases define the offered behavior of the subject without reference to its internal structure. These behaviors, involving&#xD;
+interactions between the actor and the subject, may result in changes to the state of the subject and communications with its environment. A use case can include possible variations of its basic behavior, including exceptional behavior and error handling.&#xD;
+&#xD;
+The subject of a use case could be a physical system or any other element that may have behavior, such as a component, subsystem or class. Each use case specifies a unit of useful functionality that the subject provides to its users, i.e., a specific way of interacting with the subject. This functionality, which is initiated by an actor, must always be completed for the use case to complete. It is deemed complete if, after its execution, the subject will be in a state in which no further inputs or actions are expected and the use case can be initiated again or in an error state.&#xD;
+&#xD;
+Use cases can be used both for specification of the (external) requirements on a subject and for the specification of the functionality offered by a subject. Moreover, the use cases also state the requirements the specified subject poses on its environment by defining how they should interact with the subject so that it will be able to perform its services.&#xD;
+&#xD;
+The behavior of a use case can be described by a specification that is some kind of Behavior (through its ownedBehavior relationship), such as interactions, activities, and state machines, or by pre-conditions and post-conditions as well as by natural language text where appropriate. It may also be described indirectly through a Collaboration that uses the use case and its actors as the classifiers that type its parts. Which of these techniques to use depends on the nature of the use case behavior as well as on the intended reader. These descriptions can be combined.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g96tvcWCEdqI1bY5Lwi8Hg" name="must_have_name" constrainedElement="_g96tu8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96tvsWCEdqI1bY5Lwi8Hg" annotatedElement="_g96tvcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mz29XtxmEdqEPrOCkNZ5Vg" name="must_have_name" constrainedElement="_Mz29XNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29X9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29XtxmEdqEPrOCkNZ5Vg">
<body>A UseCase must have a name.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g96tv8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mz29YNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.name -> notEmpty ()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g96twMWCEdqI1bY5Lwi8Hg" name="binary_associations" constrainedElement="_g96tu8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96twcWCEdqI1bY5Lwi8Hg" annotatedElement="_g96twMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mz29YdxmEdqEPrOCkNZ5Vg" name="binary_associations" constrainedElement="_Mz29XNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29YtxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29YdxmEdqEPrOCkNZ5Vg">
<body>UseCases can only be involved in binary Associations.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g96twsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mz29Y9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g96tw8WCEdqI1bY5Lwi8Hg" name="no_association_to_use_case" constrainedElement="_g96tu8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96txMWCEdqI1bY5Lwi8Hg" annotatedElement="_g96tw8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mz29ZNxmEdqEPrOCkNZ5Vg" name="no_association_to_use_case" constrainedElement="_Mz29XNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29ZdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29ZNxmEdqEPrOCkNZ5Vg">
<body>UseCases can not have Associations to UseCases specifying the same subject.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g96txcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mz29ZtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g96txsWCEdqI1bY5Lwi8Hg" name="cannot_include_self" constrainedElement="_g96tu8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96tx8WCEdqI1bY5Lwi8Hg" annotatedElement="_g96txsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mz29Z9xmEdqEPrOCkNZ5Vg" name="cannot_include_self" constrainedElement="_Mz29XNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29aNxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29Z9xmEdqEPrOCkNZ5Vg">
<body>A use case cannot include use cases that directly or indirectly include it.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g96tyMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mz29adxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>not self.allIncludedUseCases()->includes(self)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g96tycWCEdqI1bY5Lwi8Hg" general="_iY7sMGvsEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g96tysWCEdqI1bY5Lwi8Hg" name="include" type="_g96tr8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g-EejcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96ty8WCEdqI1bY5Lwi8Hg" annotatedElement="_g96tysWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29atxmEdqEPrOCkNZ5Vg" general="_iY7sMGvsEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mz29a9xmEdqEPrOCkNZ5Vg" name="include" type="_Mz29UNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_Mz29ldxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29bNxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29a9xmEdqEPrOCkNZ5Vg">
<body>References the Include relationships owned by this use case.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96tzMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96tzcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29bdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29btxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g96tzsWCEdqI1bY5Lwi8Hg" name="extend" type="_g96tmMWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g-EemsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96tz8WCEdqI1bY5Lwi8Hg" annotatedElement="_g96tzsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mz29b9xmEdqEPrOCkNZ5Vg" name="extend" type="_Mz29OdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_Mz29otxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29cNxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29b9xmEdqEPrOCkNZ5Vg">
<body>References the Extend relationships owned by this use case.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96t0MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96t0cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29cdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29ctxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g96t0sWCEdqI1bY5Lwi8Hg" name="extensionPoint" type="_g96t4cWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g-EencWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96t08WCEdqI1bY5Lwi8Hg" annotatedElement="_g96t0sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mz29c9xmEdqEPrOCkNZ5Vg" name="extensionPoint" type="_Mz29gtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_Mz29pdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29dNxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29c9xmEdqEPrOCkNZ5Vg">
<body>References the ExtensionPoints owned by the use case.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96t1MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96t1cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29ddxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29dtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g96t1sWCEdqI1bY5Lwi8Hg" name="subject" type="_6UV2QGwJEdq7X4sGURiZYA" association="_g-EercWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96t18WCEdqI1bY5Lwi8Hg" annotatedElement="_g96t1sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mz29d9xmEdqEPrOCkNZ5Vg" name="subject" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M0AHJdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29eNxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29d9xmEdqEPrOCkNZ5Vg">
<body>References the subjects to which this use case applies. The subject or its parts realize all the use cases that apply to this subject. Use cases need not be attached to any specific subject, however. The subject may, but need not, own the use cases that apply to it.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96t2MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96t2cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29edxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29etxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g96t2sWCEdqI1bY5Lwi8Hg" name="allIncludedUseCases" isQuery="true" bodyCondition="_g96t3MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96t28WCEdqI1bY5Lwi8Hg" annotatedElement="_g96t2sWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Mz29e9xmEdqEPrOCkNZ5Vg" name="allIncludedUseCases" isQuery="true" bodyCondition="_Mz29fdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29fNxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29e9xmEdqEPrOCkNZ5Vg">
<body>The query allIncludedUseCases() returns the transitive closure of all use cases (directly or indirectly) included by this use case.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g96t3MWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g96t2sWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g96t3cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mz29fdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Mz29e9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mz29ftxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = self.include->union(self.include->collect(in | in.allIncludedUseCases()))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g96t3sWCEdqI1bY5Lwi8Hg" type="_g96tu8WCEdqI1bY5Lwi8Hg" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g96t38WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g96t4MWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Mz29f9xmEdqEPrOCkNZ5Vg" type="_Mz29XNxmEdqEPrOCkNZ5Vg" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29gNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29gdxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g96t4cWCEdqI1bY5Lwi8Hg" name="ExtensionPoint">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96t4sWCEdqI1bY5Lwi8Hg" annotatedElement="_g96t4cWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mz29gtxmEdqEPrOCkNZ5Vg" name="ExtensionPoint">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29g9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29gtxmEdqEPrOCkNZ5Vg">
<body>An ExtensionPoint is a feature of a use case that identifies a point where the behavior of a use case can be augmented with elements of another (extending) use case.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g96t48WCEdqI1bY5Lwi8Hg" name="must_have_name" constrainedElement="_g96t4cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g96t5MWCEdqI1bY5Lwi8Hg" annotatedElement="_g96t48WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mz29hNxmEdqEPrOCkNZ5Vg" name="must_have_name" constrainedElement="_Mz29gtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29hdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29hNxmEdqEPrOCkNZ5Vg">
<body>An ExtensionPoint must have a name.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g96t5cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mz29htxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.name->notEmpty ()</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g96t5sWCEdqI1bY5Lwi8Hg" general="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-EegMWCEdqI1bY5Lwi8Hg" name="useCase" type="_g96tu8WCEdqI1bY5Lwi8Hg" association="_g-EencWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-EegcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-EegMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29h9xmEdqEPrOCkNZ5Vg" general="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mz29iNxmEdqEPrOCkNZ5Vg" name="useCase" type="_Mz29XNxmEdqEPrOCkNZ5Vg" association="_Mz29pdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29idxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29iNxmEdqEPrOCkNZ5Vg">
<body>References the use case that owns this extension point.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-EegsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-Eeg8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29itxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29i9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-EejcWCEdqI1bY5Lwi8Hg" name="A_includingCase_include" memberEnd="_g96ts8WCEdqI1bY5Lwi8Hg _g96tysWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-EejsWCEdqI1bY5Lwi8Hg" general="_g2eByMWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-Eej8WCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mz29ldxmEdqEPrOCkNZ5Vg" name="A_includingCase_include" memberEnd="_Mz29VNxmEdqEPrOCkNZ5Vg _Mz29a9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29ltxmEdqEPrOCkNZ5Vg" general="_MtmkXtxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29l9xmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-EekMWCEdqI1bY5Lwi8Hg" name="A_addition_include" memberEnd="_g96tt8WCEdqI1bY5Lwi8Hg _g-EeksWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-EekcWCEdqI1bY5Lwi8Hg" general="_g2eBy8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-EeksWCEdqI1bY5Lwi8Hg" type="_g96tr8WCEdqI1bY5Lwi8Hg" association="_g-EekMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-Eek8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-EelMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mz29mNxmEdqEPrOCkNZ5Vg" name="A_addition_include" memberEnd="_Mz29WNxmEdqEPrOCkNZ5Vg _Mz29mtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29mdxmEdqEPrOCkNZ5Vg" general="_MtmkYdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Mz29mtxmEdqEPrOCkNZ5Vg" type="_Mz29UNxmEdqEPrOCkNZ5Vg" association="_Mz29mNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29m9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29nNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-EelcWCEdqI1bY5Lwi8Hg" name="A_extendedCase_extend" memberEnd="_g96tn8WCEdqI1bY5Lwi8Hg _g-Eel8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-EelsWCEdqI1bY5Lwi8Hg" general="_g2eBy8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-Eel8WCEdqI1bY5Lwi8Hg" type="_g96tmMWCEdqI1bY5Lwi8Hg" association="_g-EelcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-EemMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-EemcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mz29ndxmEdqEPrOCkNZ5Vg" name="A_extendedCase_extend" memberEnd="_Mz29QNxmEdqEPrOCkNZ5Vg _Mz29n9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29ntxmEdqEPrOCkNZ5Vg" general="_MtmkYdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Mz29n9xmEdqEPrOCkNZ5Vg" type="_Mz29OdxmEdqEPrOCkNZ5Vg" association="_Mz29ndxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29oNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29odxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-EemsWCEdqI1bY5Lwi8Hg" name="A_extension_extend" memberEnd="_g96tzsWCEdqI1bY5Lwi8Hg _g96to8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-Eem8WCEdqI1bY5Lwi8Hg" general="_g2eByMWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-EenMWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mz29otxmEdqEPrOCkNZ5Vg" name="A_extension_extend" memberEnd="_Mz29RNxmEdqEPrOCkNZ5Vg _Mz29b9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29o9xmEdqEPrOCkNZ5Vg" general="_MtmkXtxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29pNxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-EencWCEdqI1bY5Lwi8Hg" name="A_extensionPoint_useCase" memberEnd="_g96t0sWCEdqI1bY5Lwi8Hg _g-EegMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-EensWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mz29pdxmEdqEPrOCkNZ5Vg" name="A_extensionPoint_useCase" memberEnd="_Mz29iNxmEdqEPrOCkNZ5Vg _Mz29c9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29ptxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-Een8WCEdqI1bY5Lwi8Hg" name="A_condition_extend" memberEnd="_g96tp8WCEdqI1bY5Lwi8Hg _g-EeocWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-EeoMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-EeocWCEdqI1bY5Lwi8Hg" type="_g96tmMWCEdqI1bY5Lwi8Hg" association="_g-Een8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-EeosWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-Eeo8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mz29p9xmEdqEPrOCkNZ5Vg" name="A_condition_extend" memberEnd="_Mz29SNxmEdqEPrOCkNZ5Vg _Mz29qdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mz29qNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Mz29qdxmEdqEPrOCkNZ5Vg" type="_Mz29OdxmEdqEPrOCkNZ5Vg" association="_Mz29p9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29qtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29q9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-EepMWCEdqI1bY5Lwi8Hg" name="A_extensionLocation_extension" memberEnd="_g96tq8WCEdqI1bY5Lwi8Hg _g-EepcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-EepcWCEdqI1bY5Lwi8Hg" name="extension" type="_g96tmMWCEdqI1bY5Lwi8Hg" association="_g-EepMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-EepsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-Eep8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_Mz29rNxmEdqEPrOCkNZ5Vg" name="A_extensionLocation_extension" memberEnd="_Mz29TNxmEdqEPrOCkNZ5Vg _Mz29rdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Mz29rdxmEdqEPrOCkNZ5Vg" name="extension" type="_Mz29OdxmEdqEPrOCkNZ5Vg" association="_Mz29rNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29rtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29r9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-EeqMWCEdqI1bY5Lwi8Hg" name="A_ownedUseCase_classifier" memberEnd="_g-EehcWCEdqI1bY5Lwi8Hg _g-EeqsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-EeqcWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-EeqsWCEdqI1bY5Lwi8Hg" type="_6UV2QGwJEdq7X4sGURiZYA" association="_g-EeqMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-Eeq8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-EerMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M0AHINxmEdqEPrOCkNZ5Vg" name="A_ownedUseCase_classifier" memberEnd="_Mz29jdxmEdqEPrOCkNZ5Vg _M0AHItxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0AHIdxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M0AHItxmEdqEPrOCkNZ5Vg" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M0AHINxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0AHI9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0AHJNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-EercWCEdqI1bY5Lwi8Hg" name="A_subject_useCase" memberEnd="_g96t1sWCEdqI1bY5Lwi8Hg _g-EeicWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-OPgMWCEdqI1bY5Lwi8Hg" name="CallEvent">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPgcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPgMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Association" xmi:id="_M0AHJdxmEdqEPrOCkNZ5Vg" name="A_subject_useCase" memberEnd="_Mz29kdxmEdqEPrOCkNZ5Vg _Mz29d9xmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_M0AHLNxmEdqEPrOCkNZ5Vg" name="CallEvent">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHLdxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHLNxmEdqEPrOCkNZ5Vg">
<body>A call event represents the reception of a request to invoke a specific operation. A call event is distinct from the call action that caused it. A call event may cause the invocation of a behavior that is the method of the operation referenced by the call request, if that operation is owned or inherited by the classifier that specified the receiver object.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-OPgsWCEdqI1bY5Lwi8Hg" general="_g-OPxcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-OPg8WCEdqI1bY5Lwi8Hg" name="operation" type="_M4X2IGveEdq4DLWZOhbdEA" association="_g-XZfMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPhMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPg8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0AHLtxmEdqEPrOCkNZ5Vg" general="_M0AHcdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M0AHL9xmEdqEPrOCkNZ5Vg" name="operation" type="_M4X2IGveEdq4DLWZOhbdEA" association="_M0wVHNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHMNxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHL9xmEdqEPrOCkNZ5Vg">
<body>Designates the operation whose invocation raised the call event.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-OPhcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-OPhsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0AHMdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0AHMtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-OPh8WCEdqI1bY5Lwi8Hg" name="ChangeEvent">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPiMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPh8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M0AHM9xmEdqEPrOCkNZ5Vg" name="ChangeEvent">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHNNxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHM9xmEdqEPrOCkNZ5Vg">
<body>A change event occurs when a Boolean-valued expression becomes true, for example, as a result of a change in the value held in a slot corresponding to an attribute, or a change in the value referenced by a link corresponding to an association. A change event is raised implicitly and is not the result of an explicit action.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-OPicWCEdqI1bY5Lwi8Hg" general="_g-OPz8WCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-OPisWCEdqI1bY5Lwi8Hg" name="changeExpression" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g-XZk8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPi8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPisWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0AHNdxmEdqEPrOCkNZ5Vg" general="_M0AHe9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M0AHNtxmEdqEPrOCkNZ5Vg" name="changeExpression" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M0wVM9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHN9xmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHNtxmEdqEPrOCkNZ5Vg">
<body>A Boolean-valued expression that will result in a change event whenever its value changes from false to true.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-OPjMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-OPjcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0AHONxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0AHOdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-OPpsWCEdqI1bY5Lwi8Hg" name="Reception">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPp8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPpsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M0AHUtxmEdqEPrOCkNZ5Vg" name="Reception">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHU9xmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHUtxmEdqEPrOCkNZ5Vg">
<body>A reception is a declaration stating that a classifier is prepared to react to the receipt of a signal. A reception designates a signal and specifies the expected behavioral response. The details of handling a signal are specified by the behavior associated with the reception or the classifier itself.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-OPqMWCEdqI1bY5Lwi8Hg" name="not_query" constrainedElement="_g-OPpsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPqcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPqMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M0AHVNxmEdqEPrOCkNZ5Vg" name="not_query" constrainedElement="_M0AHUtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHVdxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHVNxmEdqEPrOCkNZ5Vg">
<body>A Reception can not be a query.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-OPqsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M0AHVtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>not self.isQuery</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-OPq8WCEdqI1bY5Lwi8Hg" general="_rHT3YKOsEdqi_5gqUMOQtA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-OPrMWCEdqI1bY5Lwi8Hg" name="signal" type="_Pu3O0HL0EdqziYxiZo0YtA" association="_g-XZeMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPrcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPrMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0AHV9xmEdqEPrOCkNZ5Vg" general="_rHT3YKOsEdqi_5gqUMOQtA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M0AHWNxmEdqEPrOCkNZ5Vg" name="signal" type="_Pu3O0HL0EdqziYxiZo0YtA" association="_M0wVGNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHWdxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHWNxmEdqEPrOCkNZ5Vg">
<body>The signal that this reception handles.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-OPrsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-OPr8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0AHWtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0AHW9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_Pu3O0HL0EdqziYxiZo0YtA" name="Signal">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPsMWCEdqI1bY5Lwi8Hg" annotatedElement="_Pu3O0HL0EdqziYxiZo0YtA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHXNxmEdqEPrOCkNZ5Vg" annotatedElement="_Pu3O0HL0EdqziYxiZo0YtA">
<body>A signal is a specification of send request instances communicated between objects. The receiving object handles the received request instances as specified by its receptions. The data carried by a send request (which was passed to it by the send invocation occurrence that caused that request) are represented as attributes of the signal. A signal is defined independently of the classifiers handling the signal occurrence.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-OPscWCEdqI1bY5Lwi8Hg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-OPssWCEdqI1bY5Lwi8Hg" name="ownedAttribute" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g0iIAMWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg" association="_g-XZmMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPs8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPssWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0AHXdxmEdqEPrOCkNZ5Vg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M0AHXtxmEdqEPrOCkNZ5Vg" name="ownedAttribute" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_Mrz0ctxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg" association="_M0wVONxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHX9xmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHXtxmEdqEPrOCkNZ5Vg">
<body>The attributes owned by the signal.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-OPtMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-OPtcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0AHYNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0AHYdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_YIM4UHL0EdqziYxiZo0YtA" name="createOwnedAttribute">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_YIM4UXL0EdqziYxiZo0YtA" type="_Jp_1oGveEdq4DLWZOhbdEA" direction="return"/>
@@ -4122,71 +4008,71 @@ The behavior of a use case can be described by a specification that is some kind
<ownedParameter xmi:type="uml:Parameter" xmi:id="_YIM4VXL0EdqziYxiZo0YtA" name="upper" type="_dRZxsGvsEdqG6fBIPwe-mw" effect="read"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-OPtsWCEdqI1bY5Lwi8Hg" name="SignalEvent">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPt8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPtsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M0AHYtxmEdqEPrOCkNZ5Vg" name="SignalEvent">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHY9xmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHYtxmEdqEPrOCkNZ5Vg">
<body>A signal event represents the receipt of an asynchronous signal. A signal event may cause a response, such as a state machine transition as specified in the classifier behavior of the classifier that specified the receiver object, if the signal referenced by the send request is mentioned in a reception owned or inherited by the classifier that specified the receiver object.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-OPuMWCEdqI1bY5Lwi8Hg" general="_g-OPxcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-OPucWCEdqI1bY5Lwi8Hg" name="signal" type="_Pu3O0HL0EdqziYxiZo0YtA" association="_g-XZgMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPusWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPucWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0AHZNxmEdqEPrOCkNZ5Vg" general="_M0AHcdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M0AHZdxmEdqEPrOCkNZ5Vg" name="signal" type="_Pu3O0HL0EdqziYxiZo0YtA" association="_M0wVINxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHZtxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHZdxmEdqEPrOCkNZ5Vg">
<body>The specific signal that is associated with this event.</body>
</ownedComment>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-OPxcWCEdqI1bY5Lwi8Hg" name="MessageEvent" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPxsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPxcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M0AHcdxmEdqEPrOCkNZ5Vg" name="MessageEvent" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHctxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHcdxmEdqEPrOCkNZ5Vg">
<body>A message event specifies the receipt by an object of either a call or a signal. MessageEvent is an abstract metaclass.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-OPx8WCEdqI1bY5Lwi8Hg" general="_g-OPz8WCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0AHc9xmEdqEPrOCkNZ5Vg" general="_M0AHe9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-OPyMWCEdqI1bY5Lwi8Hg" name="AnyReceiveEvent">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPycWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPyMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M0AHdNxmEdqEPrOCkNZ5Vg" name="AnyReceiveEvent">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHddxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHdNxmEdqEPrOCkNZ5Vg">
<body>A transition trigger associated with AnyReceiveEvent specifies that the transition is to be triggered by the receipt of any message that is not explicitly referenced in another transition from the same vertex.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-OPysWCEdqI1bY5Lwi8Hg" general="_g-OPxcWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0AHdtxmEdqEPrOCkNZ5Vg" general="_M0AHcdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_iY7sMGvsEdqG6fBIPwe-mw" name="BehavioredClassifier" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQ6sWCEdqI1bY5Lwi8Hg" annotatedElement="_iY7sMGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyqqlNxmEdqEPrOCkNZ5Vg" annotatedElement="_iY7sMGvsEdqG6fBIPwe-mw">
<body>A BehavioredClassifier may have an interface realization.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y-GsWCEdqI1bY5Lwi8Hg" annotatedElement="_iY7sMGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSmdxmEdqEPrOCkNZ5Vg" annotatedElement="_iY7sMGvsEdqG6fBIPwe-mw">
<body>A classifier can have behavior specifications defined in its namespace. One of these may specify the behavior of the classifier itself.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7Y-G8WCEdqI1bY5Lwi8Hg" name="class_behavior" constrainedElement="_iY7sMGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y-HMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7Y-G8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MxxSmtxmEdqEPrOCkNZ5Vg" name="class_behavior" constrainedElement="_iY7sMGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSm9xmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSmtxmEdqEPrOCkNZ5Vg">
<body>If a behavior is classifier behavior, it does not have a specification.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7Y-HcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MxxSnNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.classifierBehavior.notEmpty() implies self.specification.isEmpty()</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7Y-HsWCEdqI1bY5Lwi8Hg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7Y-H8WCEdqI1bY5Lwi8Hg" name="ownedBehavior" type="_TUPtYGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g7iIC8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y-IMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7Y-H8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxxSndxmEdqEPrOCkNZ5Vg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSntxmEdqEPrOCkNZ5Vg" name="ownedBehavior" type="_TUPtYGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_MxxS0dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSn9xmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSntxmEdqEPrOCkNZ5Vg">
<body>References behavior specifications owned by a classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7Y-IcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7Y-IsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxSoNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxSodxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7Y-I8WCEdqI1bY5Lwi8Hg" name="classifierBehavior" type="_TUPtYGveEdq4DLWZOhbdEA" subsettedProperty="_g7Y-H8WCEdqI1bY5Lwi8Hg" association="_g7iIEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y-JMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7Y-I8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSotxmEdqEPrOCkNZ5Vg" name="classifierBehavior" type="_TUPtYGveEdq4DLWZOhbdEA" subsettedProperty="_MxxSntxmEdqEPrOCkNZ5Vg" association="_MxxS1txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSo9xmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSotxmEdqEPrOCkNZ5Vg">
<body>A behavior specification that specifies the behavior of the classifier itself.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7Y-JcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7Y-JsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxSpNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxSpdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8lQ7MWCEdqI1bY5Lwi8Hg" name="interfaceRealization" type="_l2mXcHLzEdqziYxiZo0YtA" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg _g8bf18WCEdqI1bY5Lwi8Hg" association="_g8uav8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQ7cWCEdqI1bY5Lwi8Hg" annotatedElement="_g8lQ7MWCEdqI1bY5Lwi8Hg"/>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8lQ7sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8lQ78WCEdqI1bY5Lwi8Hg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyqqltxmEdqEPrOCkNZ5Vg" name="interfaceRealization" type="_l2mXcHLzEdqziYxiZo0YtA" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg _Myg5idxmEdqEPrOCkNZ5Vg" association="_MyqqrtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myqql9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyqqltxmEdqEPrOCkNZ5Vg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqmNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyqqmdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-OPy8WCEdqI1bY5Lwi8Hg" name="ownedTrigger" type="_g-OPmsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g-XZnsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPzMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPy8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M0AHd9xmEdqEPrOCkNZ5Vg" name="ownedTrigger" type="_M0AHRtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M0wVPtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHeNxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHd9xmEdqEPrOCkNZ5Vg">
<body>References Trigger descriptions owned by a Classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-OPzcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-OPzsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0AHedxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0AHetxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_dx6lQK69EdqjppZik4kD8A" name="getImplementedInterfaces">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_gSQbEK69EdqjppZik4kD8A" type="_8Ugn8GvtEdqG6fBIPwe-mw" direction="return">
@@ -4201,912 +4087,888 @@ The behavior of a use case can be described by a specification that is some kind
</ownedParameter>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-OPz8WCEdqI1bY5Lwi8Hg" name="Event" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OP0MWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPz8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M0AHe9xmEdqEPrOCkNZ5Vg" name="Event" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHfNxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHe9xmEdqEPrOCkNZ5Vg">
<body>An event is the specification of some occurrence that may potentially trigger effects by an object.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-OP0cWCEdqI1bY5Lwi8Hg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
- </packagedElement>
- <packagedElement xmi:type="uml:Enumeration" xmi:id="_g-XZcMWCEdqI1bY5Lwi8Hg" name="CallConcurrencyKind">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-XZccWCEdqI1bY5Lwi8Hg" annotatedElement="_g-XZcMWCEdqI1bY5Lwi8Hg">
- <body>CallConcurrencyKind is an enumeration with the following literals:
-
-• sequential No concurrency management mechanism is associated with the operation and, therefore, concurrency conflicts may occur. Instances that invoke a behavioral feature need to coordinate so that only one invocation to a target on any behavioral feature occurs at once.
-
-• guarded Multiple invocations of a behavioral feature may occur simultaneously to one instance, but only one is allowed to commence. The others are blocked until the performance of the first behavioral feature is complete. It is the responsibility of the system designer to ensure that deadlocks do not occur due to simultaneous blocks.
-
-• concurrent Multiple invocations of a behavioral feature may occur simultaneously to one instance and all of them may proceed concurrently.
-
-
-
-</body>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0AHfdxmEdqEPrOCkNZ5Vg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_M0wVENxmEdqEPrOCkNZ5Vg" name="CallConcurrencyKind">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0wVEdxmEdqEPrOCkNZ5Vg" annotatedElement="_M0wVENxmEdqEPrOCkNZ5Vg">
+ <body>CallConcurrencyKind is an enumeration with the following literals:&#xD;
+ - sequential = No concurrency management mechanism is associated with the operation and, therefore, concurrency conflicts may occur. Instances that invoke a behavioral feature need to coordinate so that only one invocation to a target on any behavioral feature occurs at once.&#xD;
+ - guarded = Multiple invocations of a behavioral feature may occur simultaneously to one instance, but only one is allowed to commence. The others are blocked until the performance of the first behavioral feature is complete. It is the responsibility of the system designer to ensure that deadlocks do not occur due to simultaneous blocks.&#xD;
+ - concurrent = Multiple invocations of a behavioral feature may occur simultaneously to one instance and all of them may proceed concurrently.</body>
</ownedComment>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g-XZcsWCEdqI1bY5Lwi8Hg" name="sequential">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-XZc8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-XZcsWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M0wVEtxmEdqEPrOCkNZ5Vg" name="sequential">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0wVE9xmEdqEPrOCkNZ5Vg" annotatedElement="_M0wVEtxmEdqEPrOCkNZ5Vg">
<body>No concurrency management mechanism is associated with the operation and, therefore, concurrency conflicts may occur. Instances that invoke a behavioral feature need to coordinate so that only one invocation to a target on any behavioral feature occurs at once.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g-XZdMWCEdqI1bY5Lwi8Hg" name="guarded">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-XZdcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-XZdMWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M0wVFNxmEdqEPrOCkNZ5Vg" name="guarded">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0wVFdxmEdqEPrOCkNZ5Vg" annotatedElement="_M0wVFNxmEdqEPrOCkNZ5Vg">
<body>Multiple invocations of a behavioral feature may occur simultaneously to one instance, but only one is allowed to commence. The others are blocked until the performance of the first behavioral feature is complete. It is the responsibility of the system designer to ensure that deadlocks do not occur due to simultaneous blocks.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g-XZdsWCEdqI1bY5Lwi8Hg" name="concurrent">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-XZd8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-XZdsWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M0wVFtxmEdqEPrOCkNZ5Vg" name="concurrent">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0wVF9xmEdqEPrOCkNZ5Vg" annotatedElement="_M0wVFtxmEdqEPrOCkNZ5Vg">
<body>Multiple invocations of a behavioral feature may occur simultaneously to one instance and all of them may proceed concurrently.</body>
</ownedComment>
</ownedLiteral>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-XZeMWCEdqI1bY5Lwi8Hg" name="A_reception_signal" memberEnd="_g-OPrMWCEdqI1bY5Lwi8Hg _g-XZecWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-XZecWCEdqI1bY5Lwi8Hg" type="_g-OPpsWCEdqI1bY5Lwi8Hg" association="_g-XZeMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-XZesWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-XZe8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M0wVGNxmEdqEPrOCkNZ5Vg" name="A_reception_signal" memberEnd="_M0AHWNxmEdqEPrOCkNZ5Vg _M0wVGdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M0wVGdxmEdqEPrOCkNZ5Vg" type="_M0AHUtxmEdqEPrOCkNZ5Vg" association="_M0wVGNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0wVGtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0wVG9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-XZfMWCEdqI1bY5Lwi8Hg" name="A_operation_callEvent" memberEnd="_g-OPg8WCEdqI1bY5Lwi8Hg _g-XZfcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-XZfcWCEdqI1bY5Lwi8Hg" type="_g-OPgMWCEdqI1bY5Lwi8Hg" association="_g-XZfMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-XZfsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-XZf8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M0wVHNxmEdqEPrOCkNZ5Vg" name="A_operation_callEvent" memberEnd="_M0AHL9xmEdqEPrOCkNZ5Vg _M0wVHdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M0wVHdxmEdqEPrOCkNZ5Vg" type="_M0AHLNxmEdqEPrOCkNZ5Vg" association="_M0wVHNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0wVHtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0wVH9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-XZgMWCEdqI1bY5Lwi8Hg" name="A_signal_signalEvent" memberEnd="_g-OPucWCEdqI1bY5Lwi8Hg _g-XZgcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-XZgcWCEdqI1bY5Lwi8Hg" type="_g-OPtsWCEdqI1bY5Lwi8Hg" association="_g-XZgMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-XZgsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-XZg8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M0wVINxmEdqEPrOCkNZ5Vg" name="A_signal_signalEvent" memberEnd="_M0AHZdxmEdqEPrOCkNZ5Vg _M0wVIdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M0wVIdxmEdqEPrOCkNZ5Vg" type="_M0AHYtxmEdqEPrOCkNZ5Vg" association="_M0wVINxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0wVItxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0wVI9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-XZhMWCEdqI1bY5Lwi8Hg" name="A_ownedReception_interface" memberEnd="_g-OPosWCEdqI1bY5Lwi8Hg _g-XZh8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-XZhcWCEdqI1bY5Lwi8Hg" general="_g2eB0sWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-XZhsWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-XZh8WCEdqI1bY5Lwi8Hg" type="_8Ugn8GvtEdqG6fBIPwe-mw" association="_g-XZhMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-XZiMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-XZicWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M0wVJNxmEdqEPrOCkNZ5Vg" name="A_ownedReception_interface" memberEnd="_M0AHTtxmEdqEPrOCkNZ5Vg _M0wVJ9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0wVJdxmEdqEPrOCkNZ5Vg" general="_MtmkaNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0wVJtxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M0wVJ9xmEdqEPrOCkNZ5Vg" type="_8Ugn8GvtEdqG6fBIPwe-mw" association="_M0wVJNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0wVKNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0wVKdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-XZisWCEdqI1bY5Lwi8Hg" name="A_ownedReception_class" memberEnd="_g-OPlsWCEdqI1bY5Lwi8Hg _g-XZjcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-XZi8WCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-XZjMWCEdqI1bY5Lwi8Hg" general="_g2eB0sWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-XZjcWCEdqI1bY5Lwi8Hg" type="_00owUGvdEdq4DLWZOhbdEA" association="_g-XZisWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-XZjsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-XZj8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M0wVKtxmEdqEPrOCkNZ5Vg" name="A_ownedReception_class" memberEnd="_M0AHQtxmEdqEPrOCkNZ5Vg _M0wVLdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0wVK9xmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0wVLNxmEdqEPrOCkNZ5Vg" general="_MtmkaNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M0wVLdxmEdqEPrOCkNZ5Vg" type="_00owUGvdEdq4DLWZOhbdEA" association="_M0wVKtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0wVLtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0wVL9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-XZk8WCEdqI1bY5Lwi8Hg" name="A_changeExpression_changeEvent" memberEnd="_g-OPisWCEdqI1bY5Lwi8Hg _g-XZlcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-XZlMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-XZlcWCEdqI1bY5Lwi8Hg" type="_g-OPh8WCEdqI1bY5Lwi8Hg" association="_g-XZk8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M0wVM9xmEdqEPrOCkNZ5Vg" name="A_changeExpression_changeEvent" memberEnd="_M0AHNtxmEdqEPrOCkNZ5Vg _M0wVNdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0wVNNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M0wVNdxmEdqEPrOCkNZ5Vg" type="_M0AHM9xmEdqEPrOCkNZ5Vg" association="_M0wVM9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g2UQ5MWCEdqI1bY5Lwi8Hg" name="A_raisedException_behavioralFeature" memberEnd="_g14L5cWCEdqI1bY5Lwi8Hg _g2UQ5cWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g2UQ5cWCEdqI1bY5Lwi8Hg" visibility="public" type="_rHT3YKOsEdqi_5gqUMOQtA" association="_g2UQ5MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-XZlsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-XZl8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MtmkNdxmEdqEPrOCkNZ5Vg" name="A_raisedException_behavioralFeature" memberEnd="_MtAHmdxmEdqEPrOCkNZ5Vg _MtmkNtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_MtmkNtxmEdqEPrOCkNZ5Vg" visibility="public" type="_rHT3YKOsEdqi_5gqUMOQtA" association="_MtmkNdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0wVNtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0wVN9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-XZmMWCEdqI1bY5Lwi8Hg" name="A_ownedAttribute_owningSignal" memberEnd="_g-OPssWCEdqI1bY5Lwi8Hg _g-XZm8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-XZmcWCEdqI1bY5Lwi8Hg" general="_g2UQvcWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-XZmsWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-XZm8WCEdqI1bY5Lwi8Hg" name="owningSignal" type="_Pu3O0HL0EdqziYxiZo0YtA" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg _g2UQwMWCEdqI1bY5Lwi8Hg _g0-z88WCEdqI1bY5Lwi8Hg" association="_g-XZmMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-XZnMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-XZncWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M0wVONxmEdqEPrOCkNZ5Vg" name="A_ownedAttribute_owningSignal" memberEnd="_M0AHXtxmEdqEPrOCkNZ5Vg _M0wVO9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0wVOdxmEdqEPrOCkNZ5Vg" general="_MtczPdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0wVOtxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M0wVO9xmEdqEPrOCkNZ5Vg" name="owningSignal" type="_Pu3O0HL0EdqziYxiZo0YtA" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg _MtczQNxmEdqEPrOCkNZ5Vg _MsQggtxmEdqEPrOCkNZ5Vg" association="_M0wVONxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0wVPNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0wVPdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-XZnsWCEdqI1bY5Lwi8Hg" name="A_ownedTrigger_behavioredClassifier" memberEnd="_g-OPy8WCEdqI1bY5Lwi8Hg _g-XZoMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-XZn8WCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-XZoMWCEdqI1bY5Lwi8Hg" type="_iY7sMGvsEdqG6fBIPwe-mw" association="_g-XZnsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-XZocWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-XZosWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M0wVPtxmEdqEPrOCkNZ5Vg" name="A_ownedTrigger_behavioredClassifier" memberEnd="_M0AHd9xmEdqEPrOCkNZ5Vg _M0wVQNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0wVP9xmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M0wVQNxmEdqEPrOCkNZ5Vg" type="_iY7sMGvsEdqG6fBIPwe-mw" association="_M0wVPtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0wVQdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0wVQtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-XZo8WCEdqI1bY5Lwi8Hg" name="A_event_trigger" memberEnd="_g-OPncWCEdqI1bY5Lwi8Hg _g-XZpMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-XZpMWCEdqI1bY5Lwi8Hg" type="_g-OPmsWCEdqI1bY5Lwi8Hg" association="_g-XZo8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M0wVQ9xmEdqEPrOCkNZ5Vg" name="A_event_trigger" memberEnd="_M0AHSdxmEdqEPrOCkNZ5Vg _M0wVRNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M0wVRNxmEdqEPrOCkNZ5Vg" type="_M0AHRtxmEdqEPrOCkNZ5Vg" association="_M0wVQ9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-hKcMWCEdqI1bY5Lwi8Hg" name="ForkNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKccWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKcMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M0wVRdxmEdqEPrOCkNZ5Vg" name="ForkNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0wVRtxmEdqEPrOCkNZ5Vg" annotatedElement="_M0wVRdxmEdqEPrOCkNZ5Vg">
<body>A fork node has one incoming edge and multiple outgoing edges.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-hKcsWCEdqI1bY5Lwi8Hg" name="one_incoming_edge" constrainedElement="_g-hKcMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKc8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKcsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M0wVR9xmEdqEPrOCkNZ5Vg" name="one_incoming_edge" constrainedElement="_M0wVRdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0wVSNxmEdqEPrOCkNZ5Vg" annotatedElement="_M0wVR9xmEdqEPrOCkNZ5Vg">
<body>A fork node has one incoming edge.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-hKdMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M0wVSdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-hKdcWCEdqI1bY5Lwi8Hg" name="edges" constrainedElement="_g-hKcMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKdsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKdcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M0wVStxmEdqEPrOCkNZ5Vg" name="edges" constrainedElement="_M0wVRdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0wVS9xmEdqEPrOCkNZ5Vg" annotatedElement="_M0wVStxmEdqEPrOCkNZ5Vg">
<body>The edges coming into and out of a fork node must be either all object flows or all control flows.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-hKd8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M0wVTNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-hKeMWCEdqI1bY5Lwi8Hg" general="_g9LGqsWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0wVTdxmEdqEPrOCkNZ5Vg" general="_MzHWnNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-hKecWCEdqI1bY5Lwi8Hg" name="FlowFinalNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKesWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKecWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M05fANxmEdqEPrOCkNZ5Vg" name="FlowFinalNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fAdxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fANxmEdqEPrOCkNZ5Vg">
<body>A flow final destroys all tokens that arrive at it. It has no effect on other flows in the activity.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-hKe8WCEdqI1bY5Lwi8Hg" general="_g-qUecWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M05fAtxmEdqEPrOCkNZ5Vg" general="_M05fWtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-hKfMWCEdqI1bY5Lwi8Hg" name="CentralBufferNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKfcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKfMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M05fA9xmEdqEPrOCkNZ5Vg" name="CentralBufferNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fBNxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fA9xmEdqEPrOCkNZ5Vg">
<body>A central buffer node accepts tokens from upstream objects nodes and passes them along to downstream object nodes. They act as a buffer for multiple in flows and out flows from other object nodes. They do not connect directly to actions.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-hKfsWCEdqI1bY5Lwi8Hg" general="_g9LGoMWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M05fBdxmEdqEPrOCkNZ5Vg" general="_MzHWktxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-hKf8WCEdqI1bY5Lwi8Hg" name="ActivityPartition">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKgMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKf8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M05fBtxmEdqEPrOCkNZ5Vg" name="ActivityPartition">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fB9xmEdqEPrOCkNZ5Vg" annotatedElement="_M05fBtxmEdqEPrOCkNZ5Vg">
<body>Partitions divide the nodes and edges to constrain and show a view of the contained nodes. Partitions can share contents. They often correspond to organizational units in a business model. They may be used to allocate characteristics or resources among the nodes of an activity.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-hKgcWCEdqI1bY5Lwi8Hg" name="dimension_not_contained" constrainedElement="_g-hKf8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKgsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKgcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M05fCNxmEdqEPrOCkNZ5Vg" name="dimension_not_contained" constrainedElement="_M05fBtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fCdxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fCNxmEdqEPrOCkNZ5Vg">
<body>A partition with isDimension = true may not be contained by another partition.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-hKg8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M05fCtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-hKhMWCEdqI1bY5Lwi8Hg" name="represents_part" constrainedElement="_g-hKf8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKhcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKhMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M05fC9xmEdqEPrOCkNZ5Vg" name="represents_part" constrainedElement="_M05fBtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fDNxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fC9xmEdqEPrOCkNZ5Vg">
<body>If a partition represents a part, then all the non-external partitions in the same dimension and at the same level of nesting in that dimension must represent parts directly contained in the internal structure of the same classifier.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-hKhsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M05fDdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-hKh8WCEdqI1bY5Lwi8Hg" name="represents_classifier" constrainedElement="_g-hKf8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKiMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKh8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M05fDtxmEdqEPrOCkNZ5Vg" name="represents_classifier" constrainedElement="_M05fBtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fD9xmEdqEPrOCkNZ5Vg" annotatedElement="_M05fDtxmEdqEPrOCkNZ5Vg">
<body>If a non-external partition represents a classifier and is contained in another partition, then the containing partition must represent a classifier, and the classifier of the subpartition must be nested in the classifier represented by the containing partition, or be at the contained end of a strong composition association with the classifier represented by the containing partition.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-hKicWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M05fENxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-hKisWCEdqI1bY5Lwi8Hg" name="represents_part_and_is_contained" constrainedElement="_g-hKf8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKi8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKisWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M05fEdxmEdqEPrOCkNZ5Vg" name="represents_part_and_is_contained" constrainedElement="_M05fBtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fEtxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fEdxmEdqEPrOCkNZ5Vg">
<body>If a partition represents a part and is contained by another partition, then the part must be of a classifier represented by the containing partition, or of a classifier that is the type of a part representing the containing partition.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-hKjMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M05fE9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-hKjcWCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-hKjsWCEdqI1bY5Lwi8Hg" general="_g7-z0MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-hKj8WCEdqI1bY5Lwi8Hg" name="isDimension" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKkMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKj8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M05fFNxmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M05fFdxmEdqEPrOCkNZ5Vg" general="_MyEN69xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M05fFtxmEdqEPrOCkNZ5Vg" name="isDimension" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fF9xmEdqEPrOCkNZ5Vg" annotatedElement="_M05fFtxmEdqEPrOCkNZ5Vg">
<body>Tells whether the partition groups other partitions along a dimension.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g-hKkcWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M05fGNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-hKksWCEdqI1bY5Lwi8Hg" name="isExternal" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKk8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKksWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M05fGdxmEdqEPrOCkNZ5Vg" name="isExternal" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fGtxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fGdxmEdqEPrOCkNZ5Vg">
<body>Tells whether the partition represents an entity to which the partitioning structure does not apply.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g-hKlMWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M05fG9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-hKlcWCEdqI1bY5Lwi8Hg" name="edge" type="_g9LGrcWCEdqI1bY5Lwi8Hg" subsettedProperty="_g9LG8cWCEdqI1bY5Lwi8Hg" association="_g-qUjcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKlsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKlcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M05fHNxmEdqEPrOCkNZ5Vg" name="edge" type="_MzQgQNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MzQghNxmEdqEPrOCkNZ5Vg" association="_M1DQDdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fHdxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fHNxmEdqEPrOCkNZ5Vg">
<body>Edges immediately contained in the group.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-hKl8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-hKmMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M05fHtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M05fH9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-hKmcWCEdqI1bY5Lwi8Hg" name="node" type="_g7-z5cWCEdqI1bY5Lwi8Hg" subsettedProperty="_g7-z08WCEdqI1bY5Lwi8Hg" association="_g-qUj8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKmsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKmcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M05fINxmEdqEPrOCkNZ5Vg" name="node" type="_MyN-cNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MyEN7txmEdqEPrOCkNZ5Vg" association="_M1DQD9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fIdxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fINxmEdqEPrOCkNZ5Vg">
<body>Nodes immediately contained in the group.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-hKm8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-hKnMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M05fItxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M05fI9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-hKncWCEdqI1bY5Lwi8Hg" name="subpartition" type="_g-hKf8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g7-z28WCEdqI1bY5Lwi8Hg" association="_g-qUkcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKnsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKncWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M05fJNxmEdqEPrOCkNZ5Vg" name="subpartition" type="_M05fBtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyEN9txmEdqEPrOCkNZ5Vg" association="_M1DQEdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fJdxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fJNxmEdqEPrOCkNZ5Vg">
<body>Partitions immediately contained in the partition. Specialized from Activity-Group::subgroup.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-hKn8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-hKoMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M05fJtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M05fJ9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-hKocWCEdqI1bY5Lwi8Hg" name="superPartition" type="_g-hKf8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g7-z38WCEdqI1bY5Lwi8Hg" association="_g-qUkcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKosWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKocWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M05fKNxmEdqEPrOCkNZ5Vg" name="superPartition" type="_M05fBtxmEdqEPrOCkNZ5Vg" subsettedProperty="_MyEN-txmEdqEPrOCkNZ5Vg" association="_M1DQEdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fKdxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fKNxmEdqEPrOCkNZ5Vg">
<body>Partition immediately containing the partition.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-hKo8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-hKpMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M05fKtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M05fK9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-hKpcWCEdqI1bY5Lwi8Hg" name="represents" type="_kl90MGvbEdq4DLWZOhbdEA" association="_g-qUk8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKpsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKpcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M05fLNxmEdqEPrOCkNZ5Vg" name="represents" type="_kl90MGvbEdq4DLWZOhbdEA" association="_M1DQE9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fLdxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fLNxmEdqEPrOCkNZ5Vg">
<body>An element constraining behaviors invoked by nodes in the partition.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-hKp8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-hKqMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M05fLtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M05fL9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-qUYMWCEdqI1bY5Lwi8Hg" name="MergeNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-qUYcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-qUYMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M05fQdxmEdqEPrOCkNZ5Vg" name="MergeNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fQtxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fQdxmEdqEPrOCkNZ5Vg">
<body>A merge node has multiple incoming edges and a single outgoing edge.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-qUYsWCEdqI1bY5Lwi8Hg" name="one_outgoing_edge" constrainedElement="_g-qUYMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-qUY8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-qUYsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M05fQ9xmEdqEPrOCkNZ5Vg" name="one_outgoing_edge" constrainedElement="_M05fQdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fRNxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fQ9xmEdqEPrOCkNZ5Vg">
<body>A merge node has one outgoing edge.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-qUZMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M05fRdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-qUZcWCEdqI1bY5Lwi8Hg" name="edges" constrainedElement="_g-qUYMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-qUZsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-qUZcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M05fRtxmEdqEPrOCkNZ5Vg" name="edges" constrainedElement="_M05fQdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fR9xmEdqEPrOCkNZ5Vg" annotatedElement="_M05fRtxmEdqEPrOCkNZ5Vg">
<body>The edges coming into and out of a merge node must be either all object flows or all control flows.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-qUZ8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M05fSNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-qUaMWCEdqI1bY5Lwi8Hg" general="_g9LGqsWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M05fSdxmEdqEPrOCkNZ5Vg" general="_MzHWnNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-qUacWCEdqI1bY5Lwi8Hg" name="DecisionNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-qUasWCEdqI1bY5Lwi8Hg" annotatedElement="_g-qUacWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M05fStxmEdqEPrOCkNZ5Vg" name="DecisionNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fS9xmEdqEPrOCkNZ5Vg" annotatedElement="_M05fStxmEdqEPrOCkNZ5Vg">
<body>A decision node has one incoming edge and multiple outgoing activity edges.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-qUa8WCEdqI1bY5Lwi8Hg" name="one_incoming_edge" constrainedElement="_g-qUacWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-qUbMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-qUa8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M05fTNxmEdqEPrOCkNZ5Vg" name="one_incoming_edge" constrainedElement="_M05fStxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fTdxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fTNxmEdqEPrOCkNZ5Vg">
<body>A decision node has one incoming edge.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-qUbcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M05fTtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-qUbsWCEdqI1bY5Lwi8Hg" name="input_parameter" constrainedElement="_g-qUacWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-qUb8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-qUbsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M05fT9xmEdqEPrOCkNZ5Vg" name="input_parameter" constrainedElement="_M05fStxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fUNxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fT9xmEdqEPrOCkNZ5Vg">
<body>A decision input behavior has zero or one input parameter and one output parameter. Any input parameter must be the same as or a supertype of the type of object tokens coming along the incoming edge. The behavior cannot have side effects.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-qUcMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M05fUdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-qUccWCEdqI1bY5Lwi8Hg" name="edges" constrainedElement="_g-qUacWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-qUcsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-qUccWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M05fUtxmEdqEPrOCkNZ5Vg" name="edges" constrainedElement="_M05fStxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fU9xmEdqEPrOCkNZ5Vg" annotatedElement="_M05fUtxmEdqEPrOCkNZ5Vg">
<body>The edges coming into and out of a decision node must be either all object flows or all control flows.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-qUc8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M05fVNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-qUdMWCEdqI1bY5Lwi8Hg" general="_g9LGqsWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-qUdcWCEdqI1bY5Lwi8Hg" name="decisionInput" type="_TUPtYGveEdq4DLWZOhbdEA" association="_g-qUmsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-qUdsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-qUdcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M05fVdxmEdqEPrOCkNZ5Vg" general="_MzHWnNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M05fVtxmEdqEPrOCkNZ5Vg" name="decisionInput" type="_TUPtYGveEdq4DLWZOhbdEA" association="_M1DQGtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fV9xmEdqEPrOCkNZ5Vg" annotatedElement="_M05fVtxmEdqEPrOCkNZ5Vg">
<body>Provides input to guard specifications on edges outgoing from the decision node.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-qUd8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-qUeMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M05fWNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M05fWdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-qUecWCEdqI1bY5Lwi8Hg" name="FinalNode" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-qUesWCEdqI1bY5Lwi8Hg" annotatedElement="_g-qUecWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M05fWtxmEdqEPrOCkNZ5Vg" name="FinalNode" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fW9xmEdqEPrOCkNZ5Vg" annotatedElement="_M05fWtxmEdqEPrOCkNZ5Vg">
<body>A final node is an abstract control node at which a flow in an activity stops.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-qUe8WCEdqI1bY5Lwi8Hg" name="no_outgoing_edges" constrainedElement="_g-qUecWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-qUfMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-qUe8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M05fXNxmEdqEPrOCkNZ5Vg" name="no_outgoing_edges" constrainedElement="_M05fWtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fXdxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fXNxmEdqEPrOCkNZ5Vg">
<body>A final node has no outgoing edges.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-qUfcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M05fXtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-qUfsWCEdqI1bY5Lwi8Hg" general="_g9LGqsWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M05fX9xmEdqEPrOCkNZ5Vg" general="_MzHWnNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9LG5cWCEdqI1bY5Lwi8Hg" name="ActivityFinalNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG5sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG5cWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzQgeNxmEdqEPrOCkNZ5Vg" name="ActivityFinalNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgedxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgeNxmEdqEPrOCkNZ5Vg">
<body>An activity may have more than one activity final node. The first one reached stops all flows in the activity.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-qUf8WCEdqI1bY5Lwi8Hg" general="_g-qUecWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M05fYNxmEdqEPrOCkNZ5Vg" general="_M05fWtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-qUjcWCEdqI1bY5Lwi8Hg" name="A_edge_inPartition" memberEnd="_g-hKlcWCEdqI1bY5Lwi8Hg _g-hKqcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-qUjsWCEdqI1bY5Lwi8Hg" general="_g9U3s8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1DQDdxmEdqEPrOCkNZ5Vg" name="A_edge_inPartition" memberEnd="_M05fMNxmEdqEPrOCkNZ5Vg _M05fHNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1DQDtxmEdqEPrOCkNZ5Vg" general="_MzaRQtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-qUj8WCEdqI1bY5Lwi8Hg" name="A_inPartition_node" memberEnd="_g-hKtMWCEdqI1bY5Lwi8Hg _g-hKmcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-qUkMWCEdqI1bY5Lwi8Hg" general="_g7-z8sWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1DQD9xmEdqEPrOCkNZ5Vg" name="A_inPartition_node" memberEnd="_M05fINxmEdqEPrOCkNZ5Vg _M05fO9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1DQENxmEdqEPrOCkNZ5Vg" general="_MyN-fdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-qUkcWCEdqI1bY5Lwi8Hg" name="A_subpartition_superPartition" memberEnd="_g-hKncWCEdqI1bY5Lwi8Hg _g-hKocWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-qUksWCEdqI1bY5Lwi8Hg" general="_g7-z9cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1DQEdxmEdqEPrOCkNZ5Vg" name="A_subpartition_superPartition" memberEnd="_M05fKNxmEdqEPrOCkNZ5Vg _M05fJNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1DQEtxmEdqEPrOCkNZ5Vg" general="_MyN-gNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-qUk8WCEdqI1bY5Lwi8Hg" name="A_represents_activityPartition" memberEnd="_g-hKpcWCEdqI1bY5Lwi8Hg _g-qUlMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-qUlMWCEdqI1bY5Lwi8Hg" type="_g-hKf8WCEdqI1bY5Lwi8Hg" association="_g-qUk8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-qUlcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-qUlsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1DQE9xmEdqEPrOCkNZ5Vg" name="A_represents_activityPartition" memberEnd="_M05fLNxmEdqEPrOCkNZ5Vg _M1DQFNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1DQFNxmEdqEPrOCkNZ5Vg" type="_M05fBtxmEdqEPrOCkNZ5Vg" association="_M1DQE9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1DQFdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1DQFtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-qUl8WCEdqI1bY5Lwi8Hg" name="A_activityEdge_guard" memberEnd="_g-hKrcWCEdqI1bY5Lwi8Hg _g-qUmcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-qUmMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-qUmcWCEdqI1bY5Lwi8Hg" type="_g9LGrcWCEdqI1bY5Lwi8Hg" association="_g-qUl8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1DQF9xmEdqEPrOCkNZ5Vg" name="A_activityEdge_guard" memberEnd="_M05fNNxmEdqEPrOCkNZ5Vg _M1DQGdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1DQGNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1DQGdxmEdqEPrOCkNZ5Vg" type="_MzQgQNxmEdqEPrOCkNZ5Vg" association="_M1DQF9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-qUmsWCEdqI1bY5Lwi8Hg" name="A_decisionInput_decisionNode" memberEnd="_g-qUdcWCEdqI1bY5Lwi8Hg _g-qUm8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-qUm8WCEdqI1bY5Lwi8Hg" type="_g-qUacWCEdqI1bY5Lwi8Hg" association="_g-qUmsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-qUnMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-qUncWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1DQGtxmEdqEPrOCkNZ5Vg" name="A_decisionInput_decisionNode" memberEnd="_M05fVtxmEdqEPrOCkNZ5Vg _M1DQG9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1DQG9xmEdqEPrOCkNZ5Vg" type="_M05fStxmEdqEPrOCkNZ5Vg" association="_M1DQGtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1DQHNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1DQHdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-0FYMWCEdqI1bY5Lwi8Hg" name="A_partition_activity" memberEnd="_g-qUh8WCEdqI1bY5Lwi8Hg _g-0FYsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-0FYcWCEdqI1bY5Lwi8Hg" general="_g7-z88WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-0FYsWCEdqI1bY5Lwi8Hg" type="_g71qNsWCEdqI1bY5Lwi8Hg" association="_g-0FYMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-0FY8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-0FZMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1DQHtxmEdqEPrOCkNZ5Vg" name="A_partition_activity" memberEnd="_M1DQB9xmEdqEPrOCkNZ5Vg _M1DQINxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1DQH9xmEdqEPrOCkNZ5Vg" general="_MyN-ftxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1DQINxmEdqEPrOCkNZ5Vg" type="_MyEN3dxmEdqEPrOCkNZ5Vg" association="_M1DQHtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1DQIdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1DQItxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7-z88WCEdqI1bY5Lwi8Hg" name="A_group_inActivity" memberEnd="_g7-z18WCEdqI1bY5Lwi8Hg _g71qQMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g7-z9MWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyN-ftxmEdqEPrOCkNZ5Vg" name="A_group_inActivity" memberEnd="_MyEN59xmEdqEPrOCkNZ5Vg _MyEN8txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyN-f9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-0FhcWCEdqI1bY5Lwi8Hg" name="EncapsulatedClassifier" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FhsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-0FhcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1DQQ9xmEdqEPrOCkNZ5Vg" name="EncapsulatedClassifier" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQRNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQQ9xmEdqEPrOCkNZ5Vg">
<body>Extends a classifier with the ability to own ports as specific and type checked interaction points.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-0Fh8WCEdqI1bY5Lwi8Hg" general="_FQiVsGwYEdqHKKVoxc0dlA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-0FiMWCEdqI1bY5Lwi8Hg" name="ownedPort" type="_ZAuvEGveEdq4DLWZOhbdEA" isDerived="true" aggregation="composite" subsettedProperty="_g8ua-cWCEdqI1bY5Lwi8Hg" association="_g-0FmcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FicWCEdqI1bY5Lwi8Hg" annotatedElement="_g-0FiMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1DQRdxmEdqEPrOCkNZ5Vg" general="_FQiVsGwYEdqHKKVoxc0dlA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1DQRtxmEdqEPrOCkNZ5Vg" name="ownedPort" type="_ZAuvEGveEdq4DLWZOhbdEA" isDerived="true" aggregation="composite" subsettedProperty="_Myz0fNxmEdqEPrOCkNZ5Vg" association="_M1MZ_dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQR9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQRtxmEdqEPrOCkNZ5Vg">
<body>References a set of ports that an encapsulated classifier owns.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-0FisWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-0Fi8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1DQSNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1DQSdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_aOgw0GveEdq4DLWZOhbdEA" name="ConnectorEnd">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8uazcWCEdqI1bY5Lwi8Hg" annotatedElement="_aOgw0GveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0UNxmEdqEPrOCkNZ5Vg" annotatedElement="_aOgw0GveEdq4DLWZOhbdEA">
<body>A connector end is an endpoint of a connector, which attaches the connector to a connectable element. Each connector end is part of one connector.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g8uazsWCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_aOgw0GveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8uaz8WCEdqI1bY5Lwi8Hg" annotatedElement="_g8uazsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Myz0UdxmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_aOgw0GveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0UtxmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0UdxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the connector end may not be more general than the multiplicity of the association typing the owning connector.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g8ua0MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Myz0U9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-0FjMWCEdqI1bY5Lwi8Hg" name="part_with_port_empty" constrainedElement="_aOgw0GveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FjcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-0FjMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1MZ8NxmEdqEPrOCkNZ5Vg" name="part_with_port_empty" constrainedElement="_aOgw0GveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MZ8dxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MZ8NxmEdqEPrOCkNZ5Vg">
<body>If a connector end is attached to a port of the containing classifier, partWithPort will be empty.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-0FjsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1MZ8txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-0Fj8WCEdqI1bY5Lwi8Hg" name="role_and_part_with_port" constrainedElement="_aOgw0GveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FkMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-0Fj8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1MZ89xmEdqEPrOCkNZ5Vg" name="role_and_part_with_port" constrainedElement="_aOgw0GveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MZ9NxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MZ89xmEdqEPrOCkNZ5Vg">
<body>If a connector end references both a role and a partWithPort, then the role must be a port that is defined by the type of the partWithPort.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-0FkcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1MZ9dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-0FksWCEdqI1bY5Lwi8Hg" name="self_part_with_port" constrainedElement="_aOgw0GveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0Fk8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-0FksWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1MZ9txmEdqEPrOCkNZ5Vg" name="self_part_with_port" constrainedElement="_aOgw0GveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MZ99xmEdqEPrOCkNZ5Vg" annotatedElement="_M1MZ9txmEdqEPrOCkNZ5Vg">
<body>The property held in self.partWithPort must not be a Port.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-0FlMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1MZ-NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8ua0cWCEdqI1bY5Lwi8Hg" general="_Gjgl0GveEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8ua0sWCEdqI1bY5Lwi8Hg" name="definingEnd" type="_Jp_1oGveEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" association="_g84L2MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua08WCEdqI1bY5Lwi8Hg" annotatedElement="_g8ua0sWCEdqI1bY5Lwi8Hg">
- <body>A derived association referencing the corresponding association end on the association which types the connector owing this connector end. This association is derived by selecting the association end at the same place in the ordering of association ends as this connector end.
-
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myz0VNxmEdqEPrOCkNZ5Vg" general="_Gjgl0GveEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myz0VdxmEdqEPrOCkNZ5Vg" name="definingEnd" type="_Jp_1oGveEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" association="_My9lh9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0VtxmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0VdxmEdqEPrOCkNZ5Vg">
+ <body>A derived association referencing the corresponding association end on the association which types the connector owing this connector end. This association is derived by selecting the association end at the same place in the ordering of association ends as this connector end.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8ua1MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8ua1cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myz0V9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myz0WNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8ua1sWCEdqI1bY5Lwi8Hg" name="role" type="_g8ubCcWCEdqI1bY5Lwi8Hg" association="_g84L3MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua18WCEdqI1bY5Lwi8Hg" annotatedElement="_g8ua1sWCEdqI1bY5Lwi8Hg">
- <body>The connectable element attached at this connector end. When an instance of the containing classifier is created, a link may (depending on the multiplicities) be created to an instance of the classifier that types this connectable element.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myz0WdxmEdqEPrOCkNZ5Vg" name="role" type="_My9lWNxmEdqEPrOCkNZ5Vg" association="_My9li9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0WtxmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0WdxmEdqEPrOCkNZ5Vg">
+ <body>The connectable element attached at this connector end. When an instance of the containing classifier is created, a link may (depending on the multiplicities) be created to an instance of the classifier that types this connectable element.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8ua2MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8ua2cWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myz0W9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myz0XNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-0FlcWCEdqI1bY5Lwi8Hg" name="partWithPort" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_g-0FrMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FlsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-0FlcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1MZ-dxmEdqEPrOCkNZ5Vg" name="partWithPort" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_M1MaENxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MZ-txmEdqEPrOCkNZ5Vg" annotatedElement="_M1MZ-dxmEdqEPrOCkNZ5Vg">
<body>Indicates the role of the internal structure of a classifier with the port to which the connector end is attached.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-0Fl8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-0FmMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MZ-9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MZ_NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_QT7XMFYKEdqrn7iZ0eqieg" name="getDefiningEnd" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_VkstQFYKEdqrn7iZ0eqieg" type="_Jp_1oGveEdq4DLWZOhbdEA" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-0FmcWCEdqI1bY5Lwi8Hg" name="A_encapsulatedClassifier_ownedPort" memberEnd="_g-0FiMWCEdqI1bY5Lwi8Hg _g-0FnMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-0Fm8WCEdqI1bY5Lwi8Hg" general="_g84Lt8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-0FnMWCEdqI1bY5Lwi8Hg" type="_g-0FhcWCEdqI1bY5Lwi8Hg" redefinedProperty="_g84Lu8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g1H-IsWCEdqI1bY5Lwi8Hg" association="_g-0FmcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-0FncWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-0FnsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1MZ_dxmEdqEPrOCkNZ5Vg" name="A_encapsulatedClassifier_ownedPort" memberEnd="_M1DQRtxmEdqEPrOCkNZ5Vg _M1MaANxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1MZ_9xmEdqEPrOCkNZ5Vg" general="_My9lZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1MaANxmEdqEPrOCkNZ5Vg" type="_M1DQQ9xmEdqEPrOCkNZ5Vg" redefinedProperty="_My9latxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsjbWdxmEdqEPrOCkNZ5Vg" association="_M1MZ_dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaAdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaAtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-0Fn8WCEdqI1bY5Lwi8Hg" name="A_required_port" memberEnd="_g-0FecWCEdqI1bY5Lwi8Hg _g-0FoMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-0FoMWCEdqI1bY5Lwi8Hg" type="_ZAuvEGveEdq4DLWZOhbdEA" association="_g-0Fn8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-0FocWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-0FosWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1MaA9xmEdqEPrOCkNZ5Vg" name="A_required_port" memberEnd="_M1DQN9xmEdqEPrOCkNZ5Vg _M1MaBNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1MaBNxmEdqEPrOCkNZ5Vg" type="_ZAuvEGveEdq4DLWZOhbdEA" association="_M1MaA9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaBdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaBtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-0Fo8WCEdqI1bY5Lwi8Hg" name="A_redefinedPort_port" memberEnd="_g-0FfcWCEdqI1bY5Lwi8Hg _g-0FpcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-0FpMWCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-0FpcWCEdqI1bY5Lwi8Hg" type="_ZAuvEGveEdq4DLWZOhbdEA" association="_g-0Fo8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-0FpsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-0Fp8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1MaB9xmEdqEPrOCkNZ5Vg" name="A_redefinedPort_port" memberEnd="_M1DQO9xmEdqEPrOCkNZ5Vg _M1MaCdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1MaCNxmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1MaCdxmEdqEPrOCkNZ5Vg" type="_ZAuvEGveEdq4DLWZOhbdEA" association="_M1MaB9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaCtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaC9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-0FqMWCEdqI1bY5Lwi8Hg" name="A_provided_port" memberEnd="_g-0FgcWCEdqI1bY5Lwi8Hg _g-0FqcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-0FqcWCEdqI1bY5Lwi8Hg" type="_ZAuvEGveEdq4DLWZOhbdEA" association="_g-0FqMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-0FqsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-0Fq8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1MaDNxmEdqEPrOCkNZ5Vg" name="A_provided_port" memberEnd="_M1DQP9xmEdqEPrOCkNZ5Vg _M1MaDdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1MaDdxmEdqEPrOCkNZ5Vg" type="_ZAuvEGveEdq4DLWZOhbdEA" association="_M1MaDNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaDtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaD9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-0FrMWCEdqI1bY5Lwi8Hg" name="A_partWithPort_connectorEnd" memberEnd="_g-0FlcWCEdqI1bY5Lwi8Hg _g-0FrcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-0FrcWCEdqI1bY5Lwi8Hg" type="_aOgw0GveEdq4DLWZOhbdEA" association="_g-0FrMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1MaENxmEdqEPrOCkNZ5Vg" name="A_partWithPort_connectorEnd" memberEnd="_M1MZ-dxmEdqEPrOCkNZ5Vg _M1MaEdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1MaEdxmEdqEPrOCkNZ5Vg" type="_aOgw0GveEdq4DLWZOhbdEA" association="_M1MaENxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-92kcWCEdqI1bY5Lwi8Hg" name="ComponentRealization">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92ksWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92kcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1MaRdxmEdqEPrOCkNZ5Vg" name="ComponentRealization">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaRtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaRdxmEdqEPrOCkNZ5Vg">
<body>In the metamodel, a ComponentRealization is a subtype of Dependencies::Realization.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-92k8WCEdqI1bY5Lwi8Hg" general="_g8bfxMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-92lMWCEdqI1bY5Lwi8Hg" name="abstraction" type="_DAbfwa69EdqjppZik4kD8A" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg _g8bfwMWCEdqI1bY5Lwi8Hg" association="_g-92vsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92lcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92lMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1MaR9xmEdqEPrOCkNZ5Vg" general="_Myg5dtxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1MaSNxmEdqEPrOCkNZ5Vg" name="abstraction" type="_DAbfwa69EdqjppZik4kD8A" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg _Myg5ctxmEdqEPrOCkNZ5Vg" association="_M1WK-txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaSdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaSNxmEdqEPrOCkNZ5Vg">
<body>The Component that owns this ComponentRealization and which is implemented by its realizing classifiers.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-92lsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-92l8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaStxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaS9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-92mMWCEdqI1bY5Lwi8Hg" name="realizingClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_g8Ru-sWCEdqI1bY5Lwi8Hg" association="_g_HAUMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92mcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92mMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1MaTNxmEdqEPrOCkNZ5Vg" name="realizingClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_Myg5btxmEdqEPrOCkNZ5Vg" association="_M1WK_dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaTdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaTNxmEdqEPrOCkNZ5Vg">
<body>A classifier that is involved in the implementation of the Component that owns this ComponentRealization.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-92msWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-92m8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaTtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaT9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g8ua2sWCEdqI1bY5Lwi8Hg" name="Connector">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua28WCEdqI1bY5Lwi8Hg" annotatedElement="_g8ua2sWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Myz0XdxmEdqEPrOCkNZ5Vg" name="Connector">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0XtxmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0XdxmEdqEPrOCkNZ5Vg">
<body>Each connector may be attached to two or more connectable elements, each representing a set of instances. Each connector end is distinct in the sense that it plays a distinct role in the communication realized over a connector. The communications realized over a connector may be constrained by various constraints (including type constraints) that apply to the attached connectable elements.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92nMWCEdqI1bY5Lwi8Hg" annotatedElement="_g8ua2sWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaUNxmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0XdxmEdqEPrOCkNZ5Vg">
<body>In the metamodel, a connector kind attribute is added to the Connector metaclass. Its value is an enumeration type with valid values 'assembly' or 'delegation'.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g8ua3MWCEdqI1bY5Lwi8Hg" name="types" constrainedElement="_g8ua2sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua3cWCEdqI1bY5Lwi8Hg" annotatedElement="_g8ua3MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Myz0X9xmEdqEPrOCkNZ5Vg" name="types" constrainedElement="_Myz0XdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0YNxmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0X9xmEdqEPrOCkNZ5Vg">
<body>The types of the connectable elements that the ends of a connector are attached to must conform to the types of the association ends of the association that types the connector, if any.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g8ua3sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Myz0YdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g8ua38WCEdqI1bY5Lwi8Hg" name="compatible" constrainedElement="_g8ua2sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua4MWCEdqI1bY5Lwi8Hg" annotatedElement="_g8ua38WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Myz0YtxmEdqEPrOCkNZ5Vg" name="compatible" constrainedElement="_Myz0XdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0Y9xmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0YtxmEdqEPrOCkNZ5Vg">
<body>The connectable elements attached to the ends of a connector must be compatible.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g8ua4cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Myz0ZNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g8ua4sWCEdqI1bY5Lwi8Hg" name="roles" constrainedElement="_g8ua2sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua48WCEdqI1bY5Lwi8Hg" annotatedElement="_g8ua4sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Myz0ZdxmEdqEPrOCkNZ5Vg" name="roles" constrainedElement="_Myz0XdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0ZtxmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0ZdxmEdqEPrOCkNZ5Vg">
<body>The ConnectableElements attached as roles to each ConnectorEnd owned by a Connector must be roles of the Classifier that owned the Connector, or they must be ports of such roles.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g8ua5MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Myz0Z9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-92ncWCEdqI1bY5Lwi8Hg" name="between_interfaces_ports" constrainedElement="_g8ua2sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92nsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92ncWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1MaUdxmEdqEPrOCkNZ5Vg" name="between_interfaces_ports" constrainedElement="_Myz0XdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaUtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaUdxmEdqEPrOCkNZ5Vg">
<body>A delegation connector must only be defined between used Interfaces or Ports of the same kind, e.g. between two provided Ports or between two required Ports.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-92n8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1MaU9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-92oMWCEdqI1bY5Lwi8Hg" name="between_interface_port_implements" constrainedElement="_g8ua2sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92ocWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92oMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1MaVNxmEdqEPrOCkNZ5Vg" name="between_interface_port_implements" constrainedElement="_Myz0XdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaVdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaVNxmEdqEPrOCkNZ5Vg">
<body>If a delegation connector is defined between a used Interface or Port and an internal Part Classifier, then that Classifier must have an 'implements' relationship to the Interface type of that Port.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-92osWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1MaVtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-92o8WCEdqI1bY5Lwi8Hg" name="between_interface_port_signature" constrainedElement="_g8ua2sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92pMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92o8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1MaV9xmEdqEPrOCkNZ5Vg" name="between_interface_port_signature" constrainedElement="_Myz0XdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaWNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaV9xmEdqEPrOCkNZ5Vg">
<body>If a delegation connector is defined between a source Interface or Port and a target Interface or Port, then the target Interface must support a signature compatible subset of Operations of the source Interface or Port.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-92pcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1MaWdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-92psWCEdqI1bY5Lwi8Hg" name="union_signature_compatible" constrainedElement="_g8ua2sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92p8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-92psWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1MaWtxmEdqEPrOCkNZ5Vg" name="union_signature_compatible" constrainedElement="_Myz0XdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaW9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaWtxmEdqEPrOCkNZ5Vg">
<body>In a complete model, if a source Port has delegation connectors to a set of delegated target Ports, then the union of the Interfaces of these target Ports must be signature compatible with the Interface that types the source Port.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-92qMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1MaXNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-92qcWCEdqI1bY5Lwi8Hg" name="assembly_connector" constrainedElement="_g8ua2sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92qsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92qcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1MaXdxmEdqEPrOCkNZ5Vg" name="assembly_connector" constrainedElement="_Myz0XdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaXtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaXdxmEdqEPrOCkNZ5Vg">
<body>An assembly connector must only be defined from a required Interface or Ports to a provided Interface or Port.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-92q8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1MaX9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8ua5cWCEdqI1bY5Lwi8Hg" general="_g0-z8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8ua5sWCEdqI1bY5Lwi8Hg" name="type" type="_AwvxoGwNEdq7X4sGURiZYA" association="_g84Ls8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua58WCEdqI1bY5Lwi8Hg" annotatedElement="_g8ua5sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myz0aNxmEdqEPrOCkNZ5Vg" general="_MsQgf9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myz0adxmEdqEPrOCkNZ5Vg" name="type" type="_AwvxoGwNEdq7X4sGURiZYA" association="_My9lYtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0atxmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0adxmEdqEPrOCkNZ5Vg">
<body>An optional association that specifies the link corresponding to this connector.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8ua6MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8ua6cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myz0a9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myz0bNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8ua6sWCEdqI1bY5Lwi8Hg" name="redefinedConnector" type="_g8ua2sWCEdqI1bY5Lwi8Hg" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_g84LzsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua68WCEdqI1bY5Lwi8Hg" annotatedElement="_g8ua6sWCEdqI1bY5Lwi8Hg">
- <body>A connector may be redefined when its containing classifier is specialized. The redefining connector may have a type that specializes the type of the redefined connector.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myz0bdxmEdqEPrOCkNZ5Vg" name="redefinedConnector" type="_Myz0XdxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_My9lfdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0btxmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0bdxmEdqEPrOCkNZ5Vg">
+ <body>A connector may be redefined when its containing classifier is specialized. The redefining connector may have a type that specializes the type of the redefined connector.&#xD;
The types of the connector ends of the redefining connector may specialize the types of the connector ends of the redefined connector. The properties of the connector ends of the redefining connector may be replaced.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8ua7MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8ua7cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myz0b9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myz0cNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8ua7sWCEdqI1bY5Lwi8Hg" name="end" type="_aOgw0GveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g84L08WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua78WCEdqI1bY5Lwi8Hg" annotatedElement="_g8ua7sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myz0cdxmEdqEPrOCkNZ5Vg" name="end" type="_aOgw0GveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_My9lgtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0ctxmEdqEPrOCkNZ5Vg" annotatedElement="_Myz0cdxmEdqEPrOCkNZ5Vg">
<body>A connector consists of at least two connector ends, each representing the participation of instances of the classifiers typing the connectable elements attached to this end. The set of connector ends is ordered.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8ua8MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8ua8cWCEdqI1bY5Lwi8Hg" value="2"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myz0c9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myz0dNxmEdqEPrOCkNZ5Vg" value="2"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-92rMWCEdqI1bY5Lwi8Hg" name="kind" type="_g-92tMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92rcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92rMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1MaYNxmEdqEPrOCkNZ5Vg" name="kind" type="_M1WK8NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaYdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaYNxmEdqEPrOCkNZ5Vg">
<body>Indicates the kind of connector.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-92rsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-92r8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaYtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaY9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-92sMWCEdqI1bY5Lwi8Hg" name="contract" type="_TUPtYGveEdq4DLWZOhbdEA" association="_g_HAU8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92scWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92sMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1MaZNxmEdqEPrOCkNZ5Vg" name="contract" type="_TUPtYGveEdq4DLWZOhbdEA" association="_M1WLANxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaZdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaZNxmEdqEPrOCkNZ5Vg">
<body>The set of Behaviors that specify the valid interaction patterns across the connector.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-92ssWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-92s8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaZtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaZ9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Enumeration" xmi:id="_g-92tMWCEdqI1bY5Lwi8Hg" name="ConnectorKind">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92tcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92tMWCEdqI1bY5Lwi8Hg">
- <body>ConnectorKind is an enumeration of the following literal values:
-• assembly Indicates that the connector is an assembly connector.
-• delegation Indicates that the connector is a delegation connector.
-</body>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_M1WK8NxmEdqEPrOCkNZ5Vg" name="ConnectorKind">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WK8dxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WK8NxmEdqEPrOCkNZ5Vg">
+ <body>ConnectorKind is an enumeration of the following literal values:&#xD;
+ - assembly = Indicates that the connector is an assembly connector.&#xD;
+ - delegation = Indicates that the connector is a delegation connector.</body>
</ownedComment>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g-92tsWCEdqI1bY5Lwi8Hg" name="assembly">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92t8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-92tsWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1WK8txmEdqEPrOCkNZ5Vg" name="assembly">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WK89xmEdqEPrOCkNZ5Vg" annotatedElement="_M1WK8txmEdqEPrOCkNZ5Vg">
<body>Indicates that the connector is an assembly connector.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g-92uMWCEdqI1bY5Lwi8Hg" name="delegation">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92ucWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92uMWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1WK9NxmEdqEPrOCkNZ5Vg" name="delegation">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WK9dxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WK9NxmEdqEPrOCkNZ5Vg">
<body>Indicates that the connector is a delegation connector.</body>
</ownedComment>
</ownedLiteral>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-92usWCEdqI1bY5Lwi8Hg" name="A_required_component" memberEnd="_g-92acWCEdqI1bY5Lwi8Hg _g-92u8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-92u8WCEdqI1bY5Lwi8Hg" type="_DAbfwa69EdqjppZik4kD8A" association="_g-92usWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1WK9txmEdqEPrOCkNZ5Vg" name="A_required_component" memberEnd="_M1MaHdxmEdqEPrOCkNZ5Vg _M1WK99xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1WK99xmEdqEPrOCkNZ5Vg" type="_DAbfwa69EdqjppZik4kD8A" association="_M1WK9txmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-92vMWCEdqI1bY5Lwi8Hg" name="A_provided_component" memberEnd="_g-92bcWCEdqI1bY5Lwi8Hg _g-92vcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-92vcWCEdqI1bY5Lwi8Hg" type="_DAbfwa69EdqjppZik4kD8A" association="_g-92vMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1WK-NxmEdqEPrOCkNZ5Vg" name="A_provided_component" memberEnd="_M1MaIdxmEdqEPrOCkNZ5Vg _M1WK-dxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1WK-dxmEdqEPrOCkNZ5Vg" type="_DAbfwa69EdqjppZik4kD8A" association="_M1WK-NxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-92vsWCEdqI1bY5Lwi8Hg" name="A_realization_abstraction" memberEnd="_g-92ccWCEdqI1bY5Lwi8Hg _g-92lMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-92v8WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-92wMWCEdqI1bY5Lwi8Hg" general="_g8lQycWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1WK-txmEdqEPrOCkNZ5Vg" name="A_realization_abstraction" memberEnd="_M1MaJdxmEdqEPrOCkNZ5Vg _M1MaSNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WK-9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WK_NxmEdqEPrOCkNZ5Vg" general="_Myqqc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_HAUMWCEdqI1bY5Lwi8Hg" name="A_realizingClassifier_componentRealization" memberEnd="_g-92mMWCEdqI1bY5Lwi8Hg _g_HAUsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAUcWCEdqI1bY5Lwi8Hg" general="_g8lQw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_HAUsWCEdqI1bY5Lwi8Hg" type="_g-92kcWCEdqI1bY5Lwi8Hg" redefinedProperty="_g2eBzcWCEdqI1bY5Lwi8Hg" association="_g_HAUMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1WK_dxmEdqEPrOCkNZ5Vg" name="A_realizingClassifier_componentRealization" memberEnd="_M1MaTNxmEdqEPrOCkNZ5Vg _M1WK_9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WK_txmEdqEPrOCkNZ5Vg" general="_MyqqbdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1WK_9xmEdqEPrOCkNZ5Vg" type="_M1MaRdxmEdqEPrOCkNZ5Vg" redefinedProperty="_MtmkY9xmEdqEPrOCkNZ5Vg" association="_M1WK_dxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_HAU8WCEdqI1bY5Lwi8Hg" name="A_contract_connector" memberEnd="_g-92sMWCEdqI1bY5Lwi8Hg _g_HAVMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_HAVMWCEdqI1bY5Lwi8Hg" type="_g8ua2sWCEdqI1bY5Lwi8Hg" association="_g_HAU8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAVcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAVsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1WLANxmEdqEPrOCkNZ5Vg" name="A_contract_connector" memberEnd="_M1MaZNxmEdqEPrOCkNZ5Vg _M1WLAdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1WLAdxmEdqEPrOCkNZ5Vg" type="_Myz0XdxmEdqEPrOCkNZ5Vg" association="_M1WLANxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLAtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLA9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_HAc8WCEdqI1bY5Lwi8Hg" name="Manifestation">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HAdMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAc8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1WLINxmEdqEPrOCkNZ5Vg" name="Manifestation">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLIdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLINxmEdqEPrOCkNZ5Vg">
<body>In the metamodel, a Manifestation is a subtype of Abstraction. A Manifestation is owned by an Artifact.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAdcWCEdqI1bY5Lwi8Hg" general="_g8Ru8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_HAdsWCEdqI1bY5Lwi8Hg" name="utilizedElement" type="_jKxnwGwLEdq7X4sGURiZYA" subsettedProperty="_g8Ru-sWCEdqI1bY5Lwi8Hg" association="_g_HAesWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HAd8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAdsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLItxmEdqEPrOCkNZ5Vg" general="_Myg5ZNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1WLI9xmEdqEPrOCkNZ5Vg" name="utilizedElement" type="_jKxnwGwLEdq7X4sGURiZYA" subsettedProperty="_Myg5btxmEdqEPrOCkNZ5Vg" association="_M1WLJ9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLJNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLI9xmEdqEPrOCkNZ5Vg">
<body>The model element that is utilized in the manifestation in an Artifact.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAeMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAecWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLJdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLJtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_HAesWCEdqI1bY5Lwi8Hg" name="A_utilizedElement_manifestation" memberEnd="_g_HAdsWCEdqI1bY5Lwi8Hg _g_HAfMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAe8WCEdqI1bY5Lwi8Hg" general="_g8lQw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_HAfMWCEdqI1bY5Lwi8Hg" type="_g_HAc8WCEdqI1bY5Lwi8Hg" association="_g_HAesWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAfcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAfsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1WLJ9xmEdqEPrOCkNZ5Vg" name="A_utilizedElement_manifestation" memberEnd="_M1WLI9xmEdqEPrOCkNZ5Vg _M1WLKdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLKNxmEdqEPrOCkNZ5Vg" general="_MyqqbdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1WLKdxmEdqEPrOCkNZ5Vg" type="_M1WLINxmEdqEPrOCkNZ5Vg" association="_M1WLJ9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLKtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLK9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_HAf8WCEdqI1bY5Lwi8Hg" name="A_nestedArtifact_artifact" memberEnd="_g_HAY8WCEdqI1bY5Lwi8Hg _g_HAgcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAgMWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_HAgcWCEdqI1bY5Lwi8Hg" type="_-lGRgHLzEdqziYxiZo0YtA" redefinedProperty="_g2eB4cWCEdqI1bY5Lwi8Hg" association="_g_HAf8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1WLLNxmEdqEPrOCkNZ5Vg" name="A_nestedArtifact_artifact" memberEnd="_M1WLENxmEdqEPrOCkNZ5Vg _M1WLLtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLLdxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1WLLtxmEdqEPrOCkNZ5Vg" type="_-lGRgHLzEdqziYxiZo0YtA" redefinedProperty="_Mtmkd9xmEdqEPrOCkNZ5Vg" association="_M1WLLNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_HAgsWCEdqI1bY5Lwi8Hg" name="A_manifestation_artifact" memberEnd="_g_HAZ8WCEdqI1bY5Lwi8Hg _g_HAhcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAg8WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAhMWCEdqI1bY5Lwi8Hg" general="_g8lQycWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_HAhcWCEdqI1bY5Lwi8Hg" type="_-lGRgHLzEdqziYxiZo0YtA" association="_g_HAgsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAhsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAh8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1WLL9xmEdqEPrOCkNZ5Vg" name="A_manifestation_artifact" memberEnd="_M1WLFNxmEdqEPrOCkNZ5Vg _M1WLMtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLMNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLMdxmEdqEPrOCkNZ5Vg" general="_Myqqc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1WLMtxmEdqEPrOCkNZ5Vg" type="_-lGRgHLzEdqziYxiZo0YtA" association="_M1WLL9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLM9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLNNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_HAiMWCEdqI1bY5Lwi8Hg" name="A_ownedOperation_artifact" memberEnd="_g_HAa8WCEdqI1bY5Lwi8Hg _g_HAjMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAicWCEdqI1bY5Lwi8Hg" general="_g2eB0sWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAisWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAi8WCEdqI1bY5Lwi8Hg" general="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_HAjMWCEdqI1bY5Lwi8Hg" type="_-lGRgHLzEdqziYxiZo0YtA" subsettedProperty="_g1H-IsWCEdqI1bY5Lwi8Hg _g2BWG8WCEdqI1bY5Lwi8Hg _g0-z88WCEdqI1bY5Lwi8Hg" association="_g_HAiMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAjcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAjsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1WLNdxmEdqEPrOCkNZ5Vg" name="A_ownedOperation_artifact" memberEnd="_M1WLGNxmEdqEPrOCkNZ5Vg _M1WLOdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLNtxmEdqEPrOCkNZ5Vg" general="_MtmkaNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLN9xmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLONxmEdqEPrOCkNZ5Vg" general="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1WLOdxmEdqEPrOCkNZ5Vg" type="_-lGRgHLzEdqziYxiZo0YtA" subsettedProperty="_MsjbWdxmEdqEPrOCkNZ5Vg _MtTCOdxmEdqEPrOCkNZ5Vg _MsQggtxmEdqEPrOCkNZ5Vg" association="_M1WLNdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLOtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLO9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_HAj8WCEdqI1bY5Lwi8Hg" name="A_ownedAttribute_artifact" memberEnd="_g_HAb8WCEdqI1bY5Lwi8Hg _g_HAksWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAkMWCEdqI1bY5Lwi8Hg" general="_g2UQvcWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAkcWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_HAksWCEdqI1bY5Lwi8Hg" type="_-lGRgHLzEdqziYxiZo0YtA" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg _g0-z88WCEdqI1bY5Lwi8Hg _g2UQwMWCEdqI1bY5Lwi8Hg" association="_g_HAj8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAk8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAlMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1WLPNxmEdqEPrOCkNZ5Vg" name="A_ownedAttribute_artifact" memberEnd="_M1WLHNxmEdqEPrOCkNZ5Vg _M1WLP9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLPdxmEdqEPrOCkNZ5Vg" general="_MtczPdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLPtxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1WLP9xmEdqEPrOCkNZ5Vg" type="_-lGRgHLzEdqziYxiZo0YtA" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg _MsQggtxmEdqEPrOCkNZ5Vg _MtczQNxmEdqEPrOCkNZ5Vg" association="_M1WLPNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLQNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLQdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_HAocWCEdqI1bY5Lwi8Hg" name="Node">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HAosWCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAocWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1WLTtxmEdqEPrOCkNZ5Vg" name="Node">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLT9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLTtxmEdqEPrOCkNZ5Vg">
<body>In the metamodel, a Node is a subclass of Class. It is associated with a Deployment of an Artifact. It is also associated with a set of Elements that are deployed on it. This is a derived association in that these PackageableElements are involved in a Manifestation of an Artifact that is deployed on the Node. Nodes may have an internal structure defined in terms of parts and connectors associated with them for advanced modeling applications.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_HAo8WCEdqI1bY5Lwi8Hg" name="internal_structure" constrainedElement="_g_HAocWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HApMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAo8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1WLUNxmEdqEPrOCkNZ5Vg" name="internal_structure" constrainedElement="_M1WLTtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLUdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLUNxmEdqEPrOCkNZ5Vg">
<body>The internal structure of a Node (if defined) consists solely of parts of type Node.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_HApcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1WLUtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HApsWCEdqI1bY5Lwi8Hg" general="_00owUGvdEdq4DLWZOhbdEA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAp8WCEdqI1bY5Lwi8Hg" general="_g_QxVsWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_HAqMWCEdqI1bY5Lwi8Hg" name="nestedNode" type="_g_HAocWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g_QxiMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HAqcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAqMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLU9xmEdqEPrOCkNZ5Vg" general="_00owUGvdEdq4DLWZOhbdEA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLVNxmEdqEPrOCkNZ5Vg" general="_M1f78NxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1WLVdxmEdqEPrOCkNZ5Vg" name="nestedNode" type="_M1WLTtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M1f8ItxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLVtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLVdxmEdqEPrOCkNZ5Vg">
<body>The Nodes that are defined (nested) within the Node.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAqsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAq8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLV9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLWNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_QxUMWCEdqI1bY5Lwi8Hg" name="Device">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_QxUcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_QxUMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1WLWdxmEdqEPrOCkNZ5Vg" name="Device">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLWtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLWdxmEdqEPrOCkNZ5Vg">
<body>A Device is a physical computational resource with processing capability upon which artifacts may be deployed for execution. Devices may be complex, i.e. they may consist of other devices. In the metamodel, a Device is a subclass of Node.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_QxUsWCEdqI1bY5Lwi8Hg" general="_g_HAocWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLW9xmEdqEPrOCkNZ5Vg" general="_M1WLTtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_QxU8WCEdqI1bY5Lwi8Hg" name="ExecutionEnvironment">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_QxVMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_QxU8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1WLXNxmEdqEPrOCkNZ5Vg" name="ExecutionEnvironment">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLXdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLXNxmEdqEPrOCkNZ5Vg">
<body>In the metamodel, a ExecutionEnvironment is a subclass of Node. It is usually part of a general Node, representing the physical hardware environment on which the ExecutionEnvironment resides. In that environment, the ExecutionEnvironment implements a standard set of services that Components require at execution time (at the modeling level these services are usually implicit). For each component Deployment, aspects of these services may be determined by properties in a DeploymentSpecification for a particular kind of ExecutionEnvironment.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_QxVcWCEdqI1bY5Lwi8Hg" general="_g_HAocWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLXtxmEdqEPrOCkNZ5Vg" general="_M1WLTtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_QxVsWCEdqI1bY5Lwi8Hg" name="DeploymentTarget" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_QxV8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_QxVsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1f78NxmEdqEPrOCkNZ5Vg" name="DeploymentTarget" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f78dxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f78NxmEdqEPrOCkNZ5Vg">
<body>In the metamodel, DeploymentTarget is an abstract metaclass that is a specialization of NamedElement. A DeploymentTarget owns a set of Deployments.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_QxWMWCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_QxWcWCEdqI1bY5Lwi8Hg" name="deployment" type="_g_HAlsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg _g8bf18WCEdqI1bY5Lwi8Hg" association="_g_QxhcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_QxWsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_QxWcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1f78txmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1f789xmEdqEPrOCkNZ5Vg" name="deployment" type="_M1WLQ9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg _Myg5idxmEdqEPrOCkNZ5Vg" association="_M1f8H9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f79NxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f789xmEdqEPrOCkNZ5Vg">
<body>The set of Deployments for a DeploymentTarget.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_QxW8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_QxXMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1f79dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1f79txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_QxXcWCEdqI1bY5Lwi8Hg" name="deployedElement" type="_jKxnwGwLEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" association="_g_Qxi8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_QxXsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_QxXcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1f799xmEdqEPrOCkNZ5Vg" name="deployedElement" type="_jKxnwGwLEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" association="_M1f8JdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f7-NxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f799xmEdqEPrOCkNZ5Vg">
<body>The set of elements that are manifested in an Artifact that is involved in Deployment to a DeploymentTarget.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_QxX8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_QxYMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1f7-dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1f7-txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g_QxYcWCEdqI1bY5Lwi8Hg" name="deployedElement" isQuery="true" bodyCondition="_g_QxYsWCEdqI1bY5Lwi8Hg">
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_QxYsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g_QxYcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_QxY8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M1f7-9xmEdqEPrOCkNZ5Vg" name="deployedElement" isQuery="true" bodyCondition="_M1f7_NxmEdqEPrOCkNZ5Vg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1f7_NxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M1f7-9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1f7_dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = ((self.deployment->collect(deployedArtifact))->collect(manifestation))->collect(utilizedElement)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g_QxZMWCEdqI1bY5Lwi8Hg" type="_jKxnwGwLEdq7X4sGURiZYA" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_QxZcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_QxZsWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M1f7_txmEdqEPrOCkNZ5Vg" type="_jKxnwGwLEdq7X4sGURiZYA" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1f7_9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1f8ANxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_QxZ8WCEdqI1bY5Lwi8Hg" name="DeployedArtifact" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_QxaMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_QxZ8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1f8AdxmEdqEPrOCkNZ5Vg" name="DeployedArtifact" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8AtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8AdxmEdqEPrOCkNZ5Vg">
<body>In the metamodel, DeployedArtifact is an abstract metaclass that is a specialization of NamedElement. A DeployedArtifact is involved in one or more Deployments to a DeploymentTarget.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_QxacWCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1f8A9xmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_QxasWCEdqI1bY5Lwi8Hg" name="CommunicationPath">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_Qxa8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_QxasWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1f8BNxmEdqEPrOCkNZ5Vg" name="CommunicationPath">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8BdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8BNxmEdqEPrOCkNZ5Vg">
<body>In the metamodel, CommunicationPath is a subclass of Association.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_QxbMWCEdqI1bY5Lwi8Hg" name="association_ends" constrainedElement="_g_QxasWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_QxbcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_QxbMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1f8BtxmEdqEPrOCkNZ5Vg" name="association_ends" constrainedElement="_M1f8BNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8B9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8BtxmEdqEPrOCkNZ5Vg">
<body>The association ends of a CommunicationPath are typed by DeploymentTargets.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_QxbsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1f8CNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = self.endType->forAll (t | t.oclIsKindOf(DeploymentTarget))</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_Qxb8WCEdqI1bY5Lwi8Hg" general="_AwvxoGwNEdq7X4sGURiZYA"/>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g5JiUMWCEdqI1bY5Lwi8Hg" name="InstanceSpecification">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiUcWCEdqI1bY5Lwi8Hg" annotatedElement="_g5JiUMWCEdqI1bY5Lwi8Hg">
- <body>An instance specification specifies existence of an entity in a modeled system and completely or partially describes the entity.
-
-The description may include:
-
-
-
-- Classification of the entity by one or more classifiers of which the entity is an instance. If the only classifier specified is abstract, then the instance specification only partially describes the entity.
-
-- The kind of instance, based on its classifier or classifiers -- for example, an instance specification whose classifier is a class describes an object of that class, while an instance specification whose classifier is an association describes a link of that association.
-
-- Specification of values of structural features of the entity. Not all structural features of all classifiers of the instance specification need be represented by slots, in which case the instance specification is a partial description.
-
-- Specification of how to compute, derive or construct the instance (optional).
-
-
-
-InstanceSpecification is a concrete class.
-
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1f8CdxmEdqEPrOCkNZ5Vg" general="_AwvxoGwNEdq7X4sGURiZYA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mv1Y4NxmEdqEPrOCkNZ5Vg" name="InstanceSpecification">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y4dxmEdqEPrOCkNZ5Vg" annotatedElement="_Mv1Y4NxmEdqEPrOCkNZ5Vg">
+ <body>An instance specification specifies existence of an entity in a modeled system and completely or partially describes the entity.&#xD;
+The description may include:&#xD;
+&#xD;
+- Classification of the entity by one or more classifiers of which the entity is an instance. If the only classifier specified is abstract, then the instance specification only partially describes the entity.&#xD;
+- The kind of instance, based on its classifier or classifiers -- for example, an instance specification whose classifier is a class describes an object of that class, while an instance specification whose classifier is an association describes a link of that association.&#xD;
+- Specification of values of structural features of the entity. Not all structural features of all classifiers of the instance specification need be represented by slots, in which case the instance specification is a partial description.&#xD;
+- Specification of how to compute, derive or construct the instance (optional).&#xD;
+&#xD;
+InstanceSpecification is a concrete class.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_QxdcWCEdqI1bY5Lwi8Hg" annotatedElement="_g5JiUMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8D9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mv1Y4NxmEdqEPrOCkNZ5Vg">
<body>In the metamodel, InstanceSpecification is a specialization of DeploymentTarget and DeployedArtifact.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g5JiUsWCEdqI1bY5Lwi8Hg" name="defining_feature" constrainedElement="_g5JiUMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiU8WCEdqI1bY5Lwi8Hg" annotatedElement="_g5JiUsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mv1Y4txmEdqEPrOCkNZ5Vg" name="defining_feature" constrainedElement="_Mv1Y4NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y49xmEdqEPrOCkNZ5Vg" annotatedElement="_Mv1Y4txmEdqEPrOCkNZ5Vg">
<body>The defining feature of each slot is a structural feature (directly or inherited) of a classifier of the instance specification.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5JiVMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mv1Y5NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>slot->forAll(s | classifier->exists (c | c.allFeatures()->includes (s.definingFeature)))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g5JiVcWCEdqI1bY5Lwi8Hg" name="structural_feature" constrainedElement="_g5JiUMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiVsWCEdqI1bY5Lwi8Hg" annotatedElement="_g5JiVcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mv1Y5dxmEdqEPrOCkNZ5Vg" name="structural_feature" constrainedElement="_Mv1Y4NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y5txmEdqEPrOCkNZ5Vg" annotatedElement="_Mv1Y5dxmEdqEPrOCkNZ5Vg">
<body>One structural feature (including the same feature inherited from multiple classifiers) is the defining feature of at most one slot in an instance specification.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5JiV8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mv1Y59xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>classifier->forAll(c | (c.allFeatures()->forAll(f | slot->select(s | s.definingFeature = f)->size() &lt;= 1)))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_QxdsWCEdqI1bY5Lwi8Hg" name="deployment_target" constrainedElement="_g5JiUMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_Qxd8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_QxdsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1f8ENxmEdqEPrOCkNZ5Vg" name="deployment_target" constrainedElement="_Mv1Y4NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8EdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8ENxmEdqEPrOCkNZ5Vg">
<body>An InstanceSpecification can be a DeploymentTarget if it is the instance specification of a Node and functions as a part in the internal structure of an encompassing Node.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_QxeMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1f8EtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_QxecWCEdqI1bY5Lwi8Hg" name="deployment_artifact" constrainedElement="_g5JiUMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_QxesWCEdqI1bY5Lwi8Hg" annotatedElement="_g_QxecWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1f8E9xmEdqEPrOCkNZ5Vg" name="deployment_artifact" constrainedElement="_Mv1Y4NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8FNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8E9xmEdqEPrOCkNZ5Vg">
<body>An InstanceSpecification can be a DeployedArtifact if it is the instance specification of an Artifact.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_Qxe8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1f8FdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g5JiWMWCEdqI1bY5Lwi8Hg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_QxfMWCEdqI1bY5Lwi8Hg" general="_g_QxVsWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_QxfcWCEdqI1bY5Lwi8Hg" general="_g_QxZ8WCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5JiWcWCEdqI1bY5Lwi8Hg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_g6yhC8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiWsWCEdqI1bY5Lwi8Hg" annotatedElement="_g5JiWcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mv1Y6NxmEdqEPrOCkNZ5Vg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1f8FtxmEdqEPrOCkNZ5Vg" general="_M1f78NxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1f8F9xmEdqEPrOCkNZ5Vg" general="_M1f8AdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mv1Y6dxmEdqEPrOCkNZ5Vg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_MxLcpdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y6txmEdqEPrOCkNZ5Vg" annotatedElement="_Mv1Y6dxmEdqEPrOCkNZ5Vg">
<body>The classifier or classifiers of the represented instance. If multiple classifiers are specified, the instance is classified by all of them.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5JiW8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5JiXMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv1Y69xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv1Y7NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5JiXcWCEdqI1bY5Lwi8Hg" name="slot" type="_g5JiZcWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g6yhDcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiXsWCEdqI1bY5Lwi8Hg" annotatedElement="_g5JiXcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mv1Y7dxmEdqEPrOCkNZ5Vg" name="slot" type="_Mv1Y9dxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MxLcp9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y7txmEdqEPrOCkNZ5Vg" annotatedElement="_Mv1Y7dxmEdqEPrOCkNZ5Vg">
<body>A slot giving the value or values of a structural feature of the instance. An instance specification can have one slot per structural feature of its classifiers, including inherited features. It is not necessary to model a slot for each structural feature, in which case the instance specification is a partial description.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5JiX8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5JiYMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv1Y79xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv1Y8NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5JiYcWCEdqI1bY5Lwi8Hg" name="specification" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g7FcAcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiYsWCEdqI1bY5Lwi8Hg" annotatedElement="_g5JiYcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mv1Y8dxmEdqEPrOCkNZ5Vg" name="specification" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MxUmsNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y8txmEdqEPrOCkNZ5Vg" annotatedElement="_Mv1Y8dxmEdqEPrOCkNZ5Vg">
<body>A specification of how to compute, derive, or construct the instance.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5JiY8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5JiZMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv1Y89xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv1Y9NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_-lGRgHLzEdqziYxiZo0YtA" name="Artifact">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HAXMWCEdqI1bY5Lwi8Hg" annotatedElement="_-lGRgHLzEdqziYxiZo0YtA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLCdxmEdqEPrOCkNZ5Vg" annotatedElement="_-lGRgHLzEdqziYxiZo0YtA">
<body>In the metamodel, an Artifact is a Classifier that represents a physical entity. Artifacts may have Properties that represent features of the Artifact, and Operations that can be performed on its instances. Artifacts can be involved in Associations to other Artifacts, e.g. composition associations. Artifacts can be instantiated to represent detailed copy semantics, where different instances of the same Artifact may be deployed to various Node instances (and each may have separate property values, e.g. for a 'time-stamp' property.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_QxfsWCEdqI1bY5Lwi8Hg" annotatedElement="_-lGRgHLzEdqziYxiZo0YtA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8GNxmEdqEPrOCkNZ5Vg" annotatedElement="_-lGRgHLzEdqziYxiZo0YtA">
<body>As part of the Nodes package, an Artifact is extended to become the source of a deployment to a Node. This is achieved by specializing the abstract superclass.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAXcWCEdqI1bY5Lwi8Hg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_Qxf8WCEdqI1bY5Lwi8Hg" general="_g_QxZ8WCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_HAX8WCEdqI1bY5Lwi8Hg" name="fileName" type="_aAyVgGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HAYMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAX8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLCtxmEdqEPrOCkNZ5Vg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1f8GdxmEdqEPrOCkNZ5Vg" general="_M1f8AdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1WLDNxmEdqEPrOCkNZ5Vg" name="fileName" type="_aAyVgGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLDdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLDNxmEdqEPrOCkNZ5Vg">
<body>A concrete name that is used to refer to the Artifact in a physical context. Example: file system name, universal resource locator.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAYcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAYsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLDtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLD9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_HAY8WCEdqI1bY5Lwi8Hg" name="nestedArtifact" type="_-lGRgHLzEdqziYxiZo0YtA" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g_HAf8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HAZMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAY8WCEdqI1bY5Lwi8Hg">
- <body>The Artifacts that are defined (nested) within the Artifact.
-
-The association is a specialization of the ownedMember association from Namespace to NamedElement.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1WLENxmEdqEPrOCkNZ5Vg" name="nestedArtifact" type="_-lGRgHLzEdqziYxiZo0YtA" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M1WLLNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLEdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLENxmEdqEPrOCkNZ5Vg">
+ <body>The Artifacts that are defined (nested) within the Artifact.&#xD;
+The association is a specialization of the ownedMember association from Namespace to NamedElement.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAZcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAZsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLEtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLE9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_HAZ8WCEdqI1bY5Lwi8Hg" name="manifestation" type="_g_HAc8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g8bf18WCEdqI1bY5Lwi8Hg _g01DI8WCEdqI1bY5Lwi8Hg" association="_g_HAgsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HAaMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAZ8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1WLFNxmEdqEPrOCkNZ5Vg" name="manifestation" type="_M1WLINxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_Myg5idxmEdqEPrOCkNZ5Vg _MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M1WLL9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLFdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLFNxmEdqEPrOCkNZ5Vg">
<body>The set of model elements that are manifested in the Artifact. That is, these model elements are utilized in the construction (or generation) of the artifact.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAacWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAasWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLFtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLF9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_HAa8WCEdqI1bY5Lwi8Hg" name="ownedOperation" type="_M4X2IGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g0iIBMWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg" association="_g_HAiMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HAbMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAa8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1WLGNxmEdqEPrOCkNZ5Vg" name="ownedOperation" type="_M4X2IGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_Mrz0dtxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg" association="_M1WLNdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLGdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLGNxmEdqEPrOCkNZ5Vg">
<body>The Operations defined for the Artifact. The association is a specialization of the ownedMember association.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAbcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAbsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLGtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLG9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_HAb8WCEdqI1bY5Lwi8Hg" name="ownedAttribute" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g0iIAMWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg" association="_g_HAj8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HAcMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAb8WCEdqI1bY5Lwi8Hg">
- <body>The attributes or association ends defined for the Artifact.
-
-The association is a specialization of the ownedMember association.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1WLHNxmEdqEPrOCkNZ5Vg" name="ownedAttribute" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_Mrz0ctxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg" association="_M1WLPNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLHdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLHNxmEdqEPrOCkNZ5Vg">
+ <body>The attributes or association ends defined for the Artifact.&#xD;
+The association is a specialization of the ownedMember association.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAccWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAcsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLHtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLH9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_C-IuUHL0EdqziYxiZo0YtA" name="createOwnedOperation">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_C-IuUXL0EdqziYxiZo0YtA" type="_M4X2IGveEdq4DLWZOhbdEA" direction="return"/>
@@ -5141,2936 +5003,2877 @@ The association is a specialization of the ownedMember association.
<ownedParameter xmi:type="uml:Parameter" xmi:id="_U7wxhXL0EdqziYxiZo0YtA" name="upper" type="_dRZxsGvsEdqG6fBIPwe-mw" effect="read"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_QxgMWCEdqI1bY5Lwi8Hg" name="A_deployedArtifact_deployment" memberEnd="_g_HAmcWCEdqI1bY5Lwi8Hg _g_QxgsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_QxgcWCEdqI1bY5Lwi8Hg" general="_g8lQw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_QxgsWCEdqI1bY5Lwi8Hg" type="_g_HAlsWCEdqI1bY5Lwi8Hg" association="_g_QxgMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_Qxg8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_QxhMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1f8GtxmEdqEPrOCkNZ5Vg" name="A_deployedArtifact_deployment" memberEnd="_M1WLRtxmEdqEPrOCkNZ5Vg _M1f8HNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1f8G9xmEdqEPrOCkNZ5Vg" general="_MyqqbdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1f8HNxmEdqEPrOCkNZ5Vg" type="_M1WLQ9xmEdqEPrOCkNZ5Vg" association="_M1f8GtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1f8HdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1f8HtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_QxhcWCEdqI1bY5Lwi8Hg" name="A_deployment_location" memberEnd="_g_QxWcWCEdqI1bY5Lwi8Hg _g_HAncWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_QxhsWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_Qxh8WCEdqI1bY5Lwi8Hg" general="_g8lQycWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1f8H9xmEdqEPrOCkNZ5Vg" name="A_deployment_location" memberEnd="_M1WLStxmEdqEPrOCkNZ5Vg _M1f789xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1f8INxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1f8IdxmEdqEPrOCkNZ5Vg" general="_Myqqc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_QxiMWCEdqI1bY5Lwi8Hg" name="A_nestedNode_node" memberEnd="_g_HAqMWCEdqI1bY5Lwi8Hg _g_QxisWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_QxicWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_QxisWCEdqI1bY5Lwi8Hg" type="_g_HAocWCEdqI1bY5Lwi8Hg" redefinedProperty="_g2eB4cWCEdqI1bY5Lwi8Hg" association="_g_QxiMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1f8ItxmEdqEPrOCkNZ5Vg" name="A_nestedNode_node" memberEnd="_M1WLVdxmEdqEPrOCkNZ5Vg _M1f8JNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1f8I9xmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1f8JNxmEdqEPrOCkNZ5Vg" type="_M1WLTtxmEdqEPrOCkNZ5Vg" redefinedProperty="_Mtmkd9xmEdqEPrOCkNZ5Vg" association="_M1f8ItxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_Qxi8WCEdqI1bY5Lwi8Hg" name="A_deployedElement_deploymentTarget" memberEnd="_g_QxXcWCEdqI1bY5Lwi8Hg _g_QxjMWCEdqI1bY5Lwi8Hg" isDerived="true">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_QxjMWCEdqI1bY5Lwi8Hg" type="_g_QxVsWCEdqI1bY5Lwi8Hg" association="_g_Qxi8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_QxjcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_QxjsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1f8JdxmEdqEPrOCkNZ5Vg" name="A_deployedElement_deploymentTarget" memberEnd="_M1f799xmEdqEPrOCkNZ5Vg _M1f8JtxmEdqEPrOCkNZ5Vg" isDerived="true">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1f8JtxmEdqEPrOCkNZ5Vg" type="_M1f78NxmEdqEPrOCkNZ5Vg" association="_M1f8JdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1f8J9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1f8KNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_aiUMWCEdqI1bY5Lwi8Hg" name="InteractionUse">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiUcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiUMWCEdqI1bY5Lwi8Hg">
- <body>An InteractionUse refers to an Interaction. The InteractionUse is a shorthand for copying the contents of the referred Interaction where the InteractionUse is. To be accurate the copying must take into account substituting parameters with arguments and connect the formal gates with the actual ones.
-
-
-
-It is common to want to share portions of an interaction between several other interactions. An InteractionUse allows multiple interactions to reference an interaction that represents a common portion of their specification.
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1f8K9xmEdqEPrOCkNZ5Vg" name="InteractionUse">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8LNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8K9xmEdqEPrOCkNZ5Vg">
+ <body>An InteractionUse refers to an Interaction. The InteractionUse is a shorthand for copying the contents of the referred Interaction where the InteractionUse is. To be accurate the copying must take into account substituting parameters with arguments and connect the formal gates with the actual ones.&#xD;
+&#xD;
+It is common to want to share portions of an interaction between several other interactions. An InteractionUse allows multiple interactions to reference an interaction that represents a common portion of their specification.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aiUsWCEdqI1bY5Lwi8Hg" name="gates_match" constrainedElement="_g_aiUMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiU8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiUsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1f8LdxmEdqEPrOCkNZ5Vg" name="gates_match" constrainedElement="_M1f8K9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8LtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8LdxmEdqEPrOCkNZ5Vg">
<body>Actual Gates of the InteractionUse must match Formal Gates of the referred Interaction. Gates match when their names are equal.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aiVMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1f8L9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aiVcWCEdqI1bY5Lwi8Hg" name="all_lifelines" constrainedElement="_g_aiUMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiVsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiVcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1f8MNxmEdqEPrOCkNZ5Vg" name="all_lifelines" constrainedElement="_M1f8K9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8MdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8MNxmEdqEPrOCkNZ5Vg">
<body>The InteractionUse must cover all Lifelines of the enclosing Interaction which appear within the referred Interaction.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aiV8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1f8MtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aiWMWCEdqI1bY5Lwi8Hg" name="arguments_correspond_to_parameters" constrainedElement="_g_aiUMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiWcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiWMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1f8M9xmEdqEPrOCkNZ5Vg" name="arguments_correspond_to_parameters" constrainedElement="_M1f8K9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8NNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8M9xmEdqEPrOCkNZ5Vg">
<body>The arguments of the InteractionUse must correspond to parameters of the referred Interaction</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aiWsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1f8NdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aiW8WCEdqI1bY5Lwi8Hg" name="arguments_are_constants" constrainedElement="_g_aiUMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiXMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiW8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1f8NtxmEdqEPrOCkNZ5Vg" name="arguments_are_constants" constrainedElement="_M1f8K9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8N9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8NtxmEdqEPrOCkNZ5Vg">
<body>The arguments must only be constants, parameters of the enclosing Interaction or attributes of the classifier owning the enclosing Interaction.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aiXcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1f8ONxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_aiXsWCEdqI1bY5Lwi8Hg" general="_g9eBrMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_aiX8WCEdqI1bY5Lwi8Hg" name="refersTo" type="_g9U3wsWCEdqI1bY5Lwi8Hg" association="_g_jsd8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiYMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiX8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1f8OdxmEdqEPrOCkNZ5Vg" general="_MzaRgdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1f8OtxmEdqEPrOCkNZ5Vg" name="refersTo" type="_MzaRUdxmEdqEPrOCkNZ5Vg" association="_M1y24NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8O9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8OtxmEdqEPrOCkNZ5Vg">
<body>Refers to the Interaction that defines its meaning</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_aiYcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_aiYsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1f8PNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1f8PdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_aiY8WCEdqI1bY5Lwi8Hg" name="actualGate" type="_g_aipsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g_jsgMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiZMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiY8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1f8PtxmEdqEPrOCkNZ5Vg" name="actualGate" type="_M1pGD9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M1y26dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8P9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8PtxmEdqEPrOCkNZ5Vg">
<body>The actual gates of the InteractionUse</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_aiZcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_aiZsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1f8QNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1f8QdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_aiZ8WCEdqI1bY5Lwi8Hg" name="argument" type="_g71p8MWCEdqI1bY5Lwi8Hg" isOrdered="true" aggregation="composite" association="_g_jskMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiaMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiZ8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1f8QtxmEdqEPrOCkNZ5Vg" name="argument" type="_MyENl9xmEdqEPrOCkNZ5Vg" isOrdered="true" aggregation="composite" association="_M1y2-dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8Q9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8QtxmEdqEPrOCkNZ5Vg">
<body>The actual arguments of the Interaction</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_aiacWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_aiasWCEdqI1bY5Lwi8Hg"/>
- </ownedAttribute>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_aia8WCEdqI1bY5Lwi8Hg" name="PartDecomposition">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aibMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aia8WCEdqI1bY5Lwi8Hg">
- <body>PartDecomposition is a description of the internal interactions of one Lifeline relative to an Interaction.
-
-
-
-A Lifeline has a class associated as the type of the ConnectableElement that the Lifeline represents. That class may have an internal structure and the PartDecomposition is an Interaction that describes the behavior of that internal structure relative to the Interaction where the decomposition is referenced.
-
-
-
-A PartDecomposition is a specialization of InteractionUse. It associates with the ConnectableElement that it decomposes.
-
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1f8RNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1f8RdxmEdqEPrOCkNZ5Vg"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1f8RtxmEdqEPrOCkNZ5Vg" name="PartDecomposition">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8R9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8RtxmEdqEPrOCkNZ5Vg">
+ <body>PartDecomposition is a description of the internal interactions of one Lifeline relative to an Interaction.&#xD;
+&#xD;
+A Lifeline has a class associated as the type of the ConnectableElement that the Lifeline represents. That class may have an internal structure and the PartDecomposition is an Interaction that describes the behavior of that internal structure relative to the Interaction where the decomposition is referenced.&#xD;
+&#xD;
+A PartDecomposition is a specialization of InteractionUse. It associates with the ConnectableElement that it decomposes.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aibcWCEdqI1bY5Lwi8Hg" name="parts_of_internal_structures" constrainedElement="_g_aia8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aibsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aibcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1f8SNxmEdqEPrOCkNZ5Vg" name="parts_of_internal_structures" constrainedElement="_M1f8RtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8SdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8SNxmEdqEPrOCkNZ5Vg">
<body>PartDecompositions apply only to Parts that are Parts of Internal Structures not to Parts of Collaborations.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aib8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1f8StxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aicMWCEdqI1bY5Lwi8Hg" name="assume" constrainedElement="_g_aia8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiccWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aicMWCEdqI1bY5Lwi8Hg">
- <body>Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Within X there is a sequence of constructs along L (such constructs are CombinedFragments, InteractionUse and (plain) OccurrenceSpecifications). Then a corresponding sequence of constructs must appear within D, matched one-to-one in the same order.
-
-
-
-i) CombinedFragment covering L are matched with an extra-global CombinedFragment in D
-
-ii) An InteractionUse covering L are matched with a global (i.e. covering all Lifelines) InteractionUse in D.
-
-iii) A plain OccurrenceSpecification on L is considered an actualGate that must be matched by a formalGate of D
-
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1f8S9xmEdqEPrOCkNZ5Vg" name="assume" constrainedElement="_M1f8RtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8TNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8S9xmEdqEPrOCkNZ5Vg">
+ <body>Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Within X there is a sequence of constructs along L (such constructs are CombinedFragments, InteractionUse and (plain) OccurrenceSpecifications). Then a corresponding sequence of constructs must appear within D, matched one-to-one in the same order.&#xD;
+&#xD;
+i) CombinedFragment covering L are matched with an extra-global CombinedFragment in D&#xD;
+ii) An InteractionUse covering L are matched with a global (i.e. covering all Lifelines) InteractionUse in D.&#xD;
+iii) A plain OccurrenceSpecification on L is considered an actualGate that must be matched by a formalGate of D&#xD;
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aicsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1f8TdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aic8WCEdqI1bY5Lwi8Hg" name="commutativity_of_decomposition" constrainedElement="_g_aia8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aidMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aic8WCEdqI1bY5Lwi8Hg">
- <body>Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Assume also that there is within X an
-
-InteractionUse (say) U that covers L. According to the constraint above U will have a counterpart CU within D. Within the Interaction referenced by U, L should also be decomposed, and the decomposition should reference CU. (This rule is called commutativity of decomposition)
-
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1f8TtxmEdqEPrOCkNZ5Vg" name="commutativity_of_decomposition" constrainedElement="_M1f8RtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8T9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8TtxmEdqEPrOCkNZ5Vg">
+ <body>Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Assume also that there is within X an&#xD;
+InteractionUse (say) U that covers L. According to the constraint above U will have a counterpart CU within D. Within the Interaction referenced by U, L should also be decomposed, and the decomposition should reference CU. (This rule is called commutativity of decomposition)&#xD;
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aidcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1f8UNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_aidsWCEdqI1bY5Lwi8Hg" general="_g_aiUMWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1f8UdxmEdqEPrOCkNZ5Vg" general="_M1f8K9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_aid8WCEdqI1bY5Lwi8Hg" name="InteractionOperand">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aieMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aid8WCEdqI1bY5Lwi8Hg">
- <body>An InteractionOperand is contained in a CombinedFragment. An InteractionOperand represents one operand of the expression given by the enclosing CombinedFragment.
-
-
-
-An InteractionOperand is an InteractionFragment with an optional guard expression. An InteractionOperand may be
-
-guarded by a InteractionConstraint. Only InteractionOperands with a guard that evaluates to true at this point in the interaction will be considered for the production of the traces for the enclosing CombinedFragment.
-
-
-
-InteractionOperand contains an ordered set of InteractionFragments.
-
-
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1pF4NxmEdqEPrOCkNZ5Vg" name="InteractionOperand">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pF4dxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pF4NxmEdqEPrOCkNZ5Vg">
+ <body>An InteractionOperand is contained in a CombinedFragment. An InteractionOperand represents one operand of the expression given by the enclosing CombinedFragment. &#xD;
+&#xD;
+An InteractionOperand is an InteractionFragment with an optional guard expression. An InteractionOperand may be&#xD;
+guarded by a InteractionConstraint. Only InteractionOperands with a guard that evaluates to true at this point in the interaction will be considered for the production of the traces for the enclosing CombinedFragment.&#xD;
+&#xD;
+InteractionOperand contains an ordered set of InteractionFragments.&#xD;
+&#xD;
In Sequence Diagrams these InteractionFragments are ordered according to their geometrical position vertically. The geometrical position of the InteractionFragment is given by the topmost vertical coordinate of its contained OccurrenceSpecifications or symbols.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aiecWCEdqI1bY5Lwi8Hg" name="guard_directly_prior" constrainedElement="_g_aid8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiesWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiecWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pF4txmEdqEPrOCkNZ5Vg" name="guard_directly_prior" constrainedElement="_M1pF4NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pF49xmEdqEPrOCkNZ5Vg" annotatedElement="_M1pF4txmEdqEPrOCkNZ5Vg">
<body>The guard must be placed directly prior to (above) the OccurrenceSpecification that will become the first OccurrenceSpecification within this InteractionOperand.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aie8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pF5NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aifMWCEdqI1bY5Lwi8Hg" name="guard_contain_references" constrainedElement="_g_aid8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aifcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aifMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pF5dxmEdqEPrOCkNZ5Vg" name="guard_contain_references" constrainedElement="_M1pF4NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pF5txmEdqEPrOCkNZ5Vg" annotatedElement="_M1pF5dxmEdqEPrOCkNZ5Vg">
<body>The guard must contain only references to values local to the Lifeline on which it resides, or values global to the whole Interaction.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aifsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pF59xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_aif8WCEdqI1bY5Lwi8Hg" general="_g9eBrMWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_aigMWCEdqI1bY5Lwi8Hg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_aigcWCEdqI1bY5Lwi8Hg" name="guard" type="_g_aiicWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g_jsbcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aigsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aigcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1pF6NxmEdqEPrOCkNZ5Vg" general="_MzaRgdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1pF6dxmEdqEPrOCkNZ5Vg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1pF6txmEdqEPrOCkNZ5Vg" name="guard" type="_M1pF8txmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M1pGd9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pF69xmEdqEPrOCkNZ5Vg" annotatedElement="_M1pF6txmEdqEPrOCkNZ5Vg">
<body>Constraint of the operand.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_aig8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_aihMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1pF7NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1pF7dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_aihcWCEdqI1bY5Lwi8Hg" name="fragment" type="_g9eBrMWCEdqI1bY5Lwi8Hg" isOrdered="true" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g_jslMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aihsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aihcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1pF7txmEdqEPrOCkNZ5Vg" name="fragment" type="_MzaRgdxmEdqEPrOCkNZ5Vg" isOrdered="true" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M1y2_dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pF79xmEdqEPrOCkNZ5Vg" annotatedElement="_M1pF7txmEdqEPrOCkNZ5Vg">
<body>The fragments of the operand.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_aih8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_aiiMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1pF8NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1pF8dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_aiicWCEdqI1bY5Lwi8Hg" name="InteractionConstraint">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiisWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiicWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1pF8txmEdqEPrOCkNZ5Vg" name="InteractionConstraint">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pF89xmEdqEPrOCkNZ5Vg" annotatedElement="_M1pF8txmEdqEPrOCkNZ5Vg">
<body>An InteractionConstraint is a Boolean expression that guards an operand in a CombinedFragment. InteractionConstraint is a specialization of Constraint. Furthermore the InteractionConstraint contains two expressions designating the minimum and maximum number of times a loop CombinedFragment should execute.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aii8WCEdqI1bY5Lwi8Hg" name="dynamic_variables" constrainedElement="_g_aiicWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aijMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aii8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pF9NxmEdqEPrOCkNZ5Vg" name="dynamic_variables" constrainedElement="_M1pF8txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pF9dxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pF9NxmEdqEPrOCkNZ5Vg">
<body>The dynamic variables that take part in the constraint must be owned by the ConnectableElement corresponding to the covered Lifeline.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aijcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pF9txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aijsWCEdqI1bY5Lwi8Hg" name="global_data" constrainedElement="_g_aiicWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aij8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_aijsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pF99xmEdqEPrOCkNZ5Vg" name="global_data" constrainedElement="_M1pF8txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pF-NxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pF99xmEdqEPrOCkNZ5Vg">
<body>The constraint may contain references to global data or write-once data.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aikMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pF-dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aikcWCEdqI1bY5Lwi8Hg" name="minint_maxint" constrainedElement="_g_aiicWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiksWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aikcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pF-txmEdqEPrOCkNZ5Vg" name="minint_maxint" constrainedElement="_M1pF8txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pF-9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1pF-txmEdqEPrOCkNZ5Vg">
<body>Minint/maxint can only be present if the InteractionConstraint is associated with the operand of a loop CombinedFragment.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aik8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pF_NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_ailMWCEdqI1bY5Lwi8Hg" name="minint_non_negative" constrainedElement="_g_aiicWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_ailcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_ailMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pF_dxmEdqEPrOCkNZ5Vg" name="minint_non_negative" constrainedElement="_M1pF8txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pF_txmEdqEPrOCkNZ5Vg" annotatedElement="_M1pF_dxmEdqEPrOCkNZ5Vg">
<body>If minint is specified, then the expression must evaluate to a non-negative integer.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_ailsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pF_9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_ail8WCEdqI1bY5Lwi8Hg" name="maxint_positive" constrainedElement="_g_aiicWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aimMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_ail8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pGANxmEdqEPrOCkNZ5Vg" name="maxint_positive" constrainedElement="_M1pF8txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGAdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGANxmEdqEPrOCkNZ5Vg">
<body>If maxint is specified, then the expression must evaluate to a positive integer.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aimcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pGAtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aimsWCEdqI1bY5Lwi8Hg" name="maxint_greater_equal_minint" constrainedElement="_g_aiicWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aim8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_aimsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pGA9xmEdqEPrOCkNZ5Vg" name="maxint_greater_equal_minint" constrainedElement="_M1pF8txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGBNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGA9xmEdqEPrOCkNZ5Vg">
<body>If maxint is specified, then minint must be specified and the evaluation of maxint must be >= the evaluation of minint</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_ainMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pGBdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_aincWCEdqI1bY5Lwi8Hg" general="_g1ua0MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_ainsWCEdqI1bY5Lwi8Hg" name="minint" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g_jsisWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_ain8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_ainsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1pGBtxmEdqEPrOCkNZ5Vg" general="_Ms2WYtxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1pGB9xmEdqEPrOCkNZ5Vg" name="minint" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M1y289xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGCNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGB9xmEdqEPrOCkNZ5Vg">
<body>The minimum number of iterations of a loop</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_aioMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_aiocWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1pGCdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1pGCtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_aiosWCEdqI1bY5Lwi8Hg" name="maxint" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g_jsjcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aio8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiosWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1pGC9xmEdqEPrOCkNZ5Vg" name="maxint" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M1y29txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGDNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGC9xmEdqEPrOCkNZ5Vg">
<body>The maximum number of iterations of a loop</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_aipMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_aipcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1pGDdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1pGDtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_aipsWCEdqI1bY5Lwi8Hg" name="Gate">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aip8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_aipsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1pGD9xmEdqEPrOCkNZ5Vg" name="Gate">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGENxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGD9xmEdqEPrOCkNZ5Vg">
<body>A Gate is a connection point for relating a Message outside an InteractionFragment with a Message inside the InteractionFragment. Gate is a specialization of MessageEnd. Gates are connected through Messages. A Gate is actually a representative of an OccurrenceSpecification that is not in the same scope as the Gate. Gates play different roles: we have formal gates on Interactions, actual gates on InteractionUses, expression gates on CombinedFragments.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aiqMWCEdqI1bY5Lwi8Hg" name="messages_actual_gate" constrainedElement="_g_aipsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiqcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiqMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pGEdxmEdqEPrOCkNZ5Vg" name="messages_actual_gate" constrainedElement="_M1pGD9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGEtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGEdxmEdqEPrOCkNZ5Vg">
<body>The message leading to/from an actualGate of an InteractionUse must correspond to the message leading from/to the formalGate with the same name of the Interaction referenced by the InteractionUse.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aiqsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pGE9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aiq8WCEdqI1bY5Lwi8Hg" name="messages_combined_fragment" constrainedElement="_g_aipsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_airMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiq8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pGFNxmEdqEPrOCkNZ5Vg" name="messages_combined_fragment" constrainedElement="_M1pGD9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGFdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGFNxmEdqEPrOCkNZ5Vg">
<body>The message leading to/from an (expression) Gate within a CombinedFragment must correspond to the message leading from/to the CombinedFragment on its outside.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aircWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pGFtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_airsWCEdqI1bY5Lwi8Hg" general="_g9eCHMWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1pGF9xmEdqEPrOCkNZ5Vg" general="_MzkCZdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_air8WCEdqI1bY5Lwi8Hg" name="CombinedFragment">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aisMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_air8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1pGGNxmEdqEPrOCkNZ5Vg" name="CombinedFragment">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGGdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGGNxmEdqEPrOCkNZ5Vg">
<body>A combined fragment defines an expression of interaction fragments. A combined fragment is defined by an interaction operator and corresponding interaction operands. Through the use of CombinedFragments the user will be able to describe a number of traces in a compact and concise manner. CombinedFragment is a specialization of InteractionFragment.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aiscWCEdqI1bY5Lwi8Hg" name="opt_loop_break_neg" constrainedElement="_g_air8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aissWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiscWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pGGtxmEdqEPrOCkNZ5Vg" name="opt_loop_break_neg" constrainedElement="_M1pGGNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGG9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGGtxmEdqEPrOCkNZ5Vg">
<body>If the interactionOperator is opt, loop, break, or neg there must be exactly one operand</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_ais8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pGHNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aitMWCEdqI1bY5Lwi8Hg" name="minint_and_maxint" constrainedElement="_g_air8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aitcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aitMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pGHdxmEdqEPrOCkNZ5Vg" name="minint_and_maxint" constrainedElement="_M1pGGNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGHtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGHdxmEdqEPrOCkNZ5Vg">
<body>The InteractionConstraint with minint and maxint only apply when attached to an InteractionOperand where the interactionOperator is loop.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aitsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pGH9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_ait8WCEdqI1bY5Lwi8Hg" name="break" constrainedElement="_g_air8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiuMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_ait8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pGINxmEdqEPrOCkNZ5Vg" name="break" constrainedElement="_M1pGGNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGIdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGINxmEdqEPrOCkNZ5Vg">
<body>If the interactionOperator is break, the corresponding InteractionOperand must cover all Lifelines within the enclosing InteractionFragment.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aiucWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pGItxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_aiusWCEdqI1bY5Lwi8Hg" name="consider_and_ignore" constrainedElement="_g_air8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiu8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiusWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pGI9xmEdqEPrOCkNZ5Vg" name="consider_and_ignore" constrainedElement="_M1pGGNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGJNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGI9xmEdqEPrOCkNZ5Vg">
<body>The interaction operators 'consider' and 'ignore' can only be used for the CombineIgnoreFragment subtype of CombinedFragment</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_aivMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pGJdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>((interactionOperator = #consider) or (interactionOperator = #ignore)) implies oclsisTypeOf(CombineIgnoreFragment)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_aivcWCEdqI1bY5Lwi8Hg" general="_g9eBrMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_aivsWCEdqI1bY5Lwi8Hg" name="interactionOperator" type="_g_jsUcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiv8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_aivsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1pGJtxmEdqEPrOCkNZ5Vg" general="_MzaRgdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1pGJ9xmEdqEPrOCkNZ5Vg" name="interactionOperator" type="_M1pGW9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGKNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGJ9xmEdqEPrOCkNZ5Vg">
<body>Specifies the operation which defines the semantics of this combination of InteractionFragments.</body>
</ownedComment>
- <defaultValue xmi:type="uml:InstanceValue" xmi:id="_g_aiwMWCEdqI1bY5Lwi8Hg" type="_g_jsUcWCEdqI1bY5Lwi8Hg" instance="_g_jsU8WCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_M1pGKdxmEdqEPrOCkNZ5Vg" type="_M1pGW9xmEdqEPrOCkNZ5Vg" instance="_M1pGXdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_aiwcWCEdqI1bY5Lwi8Hg" name="operand" type="_g_aid8WCEdqI1bY5Lwi8Hg" isOrdered="true" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g_jscsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiwsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiwcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1pGKtxmEdqEPrOCkNZ5Vg" name="operand" type="_M1pF4NxmEdqEPrOCkNZ5Vg" isOrdered="true" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M1pGfNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGK9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGKtxmEdqEPrOCkNZ5Vg">
<body>The set of operands of the combined fragment.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_aiw8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_aixMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1pGLNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1pGLdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_aixcWCEdqI1bY5Lwi8Hg" name="cfragmentGate" type="_g_aipsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g_jse8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aixsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aixcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1pGLtxmEdqEPrOCkNZ5Vg" name="cfragmentGate" type="_M1pGD9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M1y25NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGL9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGLtxmEdqEPrOCkNZ5Vg">
<body>Specifies the gates that form the interface between this CombinedFragment and its surroundings</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_aix8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_aiyMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1pGMNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1pGMdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9U3wsWCEdqI1bY5Lwi8Hg" name="Interaction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9U3w8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9U3wsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzaRUdxmEdqEPrOCkNZ5Vg" name="Interaction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRUtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRUdxmEdqEPrOCkNZ5Vg">
<body>An interaction is a unit of behavior that focuses on the observable exchange of information between ConnectableElements. An Interaction is a specialization of InteractionFragment and of Behavior.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9U3xMWCEdqI1bY5Lwi8Hg" general="_g9eBrMWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9U3xcWCEdqI1bY5Lwi8Hg" general="_TUPtYGveEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9U3xsWCEdqI1bY5Lwi8Hg" name="lifeline" type="_g9eBkMWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g9xjkMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9U3x8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9U3xsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzaRU9xmEdqEPrOCkNZ5Vg" general="_MzaRgdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzaRVNxmEdqEPrOCkNZ5Vg" general="_TUPtYGveEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRVdxmEdqEPrOCkNZ5Vg" name="lifeline" type="_MzaRZdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_MztMNdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRVtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRVdxmEdqEPrOCkNZ5Vg">
<body>Specifies the participants in this Interaction.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9U3yMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9U3ycWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRV9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRWNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9U3ysWCEdqI1bY5Lwi8Hg" name="message" type="_gfgNwGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g9xjqMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9U3y8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9U3ysWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRWdxmEdqEPrOCkNZ5Vg" name="message" type="_gfgNwGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_MztMTdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRWtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRWdxmEdqEPrOCkNZ5Vg">
<body>The Messages contained in this Interaction.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9U3zMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9U3zcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRW9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRXNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9U3zsWCEdqI1bY5Lwi8Hg" name="fragment" type="_g9eBrMWCEdqI1bY5Lwi8Hg" isOrdered="true" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g9xjvsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9U3z8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9U3zsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRXdxmEdqEPrOCkNZ5Vg" name="fragment" type="_MzaRgdxmEdqEPrOCkNZ5Vg" isOrdered="true" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_MztMY9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRXtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRXdxmEdqEPrOCkNZ5Vg">
<body>The ordered set of fragments in the Interaction.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9U30MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9U30cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRX9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRYNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9U30sWCEdqI1bY5Lwi8Hg" name="action" type="_g71p8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g9xj2MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9U308WCEdqI1bY5Lwi8Hg" annotatedElement="_g9U30sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRYdxmEdqEPrOCkNZ5Vg" name="action" type="_MyENl9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MztMfdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRYtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRYdxmEdqEPrOCkNZ5Vg">
<body>Actions owned by the Interaction.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9U31MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9U31cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRY9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRZNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_aiycWCEdqI1bY5Lwi8Hg" name="formalGate" type="_g_aipsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g_jshcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiysWCEdqI1bY5Lwi8Hg" annotatedElement="_g_aiycWCEdqI1bY5Lwi8Hg">
- <body>Specifies the gates that form the message interface between this Interaction and any InteractionUses which reference it.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1pGMtxmEdqEPrOCkNZ5Vg" name="formalGate" type="_M1pGD9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M1y27txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGM9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGMtxmEdqEPrOCkNZ5Vg">
+ <body>Specifies the gates that form the message interface between this Interaction and any InteractionUses which reference it.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_aiy8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_aizMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1pGNNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1pGNdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9eBkMWCEdqI1bY5Lwi8Hg" name="Lifeline">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBkcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBkMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzaRZdxmEdqEPrOCkNZ5Vg" name="Lifeline">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRZtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRZdxmEdqEPrOCkNZ5Vg">
<body>A lifeline represents an individual participant in the Interaction. While Parts and StructuralFeatures may have multiplicity greater than 1, Lifelines represent only one interacting entity. Lifeline is a specialization of NamedElement. If the referenced ConnectableElement is multivalued (i.e. has a multiplicity > 1), then the Lifeline may have an expression (the 'selector') that specifies which particular part is represented by this Lifeline. If the selector is omitted this means that an arbitrary representative of the multivalued ConnectableElement is chosen.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aizcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBkMWCEdqI1bY5Lwi8Hg">
- <body>A lifeline represents an individual participant in the Interaction. While Parts and StructuralFeatures may have multiplicity greater than 1, Lifelines represent only one interacting entity. Lifeline is a specialization of NamedElement.
-
-
-
-If the referenced ConnectableElement is multivalued (i.e. has a multiplicity > 1), then the Lifeline may have an expression (the 'selector') that specifies which particular part is represented by this Lifeline.
-
-
-
-If the selector is omitted this means that an arbitrary representative of the multivalued ConnectableElement is chosen.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGNtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRZdxmEdqEPrOCkNZ5Vg">
+ <body>A lifeline represents an individual participant in the Interaction. While Parts and StructuralFeatures may have multiplicity greater than 1, Lifelines represent only one interacting entity. Lifeline is a specialization of NamedElement.&#xD;
+&#xD;
+If the referenced ConnectableElement is multivalued (i.e. has a multiplicity > 1), then the Lifeline may have an expression (the 'selector') that specifies which particular part is represented by this Lifeline.&#xD;
+&#xD;
+If the selector is omitted this means that an arbitrary representative of the multivalued ConnectableElement is chosen.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9eBksWCEdqI1bY5Lwi8Hg" name="interaction_uses_share_lifeline" constrainedElement="_g9eBkMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBk8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBksWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzaRZ9xmEdqEPrOCkNZ5Vg" name="interaction_uses_share_lifeline" constrainedElement="_MzaRZdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRaNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRZ9xmEdqEPrOCkNZ5Vg">
<body>If two (or more) InteractionUses within one Interaction, refer to Interactions with 'common Lifelines,' those Lifelines must also appear in the Interaction with the InteractionUses. By common Lifelines we mean Lifelines with the same selector and represents associations.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9eBlMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzaRadxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9eBlcWCEdqI1bY5Lwi8Hg" name="selector_specified" constrainedElement="_g9eBkMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBlsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBlcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzaRatxmEdqEPrOCkNZ5Vg" name="selector_specified" constrainedElement="_MzaRZdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRa9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRatxmEdqEPrOCkNZ5Vg">
<body>The selector for a Lifeline must only be specified if the referenced Part is multivalued.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9eBl8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzaRbNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(self.selector->isEmpty() implies not self.represents.isMultivalued()) or&#xA;(not self.selector->isEmpty() implies self.represents.isMultivalued())&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9eBmMWCEdqI1bY5Lwi8Hg" name="same_classifier" constrainedElement="_g9eBkMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBmcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBmMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzaRbdxmEdqEPrOCkNZ5Vg" name="same_classifier" constrainedElement="_MzaRZdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRbtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRbdxmEdqEPrOCkNZ5Vg">
<body>The classifier containing the referenced ConnectableElement must be the same classifier, or an ancestor, of the classifier that contains the interaction enclosing this lifeline.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9eBmsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzaRb9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>if (represents->notEmpty()) then&#xA;(if selector->notEmpty() then represents.isMultivalued() else not represents.isMultivalued())&#xA;</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9eBm8WCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eBnMWCEdqI1bY5Lwi8Hg" name="coveredBy" type="_g9eBrMWCEdqI1bY5Lwi8Hg" association="_g9ny_cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBncWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBnMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzaRcNxmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRcdxmEdqEPrOCkNZ5Vg" name="coveredBy" type="_MzaRgdxmEdqEPrOCkNZ5Vg" association="_MzkC2dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRctxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRcdxmEdqEPrOCkNZ5Vg">
<body>References the InteractionFragments in which this Lifeline takes part.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eBnsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eBn8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRc9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRdNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eBoMWCEdqI1bY5Lwi8Hg" name="represents" type="_g8ubCcWCEdqI1bY5Lwi8Hg" association="_g9nzCcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBocWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBoMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRddxmEdqEPrOCkNZ5Vg" name="represents" type="_My9lWNxmEdqEPrOCkNZ5Vg" association="_MztMMNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRdtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRddxmEdqEPrOCkNZ5Vg">
<body>References the ConnectableElement within the classifier that contains the enclosing interaction.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eBosWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eBo8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRd9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaReNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eBpMWCEdqI1bY5Lwi8Hg" name="interaction" type="_g9U3wsWCEdqI1bY5Lwi8Hg" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_g9xjkMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBpcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBpMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRedxmEdqEPrOCkNZ5Vg" name="interaction" type="_MzaRUdxmEdqEPrOCkNZ5Vg" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_MztMNdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRetxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRedxmEdqEPrOCkNZ5Vg">
<body>References the Interaction enclosing this Lifeline.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eBpsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eBp8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRe9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRfNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eBqMWCEdqI1bY5Lwi8Hg" name="selector" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g9xjn8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBqcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBqMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRfdxmEdqEPrOCkNZ5Vg" name="selector" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MztMRNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRftxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRfdxmEdqEPrOCkNZ5Vg">
<body>If the referenced ConnectableElement is multivalued, then this specifies the specific individual part within that set.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eBqsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eBq8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRf9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRgNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_aizsWCEdqI1bY5Lwi8Hg" name="decomposedAs" type="_g_aia8WCEdqI1bY5Lwi8Hg" association="_g_jsa8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_aiz8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_aizsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1pGN9xmEdqEPrOCkNZ5Vg" name="decomposedAs" type="_M1f8RtxmEdqEPrOCkNZ5Vg" association="_M1pGddxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGONxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGN9xmEdqEPrOCkNZ5Vg">
<body>References the Interaction that represents the decomposition.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_ai0MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_ai0cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1pGOdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1pGOtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_ai0sWCEdqI1bY5Lwi8Hg" name="Continuation">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_ai08WCEdqI1bY5Lwi8Hg" annotatedElement="_g_ai0sWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1pGO9xmEdqEPrOCkNZ5Vg" name="Continuation">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGPNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGO9xmEdqEPrOCkNZ5Vg">
<body>A Continuation is a syntactic way to define continuations of different branches of an Alternative CombinedFragment. Continuations is intuitively similar to labels representing intermediate points in a flow of control.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_ai1MWCEdqI1bY5Lwi8Hg" name="same_name" constrainedElement="_g_ai0sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_ai1cWCEdqI1bY5Lwi8Hg" annotatedElement="_g_ai1MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pGPdxmEdqEPrOCkNZ5Vg" name="same_name" constrainedElement="_M1pGO9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGPtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGPdxmEdqEPrOCkNZ5Vg">
<body>Continuations with the same name may only cover the same set of Lifelines (within one Classifier).</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_ai1sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pGP9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_ai18WCEdqI1bY5Lwi8Hg" name="global" constrainedElement="_g_ai0sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_ai2MWCEdqI1bY5Lwi8Hg" annotatedElement="_g_ai18WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pGQNxmEdqEPrOCkNZ5Vg" name="global" constrainedElement="_M1pGO9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGQdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGQNxmEdqEPrOCkNZ5Vg">
<body>Continuations are always global in the enclosing InteractionFragment e.g. it always covers all Lifelines covered by the enclosing InteractionFragment.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_ai2cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pGQtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_ai2sWCEdqI1bY5Lwi8Hg" name="first_or_last_interaction_fragment" constrainedElement="_g_ai0sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_ai28WCEdqI1bY5Lwi8Hg" annotatedElement="_g_ai2sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pGQ9xmEdqEPrOCkNZ5Vg" name="first_or_last_interaction_fragment" constrainedElement="_M1pGO9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGRNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGQ9xmEdqEPrOCkNZ5Vg">
<body>Continuations always occur as the very first InteractionFragment or the very last InteractionFragment of the enclosing InteractionFragment.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_ai3MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pGRdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_ai3cWCEdqI1bY5Lwi8Hg" general="_g9eBrMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_ai3sWCEdqI1bY5Lwi8Hg" name="setting" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_ai38WCEdqI1bY5Lwi8Hg" annotatedElement="_g_ai3sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1pGRtxmEdqEPrOCkNZ5Vg" general="_MzaRgdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1pGR9xmEdqEPrOCkNZ5Vg" name="setting" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGSNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGR9xmEdqEPrOCkNZ5Vg">
<body>True: when the Continuation is at the end of the enclosing InteractionFragment and False when it is in the beginning.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g_ai4MWCEdqI1bY5Lwi8Hg" value="true"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M1pGSdxmEdqEPrOCkNZ5Vg" value="true"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9eBrMWCEdqI1bY5Lwi8Hg" name="InteractionFragment" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBrcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBrMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzaRgdxmEdqEPrOCkNZ5Vg" name="InteractionFragment" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRgtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRgdxmEdqEPrOCkNZ5Vg">
<body>InteractionFragment is an abstract notion of the most general interaction unit. An interaction fragment is a piece of an interaction. Each interaction fragment is conceptually like an interaction by itself. InteractionFragment is an abstract class and a specialization of NamedElement.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9eBrsWCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eBr8WCEdqI1bY5Lwi8Hg" name="covered" type="_g9eBkMWCEdqI1bY5Lwi8Hg" association="_g9ny_cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBsMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBr8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzaRg9xmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRhNxmEdqEPrOCkNZ5Vg" name="covered" type="_MzaRZdxmEdqEPrOCkNZ5Vg" association="_MzkC2dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRhdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRhNxmEdqEPrOCkNZ5Vg">
<body>References the Lifelines that the InteractionFragment involves.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eBscWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eBssWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRhtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRh9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eBs8WCEdqI1bY5Lwi8Hg" name="generalOrdering" type="_g9eB8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g9xjucWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBtMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBs8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRiNxmEdqEPrOCkNZ5Vg" name="generalOrdering" type="_MzaRxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MztMXtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRidxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRiNxmEdqEPrOCkNZ5Vg">
<body>The general ordering relationships contained in this fragment.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eBtcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eBtsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRitxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRi9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9eBt8WCEdqI1bY5Lwi8Hg" name="enclosingInteraction" type="_g9U3wsWCEdqI1bY5Lwi8Hg" association="_g9xjvsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9eBuMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9eBt8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzaRjNxmEdqEPrOCkNZ5Vg" name="enclosingInteraction" type="_MzaRUdxmEdqEPrOCkNZ5Vg" association="_MztMY9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzaRjdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzaRjNxmEdqEPrOCkNZ5Vg">
<body>The Interaction enclosing this InteractionFragment.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9eBucWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9eBusWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzaRjtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzaRj9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_jsQMWCEdqI1bY5Lwi8Hg" name="enclosingOperand" type="_g_aid8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_g_jslMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsQcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsQMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1pGStxmEdqEPrOCkNZ5Vg" name="enclosingOperand" type="_M1pF4NxmEdqEPrOCkNZ5Vg" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_M1y2_dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGS9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGStxmEdqEPrOCkNZ5Vg">
<body>The operand enclosing this InteractionFragment (they may nest recursively)</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_jsQsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_jsQ8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1pGTNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1pGTdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_jsRMWCEdqI1bY5Lwi8Hg" name="ConsiderIgnoreFragment">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsRcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsRMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1pGTtxmEdqEPrOCkNZ5Vg" name="ConsiderIgnoreFragment">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGT9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGTtxmEdqEPrOCkNZ5Vg">
<body>A ConsiderIgnoreFragment is a kind of combined fragment that is used for the consider and ignore cases, which require lists of pertinent messages to be specified.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_jsRsWCEdqI1bY5Lwi8Hg" name="consider_or_ignore" constrainedElement="_g_jsRMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsR8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsRsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pGUNxmEdqEPrOCkNZ5Vg" name="consider_or_ignore" constrainedElement="_M1pGTtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGUdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGUNxmEdqEPrOCkNZ5Vg">
<body>The interaction operator of a ConsiderIgnoreFragment must be either 'consider' or 'ignore'.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_jsSMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pGUtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(interactionOperator = #consider) or (interactionOperator = #ignore)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_jsScWCEdqI1bY5Lwi8Hg" name="type" constrainedElement="_g_jsRMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsSsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsScWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1pGU9xmEdqEPrOCkNZ5Vg" name="type" constrainedElement="_M1pGTtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGVNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGU9xmEdqEPrOCkNZ5Vg">
<body>The NamedElements must be of a type of element that identifies a message (e.g., an Operation, Reception, or a Signal).</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_jsS8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1pGVdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>message->forAll(m | m.oclIsKindOf(Operation) or m.oclIsKindOf(Reception) or m.oclIsKindOf(Signal))</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_jsTMWCEdqI1bY5Lwi8Hg" general="_g_air8WCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_jsTcWCEdqI1bY5Lwi8Hg" name="message" type="_csVgUGvtEdqG6fBIPwe-mw" association="_g_jslsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsTsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsTcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1pGVtxmEdqEPrOCkNZ5Vg" general="_M1pGGNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1pGV9xmEdqEPrOCkNZ5Vg" name="message" type="_csVgUGvtEdqG6fBIPwe-mw" association="_M1y2_9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGWNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGV9xmEdqEPrOCkNZ5Vg">
<body>The set of messages that apply to this fragment</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_jsT8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_jsUMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1pGWdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1pGWtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Enumeration" xmi:id="_g_jsUcWCEdqI1bY5Lwi8Hg" name="InteractionOperatorKind">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsUsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsUcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_M1pGW9xmEdqEPrOCkNZ5Vg" name="InteractionOperatorKind">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGXNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGW9xmEdqEPrOCkNZ5Vg">
<body>InteractionOperatorKind is an enumeration designating the different kinds of operators of CombinedFragments. The InteractionOperand defines the type of operator of a CombinedFragment.</body>
</ownedComment>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g_jsU8WCEdqI1bY5Lwi8Hg" name="seq">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsVMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsU8WCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1pGXdxmEdqEPrOCkNZ5Vg" name="seq">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGXtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGXdxmEdqEPrOCkNZ5Vg">
<body>The interactionOperator seq designates that the CombinedFragment represents a weak sequencing between the behaviors of the operands.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g_jsVcWCEdqI1bY5Lwi8Hg" name="alt">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsVsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsVcWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1pGX9xmEdqEPrOCkNZ5Vg" name="alt">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGYNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGX9xmEdqEPrOCkNZ5Vg">
<body>The interactionOperator alt designates that the CombinedFragment represents a choice of behavior. At most one of the operands will be chosen. The chosen operand must have an explicit or implicit guard expression that evaluates to true at this point in the interaction. An implicit true guard is implied if the operand has no guard.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g_jsV8WCEdqI1bY5Lwi8Hg" name="opt">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsWMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsV8WCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1pGYdxmEdqEPrOCkNZ5Vg" name="opt">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGYtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGYdxmEdqEPrOCkNZ5Vg">
<body>The interactionOperator opt designates that the CombinedFragment represents a choice of behavior where either the (sole) operand happens or nothing happens. An option is semantically equivalent to an alternative CombinedFragment where there is one operand with non-empty content and the second operand is empty.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g_jsWcWCEdqI1bY5Lwi8Hg" name="break">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsWsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsWcWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1pGY9xmEdqEPrOCkNZ5Vg" name="break">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGZNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGY9xmEdqEPrOCkNZ5Vg">
<body>The interactionOperator break designates that the CombinedFragment represents a breaking scenario in the sense that the operand is a scenario that is performed instead of the remainder of the enclosing InteractionFragment. A break operator with a guard is chosen when the guard is true and the rest of the enclosing Interaction Fragment is ignored. When the guard of the break operand is false, the break operand is ignored and the rest of the enclosing InteractionFragment is chosen. The choice between a break operand without a guard and the rest of the enclosing InteractionFragment is done non-deterministically.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g_jsW8WCEdqI1bY5Lwi8Hg" name="par">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsXMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsW8WCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1pGZdxmEdqEPrOCkNZ5Vg" name="par">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGZtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGZdxmEdqEPrOCkNZ5Vg">
<body>The interactionOperator par designates that the CombinedFragment represents a parallel merge between the behaviors of the operands. The OccurrenceSpecifications of the different operands can be interleaved in any way as long as the ordering imposed by each operand as such is preserved.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g_jsXcWCEdqI1bY5Lwi8Hg" name="strict">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsXsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsXcWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1pGZ9xmEdqEPrOCkNZ5Vg" name="strict">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGaNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGZ9xmEdqEPrOCkNZ5Vg">
<body>The interactionOperator strict designates that the CombinedFragment represents a strict sequencing between the behaviors of the operands. The semantics of strict sequencing defines a strict ordering of the operands on the first level within the CombinedFragment with interactionOperator strict. Therefore OccurrenceSpecifications within contained CombinedFragment will not directly be compared with other OccurrenceSpecifications of the enclosing CombinedFragment.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g_jsX8WCEdqI1bY5Lwi8Hg" name="loop">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsYMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsX8WCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1pGadxmEdqEPrOCkNZ5Vg" name="loop">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGatxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGadxmEdqEPrOCkNZ5Vg">
<body>The interactionOperator loop designates that the CombinedFragment represents a loop. The loop operand will be repeated a number of times.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g_jsYcWCEdqI1bY5Lwi8Hg" name="critical">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsYsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsYcWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1pGa9xmEdqEPrOCkNZ5Vg" name="critical">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGbNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGa9xmEdqEPrOCkNZ5Vg">
<body>The interactionOperator critical designates that the CombinedFragment represents a critical region. A critical region means that the traces of the region cannot be interleaved by other OccurrenceSpecifications (on those Lifelines covered by the region). This means that the region is treated atomically by the enclosing fragment when determining the set of valid traces. Even though enclosing CombinedFragments may imply that some OccurrenceSpecifications may interleave into the region, such as e.g. with par-operator, this is prevented by defining a region.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g_jsY8WCEdqI1bY5Lwi8Hg" name="neg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsZMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsY8WCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1pGbdxmEdqEPrOCkNZ5Vg" name="neg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGbtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGbdxmEdqEPrOCkNZ5Vg">
<body>The interactionOperator neg designates that the CombinedFragment represents traces that are defined to be invalid.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g_jsZcWCEdqI1bY5Lwi8Hg" name="assert">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsZsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsZcWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1pGb9xmEdqEPrOCkNZ5Vg" name="assert">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGcNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGb9xmEdqEPrOCkNZ5Vg">
<body>The interactionOperator assert designates that the CombinedFragment represents an assertion. The sequences of the operand of the assertion are the only valid continuations. All other continuations result in an invalid trace.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g_jsZ8WCEdqI1bY5Lwi8Hg" name="ignore">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsaMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsZ8WCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1pGcdxmEdqEPrOCkNZ5Vg" name="ignore">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGctxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGcdxmEdqEPrOCkNZ5Vg">
<body>The interacionOperator ignore designates that there are some message types that are not shown within this combined fragment. These message types can be considered insignificant and are implicitly ignored if they appear in a corresponding execution. Alternatively, one can understand ignore to mean that the message types that are ignored can appear anywhere in the traces.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_g_jsacWCEdqI1bY5Lwi8Hg" name="consider">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_jsasWCEdqI1bY5Lwi8Hg" annotatedElement="_g_jsacWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M1pGc9xmEdqEPrOCkNZ5Vg" name="consider">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1pGdNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1pGc9xmEdqEPrOCkNZ5Vg">
<body>The interactionOperator consider designates which messages should be considered within this combined fragment. This is equivalent to defining every other message to be ignored.</body>
</ownedComment>
</ownedLiteral>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_jsa8WCEdqI1bY5Lwi8Hg" name="A_lifeline_decomposedAs" memberEnd="_g_aizsWCEdqI1bY5Lwi8Hg _g_jsbMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_jsbMWCEdqI1bY5Lwi8Hg" type="_g9eBkMWCEdqI1bY5Lwi8Hg" association="_g_jsa8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1pGddxmEdqEPrOCkNZ5Vg" name="A_lifeline_decomposedAs" memberEnd="_M1pGN9xmEdqEPrOCkNZ5Vg _M1pGdtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1pGdtxmEdqEPrOCkNZ5Vg" type="_MzaRZdxmEdqEPrOCkNZ5Vg" association="_M1pGddxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_jsbcWCEdqI1bY5Lwi8Hg" name="A_guard_interactionOperand" memberEnd="_g_aigcWCEdqI1bY5Lwi8Hg _g_jsb8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_jsbsWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_jsb8WCEdqI1bY5Lwi8Hg" type="_g_aid8WCEdqI1bY5Lwi8Hg" association="_g_jsbcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_jscMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_jsccWCEdqI1bY5Lwi8Hg" value="1"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1pGd9xmEdqEPrOCkNZ5Vg" name="A_guard_interactionOperand" memberEnd="_M1pF6txmEdqEPrOCkNZ5Vg _M1pGedxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1pGeNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1pGedxmEdqEPrOCkNZ5Vg" type="_M1pF4NxmEdqEPrOCkNZ5Vg" association="_M1pGd9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1pGetxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1pGe9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_jscsWCEdqI1bY5Lwi8Hg" name="A_operand_combinedFragment" memberEnd="_g_aiwcWCEdqI1bY5Lwi8Hg _g_jsdMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_jsc8WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_jsdMWCEdqI1bY5Lwi8Hg" type="_g_air8WCEdqI1bY5Lwi8Hg" association="_g_jscsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_jsdcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_jsdsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1pGfNxmEdqEPrOCkNZ5Vg" name="A_operand_combinedFragment" memberEnd="_M1pGKtxmEdqEPrOCkNZ5Vg _M1pGftxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1pGfdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1pGftxmEdqEPrOCkNZ5Vg" type="_M1pGGNxmEdqEPrOCkNZ5Vg" association="_M1pGfNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1pGf9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1pGgNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_jsd8WCEdqI1bY5Lwi8Hg" name="A_refersTo_interactionUse" memberEnd="_g_aiX8WCEdqI1bY5Lwi8Hg _g_jseMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_jseMWCEdqI1bY5Lwi8Hg" type="_g_aiUMWCEdqI1bY5Lwi8Hg" association="_g_jsd8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_jsecWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_jsesWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1y24NxmEdqEPrOCkNZ5Vg" name="A_refersTo_interactionUse" memberEnd="_M1f8OtxmEdqEPrOCkNZ5Vg _M1y24dxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1y24dxmEdqEPrOCkNZ5Vg" type="_M1f8K9xmEdqEPrOCkNZ5Vg" association="_M1y24NxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y24txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y249xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_jse8WCEdqI1bY5Lwi8Hg" name="A_cfragmentGate_combinedFragment" memberEnd="_g_aixcWCEdqI1bY5Lwi8Hg _g_jsfcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_jsfMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_jsfcWCEdqI1bY5Lwi8Hg" type="_g_air8WCEdqI1bY5Lwi8Hg" association="_g_jse8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_jsfsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_jsf8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1y25NxmEdqEPrOCkNZ5Vg" name="A_cfragmentGate_combinedFragment" memberEnd="_M1pGLtxmEdqEPrOCkNZ5Vg _M1y25txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1y25dxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1y25txmEdqEPrOCkNZ5Vg" type="_M1pGGNxmEdqEPrOCkNZ5Vg" association="_M1y25NxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y259xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y26NxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_jsgMWCEdqI1bY5Lwi8Hg" name="A_interactionUse_actualGate" memberEnd="_g_aiY8WCEdqI1bY5Lwi8Hg _g_jsgsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_jsgcWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_jsgsWCEdqI1bY5Lwi8Hg" type="_g_aiUMWCEdqI1bY5Lwi8Hg" association="_g_jsgMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_jsg8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_jshMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1y26dxmEdqEPrOCkNZ5Vg" name="A_interactionUse_actualGate" memberEnd="_M1f8PtxmEdqEPrOCkNZ5Vg _M1y269xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1y26txmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1y269xmEdqEPrOCkNZ5Vg" type="_M1f8K9xmEdqEPrOCkNZ5Vg" association="_M1y26dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y27NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y27dxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_jshcWCEdqI1bY5Lwi8Hg" name="A_formalGate_interaction" memberEnd="_g_aiycWCEdqI1bY5Lwi8Hg _g_jsh8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_jshsWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_jsh8WCEdqI1bY5Lwi8Hg" type="_g9U3wsWCEdqI1bY5Lwi8Hg" association="_g_jshcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_jsiMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_jsicWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1y27txmEdqEPrOCkNZ5Vg" name="A_formalGate_interaction" memberEnd="_M1pGMtxmEdqEPrOCkNZ5Vg _M1y28NxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1y279xmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1y28NxmEdqEPrOCkNZ5Vg" type="_MzaRUdxmEdqEPrOCkNZ5Vg" association="_M1y27txmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y28dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y28txmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_jsisWCEdqI1bY5Lwi8Hg" name="A_minint_interactionConstraint" memberEnd="_g_ainsWCEdqI1bY5Lwi8Hg _g_jsjMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_jsi8WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_jsjMWCEdqI1bY5Lwi8Hg" type="_g_aiicWCEdqI1bY5Lwi8Hg" association="_g_jsisWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1y289xmEdqEPrOCkNZ5Vg" name="A_minint_interactionConstraint" memberEnd="_M1pGB9xmEdqEPrOCkNZ5Vg _M1y29dxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1y29NxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1y29dxmEdqEPrOCkNZ5Vg" type="_M1pF8txmEdqEPrOCkNZ5Vg" association="_M1y289xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_jsjcWCEdqI1bY5Lwi8Hg" name="A_maxint_interactionConstraint" memberEnd="_g_aiosWCEdqI1bY5Lwi8Hg _g_jsj8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_jsjsWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_jsj8WCEdqI1bY5Lwi8Hg" type="_g_aiicWCEdqI1bY5Lwi8Hg" association="_g_jsjcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1y29txmEdqEPrOCkNZ5Vg" name="A_maxint_interactionConstraint" memberEnd="_M1pGC9xmEdqEPrOCkNZ5Vg _M1y2-NxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1y299xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1y2-NxmEdqEPrOCkNZ5Vg" type="_M1pF8txmEdqEPrOCkNZ5Vg" association="_M1y29txmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_jskMWCEdqI1bY5Lwi8Hg" name="A_argument_interactionUse" memberEnd="_g_aiZ8WCEdqI1bY5Lwi8Hg _g_jskcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_jskcWCEdqI1bY5Lwi8Hg" type="_g_aiUMWCEdqI1bY5Lwi8Hg" association="_g_jskMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_jsksWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_jsk8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1y2-dxmEdqEPrOCkNZ5Vg" name="A_argument_interactionUse" memberEnd="_M1f8QtxmEdqEPrOCkNZ5Vg _M1y2-txmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1y2-txmEdqEPrOCkNZ5Vg" type="_M1f8K9xmEdqEPrOCkNZ5Vg" association="_M1y2-dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y2-9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y2_NxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_jslMWCEdqI1bY5Lwi8Hg" name="A_fragment_enclosingOperand" memberEnd="_g_jsQMWCEdqI1bY5Lwi8Hg _g_aihcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g_jslcWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1y2_dxmEdqEPrOCkNZ5Vg" name="A_fragment_enclosingOperand" memberEnd="_M1pGStxmEdqEPrOCkNZ5Vg _M1pF7txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1y2_txmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g_jslsWCEdqI1bY5Lwi8Hg" name="A_message_considerIgnoreFragment" memberEnd="_g_jsTcWCEdqI1bY5Lwi8Hg _g_jsl8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_g_jsl8WCEdqI1bY5Lwi8Hg" type="_g_jsRMWCEdqI1bY5Lwi8Hg" association="_g_jslsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_jsmMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_jsmcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M1y2_9xmEdqEPrOCkNZ5Vg" name="A_message_considerIgnoreFragment" memberEnd="_M1pGV9xmEdqEPrOCkNZ5Vg _M1y3ANxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M1y3ANxmEdqEPrOCkNZ5Vg" type="_M1pGTtxmEdqEPrOCkNZ5Vg" association="_M1y2_9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y3AdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y3AtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_tdQMWCEdqI1bY5Lwi8Hg" name="CreateObjectAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdQcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdQMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1y3A9xmEdqEPrOCkNZ5Vg" name="CreateObjectAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3BNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3A9xmEdqEPrOCkNZ5Vg">
<body>CreateObjectAction is an action that creates an object that conforms to a statically specified classifier and puts it on an output pin at runtime.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdQsWCEdqI1bY5Lwi8Hg" name="classifier_not_abstract" constrainedElement="_g_tdQMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdQ8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdQsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3BdxmEdqEPrOCkNZ5Vg" name="classifier_not_abstract" constrainedElement="_M1y3A9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3BtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3BdxmEdqEPrOCkNZ5Vg">
<body>The classifier cannot be abstract.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdRMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3B9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>not (self.classifier.isAbstract = #true)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdRcWCEdqI1bY5Lwi8Hg" name="classifier_not_association_class" constrainedElement="_g_tdQMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdRsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdRcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3CNxmEdqEPrOCkNZ5Vg" name="classifier_not_association_class" constrainedElement="_M1y3A9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3CdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3CNxmEdqEPrOCkNZ5Vg">
<body>The classifier cannot be an association class</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdR8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3CtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>not self.classifier.oclIsKindOf(AssociationClass)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdSMWCEdqI1bY5Lwi8Hg" name="same_type" constrainedElement="_g_tdQMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdScWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdSMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3C9xmEdqEPrOCkNZ5Vg" name="same_type" constrainedElement="_M1y3A9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3DNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3C9xmEdqEPrOCkNZ5Vg">
<body>The type of the result pin must be the same as the classifier of the action.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdSsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3DdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.type = self.classifier</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdS8WCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_g_tdQMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdTMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdS8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3DtxmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M1y3A9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3D9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3DtxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the output pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdTcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3ENxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_tdTsWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_tdT8WCEdqI1bY5Lwi8Hg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_hAAYgMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdUMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdT8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1y3EdxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1y3EtxmEdqEPrOCkNZ5Vg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M2FyGtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3E9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3EtxmEdqEPrOCkNZ5Vg">
<body>Classifier to be instantiated.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_tdUcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_tdUsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y3FNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y3FdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_tdU8WCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hAAYhMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdVMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdU8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1y3FtxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M2FyHtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3F9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3FtxmEdqEPrOCkNZ5Vg">
<body>Gives the output pin on which the result is put.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_tdVcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_tdVsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y3GNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y3GdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_tdV8WCEdqI1bY5Lwi8Hg" name="DestroyObjectAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdWMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdV8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1y3GtxmEdqEPrOCkNZ5Vg" name="DestroyObjectAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3G9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3GtxmEdqEPrOCkNZ5Vg">
<body>This action destroys the object on its input pin at runtime. The object may be a link object, in which case the semantics of DestroyLinkAction also applies.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdWcWCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_g_tdV8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdWsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdWcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3HNxmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M1y3GtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3HdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3HNxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the input pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdW8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3HtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.target.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdXMWCEdqI1bY5Lwi8Hg" name="no_type" constrainedElement="_g_tdV8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdXcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdXMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3H9xmEdqEPrOCkNZ5Vg" name="no_type" constrainedElement="_M1y3GtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3INxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3H9xmEdqEPrOCkNZ5Vg">
<body>The input pin has no type.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdXsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3IdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.target.type->size() = 0</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_tdX8WCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_tdYMWCEdqI1bY5Lwi8Hg" name="isDestroyLinks" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdYcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdYMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1y3ItxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1y3I9xmEdqEPrOCkNZ5Vg" name="isDestroyLinks" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3JNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3I9xmEdqEPrOCkNZ5Vg">
<body>Specifies whether links in which the object participates are destroyed along with the object.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g_tdYsWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M1y3JdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_tdY8WCEdqI1bY5Lwi8Hg" name="isDestroyOwnedObjects" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdZMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdY8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1y3JtxmEdqEPrOCkNZ5Vg" name="isDestroyOwnedObjects" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3J9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3JtxmEdqEPrOCkNZ5Vg">
<body>Specifies whether objects owned by the object are destroyed along with the object.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g_tdZcWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M1y3KNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_tdZsWCEdqI1bY5Lwi8Hg" name="target" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hAAYicWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdZ8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdZsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1y3KdxmEdqEPrOCkNZ5Vg" name="target" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M2FyI9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3KtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3KdxmEdqEPrOCkNZ5Vg">
<body>The input pin providing the object to be destroyed.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_tdaMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_tdacWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y3K9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y3LNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_tdasWCEdqI1bY5Lwi8Hg" name="TestIdentityAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tda8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdasWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1y3LdxmEdqEPrOCkNZ5Vg" name="TestIdentityAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3LtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3LdxmEdqEPrOCkNZ5Vg">
<body>This action returns true if the two input values are the same identity, false if they are not.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdbMWCEdqI1bY5Lwi8Hg" name="no_type" constrainedElement="_g_tdasWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdbcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdbMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3L9xmEdqEPrOCkNZ5Vg" name="no_type" constrainedElement="_M1y3LdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3MNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3L9xmEdqEPrOCkNZ5Vg">
<body>The input pins have no type.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdbsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3MdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.first.type->size() = 0&#xA;and self.second.type->size() = 0&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdb8WCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_g_tdasWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdcMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdb8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3MtxmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M1y3LdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3M9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3MtxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the input pins is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdccWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3NNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.first.multiplicity.is(1,1)&#xA;and self.second.multiplicity.is(1,1)&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdcsWCEdqI1bY5Lwi8Hg" name="result_is_boolean" constrainedElement="_g_tdasWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdc8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdcsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3NdxmEdqEPrOCkNZ5Vg" name="result_is_boolean" constrainedElement="_M1y3LdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3NtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3NdxmEdqEPrOCkNZ5Vg">
<body>The type of the result is Boolean.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tddMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3N9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.type.oclIsTypeOf(Boolean)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_tddcWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_tddsWCEdqI1bY5Lwi8Hg" name="first" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hAAYjsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdd8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_tddsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1y3ONxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1y3OdxmEdqEPrOCkNZ5Vg" name="first" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M2FyKNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3OtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3OdxmEdqEPrOCkNZ5Vg">
<body>Gives the pin on which an object is placed.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_tdeMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_tdecWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y3O9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y3PNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_tdesWCEdqI1bY5Lwi8Hg" name="second" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hAAYk8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tde8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdesWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1y3PdxmEdqEPrOCkNZ5Vg" name="second" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M2FyLdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3PtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3PdxmEdqEPrOCkNZ5Vg">
<body>Gives the pin on which an object is placed.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_tdfMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_tdfcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y3P9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y3QNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_tdfsWCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hAAYmMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdf8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdfsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1y3QdxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M2FyMtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3QtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3QdxmEdqEPrOCkNZ5Vg">
<body>Tells whether the two input objects are identical.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_tdgMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_tdgcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y3Q9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y3RNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_tdgsWCEdqI1bY5Lwi8Hg" name="ReadSelfAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdg8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdgsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1y3RdxmEdqEPrOCkNZ5Vg" name="ReadSelfAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3RtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3RdxmEdqEPrOCkNZ5Vg">
<body>Every action is ultimately a part of some behavior, which is in turn optionally attached in some way to the specification of a classifier; for example as the body of a method or as part of a state machine. When the behavior executes, it does so in the context of some specific host instance of that classifier. This action produces this host instance, if any, on its output pin. The type of the output pin is the classifier to which the behavior is associated in the user model.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdhMWCEdqI1bY5Lwi8Hg" name="contained" constrainedElement="_g_tdgsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdhcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdhMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3R9xmEdqEPrOCkNZ5Vg" name="contained" constrainedElement="_M1y3RdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3SNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3R9xmEdqEPrOCkNZ5Vg">
<body>The action must be contained in an behavior that has a host classifier.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdhsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3SdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.context->size() = 1</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdh8WCEdqI1bY5Lwi8Hg" name="not_static" constrainedElement="_g_tdgsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdiMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdh8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3StxmEdqEPrOCkNZ5Vg" name="not_static" constrainedElement="_M1y3RdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3S9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3StxmEdqEPrOCkNZ5Vg">
<body>If the action is contained in an behavior that is acting as the body of a method, then the operation of the method must not be static.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdicWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3TNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdisWCEdqI1bY5Lwi8Hg" name="type" constrainedElement="_g_tdgsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdi8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdisWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3TdxmEdqEPrOCkNZ5Vg" name="type" constrainedElement="_M1y3RdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3TtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3TdxmEdqEPrOCkNZ5Vg">
<body>The type of the result output pin is the host classifier.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdjMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3T9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.type = self.context</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdjcWCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_g_tdgsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdjsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdjcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3UNxmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M1y3RdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3UdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3UNxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the result output pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdj8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3UtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_tdkMWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_tdkcWCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hAAYncWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdksWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdkcWCEdqI1bY5Lwi8Hg">
- <body>Gives the output pin on which the hosting object is placed.
-
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1y3U9xmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1y3VNxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M2FyN9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3VdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3VNxmEdqEPrOCkNZ5Vg">
+ <body>Gives the output pin on which the hosting object is placed.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_tdk8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_tdlMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y3VtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y3V9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_tdlcWCEdqI1bY5Lwi8Hg" name="StructuralFeatureAction" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdlsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdlcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1y3WNxmEdqEPrOCkNZ5Vg" name="StructuralFeatureAction" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3WdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3WNxmEdqEPrOCkNZ5Vg">
<body>This abstract action class statically specifies the structural feature being accessed. The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdl8WCEdqI1bY5Lwi8Hg" name="not_static" constrainedElement="_g_tdlcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdmMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdl8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3WtxmEdqEPrOCkNZ5Vg" name="not_static" constrainedElement="_M1y3WNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3W9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3WtxmEdqEPrOCkNZ5Vg">
<body>The structural feature must not be static.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdmcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3XNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.structuralFeature.isStatic = #false</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdmsWCEdqI1bY5Lwi8Hg" name="same_type" constrainedElement="_g_tdlcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdm8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdmsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3XdxmEdqEPrOCkNZ5Vg" name="same_type" constrainedElement="_M1y3WNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3XtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3XdxmEdqEPrOCkNZ5Vg">
<body>The type of the object input pin is the same as the classifier of the object passed on this pin.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdnMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3X9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdncWCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_g_tdlcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdnsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdncWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3YNxmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M1y3WNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3YdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3YNxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the input pin must be 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdn8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3YtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.object.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdoMWCEdqI1bY5Lwi8Hg" name="visibility" constrainedElement="_g_tdlcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdocWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdoMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3Y9xmEdqEPrOCkNZ5Vg" name="visibility" constrainedElement="_M1y3WNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3ZNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3Y9xmEdqEPrOCkNZ5Vg">
<body>Visibility of structural feature must allow access to the object performing the action.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdosWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3ZdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>let host : Classifier = self.context in&#xA;self.structuralFeature.visibility = #public&#xA;or host = self.structuralFeature.featuringClassifier.type&#xA;or (self.structuralFeature.visibility = #protected and host.allSupertypes&#xA;->includes(self.structuralFeature.featuringClassifier.type)))&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdo8WCEdqI1bY5Lwi8Hg" name="one_featuring_classifier" constrainedElement="_g_tdlcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdpMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdo8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1y3ZtxmEdqEPrOCkNZ5Vg" name="one_featuring_classifier" constrainedElement="_M1y3WNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3Z9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3ZtxmEdqEPrOCkNZ5Vg">
<body>A structural feature has exactly one featuringClassifier.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdpcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1y3aNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.structuralFeature.featuringClassifier->size() = 1</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_tdpsWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_tdp8WCEdqI1bY5Lwi8Hg" name="structuralFeature" type="_g1Ru5MWCEdqI1bY5Lwi8Hg" association="_hAAYosWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdqMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdp8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1y3adxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1y3atxmEdqEPrOCkNZ5Vg" name="structuralFeature" type="_Msjbc9xmEdqEPrOCkNZ5Vg" association="_M2FyPNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3a9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3atxmEdqEPrOCkNZ5Vg">
<body>Structural feature to be read.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_tdqcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_tdqsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y3bNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y3bdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_tdq8WCEdqI1bY5Lwi8Hg" name="object" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hAKJMMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdrMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdq8WCEdqI1bY5Lwi8Hg">
- <body>Gives the input pin from which the object whose structural feature is to be read or written is obtained.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1y3btxmEdqEPrOCkNZ5Vg" name="object" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M2FyQNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1y3b9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1y3btxmEdqEPrOCkNZ5Vg">
+ <body>Gives the input pin from which the object whose structural feature is to be read or written is obtained.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_tdrcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_tdrsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1y3cNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1y3cdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_tdr8WCEdqI1bY5Lwi8Hg" name="ReadStructuralFeatureAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdsMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdr8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M18n4NxmEdqEPrOCkNZ5Vg" name="ReadStructuralFeatureAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18n4dxmEdqEPrOCkNZ5Vg" annotatedElement="_M18n4NxmEdqEPrOCkNZ5Vg">
<body>This action reads the values of a structural feature, in order if the structural feature is ordered.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdscWCEdqI1bY5Lwi8Hg" name="type_and_ordering" constrainedElement="_g_tdr8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdssWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdscWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18n4txmEdqEPrOCkNZ5Vg" name="type_and_ordering" constrainedElement="_M18n4NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18n49xmEdqEPrOCkNZ5Vg" annotatedElement="_M18n4txmEdqEPrOCkNZ5Vg">
<body>The type and ordering of the result output pin are the same as the type and ordering of the structural feature.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tds8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18n5NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.type = self.structuralFeature.type&#xA;and self.result.ordering = self.structuralFeature.ordering&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_tdtMWCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_g_tdr8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tdtcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tdtMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18n5dxmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M18n4NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18n5txmEdqEPrOCkNZ5Vg" annotatedElement="_M18n5dxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the structural feature must be compatible with the multiplicity of the output pin.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_tdtsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18n59xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.structuralFeature.multiplicity.compatibleWith(self.result.multiplicity)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_tdt8WCEdqI1bY5Lwi8Hg" general="_g_tdlcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_tduMWCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hAKJNcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_tducWCEdqI1bY5Lwi8Hg" annotatedElement="_g_tduMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M18n6NxmEdqEPrOCkNZ5Vg" general="_M1y3WNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18n6dxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M2FyRdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18n6txmEdqEPrOCkNZ5Vg" annotatedElement="_M18n6dxmEdqEPrOCkNZ5Vg">
<body>Gives the output pin on which the result is put.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_tdusWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_tdu8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M18n69xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M18n7NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_2nMMWCEdqI1bY5Lwi8Hg" name="WriteStructuralFeatureAction" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nMcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nMMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M18n7dxmEdqEPrOCkNZ5Vg" name="WriteStructuralFeatureAction" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18n7txmEdqEPrOCkNZ5Vg" annotatedElement="_M18n7dxmEdqEPrOCkNZ5Vg">
<body>A write structural feature action operates on a structural feature of an object to modify its values. It has an input pin on which the value that will be added or removed is put. Other aspects of write structural feature actions are inherited from StructuralFeatureAction.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nMsWCEdqI1bY5Lwi8Hg" name="input_pin" constrainedElement="_g_2nMMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nM8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nMsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18n79xmEdqEPrOCkNZ5Vg" name="input_pin" constrainedElement="_M18n7dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18n8NxmEdqEPrOCkNZ5Vg" annotatedElement="_M18n79xmEdqEPrOCkNZ5Vg">
<body>The type input pin is the same as the classifier of the structural feature.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nNMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18n8dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.value.type = self.structuralFeature.featuringClassifier</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nNcWCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_g_2nMMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nNsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nNcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18n8txmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M18n7dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18n89xmEdqEPrOCkNZ5Vg" annotatedElement="_M18n8txmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the input pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nN8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18n9NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.value.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_2nOMWCEdqI1bY5Lwi8Hg" general="_g_tdlcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2nOcWCEdqI1bY5Lwi8Hg" name="value" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hAKJOsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nOsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nOcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M18n9dxmEdqEPrOCkNZ5Vg" general="_M1y3WNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18n9txmEdqEPrOCkNZ5Vg" name="value" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M2FyStxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18n99xmEdqEPrOCkNZ5Vg" annotatedElement="_M18n9txmEdqEPrOCkNZ5Vg">
<body>Value to be added or removed from the structural feature.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_2nO8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_2nPMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M18n-NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M18n-dxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_2nPcWCEdqI1bY5Lwi8Hg" name="ClearStructuralFeatureAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nPsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nPcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M18n-txmEdqEPrOCkNZ5Vg" name="ClearStructuralFeatureAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18n-9xmEdqEPrOCkNZ5Vg" annotatedElement="_M18n-txmEdqEPrOCkNZ5Vg">
<body>This action removes all values of a structural feature.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_2nP8WCEdqI1bY5Lwi8Hg" general="_g_tdlcWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M18n_NxmEdqEPrOCkNZ5Vg" general="_M1y3WNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_2nQMWCEdqI1bY5Lwi8Hg" name="RemoveStructuralFeatureValueAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nQcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nQMWCEdqI1bY5Lwi8Hg">
- <body>The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.
-
-
-
-Structural features are potentially multi-valued and ordered, and may support duplicates, so the action supports specification of removal points for new values. It also supports the removal of all duplicate values.
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_M18n_dxmEdqEPrOCkNZ5Vg" name="RemoveStructuralFeatureValueAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18n_txmEdqEPrOCkNZ5Vg" annotatedElement="_M18n_dxmEdqEPrOCkNZ5Vg">
+ <body>The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.&#xD;
+&#xD;
+Structural features are potentially multi-valued and ordered, and may support duplicates, so the action supports specification of removal points for new values. It also supports the removal of all duplicate values.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nQsWCEdqI1bY5Lwi8Hg" name="non_unique_removal" constrainedElement="_g_2nQMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nQ8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nQsWCEdqI1bY5Lwi8Hg">
- <body>Actions removing a value from ordered nonunique structural features must have a single removeAt input pin if isRemoveDuplicates is false. It must be of type Unlimited Natural with multiplicity 1..1. Otherwise, the action has no removeAt input pin.
-
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18n_9xmEdqEPrOCkNZ5Vg" name="non_unique_removal" constrainedElement="_M18n_dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oANxmEdqEPrOCkNZ5Vg" annotatedElement="_M18n_9xmEdqEPrOCkNZ5Vg">
+ <body>Actions removing a value from ordered nonunique structural features must have a single removeAt input pin if isRemoveDuplicates is false. It must be of type Unlimited Natural with multiplicity 1..1. Otherwise, the action has no removeAt input pin.&#xD;
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nRMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oAdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_2nRcWCEdqI1bY5Lwi8Hg" general="_g_2nMMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2nRsWCEdqI1bY5Lwi8Hg" name="isRemoveDuplicates" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nR8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nRsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M18oAtxmEdqEPrOCkNZ5Vg" general="_M18n7dxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18oA9xmEdqEPrOCkNZ5Vg" name="isRemoveDuplicates" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oBNxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oA9xmEdqEPrOCkNZ5Vg">
<body>Specifies whether to remove duplicates of the value in nonunique structural features.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g_2nSMWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M18oBdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2nScWCEdqI1bY5Lwi8Hg" name="removeAt" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hATTIMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nSsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nScWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18oBtxmEdqEPrOCkNZ5Vg" name="removeAt" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M2Pi9dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oB9xmEdqEPrOCkNZ5Vg" annotatedElement="_M18oBtxmEdqEPrOCkNZ5Vg">
<body>Specifies the position of an existing value to remove in ordered nonunique structural features. The type of the pin is UnlimitedNatural, but the value cannot be zero or unlimited.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_2nS8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_2nTMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M18oCNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M18oCdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_2nTcWCEdqI1bY5Lwi8Hg" name="AddStructuralFeatureValueAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nTsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nTcWCEdqI1bY5Lwi8Hg">
- <body>Structural Features are potentially multi-valued and ordered, so the action supports specification of insertion points for new values. It also supports the removal of existing values of the structural feature before the new value is added.
-
-
-
-The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_M18oCtxmEdqEPrOCkNZ5Vg" name="AddStructuralFeatureValueAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oC9xmEdqEPrOCkNZ5Vg" annotatedElement="_M18oCtxmEdqEPrOCkNZ5Vg">
+ <body>Structural Features are potentially multi-valued and ordered, so the action supports specification of insertion points for new values. It also supports the removal of existing values of the structural feature before the new value is added.&#xD;
+&#xD;
+The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nT8WCEdqI1bY5Lwi8Hg" name="unlimited_natural_and_multiplicity" constrainedElement="_g_2nTcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nUMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nT8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oDNxmEdqEPrOCkNZ5Vg" name="unlimited_natural_and_multiplicity" constrainedElement="_M18oCtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oDdxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oDNxmEdqEPrOCkNZ5Vg">
<body>Actions adding a value to ordered structural features must have a single input pin for the insertion point with type UnlimitedNatural and multiplicity of 1..1, otherwise the action has no input pin for the insertion point.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nUcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oDtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>let insertAtPins : Collection = self.insertAt in&#xA;if self.structuralFeature.isOrdered = #false&#xA;then insertAtPins->size() = 0&#xA;else let insertAtPin : InputPin= insertAt->asSequence()->first() in&#xA;insertAtPins->size() = 1&#xA;and insertAtPin.type = UnlimitedNatural&#xA;and insertAtPin.multiplicity.is(1,1))&#xA;endif&#xA;</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_2nUsWCEdqI1bY5Lwi8Hg" general="_g_2nMMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2nU8WCEdqI1bY5Lwi8Hg" name="isReplaceAll" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nVMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nU8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M18oD9xmEdqEPrOCkNZ5Vg" general="_M18n7dxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18oENxmEdqEPrOCkNZ5Vg" name="isReplaceAll" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oEdxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oENxmEdqEPrOCkNZ5Vg">
<body>Specifies whether existing values of the structural feature of the object should be removed before adding the new value.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g_2nVcWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M18oEtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2nVsWCEdqI1bY5Lwi8Hg" name="insertAt" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hAKJP8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nV8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nVsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18oE9xmEdqEPrOCkNZ5Vg" name="insertAt" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M2FyT9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oFNxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oE9xmEdqEPrOCkNZ5Vg">
<body>Gives the position at which to insert a new value or move an existing value in ordered structural features. The type of the pin is UnlimitedNatural, but the value cannot be zero. This pin is omitted for unordered structural features.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_2nWMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_2nWcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M18oFdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M18oFtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_2nWsWCEdqI1bY5Lwi8Hg" name="LinkAction" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nW8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nWsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M18oF9xmEdqEPrOCkNZ5Vg" name="LinkAction" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oGNxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oF9xmEdqEPrOCkNZ5Vg">
<body>A link action creates, destroys, or reads links, identifying a link by its end objects and qualifier values, if any.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nXMWCEdqI1bY5Lwi8Hg" name="same_association" constrainedElement="_g_2nWsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nXcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nXMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oGdxmEdqEPrOCkNZ5Vg" name="same_association" constrainedElement="_M18oF9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oGtxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oGdxmEdqEPrOCkNZ5Vg">
<body>The association ends of the link end data must all be from the same association and include all and only the association ends of that association.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nXsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oG9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.endData->collect(end) = self.association()->collect(connection))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nX8WCEdqI1bY5Lwi8Hg" name="not_static" constrainedElement="_g_2nWsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nYMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nX8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oHNxmEdqEPrOCkNZ5Vg" name="not_static" constrainedElement="_M18oF9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oHdxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oHNxmEdqEPrOCkNZ5Vg">
<body>The association ends of the link end data must not be static.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nYcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oHtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.endData->forall(end.oclisKindOf(NavigableEnd) implies end.isStatic = #false</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nYsWCEdqI1bY5Lwi8Hg" name="same_pins" constrainedElement="_g_2nWsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nY8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nYsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oH9xmEdqEPrOCkNZ5Vg" name="same_pins" constrainedElement="_M18oF9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oINxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oH9xmEdqEPrOCkNZ5Vg">
<body>The input pins of the action are the same as the pins of the link end data and insertion pins.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nZMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oIdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.input->asSet() =&#xA;let ledpins : Set = self.endData->collect(value) in&#xA;if self.oclIsKindOf(LinkEndCreationData)&#xA;then ledpins->union(self.endData.oclAsType(LinkEndCreationData).insertAt)&#xA;else ledpins&#xA;</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_2nZcWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2nZsWCEdqI1bY5Lwi8Hg" name="endData" type="_g_2nc8WCEdqI1bY5Lwi8Hg" aggregation="composite" association="_hAKJRMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nZ8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nZsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M18oItxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18oI9xmEdqEPrOCkNZ5Vg" name="endData" type="_M18oMNxmEdqEPrOCkNZ5Vg" aggregation="composite" association="_M2FyVNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oJNxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oI9xmEdqEPrOCkNZ5Vg">
<body>Data identifying one end of a link by the objects on its ends and qualifiers.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_2naMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_2nacWCEdqI1bY5Lwi8Hg" value="2"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M18oJdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M18oJtxmEdqEPrOCkNZ5Vg" value="2"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2nasWCEdqI1bY5Lwi8Hg" name="inputValue" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hATTN8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2na8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nasWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18oJ9xmEdqEPrOCkNZ5Vg" name="inputValue" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M2PjDNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oKNxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oJ9xmEdqEPrOCkNZ5Vg">
<body>Pins taking end objects and qualifier values as input.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_2nbMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_2nbcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M18oKdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M18oKtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g_2nbsWCEdqI1bY5Lwi8Hg" name="association" isQuery="true" bodyCondition="_g_2ncMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nb8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nbsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M18oK9xmEdqEPrOCkNZ5Vg" name="association" isQuery="true" bodyCondition="_M18oLdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oLNxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oK9xmEdqEPrOCkNZ5Vg">
<body>The association operates on LinkAction. It returns the association of the action.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2ncMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g_2nbsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nccWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oLdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M18oK9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oLtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = self.endData->asSequence().first().end.association</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g_2ncsWCEdqI1bY5Lwi8Hg" type="_AwvxoGwNEdq7X4sGURiZYA" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M18oL9xmEdqEPrOCkNZ5Vg" type="_AwvxoGwNEdq7X4sGURiZYA" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_2nh8WCEdqI1bY5Lwi8Hg" name="ReadLinkAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2niMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nh8WCEdqI1bY5Lwi8Hg">
- <body>This action navigates an association towards one end, which is the end that does not have an input pin to take its object (the “open” end). The objects put on the result output pin are the ones participating in the association at the open end, conforming to the specified qualifiers, in order if the end is ordered. The semantics is undefined for reading a link that violates the navigability or visibility of the open end.</body>
+ <packagedElement xmi:type="uml:Class" xmi:id="_M18oRNxmEdqEPrOCkNZ5Vg" name="ReadLinkAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oRdxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oRNxmEdqEPrOCkNZ5Vg">
+ <body>This action navigates an association towards one end, which is the end that does not have an input pin to take its object (the open end). The objects put on the result output pin are the ones participating in the association at the open end, conforming to the specified qualifiers, in order if the end is ordered. The semantics is undefined for reading a link that violates the navigability or visibility of the open end.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nicWCEdqI1bY5Lwi8Hg" name="one_open_end" constrainedElement="_g_2nh8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nisWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nicWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oRtxmEdqEPrOCkNZ5Vg" name="one_open_end" constrainedElement="_M18oRNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oR9xmEdqEPrOCkNZ5Vg" annotatedElement="_M18oRtxmEdqEPrOCkNZ5Vg">
<body>Exactly one link-end data specification (the 'open' end) must not have an end object input pin.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2ni8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oSNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.endData->select(ed | ed.value->size() = 0)->size() = 1</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2njMWCEdqI1bY5Lwi8Hg" name="type_and_ordering" constrainedElement="_g_2nh8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2njcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2njMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oSdxmEdqEPrOCkNZ5Vg" name="type_and_ordering" constrainedElement="_M18oRNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oStxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oSdxmEdqEPrOCkNZ5Vg">
<body>The type and ordering of the result output pin are same as the type and ordering of the open association end.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2njsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oS9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>let openend : AssociationEnd = self.endData->select(ed | ed.value->size() = 0)->asSequence()->first().end in&#xA;self.result.type = openend.type&#xA;and self.result.ordering = openend.ordering&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nj8WCEdqI1bY5Lwi8Hg" name="compatible_multiplicity" constrainedElement="_g_2nh8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nkMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nj8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oTNxmEdqEPrOCkNZ5Vg" name="compatible_multiplicity" constrainedElement="_M18oRNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oTdxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oTNxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the open association end must be compatible with the multiplicity of the result output pin.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nkcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oTtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>let openend : AssociationEnd = self.endData->select(ed | ed.value->size() = 0)->asSequence()->first().end in&#xA;openend.multiplicity.compatibleWith(self.result.multiplicity)&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nksWCEdqI1bY5Lwi8Hg" name="navigable_open_end" constrainedElement="_g_2nh8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nk8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nksWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oT9xmEdqEPrOCkNZ5Vg" name="navigable_open_end" constrainedElement="_M18oRNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oUNxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oT9xmEdqEPrOCkNZ5Vg">
<body>The open end must be navigable.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nlMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oUdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>let openend : AssociationEnd = self.endData->select(ed | ed.value->size() = 0)->asSequence()->first().end in&#xA;openend.isNavigable()&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nlcWCEdqI1bY5Lwi8Hg" name="visibility" constrainedElement="_g_2nh8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nlsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nlcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oUtxmEdqEPrOCkNZ5Vg" name="visibility" constrainedElement="_M18oRNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oU9xmEdqEPrOCkNZ5Vg" annotatedElement="_M18oUtxmEdqEPrOCkNZ5Vg">
<body>Visibility of the open end must allow access to the object performing the action.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nl8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oVNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>let host : Classifier = self.context in&#xA;let openend : AssociationEnd = self.endData->select(ed | ed.value->size() = 0)->asSequence()->first().end in&#xA;openend.visibility = #public&#xA;or self.endData->exists(oed | not oed.end = openend&#xA;and (host = oed.end.participant&#xA;or (openend.visibility = #protected&#xA;and host.allSupertypes->includes(oed.end.participant))))&#xA;</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_2nmMWCEdqI1bY5Lwi8Hg" general="_g_2nWsWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2nmcWCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hAKJUMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nmsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nmcWCEdqI1bY5Lwi8Hg">
- <body>The pin on which are put the objects participating in the association at the end not specified by the inputs.
-
+ <generalization xmi:type="uml:Generalization" xmi:id="_M18oVdxmEdqEPrOCkNZ5Vg" general="_M18oF9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18oVtxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M2Pi1NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oV9xmEdqEPrOCkNZ5Vg" annotatedElement="_M18oVtxmEdqEPrOCkNZ5Vg">
+ <body>The pin on which are put the objects participating in the association at the end not specified by the inputs.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_2nm8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_2nnMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M18oWNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M18oWdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_2nncWCEdqI1bY5Lwi8Hg" name="LinkEndCreationData">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nnsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nncWCEdqI1bY5Lwi8Hg">
- <body>This class is required when using CreateLinkAction, to specify insertion points for ordered ends and for replacing all links at end. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, as required. This requires more than one piece of data, namely, the statically-specified end in the user model, the object on the end, and the qualifier values for that end. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.
-
-
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_M18oWtxmEdqEPrOCkNZ5Vg" name="LinkEndCreationData">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oW9xmEdqEPrOCkNZ5Vg" annotatedElement="_M18oWtxmEdqEPrOCkNZ5Vg">
+ <body>This class is required when using CreateLinkAction, to specify insertion points for ordered ends and for replacing all links at end. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, as required. This requires more than one piece of data, namely, the statically-specified end in the user model, the object on the end, and the qualifier values for that end. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xD;
+&#xD;
Qualifier values are used in CompleteActions to identify links to create.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nn8WCEdqI1bY5Lwi8Hg" name="create_link_action" constrainedElement="_g_2nncWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2noMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nn8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oXNxmEdqEPrOCkNZ5Vg" name="create_link_action" constrainedElement="_M18oWtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oXdxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oXNxmEdqEPrOCkNZ5Vg">
<body>LinkEndCreationData can only be end data for CreateLinkAction or one of its specializations.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nocWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oXtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.LinkAction.oclIsKindOf(CreateLinkAction)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nosWCEdqI1bY5Lwi8Hg" name="single_input_pin" constrainedElement="_g_2nncWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2no8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nosWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oX9xmEdqEPrOCkNZ5Vg" name="single_input_pin" constrainedElement="_M18oWtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oYNxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oX9xmEdqEPrOCkNZ5Vg">
<body>Link end creation data for ordered association ends must have a single input pin for the insertion point with type UnlimitedNatural and multiplicity of 1..1, otherwise the action has no input pin for the insertion point.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2npMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oYdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>let insertAtPins : Collection = self.insertAt in&#xA;if self.end.ordering = #unordered&#xA;then insertAtPins->size() = 0&#xA;else let insertAtPin : InputPin = insertAts->asSequence()->first() in&#xA;insertAtPins->size() = 1&#xA;and insertAtPin.type = UnlimitedNatural&#xA;and insertAtPin.multiplicity.is(1,1))&#xA;endif&#xA;</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_2npcWCEdqI1bY5Lwi8Hg" general="_g_2nc8WCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2npsWCEdqI1bY5Lwi8Hg" name="isReplaceAll" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2np8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_2npsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M18oYtxmEdqEPrOCkNZ5Vg" general="_M18oMNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18oY9xmEdqEPrOCkNZ5Vg" name="isReplaceAll" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oZNxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oY9xmEdqEPrOCkNZ5Vg">
<body>Specifies whether the existing links emanating from the object on this end should be destroyed before creating a new link.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g_2nqMWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M18oZdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2nqcWCEdqI1bY5Lwi8Hg" name="insertAt" type="_g7r5EsWCEdqI1bY5Lwi8Hg" association="_hAKJVcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nqsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nqcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18oZtxmEdqEPrOCkNZ5Vg" name="insertAt" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" association="_M2Pi2dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oZ9xmEdqEPrOCkNZ5Vg" annotatedElement="_M18oZtxmEdqEPrOCkNZ5Vg">
<body>Specifies where the new link should be inserted for ordered association ends, or where an existing link should be moved to. The type of the input is UnlimitedNatural, but the input cannot be zero. This pin is omitted for association ends that are not ordered.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_2nq8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_2nrMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M18oaNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M18oadxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_2nrcWCEdqI1bY5Lwi8Hg" name="CreateLinkAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nrsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nrcWCEdqI1bY5Lwi8Hg">
- <body>This action can be used to create links and link objects. There is no return value in either case. This is so that no change of the action is required if the association is changed to an association class or vice versa. CreateLinkAction uses a specialization of LinkEndData called LinkEndCreationData, to support ordered associations. The insertion point is specified at runtime by an additional input pin, which is required for ordered association ends and omitted for unordered ends. The insertion point is a positive integer giving the position to insert the link, or unlimited, to insert at the end. Reinserting an existing end at a new position in an ordered unique structural feature moves the end to that position. CreateLinkAction also uses LinkEndCreationData to support the destruction of existing links of the association that connect any of the objects of the new link. When the link is created, this option is available on an end-by-end basis, and causes all links of the association emanating from the
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_M18oatxmEdqEPrOCkNZ5Vg" name="CreateLinkAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oa9xmEdqEPrOCkNZ5Vg" annotatedElement="_M18oatxmEdqEPrOCkNZ5Vg">
+ <body>This action can be used to create links and link objects. There is no return value in either case. This is so that no change of the action is required if the association is changed to an association class or vice versa. CreateLinkAction uses a specialization of LinkEndData called LinkEndCreationData, to support ordered associations. The insertion point is specified at runtime by an additional input pin, which is required for ordered association ends and omitted for unordered ends. The insertion point is a positive integer giving the position to insert the link, or unlimited, to insert at the end. Reinserting an existing end at a new position in an ordered unique structural feature moves the end to that position. CreateLinkAction also uses LinkEndCreationData to support the destruction of existing links of the association that connect any of the objects of the new link. When the link is created, this option is available on an end-by-end basis, and causes all links of the association emanating from the &#xD;
specified ends to be destroyed before the new link is created.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2nr8WCEdqI1bY5Lwi8Hg" name="association_not_abstract" constrainedElement="_g_2nrcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nsMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nr8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18obNxmEdqEPrOCkNZ5Vg" name="association_not_abstract" constrainedElement="_M18oatxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18obdxmEdqEPrOCkNZ5Vg" annotatedElement="_M18obNxmEdqEPrOCkNZ5Vg">
<body>The association cannot be an abstract classifier.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nscWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18obtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.association().isAbstract = #false</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_2nssWCEdqI1bY5Lwi8Hg" general="_hAAYMMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2ns8WCEdqI1bY5Lwi8Hg" name="endData" type="_g_2nncWCEdqI1bY5Lwi8Hg" aggregation="composite" redefinedProperty="_g_2nZsWCEdqI1bY5Lwi8Hg" association="_hAKJWcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2ntMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2ns8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M18ob9xmEdqEPrOCkNZ5Vg" general="_M18oe9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18ocNxmEdqEPrOCkNZ5Vg" name="endData" type="_M18oWtxmEdqEPrOCkNZ5Vg" aggregation="composite" redefinedProperty="_M18oI9xmEdqEPrOCkNZ5Vg" association="_M2Pi3dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18ocdxmEdqEPrOCkNZ5Vg" annotatedElement="_M18ocNxmEdqEPrOCkNZ5Vg">
<body>Specifies ends of association and inputs.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_2ntcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_2ntsWCEdqI1bY5Lwi8Hg" value="2"/>
- </ownedAttribute>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_2nt8WCEdqI1bY5Lwi8Hg" name="DestroyLinkAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nuMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nt8WCEdqI1bY5Lwi8Hg">
- <body>This action destroys a link or a link object. Link objects can also be destroyed with DestroyObjectAction. The link is specified in the same way as link creation, even for link objects. This allows actions to remain unchanged when their associations are transformed from ordinary ones to association classes and vice versa.
-
-
-
-DestroyLinkAction uses a specialization of LinkEndData, called LinkEndDestructionData, to support ordered nonunique associations. The position of the link to be destroyed is specified at runtime by an additional input pin, which is required for ordered nonunique association ends and omitted for other kinds of ends. This is a positive integer giving the position of the link to destroy.
-
-
-
-DestroyLinkAction also uses LinkEndDestructionData to support the destruction of duplicate links of the association on ends that are nonunique. This option is available on an end-by-end basis, and causes all duplicate links of the association emanating from the specified ends to be destroyed.
-
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M18octxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M18oc9xmEdqEPrOCkNZ5Vg" value="2"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_M18odNxmEdqEPrOCkNZ5Vg" name="DestroyLinkAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oddxmEdqEPrOCkNZ5Vg" annotatedElement="_M18odNxmEdqEPrOCkNZ5Vg">
+ <body>This action destroys a link or a link object. Link objects can also be destroyed with DestroyObjectAction. The link is specified in the same way as link creation, even for link objects. This allows actions to remain unchanged when their associations are transformed from ordinary ones to association classes and vice versa.&#xD;
+&#xD;
+DestroyLinkAction uses a specialization of LinkEndData, called LinkEndDestructionData, to support ordered nonunique associations. The position of the link to be destroyed is specified at runtime by an additional input pin, which is required for ordered nonunique association ends and omitted for other kinds of ends. This is a positive integer giving the position of the link to destroy.&#xD;
+&#xD;
+DestroyLinkAction also uses LinkEndDestructionData to support the destruction of duplicate links of the association on ends that are nonunique. This option is available on an end-by-end basis, and causes all duplicate links of the association emanating from the specified ends to be destroyed.&#xD;
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_2nucWCEdqI1bY5Lwi8Hg" general="_hAAYMMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2nusWCEdqI1bY5Lwi8Hg" name="endData" type="_hAAYX8WCEdqI1bY5Lwi8Hg" aggregation="composite" redefinedProperty="_g_2nZsWCEdqI1bY5Lwi8Hg" association="_hATTKcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nu8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nusWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M18odtxmEdqEPrOCkNZ5Vg" general="_M18oe9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18od9xmEdqEPrOCkNZ5Vg" name="endData" type="_M2Fx-dxmEdqEPrOCkNZ5Vg" aggregation="composite" redefinedProperty="_M18oI9xmEdqEPrOCkNZ5Vg" association="_M2Pi_txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oeNxmEdqEPrOCkNZ5Vg" annotatedElement="_M18od9xmEdqEPrOCkNZ5Vg">
<body>Specifies ends of association and inputs.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_2nvMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_2nvcWCEdqI1bY5Lwi8Hg" value="2"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M18oedxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M18oetxmEdqEPrOCkNZ5Vg" value="2"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAAYMMWCEdqI1bY5Lwi8Hg" name="WriteLinkAction" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYMcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYMMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M18oe9xmEdqEPrOCkNZ5Vg" name="WriteLinkAction" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18ofNxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oe9xmEdqEPrOCkNZ5Vg">
<body>A write link action takes a complete identification of a link and creates or destroys it.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAAYMsWCEdqI1bY5Lwi8Hg" name="allow_access" constrainedElement="_hAAYMMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYM8WCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYMsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18ofdxmEdqEPrOCkNZ5Vg" name="allow_access" constrainedElement="_M18oe9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oftxmEdqEPrOCkNZ5Vg" annotatedElement="_M18ofdxmEdqEPrOCkNZ5Vg">
<body>The visibility of at least one end must allow access to the class using the action.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAAYNMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18of9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAAYNcWCEdqI1bY5Lwi8Hg" general="_g_2nWsWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M18ogNxmEdqEPrOCkNZ5Vg" general="_M18oF9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAAYNsWCEdqI1bY5Lwi8Hg" name="ClearAssociationAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYN8WCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYNsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2Fx0NxmEdqEPrOCkNZ5Vg" name="ClearAssociationAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx0dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx0NxmEdqEPrOCkNZ5Vg">
<body>This action destroys all links of an association that have a particular object at one end.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAAYOMWCEdqI1bY5Lwi8Hg" name="same_type" constrainedElement="_hAAYNsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYOcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYOMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2Fx0txmEdqEPrOCkNZ5Vg" name="same_type" constrainedElement="_M2Fx0NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx09xmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx0txmEdqEPrOCkNZ5Vg">
<body>The type of the input pin must be the same as the type of at least one of the association ends of the association.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAAYOsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2Fx1NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.association->exists(end.type = self.object.type)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAAYO8WCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_hAAYNsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYPMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYO8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2Fx1dxmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M2Fx0NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx1txmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx1dxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the input pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAAYPcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2Fx19xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.object.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAAYPsWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAAYP8WCEdqI1bY5Lwi8Hg" name="object" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hAKJXsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYQMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYP8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Fx2NxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Fx2dxmEdqEPrOCkNZ5Vg" name="object" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M2Pi4txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx2txmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx2dxmEdqEPrOCkNZ5Vg">
<body>Gives the input pin from which is obtained the object whose participation in the association is to be cleared.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYQcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYQsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Fx29xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Fx3NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAAYQ8WCEdqI1bY5Lwi8Hg" name="association" type="_AwvxoGwNEdq7X4sGURiZYA" association="_hAKJY8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYRMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYQ8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Fx3dxmEdqEPrOCkNZ5Vg" name="association" type="_AwvxoGwNEdq7X4sGURiZYA" association="_M2Pi59xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx3txmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx3dxmEdqEPrOCkNZ5Vg">
<body>Association to be cleared.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYRcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYRsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Fx39xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Fx4NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAAYR8WCEdqI1bY5Lwi8Hg" name="BroadcastSignalAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYSMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYR8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2Fx4dxmEdqEPrOCkNZ5Vg" name="BroadcastSignalAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx4txmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx4dxmEdqEPrOCkNZ5Vg">
<body>BroadcastSignalAction is an action that transmits a signal instance to all the potential target objects in the system, which may cause the firing of a state machine transitions or the execution of associated activities of a target object. The argument values are available to the execution of associated behaviors. The requestor continues execution immediately after the signals are sent out. It does not wait for receipt. Any reply messages are ignored and are not transmitted to the requestor.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAAYScWCEdqI1bY5Lwi8Hg" name="number_and_order" constrainedElement="_hAAYR8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYSsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYScWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2Fx49xmEdqEPrOCkNZ5Vg" name="number_and_order" constrainedElement="_M2Fx4dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx5NxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx49xmEdqEPrOCkNZ5Vg">
<body>The number and order of argument pins must be the same as the number and order of attributes in the signal.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAAYS8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2Fx5dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAAYTMWCEdqI1bY5Lwi8Hg" name="type_ordering_multiplicity" constrainedElement="_hAAYR8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYTcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYTMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2Fx5txmEdqEPrOCkNZ5Vg" name="type_ordering_multiplicity" constrainedElement="_M2Fx4dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx59xmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx5txmEdqEPrOCkNZ5Vg">
<body>The type, ordering, and multiplicity of an argument pin must be the same as the corresponding attribute of the signal.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAAYTsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2Fx6NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAAYT8WCEdqI1bY5Lwi8Hg" general="_g7r5FcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAAYUMWCEdqI1bY5Lwi8Hg" name="signal" type="_Pu3O0HL0EdqziYxiZo0YtA" association="_hAKJbcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYUcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYUMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Fx6dxmEdqEPrOCkNZ5Vg" general="_Mx7DyNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Fx6txmEdqEPrOCkNZ5Vg" name="signal" type="_Pu3O0HL0EdqziYxiZo0YtA" association="_M2Pi8dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx69xmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx6txmEdqEPrOCkNZ5Vg">
<body>The specification of signal object transmitted to the target objects.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYUsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYU8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Fx7NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Fx7dxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAAYVMWCEdqI1bY5Lwi8Hg" name="SendObjectAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYVcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYVMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2Fx7txmEdqEPrOCkNZ5Vg" name="SendObjectAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx79xmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx7txmEdqEPrOCkNZ5Vg">
<body>SendObjectAction is an action that transmits an object to the target object, where it may invoke behavior such as the firing of state machine transitions or the execution of an activity. The value of the object is available to the execution of invoked behaviors. The requestor continues execution immediately. Any reply message is ignored and is not transmitted to the requestor.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAAYVsWCEdqI1bY5Lwi8Hg" general="_g7r5FcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAAYV8WCEdqI1bY5Lwi8Hg" name="target" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hAKJZ8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYWMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYV8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Fx8NxmEdqEPrOCkNZ5Vg" general="_Mx7DyNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Fx8dxmEdqEPrOCkNZ5Vg" name="target" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M2Pi69xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx8txmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx8dxmEdqEPrOCkNZ5Vg">
<body>The target object to which the object is sent.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYWcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYWsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Fx89xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Fx9NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAAYW8WCEdqI1bY5Lwi8Hg" name="request" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" redefinedProperty="_g7r5GMWCEdqI1bY5Lwi8Hg" association="_hAKJasWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYXMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYW8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Fx9dxmEdqEPrOCkNZ5Vg" name="request" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" redefinedProperty="_Mx7Dy9xmEdqEPrOCkNZ5Vg" association="_M2Pi7txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx9txmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx9dxmEdqEPrOCkNZ5Vg">
<body>The request object, which is transmitted to the target object. The object may be copied in transmission, so identity might not be preserved. (Specialized from InvocationActon.argument)</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYXcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYXsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Fx99xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Fx-NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAAYX8WCEdqI1bY5Lwi8Hg" name="LinkEndDestructionData">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYYMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYX8WCEdqI1bY5Lwi8Hg">
- <body>This class is required when using DestroyLinkAction, to specify links to destroy for nonunique ordered ends. A link cannot be passed as a runtime value to or from an action.
-
-
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2Fx-dxmEdqEPrOCkNZ5Vg" name="LinkEndDestructionData">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx-txmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx-dxmEdqEPrOCkNZ5Vg">
+ <body>This class is required when using DestroyLinkAction, to specify links to destroy for nonunique ordered ends. A link cannot be passed as a runtime value to or from an action.&#xD;
+&#xD;
Qualifier values are used in CompleteActions to identify links to destroy.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAAYYcWCEdqI1bY5Lwi8Hg" name="destroy_link_action" constrainedElement="_hAAYX8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYYsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYYcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2Fx-9xmEdqEPrOCkNZ5Vg" name="destroy_link_action" constrainedElement="_M2Fx-dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx_NxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx-9xmEdqEPrOCkNZ5Vg">
<body>LinkEndDestructionData can only be end data for DestroyLinkAction or one of its specializations.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAAYY8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2Fx_dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAAYZMWCEdqI1bY5Lwi8Hg" name="unlimited_natural_and_multiplicity" constrainedElement="_hAAYX8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYZcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYZMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2Fx_txmEdqEPrOCkNZ5Vg" name="unlimited_natural_and_multiplicity" constrainedElement="_M2Fx-dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Fx_9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2Fx_txmEdqEPrOCkNZ5Vg">
<body>LinkEndDestructionData for ordered nonunique association ends must have a single destroyAt input pin if isDestroyDuplicates is false. It must be of type UnlimitedNatural and have a multiplicity of 1..1. Otherwise, the action has no input pin for the removal position.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAAYZsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2FyANxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAAYZ8WCEdqI1bY5Lwi8Hg" general="_g_2nc8WCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAAYaMWCEdqI1bY5Lwi8Hg" name="isDestroyDuplicates" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYacWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYaMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2FyAdxmEdqEPrOCkNZ5Vg" general="_M18oMNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2FyAtxmEdqEPrOCkNZ5Vg" name="isDestroyDuplicates" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2FyA9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2FyAtxmEdqEPrOCkNZ5Vg">
<body>Specifies whether to destroy duplicates of the value in nonunique association ends.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hAAYasWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M2FyBNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAAYa8WCEdqI1bY5Lwi8Hg" name="destroyAt" type="_g7r5EsWCEdqI1bY5Lwi8Hg" association="_hATTJcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYbMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYa8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2FyBdxmEdqEPrOCkNZ5Vg" name="destroyAt" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" association="_M2Pi-txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2FyBtxmEdqEPrOCkNZ5Vg" annotatedElement="_M2FyBdxmEdqEPrOCkNZ5Vg">
<body>Specifies the position of an existing link to be destroyed in ordered nonunique association ends. The type of the pin is UnlimitedNatural, but the value cannot be zero or unlimited.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYbcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYbsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyB9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyCNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAAYb8WCEdqI1bY5Lwi8Hg" name="ValueSpecificationAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYcMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYb8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2FyCdxmEdqEPrOCkNZ5Vg" name="ValueSpecificationAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2FyCtxmEdqEPrOCkNZ5Vg" annotatedElement="_M2FyCdxmEdqEPrOCkNZ5Vg">
<body>The action returns the result of evaluating a value specification.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAAYccWCEdqI1bY5Lwi8Hg" name="compatible_type" constrainedElement="_hAAYb8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYcsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYccWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2FyC9xmEdqEPrOCkNZ5Vg" name="compatible_type" constrainedElement="_M2FyCdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2FyDNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2FyC9xmEdqEPrOCkNZ5Vg">
<body>The type of value specification must be compatible with the type of the result pin.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAAYc8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2FyDdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAAYdMWCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_hAAYb8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYdcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYdMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2FyDtxmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M2FyCdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2FyD9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2FyDtxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the result pin is 1..1</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAAYdsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2FyENxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAAYd8WCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAAYeMWCEdqI1bY5Lwi8Hg" name="value" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" association="_hATTLsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYecWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYeMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2FyEdxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2FyEtxmEdqEPrOCkNZ5Vg" name="value" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" association="_M2PjA9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2FyE9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2FyEtxmEdqEPrOCkNZ5Vg">
<body>Value specification to be evaluated.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYesWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYe8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyFNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyFdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAAYfMWCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hATTMsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAAYfcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAAYfMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2FyFtxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M2PjB9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2FyF9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2FyFtxmEdqEPrOCkNZ5Vg">
<body>Gives the output pin on which the result is put.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYfsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYf8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyGNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyGdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAAYgMWCEdqI1bY5Lwi8Hg" name="A_classifier_createObjectAction" memberEnd="_g_tdT8WCEdqI1bY5Lwi8Hg _hAAYgcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAAYgcWCEdqI1bY5Lwi8Hg" type="_g_tdQMWCEdqI1bY5Lwi8Hg" association="_hAAYgMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYgsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYg8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyGtxmEdqEPrOCkNZ5Vg" name="A_classifier_createObjectAction" memberEnd="_M1y3EtxmEdqEPrOCkNZ5Vg _M2FyG9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyG9xmEdqEPrOCkNZ5Vg" type="_M1y3A9xmEdqEPrOCkNZ5Vg" association="_M2FyGtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyHNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyHdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAAYhMWCEdqI1bY5Lwi8Hg" name="A_result_createObjectAction" memberEnd="_g_tdU8WCEdqI1bY5Lwi8Hg _hAAYhsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAAYhcWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAAYhsWCEdqI1bY5Lwi8Hg" type="_g_tdQMWCEdqI1bY5Lwi8Hg" association="_hAAYhMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYh8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYiMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyHtxmEdqEPrOCkNZ5Vg" name="A_result_createObjectAction" memberEnd="_M1y3FtxmEdqEPrOCkNZ5Vg _M2FyINxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2FyH9xmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyINxmEdqEPrOCkNZ5Vg" type="_M1y3A9xmEdqEPrOCkNZ5Vg" association="_M2FyHtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyIdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyItxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAAYicWCEdqI1bY5Lwi8Hg" name="A_target_destroyObjectAction" memberEnd="_g_tdZsWCEdqI1bY5Lwi8Hg _hAAYi8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAAYisWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAAYi8WCEdqI1bY5Lwi8Hg" type="_g_tdV8WCEdqI1bY5Lwi8Hg" association="_hAAYicWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYjMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYjcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyI9xmEdqEPrOCkNZ5Vg" name="A_target_destroyObjectAction" memberEnd="_M1y3KdxmEdqEPrOCkNZ5Vg _M2FyJdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2FyJNxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyJdxmEdqEPrOCkNZ5Vg" type="_M1y3GtxmEdqEPrOCkNZ5Vg" association="_M2FyI9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyJtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyJ9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAAYjsWCEdqI1bY5Lwi8Hg" name="A_first_testIdentityAction" memberEnd="_g_tddsWCEdqI1bY5Lwi8Hg _hAAYkMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAAYj8WCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAAYkMWCEdqI1bY5Lwi8Hg" type="_g_tdasWCEdqI1bY5Lwi8Hg" association="_hAAYjsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYkcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYksWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyKNxmEdqEPrOCkNZ5Vg" name="A_first_testIdentityAction" memberEnd="_M1y3OdxmEdqEPrOCkNZ5Vg _M2FyKtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2FyKdxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyKtxmEdqEPrOCkNZ5Vg" type="_M1y3LdxmEdqEPrOCkNZ5Vg" association="_M2FyKNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyK9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyLNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAAYk8WCEdqI1bY5Lwi8Hg" name="A_second_testIdentityAction" memberEnd="_g_tdesWCEdqI1bY5Lwi8Hg _hAAYlcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAAYlMWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAAYlcWCEdqI1bY5Lwi8Hg" type="_g_tdasWCEdqI1bY5Lwi8Hg" association="_hAAYk8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYlsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYl8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyLdxmEdqEPrOCkNZ5Vg" name="A_second_testIdentityAction" memberEnd="_M1y3PdxmEdqEPrOCkNZ5Vg _M2FyL9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2FyLtxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyL9xmEdqEPrOCkNZ5Vg" type="_M1y3LdxmEdqEPrOCkNZ5Vg" association="_M2FyLdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyMNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyMdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAAYmMWCEdqI1bY5Lwi8Hg" name="A_result_testIdentityAction" memberEnd="_g_tdfsWCEdqI1bY5Lwi8Hg _hAAYmsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAAYmcWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAAYmsWCEdqI1bY5Lwi8Hg" type="_g_tdasWCEdqI1bY5Lwi8Hg" association="_hAAYmMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYm8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYnMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyMtxmEdqEPrOCkNZ5Vg" name="A_result_testIdentityAction" memberEnd="_M1y3QdxmEdqEPrOCkNZ5Vg _M2FyNNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2FyM9xmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyNNxmEdqEPrOCkNZ5Vg" type="_M1y3LdxmEdqEPrOCkNZ5Vg" association="_M2FyMtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyNdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyNtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAAYncWCEdqI1bY5Lwi8Hg" name="A_result_readSelfAction" memberEnd="_g_tdkcWCEdqI1bY5Lwi8Hg _hAAYn8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAAYnsWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAAYn8WCEdqI1bY5Lwi8Hg" type="_g_tdgsWCEdqI1bY5Lwi8Hg" association="_hAAYncWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYoMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYocWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyN9xmEdqEPrOCkNZ5Vg" name="A_result_readSelfAction" memberEnd="_M1y3VNxmEdqEPrOCkNZ5Vg _M2FyOdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2FyONxmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyOdxmEdqEPrOCkNZ5Vg" type="_M1y3RdxmEdqEPrOCkNZ5Vg" association="_M2FyN9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyOtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyO9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAAYosWCEdqI1bY5Lwi8Hg" name="A_structuralFeatureAction_structuralFeature" memberEnd="_g_tdp8WCEdqI1bY5Lwi8Hg _hAAYo8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAAYo8WCEdqI1bY5Lwi8Hg" type="_g_tdlcWCEdqI1bY5Lwi8Hg" association="_hAAYosWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAAYpMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAAYpcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyPNxmEdqEPrOCkNZ5Vg" name="A_structuralFeatureAction_structuralFeature" memberEnd="_M1y3atxmEdqEPrOCkNZ5Vg _M2FyPdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyPdxmEdqEPrOCkNZ5Vg" type="_M1y3WNxmEdqEPrOCkNZ5Vg" association="_M2FyPNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyPtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyP9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJMMWCEdqI1bY5Lwi8Hg" name="A_object_structuralFeatureAction" memberEnd="_g_tdq8WCEdqI1bY5Lwi8Hg _hAKJMsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAKJMcWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJMsWCEdqI1bY5Lwi8Hg" type="_g_tdlcWCEdqI1bY5Lwi8Hg" association="_hAKJMMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAKJM8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAKJNMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyQNxmEdqEPrOCkNZ5Vg" name="A_object_structuralFeatureAction" memberEnd="_M1y3btxmEdqEPrOCkNZ5Vg _M2FyQtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2FyQdxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyQtxmEdqEPrOCkNZ5Vg" type="_M1y3WNxmEdqEPrOCkNZ5Vg" association="_M2FyQNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyQ9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyRNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJNcWCEdqI1bY5Lwi8Hg" name="A_result_readStructuralFeatureAction" memberEnd="_g_tduMWCEdqI1bY5Lwi8Hg _hAKJN8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAKJNsWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJN8WCEdqI1bY5Lwi8Hg" type="_g_tdr8WCEdqI1bY5Lwi8Hg" association="_hAKJNcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAKJOMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAKJOcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyRdxmEdqEPrOCkNZ5Vg" name="A_result_readStructuralFeatureAction" memberEnd="_M18n6dxmEdqEPrOCkNZ5Vg _M2FyR9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2FyRtxmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyR9xmEdqEPrOCkNZ5Vg" type="_M18n4NxmEdqEPrOCkNZ5Vg" association="_M2FyRdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FySNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FySdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJOsWCEdqI1bY5Lwi8Hg" name="A_value_writeStructuralFeatureAction" memberEnd="_g_2nOcWCEdqI1bY5Lwi8Hg _hAKJPMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAKJO8WCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJPMWCEdqI1bY5Lwi8Hg" type="_g_2nMMWCEdqI1bY5Lwi8Hg" association="_hAKJOsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAKJPcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAKJPsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyStxmEdqEPrOCkNZ5Vg" name="A_value_writeStructuralFeatureAction" memberEnd="_M18n9txmEdqEPrOCkNZ5Vg _M2FyTNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2FyS9xmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyTNxmEdqEPrOCkNZ5Vg" type="_M18n7dxmEdqEPrOCkNZ5Vg" association="_M2FyStxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyTdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyTtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJP8WCEdqI1bY5Lwi8Hg" name="A_insertAt_addStructuralFeatureValueAction" memberEnd="_g_2nVsWCEdqI1bY5Lwi8Hg _hAKJQcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAKJQMWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJQcWCEdqI1bY5Lwi8Hg" type="_g_2nTcWCEdqI1bY5Lwi8Hg" association="_hAKJP8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAKJQsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAKJQ8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyT9xmEdqEPrOCkNZ5Vg" name="A_insertAt_addStructuralFeatureValueAction" memberEnd="_M18oE9xmEdqEPrOCkNZ5Vg _M2FyUdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2FyUNxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyUdxmEdqEPrOCkNZ5Vg" type="_M18oCtxmEdqEPrOCkNZ5Vg" association="_M2FyT9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyUtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyU9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJRMWCEdqI1bY5Lwi8Hg" name="A_endData_linkAction" memberEnd="_g_2nZsWCEdqI1bY5Lwi8Hg _hAKJRcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJRcWCEdqI1bY5Lwi8Hg" type="_g_2nWsWCEdqI1bY5Lwi8Hg" association="_hAKJRMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAKJRsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAKJR8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyVNxmEdqEPrOCkNZ5Vg" name="A_endData_linkAction" memberEnd="_M18oI9xmEdqEPrOCkNZ5Vg _M2FyVdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyVdxmEdqEPrOCkNZ5Vg" type="_M18oF9xmEdqEPrOCkNZ5Vg" association="_M2FyVNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyVtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyV9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJSMWCEdqI1bY5Lwi8Hg" name="A_value_linkEndData" memberEnd="_g_2nf8WCEdqI1bY5Lwi8Hg _hAKJScWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJScWCEdqI1bY5Lwi8Hg" type="_g_2nc8WCEdqI1bY5Lwi8Hg" association="_hAKJSMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAKJSsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAKJS8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2FyWNxmEdqEPrOCkNZ5Vg" name="A_value_linkEndData" memberEnd="_M18oPNxmEdqEPrOCkNZ5Vg _M2FyWdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2FyWdxmEdqEPrOCkNZ5Vg" type="_M18oMNxmEdqEPrOCkNZ5Vg" association="_M2FyWNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2FyWtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2FyW9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJTMWCEdqI1bY5Lwi8Hg" name="A_end_linkEndData" memberEnd="_g_2ng8WCEdqI1bY5Lwi8Hg _hAKJTcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJTcWCEdqI1bY5Lwi8Hg" type="_g_2nc8WCEdqI1bY5Lwi8Hg" association="_hAKJTMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAKJTsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAKJT8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2Pi0NxmEdqEPrOCkNZ5Vg" name="A_end_linkEndData" memberEnd="_M18oQNxmEdqEPrOCkNZ5Vg _M2Pi0dxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2Pi0dxmEdqEPrOCkNZ5Vg" type="_M18oMNxmEdqEPrOCkNZ5Vg" association="_M2Pi0NxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Pi0txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Pi09xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJUMWCEdqI1bY5Lwi8Hg" name="A_result_readLinkAction" memberEnd="_g_2nmcWCEdqI1bY5Lwi8Hg _hAKJUsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAKJUcWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJUsWCEdqI1bY5Lwi8Hg" type="_g_2nh8WCEdqI1bY5Lwi8Hg" association="_hAKJUMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAKJU8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAKJVMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2Pi1NxmEdqEPrOCkNZ5Vg" name="A_result_readLinkAction" memberEnd="_M18oVtxmEdqEPrOCkNZ5Vg _M2Pi1txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Pi1dxmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2Pi1txmEdqEPrOCkNZ5Vg" type="_M18oRNxmEdqEPrOCkNZ5Vg" association="_M2Pi1NxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Pi19xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Pi2NxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJVcWCEdqI1bY5Lwi8Hg" name="A_insertAt_linkEndCreationData" memberEnd="_g_2nqcWCEdqI1bY5Lwi8Hg _hAKJVsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJVsWCEdqI1bY5Lwi8Hg" type="_g_2nncWCEdqI1bY5Lwi8Hg" association="_hAKJVcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAKJV8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAKJWMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2Pi2dxmEdqEPrOCkNZ5Vg" name="A_insertAt_linkEndCreationData" memberEnd="_M18oZtxmEdqEPrOCkNZ5Vg _M2Pi2txmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2Pi2txmEdqEPrOCkNZ5Vg" type="_M18oWtxmEdqEPrOCkNZ5Vg" association="_M2Pi2dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Pi29xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Pi3NxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJWcWCEdqI1bY5Lwi8Hg" name="A_endData_createLinkAction" memberEnd="_g_2ns8WCEdqI1bY5Lwi8Hg _hAKJW8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAKJWsWCEdqI1bY5Lwi8Hg" general="_hAKJRMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJW8WCEdqI1bY5Lwi8Hg" type="_g_2nrcWCEdqI1bY5Lwi8Hg" redefinedProperty="_hAKJRcWCEdqI1bY5Lwi8Hg" association="_hAKJWcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAKJXMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAKJXcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2Pi3dxmEdqEPrOCkNZ5Vg" name="A_endData_createLinkAction" memberEnd="_M18ocNxmEdqEPrOCkNZ5Vg _M2Pi39xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Pi3txmEdqEPrOCkNZ5Vg" general="_M2FyVNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2Pi39xmEdqEPrOCkNZ5Vg" type="_M18oatxmEdqEPrOCkNZ5Vg" redefinedProperty="_M2FyVdxmEdqEPrOCkNZ5Vg" association="_M2Pi3dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Pi4NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Pi4dxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJXsWCEdqI1bY5Lwi8Hg" name="A_object_clearAssociationAction" memberEnd="_hAAYP8WCEdqI1bY5Lwi8Hg _hAKJYMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAKJX8WCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJYMWCEdqI1bY5Lwi8Hg" type="_hAAYNsWCEdqI1bY5Lwi8Hg" association="_hAKJXsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAKJYcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAKJYsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2Pi4txmEdqEPrOCkNZ5Vg" name="A_object_clearAssociationAction" memberEnd="_M2Fx2dxmEdqEPrOCkNZ5Vg _M2Pi5NxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Pi49xmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2Pi5NxmEdqEPrOCkNZ5Vg" type="_M2Fx0NxmEdqEPrOCkNZ5Vg" association="_M2Pi4txmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Pi5dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Pi5txmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJY8WCEdqI1bY5Lwi8Hg" name="A_association_clearAssociationAction" memberEnd="_hAAYQ8WCEdqI1bY5Lwi8Hg _hAKJZMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJZMWCEdqI1bY5Lwi8Hg" type="_hAAYNsWCEdqI1bY5Lwi8Hg" association="_hAKJY8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAKJZcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAKJZsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2Pi59xmEdqEPrOCkNZ5Vg" name="A_association_clearAssociationAction" memberEnd="_M2Fx3dxmEdqEPrOCkNZ5Vg _M2Pi6NxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2Pi6NxmEdqEPrOCkNZ5Vg" type="_M2Fx0NxmEdqEPrOCkNZ5Vg" association="_M2Pi59xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Pi6dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Pi6txmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJZ8WCEdqI1bY5Lwi8Hg" name="A_target_sendObjectAction" memberEnd="_hAAYV8WCEdqI1bY5Lwi8Hg _hAKJacWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAKJaMWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJacWCEdqI1bY5Lwi8Hg" type="_hAAYVMWCEdqI1bY5Lwi8Hg" redefinedProperty="_g71qIsWCEdqI1bY5Lwi8Hg" association="_hAKJZ8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2Pi69xmEdqEPrOCkNZ5Vg" name="A_target_sendObjectAction" memberEnd="_M2Fx8dxmEdqEPrOCkNZ5Vg _M2Pi7dxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Pi7NxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2Pi7dxmEdqEPrOCkNZ5Vg" type="_M2Fx7txmEdqEPrOCkNZ5Vg" redefinedProperty="_MyENydxmEdqEPrOCkNZ5Vg" association="_M2Pi69xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJasWCEdqI1bY5Lwi8Hg" name="A_request_sendObjectAction" memberEnd="_hAAYW8WCEdqI1bY5Lwi8Hg _hAKJbMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAKJa8WCEdqI1bY5Lwi8Hg" general="_g71qGMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJbMWCEdqI1bY5Lwi8Hg" type="_hAAYVMWCEdqI1bY5Lwi8Hg" redefinedProperty="_g71qGsWCEdqI1bY5Lwi8Hg" association="_hAKJasWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2Pi7txmEdqEPrOCkNZ5Vg" name="A_request_sendObjectAction" memberEnd="_M2Fx9dxmEdqEPrOCkNZ5Vg _M2Pi8NxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Pi79xmEdqEPrOCkNZ5Vg" general="_MyENv9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2Pi8NxmEdqEPrOCkNZ5Vg" type="_M2Fx7txmEdqEPrOCkNZ5Vg" redefinedProperty="_MyENwdxmEdqEPrOCkNZ5Vg" association="_M2Pi7txmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAKJbcWCEdqI1bY5Lwi8Hg" name="A_signal_broadcastSignalAction" memberEnd="_hAAYUMWCEdqI1bY5Lwi8Hg _hAKJbsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAKJbsWCEdqI1bY5Lwi8Hg" type="_hAAYR8WCEdqI1bY5Lwi8Hg" association="_hAKJbcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAKJb8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAKJcMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2Pi8dxmEdqEPrOCkNZ5Vg" name="A_signal_broadcastSignalAction" memberEnd="_M2Fx6txmEdqEPrOCkNZ5Vg _M2Pi8txmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2Pi8txmEdqEPrOCkNZ5Vg" type="_M2Fx4dxmEdqEPrOCkNZ5Vg" association="_M2Pi8dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Pi89xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Pi9NxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hATTIMWCEdqI1bY5Lwi8Hg" name="A_removeAt_removeStructuralFeatureValueAction" memberEnd="_g_2nScWCEdqI1bY5Lwi8Hg _hATTIsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hATTIcWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hATTIsWCEdqI1bY5Lwi8Hg" type="_g_2nQMWCEdqI1bY5Lwi8Hg" association="_hATTIMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hATTI8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hATTJMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2Pi9dxmEdqEPrOCkNZ5Vg" name="A_removeAt_removeStructuralFeatureValueAction" memberEnd="_M18oBtxmEdqEPrOCkNZ5Vg _M2Pi99xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Pi9txmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2Pi99xmEdqEPrOCkNZ5Vg" type="_M18n_dxmEdqEPrOCkNZ5Vg" association="_M2Pi9dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Pi-NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Pi-dxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hATTJcWCEdqI1bY5Lwi8Hg" name="A_destroyAt_linkEndDestructionData" memberEnd="_hAAYa8WCEdqI1bY5Lwi8Hg _hATTJsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hATTJsWCEdqI1bY5Lwi8Hg" type="_hAAYX8WCEdqI1bY5Lwi8Hg" association="_hATTJcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hATTJ8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hATTKMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2Pi-txmEdqEPrOCkNZ5Vg" name="A_destroyAt_linkEndDestructionData" memberEnd="_M2FyBdxmEdqEPrOCkNZ5Vg _M2Pi-9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2Pi-9xmEdqEPrOCkNZ5Vg" type="_M2Fx-dxmEdqEPrOCkNZ5Vg" association="_M2Pi-txmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Pi_NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Pi_dxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hATTKcWCEdqI1bY5Lwi8Hg" name="A_endData_destroyLinkAction" memberEnd="_g_2nusWCEdqI1bY5Lwi8Hg _hATTK8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hATTKsWCEdqI1bY5Lwi8Hg" general="_hAKJRMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hATTK8WCEdqI1bY5Lwi8Hg" type="_g_2nt8WCEdqI1bY5Lwi8Hg" redefinedProperty="_hAKJRcWCEdqI1bY5Lwi8Hg" association="_hATTKcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hATTLMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hATTLcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2Pi_txmEdqEPrOCkNZ5Vg" name="A_endData_destroyLinkAction" memberEnd="_M18od9xmEdqEPrOCkNZ5Vg _M2PjANxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Pi_9xmEdqEPrOCkNZ5Vg" general="_M2FyVNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2PjANxmEdqEPrOCkNZ5Vg" type="_M18odNxmEdqEPrOCkNZ5Vg" redefinedProperty="_M2FyVdxmEdqEPrOCkNZ5Vg" association="_M2Pi_txmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2PjAdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2PjAtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hATTLsWCEdqI1bY5Lwi8Hg" name="A_value_valueSpecificationAction" memberEnd="_hAAYeMWCEdqI1bY5Lwi8Hg _hATTL8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hATTL8WCEdqI1bY5Lwi8Hg" type="_hAAYb8WCEdqI1bY5Lwi8Hg" association="_hATTLsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hATTMMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hATTMcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2PjA9xmEdqEPrOCkNZ5Vg" name="A_value_valueSpecificationAction" memberEnd="_M2FyEtxmEdqEPrOCkNZ5Vg _M2PjBNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2PjBNxmEdqEPrOCkNZ5Vg" type="_M2FyCdxmEdqEPrOCkNZ5Vg" association="_M2PjA9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2PjBdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2PjBtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hATTMsWCEdqI1bY5Lwi8Hg" name="A_result_valueSpecificationAction" memberEnd="_hAAYfMWCEdqI1bY5Lwi8Hg _hATTNMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hATTM8WCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hATTNMWCEdqI1bY5Lwi8Hg" type="_hAAYb8WCEdqI1bY5Lwi8Hg" association="_hATTMsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hATTNcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hATTNsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2PjB9xmEdqEPrOCkNZ5Vg" name="A_result_valueSpecificationAction" memberEnd="_M2FyFtxmEdqEPrOCkNZ5Vg _M2PjCdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2PjCNxmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2PjCdxmEdqEPrOCkNZ5Vg" type="_M2FyCdxmEdqEPrOCkNZ5Vg" association="_M2PjB9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2PjCtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2PjC9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hATTN8WCEdqI1bY5Lwi8Hg" name="A_inputValue_linkAction" memberEnd="_g_2nasWCEdqI1bY5Lwi8Hg _hATTOcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hATTOMWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hATTOcWCEdqI1bY5Lwi8Hg" type="_g_2nWsWCEdqI1bY5Lwi8Hg" redefinedProperty="_g71qIsWCEdqI1bY5Lwi8Hg" association="_hATTN8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2PjDNxmEdqEPrOCkNZ5Vg" name="A_inputValue_linkAction" memberEnd="_M18oJ9xmEdqEPrOCkNZ5Vg _M2PjDtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2PjDdxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2PjDtxmEdqEPrOCkNZ5Vg" type="_M18oF9xmEdqEPrOCkNZ5Vg" redefinedProperty="_MyENydxmEdqEPrOCkNZ5Vg" association="_M2PjDNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_DylKEH4YEdq7cMP_l1l5Gg" name="TimeExpression">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hATTOsWCEdqI1bY5Lwi8Hg" annotatedElement="_DylKEH4YEdq7cMP_l1l5Gg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2PjD9xmEdqEPrOCkNZ5Vg" annotatedElement="_DylKEH4YEdq7cMP_l1l5Gg">
<body>A TimeExpression defines a value specification that represents a time value.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hATTO8WCEdqI1bY5Lwi8Hg" general="_g1Ru8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hATTPMWCEdqI1bY5Lwi8Hg" name="expr" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" association="_hAm1McWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hATTPcWCEdqI1bY5Lwi8Hg" annotatedElement="_hATTPMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2PjENxmEdqEPrOCkNZ5Vg" general="_Msjbf9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2PjEdxmEdqEPrOCkNZ5Vg" name="expr" type="_Msjbf9xmEdqEPrOCkNZ5Vg" association="_M2idztxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2PjEtxmEdqEPrOCkNZ5Vg" annotatedElement="_M2PjEdxmEdqEPrOCkNZ5Vg">
<body>The value of the time expression.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hATTPsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hATTP8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2PjE9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2PjFNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hATTQMWCEdqI1bY5Lwi8Hg" name="observation" type="_hAdEWcWCEdqI1bY5Lwi8Hg" association="_hAm1L8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hATTQcWCEdqI1bY5Lwi8Hg" annotatedElement="_hATTQMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2PjFdxmEdqEPrOCkNZ5Vg" name="observation" type="_M2YtBNxmEdqEPrOCkNZ5Vg" association="_M2idzNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2PjFtxmEdqEPrOCkNZ5Vg" annotatedElement="_M2PjFdxmEdqEPrOCkNZ5Vg">
<body>Refers to the time and duration observations that are involved in expr.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hATTQsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hATTQ8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2PjF9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2PjGNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_JdkW8H4YEdq7cMP_l1l5Gg" name="stringValue" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_JdkW8X4YEdq7cMP_l1l5Gg" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_-Ixo8H4XEdq7cMP_l1l5Gg" name="Duration">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hATTRMWCEdqI1bY5Lwi8Hg" annotatedElement="_-Ixo8H4XEdq7cMP_l1l5Gg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2PjGdxmEdqEPrOCkNZ5Vg" annotatedElement="_-Ixo8H4XEdq7cMP_l1l5Gg">
<body>A duration defines a value specification that specifies the temporal distance between two time instants.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hATTRcWCEdqI1bY5Lwi8Hg" general="_g1Ru8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hATTRsWCEdqI1bY5Lwi8Hg" name="expr" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" association="_hAm1M8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hATTR8WCEdqI1bY5Lwi8Hg" annotatedElement="_hATTRsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2PjGtxmEdqEPrOCkNZ5Vg" general="_Msjbf9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2PjG9xmEdqEPrOCkNZ5Vg" name="expr" type="_Msjbf9xmEdqEPrOCkNZ5Vg" association="_M2id0NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2PjHNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2PjG9xmEdqEPrOCkNZ5Vg">
<body>The value of the Duration.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hATTSMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hATTScWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2PjHdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2PjHtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hATTSsWCEdqI1bY5Lwi8Hg" name="observation" type="_hAdEWcWCEdqI1bY5Lwi8Hg" association="_hAm1LcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hATTS8WCEdqI1bY5Lwi8Hg" annotatedElement="_hATTSsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2YswNxmEdqEPrOCkNZ5Vg" name="observation" type="_M2YtBNxmEdqEPrOCkNZ5Vg" association="_M2idytxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YswdxmEdqEPrOCkNZ5Vg" annotatedElement="_M2YswNxmEdqEPrOCkNZ5Vg">
<body>Refers to the time and duration observations that are involved in expr.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hATTTMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hATTTcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2YswtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Ysw9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_I3a88H4YEdq7cMP_l1l5Gg" name="stringValue" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_I3a88X4YEdq7cMP_l1l5Gg" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hATTTsWCEdqI1bY5Lwi8Hg" name="DurationInterval">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hATTT8WCEdqI1bY5Lwi8Hg" annotatedElement="_hATTTsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2YsxNxmEdqEPrOCkNZ5Vg" name="DurationInterval">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YsxdxmEdqEPrOCkNZ5Vg" annotatedElement="_M2YsxNxmEdqEPrOCkNZ5Vg">
<body>A DurationInterval defines the range between two Durations.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hATTUMWCEdqI1bY5Lwi8Hg" general="_hAdEScWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hATTUcWCEdqI1bY5Lwi8Hg" name="min" type="_-Ixo8H4XEdq7cMP_l1l5Gg" redefinedProperty="_hAdETMWCEdqI1bY5Lwi8Hg" association="_hAdEdcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hATTUsWCEdqI1bY5Lwi8Hg" annotatedElement="_hATTUcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2YsxtxmEdqEPrOCkNZ5Vg" general="_M2Ys9NxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Ysx9xmEdqEPrOCkNZ5Vg" name="min" type="_-Ixo8H4XEdq7cMP_l1l5Gg" redefinedProperty="_M2Ys99xmEdqEPrOCkNZ5Vg" association="_M2YtINxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YsyNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ysx9xmEdqEPrOCkNZ5Vg">
<body>Refers to the Duration denoting the minimum value of the range.</body>
</ownedComment>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hATTU8WCEdqI1bY5Lwi8Hg" name="max" type="_-Ixo8H4XEdq7cMP_l1l5Gg" redefinedProperty="_hAdEUMWCEdqI1bY5Lwi8Hg" association="_hAdEeMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hATTVMWCEdqI1bY5Lwi8Hg" annotatedElement="_hATTU8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2YsydxmEdqEPrOCkNZ5Vg" name="max" type="_-Ixo8H4XEdq7cMP_l1l5Gg" redefinedProperty="_M2Ys-9xmEdqEPrOCkNZ5Vg" association="_M2YtI9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YsytxmEdqEPrOCkNZ5Vg" annotatedElement="_M2YsydxmEdqEPrOCkNZ5Vg">
<body>Refers to the Duration denoting the maximum value of the range.</body>
</ownedComment>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAdEIMWCEdqI1bY5Lwi8Hg" name="TimeConstraint">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEIcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEIMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2Ysy9xmEdqEPrOCkNZ5Vg" name="TimeConstraint">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YszNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ysy9xmEdqEPrOCkNZ5Vg">
<body>A TimeConstraint defines a Constraint that refers to a TimeInterval.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAdEIsWCEdqI1bY5Lwi8Hg" general="_hAdEQsWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAdEI8WCEdqI1bY5Lwi8Hg" name="specification" type="_hAdELMWCEdqI1bY5Lwi8Hg" aggregation="composite" redefinedProperty="_hAdERcWCEdqI1bY5Lwi8Hg" association="_hAm1IMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEJMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEI8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2YszdxmEdqEPrOCkNZ5Vg" general="_M2Ys7dxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2YsztxmEdqEPrOCkNZ5Vg" name="specification" type="_M2Ys19xmEdqEPrOCkNZ5Vg" aggregation="composite" redefinedProperty="_M2Ys8NxmEdqEPrOCkNZ5Vg" association="_M2YtLNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ysz9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2YsztxmEdqEPrOCkNZ5Vg">
<body>A condition that must be true when evaluated in order for the constraint to be satisfied.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAdEJcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAdEJsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Ys0NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Ys0dxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAdEJ8WCEdqI1bY5Lwi8Hg" name="firstEvent" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEKMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEJ8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Ys0txmEdqEPrOCkNZ5Vg" name="firstEvent" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ys09xmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys0txmEdqEPrOCkNZ5Vg">
<body>The value of firstEvent is related to constrainedElement. If firstEvent is true, then the corresponding observation event is the first time instant the execution enters constrainedElement. If firstEvent is false, then the corresponding observation event is the last time instant the execution is within constrainedElement.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAdEKcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAdEKsWCEdqI1bY5Lwi8Hg"/>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hAdEK8WCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" value="true"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Ys1NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Ys1dxmEdqEPrOCkNZ5Vg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M2Ys1txmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" value="true"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAdELMWCEdqI1bY5Lwi8Hg" name="TimeInterval">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdELcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdELMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2Ys19xmEdqEPrOCkNZ5Vg" name="TimeInterval">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ys2NxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys19xmEdqEPrOCkNZ5Vg">
<body>A TimeInterval defines the range between two TimeExpressions.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAdELsWCEdqI1bY5Lwi8Hg" general="_hAdEScWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAdEL8WCEdqI1bY5Lwi8Hg" name="max" type="_DylKEH4YEdq7cMP_l1l5Gg" redefinedProperty="_hAdEUMWCEdqI1bY5Lwi8Hg" association="_hAdEe8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEMMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEL8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Ys2dxmEdqEPrOCkNZ5Vg" general="_M2Ys9NxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Ys2txmEdqEPrOCkNZ5Vg" name="max" type="_DylKEH4YEdq7cMP_l1l5Gg" redefinedProperty="_M2Ys-9xmEdqEPrOCkNZ5Vg" association="_M2YtJtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ys29xmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys2txmEdqEPrOCkNZ5Vg">
<body>Refers to the TimeExpression denoting the maximum value of the range.</body>
</ownedComment>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAdEMcWCEdqI1bY5Lwi8Hg" name="min" type="_DylKEH4YEdq7cMP_l1l5Gg" redefinedProperty="_hAdETMWCEdqI1bY5Lwi8Hg" association="_hAdEfsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEMsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEMcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Ys3NxmEdqEPrOCkNZ5Vg" name="min" type="_DylKEH4YEdq7cMP_l1l5Gg" redefinedProperty="_M2Ys99xmEdqEPrOCkNZ5Vg" association="_M2YtKdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ys3dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys3NxmEdqEPrOCkNZ5Vg">
<body>Refers to the TimeExpression denoting the minimum value of the range.</body>
</ownedComment>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAdEM8WCEdqI1bY5Lwi8Hg" name="DurationConstraint">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdENMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEM8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2Ys3txmEdqEPrOCkNZ5Vg" name="DurationConstraint">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ys39xmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys3txmEdqEPrOCkNZ5Vg">
<body>A DurationConstraint defines a Constraint that refers to a DurationInterval.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAdENcWCEdqI1bY5Lwi8Hg" name="first_event_multiplicity" constrainedElement="_hAdEM8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdENsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdENcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2Ys4NxmEdqEPrOCkNZ5Vg" name="first_event_multiplicity" constrainedElement="_M2Ys3txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ys4dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys4NxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of firstEvent must be 2 if the multiplicity of constrainedElement is 2. Otherwise the multiplicity of firstEvent is 0.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAdEN8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2Ys4txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>if (constrainedElement->size() =2)&#xA;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)</body>
+ <body>if (constrainedElement->size() =2)&#xD;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAdEOMWCEdqI1bY5Lwi8Hg" general="_hAdEQsWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAdEOcWCEdqI1bY5Lwi8Hg" name="specification" type="_hATTTsWCEdqI1bY5Lwi8Hg" aggregation="composite" redefinedProperty="_hAdERcWCEdqI1bY5Lwi8Hg" association="_hAm1I8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEOsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEOcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Ys49xmEdqEPrOCkNZ5Vg" general="_M2Ys7dxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Ys5NxmEdqEPrOCkNZ5Vg" name="specification" type="_M2YsxNxmEdqEPrOCkNZ5Vg" aggregation="composite" redefinedProperty="_M2Ys8NxmEdqEPrOCkNZ5Vg" association="_M2idwNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ys5dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys5NxmEdqEPrOCkNZ5Vg">
<body>The interval constraining the duration.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAdEO8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAdEPMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Ys5txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Ys59xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAdEPcWCEdqI1bY5Lwi8Hg" name="firstEvent" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEPsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEPcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Ys6NxmEdqEPrOCkNZ5Vg" name="firstEvent" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ys6dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys6NxmEdqEPrOCkNZ5Vg">
<body>The value of firstEvent[i] is related to constrainedElement[i] (where i is 1 or 2). If firstEvent[i] is true, then the corresponding observation event is the first time instant the execution enters constrainedElement[i]. If firstEvent[i] is false, then the corresponding observation event is the last time instant the execution is within constrainedElement[i]. Default value is true applied when constrainedElement[i] refers an element that represents only one time instant.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAdEP8WCEdqI1bY5Lwi8Hg" value="2"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAdEQMWCEdqI1bY5Lwi8Hg"/>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hAdEQcWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" value="true"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Ys6txmEdqEPrOCkNZ5Vg" value="2"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Ys69xmEdqEPrOCkNZ5Vg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M2Ys7NxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" value="true"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAdEQsWCEdqI1bY5Lwi8Hg" name="IntervalConstraint">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEQ8WCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEQsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2Ys7dxmEdqEPrOCkNZ5Vg" name="IntervalConstraint">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ys7txmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys7dxmEdqEPrOCkNZ5Vg">
<body>A IntervalConstraint defines a Constraint that refers to an Interval.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAdERMWCEdqI1bY5Lwi8Hg" general="_g1ua0MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAdERcWCEdqI1bY5Lwi8Hg" name="specification" type="_hAdEScWCEdqI1bY5Lwi8Hg" aggregation="composite" redefinedProperty="_g1ua3cWCEdqI1bY5Lwi8Hg" association="_hAm1KsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdERsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdERcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Ys79xmEdqEPrOCkNZ5Vg" general="_Ms2WYtxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Ys8NxmEdqEPrOCkNZ5Vg" name="specification" type="_M2Ys9NxmEdqEPrOCkNZ5Vg" aggregation="composite" redefinedProperty="_Ms2Wb9xmEdqEPrOCkNZ5Vg" association="_M2idx9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ys8dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys8NxmEdqEPrOCkNZ5Vg">
<body>A condition that must be true when evaluated in order for the constraint to be satisfied.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAdER8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAdESMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Ys8txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Ys89xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAdEScWCEdqI1bY5Lwi8Hg" name="Interval">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdESsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEScWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2Ys9NxmEdqEPrOCkNZ5Vg" name="Interval">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ys9dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys9NxmEdqEPrOCkNZ5Vg">
<body>An Interval defines the range between two value specifications.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAdES8WCEdqI1bY5Lwi8Hg" general="_g1Ru8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAdETMWCEdqI1bY5Lwi8Hg" name="min" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" association="_hAm1JsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdETcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdETMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2Ys9txmEdqEPrOCkNZ5Vg" general="_Msjbf9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Ys99xmEdqEPrOCkNZ5Vg" name="min" type="_Msjbf9xmEdqEPrOCkNZ5Vg" association="_M2idw9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ys-NxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys99xmEdqEPrOCkNZ5Vg">
<body>Refers to the ValueSpecification denoting the minimum value of the range.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAdETsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAdET8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Ys-dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Ys-txmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAdEUMWCEdqI1bY5Lwi8Hg" name="max" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" association="_hAm1KMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEUcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEUMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2Ys-9xmEdqEPrOCkNZ5Vg" name="max" type="_Msjbf9xmEdqEPrOCkNZ5Vg" association="_M2idxdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2Ys_NxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys-9xmEdqEPrOCkNZ5Vg">
<body>Refers to the ValueSpecification denoting the maximum value of the range.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAdEUsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAdEU8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2Ys_dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2Ys_txmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAdEWcWCEdqI1bY5Lwi8Hg" name="Observation" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEWsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEWcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2YtBNxmEdqEPrOCkNZ5Vg" name="Observation" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YtBdxmEdqEPrOCkNZ5Vg" annotatedElement="_M2YtBNxmEdqEPrOCkNZ5Vg">
<body>Observation is a superclass of TimeObservation and DurationObservation in order for TimeExpressions and Duration to refer to either in a simple way.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAdEW8WCEdqI1bY5Lwi8Hg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2YtBtxmEdqEPrOCkNZ5Vg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAdEXMWCEdqI1bY5Lwi8Hg" name="TimeObservation">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEXcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEXMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2YtB9xmEdqEPrOCkNZ5Vg" name="TimeObservation">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YtCNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2YtB9xmEdqEPrOCkNZ5Vg">
<body>A time observation is a reference to a time instant during an execution. It points out the element in the model to observe and whether the observation is when this model element is entered or when it is exited.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAdEXsWCEdqI1bY5Lwi8Hg" general="_hAdEWcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAdEX8WCEdqI1bY5Lwi8Hg" name="event" type="_csVgUGvtEdqG6fBIPwe-mw" association="_hAm1NcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEYMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEX8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2YtCdxmEdqEPrOCkNZ5Vg" general="_M2YtBNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2YtCtxmEdqEPrOCkNZ5Vg" name="event" type="_csVgUGvtEdqG6fBIPwe-mw" association="_M2id0txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YtC9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2YtCtxmEdqEPrOCkNZ5Vg">
<body>The observation is determined by the entering or exiting of the event element during execution.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAdEYcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAdEYsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2YtDNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2YtDdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAdEY8WCEdqI1bY5Lwi8Hg" name="firstEvent" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEZMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEY8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2YtDtxmEdqEPrOCkNZ5Vg" name="firstEvent" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YtD9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2YtDtxmEdqEPrOCkNZ5Vg">
<body>The value of firstEvent is related to event. If firstEvent is true, then the corresponding observation event is the first time instant the execution enters event. If firstEvent is false, then the corresponding observation event is the time instant the execution exits event.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hAdEZcWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" value="true"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M2YtENxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" value="true"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAdEZsWCEdqI1bY5Lwi8Hg" name="DurationObservation">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEZ8WCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEZsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2YtEdxmEdqEPrOCkNZ5Vg" name="DurationObservation">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YtEtxmEdqEPrOCkNZ5Vg" annotatedElement="_M2YtEdxmEdqEPrOCkNZ5Vg">
<body>A duration observation is a reference to a duration during an execution. It points out the element(s) in the model to observe and whether the observations are when this model element is entered or when it is exited.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAdEaMWCEdqI1bY5Lwi8Hg" name="first_event_multiplicity" constrainedElement="_hAdEZsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEacWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEaMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2YtE9xmEdqEPrOCkNZ5Vg" name="first_event_multiplicity" constrainedElement="_M2YtEdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YtFNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2YtE9xmEdqEPrOCkNZ5Vg">
<body>The multiplicity of firstEvent must be 2 if the multiplicity of event is 2. Otherwise the multiplicity of firstEvent is 0.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAdEasWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2YtFdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>if (event->size() = 2)&#xA;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)</body>
+ <body>if (event->size() = 2)&#xD;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAdEa8WCEdqI1bY5Lwi8Hg" general="_hAdEWcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAdEbMWCEdqI1bY5Lwi8Hg" name="event" type="_csVgUGvtEdqG6fBIPwe-mw" association="_hAm1N8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEbcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEbMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2YtFtxmEdqEPrOCkNZ5Vg" general="_M2YtBNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2YtF9xmEdqEPrOCkNZ5Vg" name="event" type="_csVgUGvtEdqG6fBIPwe-mw" association="_M2id1NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YtGNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2YtF9xmEdqEPrOCkNZ5Vg">
<body>The observation is determined by the entering or exiting of the event element during execution.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAdEbsWCEdqI1bY5Lwi8Hg" value="2"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAdEb8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2YtGdxmEdqEPrOCkNZ5Vg" value="2"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2YtGtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAdEcMWCEdqI1bY5Lwi8Hg" name="firstEvent" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEccWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEcMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2YtG9xmEdqEPrOCkNZ5Vg" name="firstEvent" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YtHNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2YtG9xmEdqEPrOCkNZ5Vg">
<body>The value of firstEvent[i] is related to event[i] (where i is 1 or 2). If firstEvent[i] is true, then the corresponding observation event is the first time instant the execution enters event[i]. If firstEvent[i] is false, then the corresponding observation event is the time instant the execution exits event[i]. Default value is true applied when event[i] refers an element that represents only one time instant.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAdEcsWCEdqI1bY5Lwi8Hg" value="2"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAdEc8WCEdqI1bY5Lwi8Hg"/>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hAdEdMWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" value="true"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2YtHdxmEdqEPrOCkNZ5Vg" value="2"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2YtHtxmEdqEPrOCkNZ5Vg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M2YtH9xmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" value="true"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAdEdcWCEdqI1bY5Lwi8Hg" name="A_min_durationInterval" memberEnd="_hATTUcWCEdqI1bY5Lwi8Hg _hAdEd8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAdEdsWCEdqI1bY5Lwi8Hg" general="_hAm1JsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAdEd8WCEdqI1bY5Lwi8Hg" type="_hATTTsWCEdqI1bY5Lwi8Hg" redefinedProperty="_hAm1J8WCEdqI1bY5Lwi8Hg" association="_hAdEdcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2YtINxmEdqEPrOCkNZ5Vg" name="A_min_durationInterval" memberEnd="_M2Ysx9xmEdqEPrOCkNZ5Vg _M2YtItxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2YtIdxmEdqEPrOCkNZ5Vg" general="_M2idw9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2YtItxmEdqEPrOCkNZ5Vg" type="_M2YsxNxmEdqEPrOCkNZ5Vg" redefinedProperty="_M2idxNxmEdqEPrOCkNZ5Vg" association="_M2YtINxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAdEeMWCEdqI1bY5Lwi8Hg" name="A_max_durationInterval" memberEnd="_hATTU8WCEdqI1bY5Lwi8Hg _hAdEesWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAdEecWCEdqI1bY5Lwi8Hg" general="_hAm1KMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAdEesWCEdqI1bY5Lwi8Hg" type="_hATTTsWCEdqI1bY5Lwi8Hg" redefinedProperty="_hAm1KcWCEdqI1bY5Lwi8Hg" association="_hAdEeMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2YtI9xmEdqEPrOCkNZ5Vg" name="A_max_durationInterval" memberEnd="_M2YsydxmEdqEPrOCkNZ5Vg _M2YtJdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2YtJNxmEdqEPrOCkNZ5Vg" general="_M2idxdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2YtJdxmEdqEPrOCkNZ5Vg" type="_M2YsxNxmEdqEPrOCkNZ5Vg" redefinedProperty="_M2idxtxmEdqEPrOCkNZ5Vg" association="_M2YtI9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAdEe8WCEdqI1bY5Lwi8Hg" name="A_max_timeInterval" memberEnd="_hAdEL8WCEdqI1bY5Lwi8Hg _hAdEfcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAdEfMWCEdqI1bY5Lwi8Hg" general="_hAm1KMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAdEfcWCEdqI1bY5Lwi8Hg" type="_hAdELMWCEdqI1bY5Lwi8Hg" redefinedProperty="_hAm1KcWCEdqI1bY5Lwi8Hg" association="_hAdEe8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2YtJtxmEdqEPrOCkNZ5Vg" name="A_max_timeInterval" memberEnd="_M2Ys2txmEdqEPrOCkNZ5Vg _M2YtKNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2YtJ9xmEdqEPrOCkNZ5Vg" general="_M2idxdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2YtKNxmEdqEPrOCkNZ5Vg" type="_M2Ys19xmEdqEPrOCkNZ5Vg" redefinedProperty="_M2idxtxmEdqEPrOCkNZ5Vg" association="_M2YtJtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAdEfsWCEdqI1bY5Lwi8Hg" name="A_min_timeInterval" memberEnd="_hAdEMcWCEdqI1bY5Lwi8Hg _hAdEgMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAdEf8WCEdqI1bY5Lwi8Hg" general="_hAm1JsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAdEgMWCEdqI1bY5Lwi8Hg" type="_hAdELMWCEdqI1bY5Lwi8Hg" redefinedProperty="_hAm1J8WCEdqI1bY5Lwi8Hg" association="_hAdEfsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2YtKdxmEdqEPrOCkNZ5Vg" name="A_min_timeInterval" memberEnd="_M2Ys3NxmEdqEPrOCkNZ5Vg _M2YtK9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2YtKtxmEdqEPrOCkNZ5Vg" general="_M2idw9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2YtK9xmEdqEPrOCkNZ5Vg" type="_M2Ys19xmEdqEPrOCkNZ5Vg" redefinedProperty="_M2idxNxmEdqEPrOCkNZ5Vg" association="_M2YtKdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAm1IMWCEdqI1bY5Lwi8Hg" name="A_specification_timeConstraint" memberEnd="_hAdEI8WCEdqI1bY5Lwi8Hg _hAm1IsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAm1IcWCEdqI1bY5Lwi8Hg" general="_hAm1KsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAm1IsWCEdqI1bY5Lwi8Hg" type="_hAdEIMWCEdqI1bY5Lwi8Hg" redefinedProperty="_hAm1LMWCEdqI1bY5Lwi8Hg" association="_hAm1IMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2YtLNxmEdqEPrOCkNZ5Vg" name="A_specification_timeConstraint" memberEnd="_M2YsztxmEdqEPrOCkNZ5Vg _M2YtLtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2YtLdxmEdqEPrOCkNZ5Vg" general="_M2idx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2YtLtxmEdqEPrOCkNZ5Vg" type="_M2Ysy9xmEdqEPrOCkNZ5Vg" redefinedProperty="_M2idydxmEdqEPrOCkNZ5Vg" association="_M2YtLNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAm1I8WCEdqI1bY5Lwi8Hg" name="A_specification_durationConstraint" memberEnd="_hAdEOcWCEdqI1bY5Lwi8Hg _hAm1JcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAm1JMWCEdqI1bY5Lwi8Hg" general="_hAm1KsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAm1JcWCEdqI1bY5Lwi8Hg" type="_hAdEM8WCEdqI1bY5Lwi8Hg" redefinedProperty="_hAm1LMWCEdqI1bY5Lwi8Hg" association="_hAm1I8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2idwNxmEdqEPrOCkNZ5Vg" name="A_specification_durationConstraint" memberEnd="_M2Ys5NxmEdqEPrOCkNZ5Vg _M2idwtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2idwdxmEdqEPrOCkNZ5Vg" general="_M2idx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2idwtxmEdqEPrOCkNZ5Vg" type="_M2Ys3txmEdqEPrOCkNZ5Vg" redefinedProperty="_M2idydxmEdqEPrOCkNZ5Vg" association="_M2idwNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAm1JsWCEdqI1bY5Lwi8Hg" name="A_min_interval" memberEnd="_hAdETMWCEdqI1bY5Lwi8Hg _hAm1J8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAm1J8WCEdqI1bY5Lwi8Hg" type="_hAdEScWCEdqI1bY5Lwi8Hg" association="_hAm1JsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2idw9xmEdqEPrOCkNZ5Vg" name="A_min_interval" memberEnd="_M2Ys99xmEdqEPrOCkNZ5Vg _M2idxNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2idxNxmEdqEPrOCkNZ5Vg" type="_M2Ys9NxmEdqEPrOCkNZ5Vg" association="_M2idw9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAm1KMWCEdqI1bY5Lwi8Hg" name="A_max_interval" memberEnd="_hAdEUMWCEdqI1bY5Lwi8Hg _hAm1KcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAm1KcWCEdqI1bY5Lwi8Hg" type="_hAdEScWCEdqI1bY5Lwi8Hg" association="_hAm1KMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2idxdxmEdqEPrOCkNZ5Vg" name="A_max_interval" memberEnd="_M2Ys-9xmEdqEPrOCkNZ5Vg _M2idxtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2idxtxmEdqEPrOCkNZ5Vg" type="_M2Ys9NxmEdqEPrOCkNZ5Vg" association="_M2idxdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAm1KsWCEdqI1bY5Lwi8Hg" name="A_specification_intervalConstraint" memberEnd="_hAdERcWCEdqI1bY5Lwi8Hg _hAm1LMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hAm1K8WCEdqI1bY5Lwi8Hg" general="_g2eB1sWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAm1LMWCEdqI1bY5Lwi8Hg" type="_hAdEQsWCEdqI1bY5Lwi8Hg" association="_hAm1KsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2idx9xmEdqEPrOCkNZ5Vg" name="A_specification_intervalConstraint" memberEnd="_M2Ys8NxmEdqEPrOCkNZ5Vg _M2idydxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2idyNxmEdqEPrOCkNZ5Vg" general="_MtmkbNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2idydxmEdqEPrOCkNZ5Vg" type="_M2Ys7dxmEdqEPrOCkNZ5Vg" association="_M2idx9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAm1LcWCEdqI1bY5Lwi8Hg" name="A_observation_duration" memberEnd="_hATTSsWCEdqI1bY5Lwi8Hg _hAm1LsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAm1LsWCEdqI1bY5Lwi8Hg" type="_-Ixo8H4XEdq7cMP_l1l5Gg" association="_hAm1LcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2idytxmEdqEPrOCkNZ5Vg" name="A_observation_duration" memberEnd="_M2YswNxmEdqEPrOCkNZ5Vg _M2idy9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2idy9xmEdqEPrOCkNZ5Vg" type="_-Ixo8H4XEdq7cMP_l1l5Gg" association="_M2idytxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAm1L8WCEdqI1bY5Lwi8Hg" name="A_observation_timeExpression" memberEnd="_hATTQMWCEdqI1bY5Lwi8Hg _hAm1MMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAm1MMWCEdqI1bY5Lwi8Hg" type="_DylKEH4YEdq7cMP_l1l5Gg" association="_hAm1L8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2idzNxmEdqEPrOCkNZ5Vg" name="A_observation_timeExpression" memberEnd="_M2PjFdxmEdqEPrOCkNZ5Vg _M2idzdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2idzdxmEdqEPrOCkNZ5Vg" type="_DylKEH4YEdq7cMP_l1l5Gg" association="_M2idzNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g-XZkMWCEdqI1bY5Lwi8Hg" name="A_when_timeEvent" memberEnd="_g-XZksWCEdqI1bY5Lwi8Hg _g-OPwcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_g-XZkcWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_g-XZksWCEdqI1bY5Lwi8Hg" visibility="public" type="_g-OPu8WCEdqI1bY5Lwi8Hg" association="_g-XZkMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M0wVMNxmEdqEPrOCkNZ5Vg" name="A_when_timeEvent" memberEnd="_M0wVMtxmEdqEPrOCkNZ5Vg _M0AHbdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0wVMdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M0wVMtxmEdqEPrOCkNZ5Vg" visibility="public" type="_M0AHZ9xmEdqEPrOCkNZ5Vg" association="_M0wVMNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAm1McWCEdqI1bY5Lwi8Hg" name="A_expr_timeExpression" memberEnd="_hATTPMWCEdqI1bY5Lwi8Hg _hAm1MsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAm1MsWCEdqI1bY5Lwi8Hg" type="_DylKEH4YEdq7cMP_l1l5Gg" association="_hAm1McWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2idztxmEdqEPrOCkNZ5Vg" name="A_expr_timeExpression" memberEnd="_M2PjEdxmEdqEPrOCkNZ5Vg _M2idz9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2idz9xmEdqEPrOCkNZ5Vg" type="_DylKEH4YEdq7cMP_l1l5Gg" association="_M2idztxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAm1M8WCEdqI1bY5Lwi8Hg" name="A_expr_duration" memberEnd="_hATTRsWCEdqI1bY5Lwi8Hg _hAm1NMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAm1NMWCEdqI1bY5Lwi8Hg" type="_-Ixo8H4XEdq7cMP_l1l5Gg" association="_hAm1M8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2id0NxmEdqEPrOCkNZ5Vg" name="A_expr_duration" memberEnd="_M2PjG9xmEdqEPrOCkNZ5Vg _M2id0dxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2id0dxmEdqEPrOCkNZ5Vg" type="_-Ixo8H4XEdq7cMP_l1l5Gg" association="_M2id0NxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAm1NcWCEdqI1bY5Lwi8Hg" name="A_event_timeObservation" memberEnd="_hAdEX8WCEdqI1bY5Lwi8Hg _hAm1NsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAm1NsWCEdqI1bY5Lwi8Hg" type="_hAdEXMWCEdqI1bY5Lwi8Hg" association="_hAm1NcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2id0txmEdqEPrOCkNZ5Vg" name="A_event_timeObservation" memberEnd="_M2YtCtxmEdqEPrOCkNZ5Vg _M2id09xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2id09xmEdqEPrOCkNZ5Vg" type="_M2YtB9xmEdqEPrOCkNZ5Vg" association="_M2id0txmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAm1N8WCEdqI1bY5Lwi8Hg" name="A_event_durationObservation" memberEnd="_hAdEbMWCEdqI1bY5Lwi8Hg _hAv_EMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAv_EMWCEdqI1bY5Lwi8Hg" type="_hAdEZsWCEdqI1bY5Lwi8Hg" association="_hAm1N8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2id1NxmEdqEPrOCkNZ5Vg" name="A_event_durationObservation" memberEnd="_M2YtF9xmEdqEPrOCkNZ5Vg _M2id1dxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2id1dxmEdqEPrOCkNZ5Vg" type="_M2YtEdxmEdqEPrOCkNZ5Vg" association="_M2id1NxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7r5FcWCEdqI1bY5Lwi8Hg" name="InvocationAction" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5FsWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5FcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mx7DyNxmEdqEPrOCkNZ5Vg" name="InvocationAction" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7DydxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DyNxmEdqEPrOCkNZ5Vg">
<body>Invocation is an abstract class for the various actions that invoke behavior.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_EcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5FcWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2id1txmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DyNxmEdqEPrOCkNZ5Vg">
<body>In addition to targeting an object, invocation actions can also invoke behavioral features on ports from where the invocation requests are routed onwards on links deriving from attached connectors. Invocation actions may also be sent to a target via a given port, either on the sending object or on another object.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAv_EsWCEdqI1bY5Lwi8Hg" name="on_port_receiver" constrainedElement="_g7r5FcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_E8WCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_EsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2id19xmEdqEPrOCkNZ5Vg" name="on_port_receiver" constrainedElement="_Mx7DyNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2id2NxmEdqEPrOCkNZ5Vg" annotatedElement="_M2id19xmEdqEPrOCkNZ5Vg">
<body>The onPort must be a port on the receiver object.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAv_FMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2id2dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7r5F8WCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7r5GMWCEdqI1bY5Lwi8Hg" name="argument" type="_g7r5EsWCEdqI1bY5Lwi8Hg" isOrdered="true" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_g71qGMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5GcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5GMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mx7DytxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mx7Dy9xmEdqEPrOCkNZ5Vg" name="argument" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" isOrdered="true" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_MyENv9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7DzNxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7Dy9xmEdqEPrOCkNZ5Vg">
<body>Specification of the ordered set of argument values that appears during execution.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7r5GsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7r5G8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mx7DzdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mx7DztxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAv_FcWCEdqI1bY5Lwi8Hg" name="onPort" type="_ZAuvEGveEdq4DLWZOhbdEA" association="_hAv_IsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_FsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_FcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2id2txmEdqEPrOCkNZ5Vg" name="onPort" type="_ZAuvEGveEdq4DLWZOhbdEA" association="_M2id59xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2id29xmEdqEPrOCkNZ5Vg" annotatedElement="_M2id2txmEdqEPrOCkNZ5Vg">
<body>A optional port of the receiver object on which the behavioral feature is invoked.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAv_F8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAv_GMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2id3NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2id3dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-OPmsWCEdqI1bY5Lwi8Hg" name="Trigger">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPm8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPmsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M0AHRtxmEdqEPrOCkNZ5Vg" name="Trigger">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHR9xmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHRtxmEdqEPrOCkNZ5Vg">
<body>A trigger specifies an event that may cause the execution of an associated behavior. An event is often ultimately caused by the execution of an action, but need not be.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_GcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPmsWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2id3txmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHRtxmEdqEPrOCkNZ5Vg">
<body>A trigger specification may be qualified by the port on which the event occurred.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-OPnMWCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-OPncWCEdqI1bY5Lwi8Hg" name="event" type="_g-OPz8WCEdqI1bY5Lwi8Hg" association="_g-XZo8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPnsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPncWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0AHSNxmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M0AHSdxmEdqEPrOCkNZ5Vg" name="event" type="_M0AHe9xmEdqEPrOCkNZ5Vg" association="_M0wVQ9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHStxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHSdxmEdqEPrOCkNZ5Vg">
<body>The event that causes the trigger.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-OPn8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-OPoMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0AHS9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0AHTNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAv_GsWCEdqI1bY5Lwi8Hg" name="port" type="_ZAuvEGveEdq4DLWZOhbdEA" association="_hAv_HsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_G8WCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_GsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2id39xmEdqEPrOCkNZ5Vg" name="port" type="_ZAuvEGveEdq4DLWZOhbdEA" association="_M2id49xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2id4NxmEdqEPrOCkNZ5Vg" annotatedElement="_M2id39xmEdqEPrOCkNZ5Vg">
<body>A optional port of the receiver object on which the behavioral feature is invoked.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAv_HMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAv_HcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2id4dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2id4txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAv_HsWCEdqI1bY5Lwi8Hg" name="A_port_trigger" memberEnd="_hAv_GsWCEdqI1bY5Lwi8Hg _hAv_H8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAv_H8WCEdqI1bY5Lwi8Hg" type="_g-OPmsWCEdqI1bY5Lwi8Hg" association="_hAv_HsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAv_IMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAv_IcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2id49xmEdqEPrOCkNZ5Vg" name="A_port_trigger" memberEnd="_M2id39xmEdqEPrOCkNZ5Vg _M2id5NxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2id5NxmEdqEPrOCkNZ5Vg" type="_M0AHRtxmEdqEPrOCkNZ5Vg" association="_M2id49xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2id5dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2id5txmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hAv_IsWCEdqI1bY5Lwi8Hg" name="A_onPort_invocationAction" memberEnd="_hAv_FcWCEdqI1bY5Lwi8Hg _hAv_I8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hAv_I8WCEdqI1bY5Lwi8Hg" type="_g7r5FcWCEdqI1bY5Lwi8Hg" association="_hAv_IsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAv_JMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAv_JcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2id59xmEdqEPrOCkNZ5Vg" name="A_onPort_invocationAction" memberEnd="_M2id2txmEdqEPrOCkNZ5Vg _M2id6NxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2id6NxmEdqEPrOCkNZ5Vg" type="_Mx7DyNxmEdqEPrOCkNZ5Vg" association="_M2id59xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2id6dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2id6txmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hAv_JsWCEdqI1bY5Lwi8Hg" name="StateMachine">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_J8WCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_JsWCEdqI1bY5Lwi8Hg">
- <body>A state machine owns one or more regions, which in turn own vertices and transitions.
-
-The behaviored classifier context owning a state machine defines which signal and call triggers are defined for the state machine, and which attributes and operations are available in activities of the state machine. Signal triggers and call triggers for the state machine are defined according to the receptions and operations of this classifier.
-
-
-
-As a kind of behavior, a state machine may have an associated behavioral feature (specification) and be the method of this behavioral feature. In this case the state machine specifies the behavior of this behavioral feature. The parameters of the state machine in this case match the parameters of the behavioral feature and provide the means for accessing (within the state machine) the behavioral feature parameters.
-
-
-
-A state machine without a context classifier may use triggers that are independent of receptions or operations of a classifier, i.e. either just signal triggers or call triggers based upon operation template parameters of the (parameterized) statemachine.
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2id69xmEdqEPrOCkNZ5Vg" name="StateMachine">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2id7NxmEdqEPrOCkNZ5Vg" annotatedElement="_M2id69xmEdqEPrOCkNZ5Vg">
+ <body>A state machine owns one or more regions, which in turn own vertices and transitions.&#xD;
+The behaviored classifier context owning a state machine defines which signal and call triggers are defined for the state machine, and which attributes and operations are available in activities of the state machine. Signal triggers and call triggers for the state machine are defined according to the receptions and operations of this classifier.&#xD;
+&#xD;
+As a kind of behavior, a state machine may have an associated behavioral feature (specification) and be the method of this behavioral feature. In this case the state machine specifies the behavior of this behavioral feature. The parameters of the state machine in this case match the parameters of the behavioral feature and provide the means for accessing (within the state machine) the behavioral feature parameters.&#xD;
+&#xD;
+A state machine without a context classifier may use triggers that are independent of receptions or operations of a classifier, i.e. either just signal triggers or call triggers based upon operation template parameters of the (parameterized) statemachine.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAv_KMWCEdqI1bY5Lwi8Hg" name="classifier_context" constrainedElement="_hAv_JsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_KcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_KMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2id7dxmEdqEPrOCkNZ5Vg" name="classifier_context" constrainedElement="_M2id69xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2id7txmEdqEPrOCkNZ5Vg" annotatedElement="_M2id7dxmEdqEPrOCkNZ5Vg">
<body>The classifier context of a state machine cannot be an interface.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAv_KsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2id79xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>context->notEmpty() implies not context.oclIsKindOf(Interface)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAv_K8WCEdqI1bY5Lwi8Hg" name="context_classifier" constrainedElement="_hAv_JsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_LMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_K8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2id8NxmEdqEPrOCkNZ5Vg" name="context_classifier" constrainedElement="_M2id69xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2id8dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2id8NxmEdqEPrOCkNZ5Vg">
<body>The context classifier of the method state machine of a behavioral feature must be the classifier that owns the behavioral feature.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAv_LcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2id8txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>specification->notEmpty() implies (context->notEmpty() and specification->featuringClassifier->exists (c | c = context))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAv_LsWCEdqI1bY5Lwi8Hg" name="connection_points" constrainedElement="_hAv_JsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_L8WCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_LsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2id89xmEdqEPrOCkNZ5Vg" name="connection_points" constrainedElement="_M2id69xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2id9NxmEdqEPrOCkNZ5Vg" annotatedElement="_M2id89xmEdqEPrOCkNZ5Vg">
<body>The connection points of a state machine are pseudostates of kind entry point or exit point.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAv_MMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2id9dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>conectionPoint->forAll (c | c.kind = #entryPoint or c.kind = #exitPoint)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAv_McWCEdqI1bY5Lwi8Hg" name="method" constrainedElement="_hAv_JsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_MsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_McWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2id9txmEdqEPrOCkNZ5Vg" name="method" constrainedElement="_M2id69xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2id99xmEdqEPrOCkNZ5Vg" annotatedElement="_M2id9txmEdqEPrOCkNZ5Vg">
<body>A state machine as the method for a behavioral feature cannot have entry/exit connection points.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAv_M8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2id-NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>specification->notEmpty() implies connectionPoint->isEmpty()</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hAv_NMWCEdqI1bY5Lwi8Hg" general="_TUPtYGveEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAv_NcWCEdqI1bY5Lwi8Hg" name="region" type="_hBzH8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_hBzIccWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_NsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_NcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2id-dxmEdqEPrOCkNZ5Vg" general="_TUPtYGveEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2id-txmEdqEPrOCkNZ5Vg" name="region" type="_M21ZF9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M2_Jy9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2id-9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2id-txmEdqEPrOCkNZ5Vg">
<body>The regions owned directly by the state machine.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAv_N8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAv_OMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2id_NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2id_dxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAv_OcWCEdqI1bY5Lwi8Hg" name="connectionPoint" type="_hBpXUsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_hBzIc8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_OsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_OcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2id_txmEdqEPrOCkNZ5Vg" name="connectionPoint" type="_M21YxNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M2_JzdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2id_9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2id_txmEdqEPrOCkNZ5Vg">
<body>The connection points defined for this state machine. They represent the interface of the state machine when used as part of submachine state.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAv_O8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAv_PMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2ieANxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2ieAdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAv_PcWCEdqI1bY5Lwi8Hg" name="extendedStateMachine" type="_hAv_JsWCEdqI1bY5Lwi8Hg" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_hB8R4MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_PsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_PcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2ieAtxmEdqEPrOCkNZ5Vg" name="extendedStateMachine" type="_M2id69xmEdqEPrOCkNZ5Vg" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_M2_J1txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2ieA9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2ieAtxmEdqEPrOCkNZ5Vg">
<body>The state machines of which this is an extension.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAv_P8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAv_QMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2ieBNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2ieBdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hAv_QcWCEdqI1bY5Lwi8Hg" name="submachineState" type="_hA5wEMWCEdqI1bY5Lwi8Hg" association="_hBzIXMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_QsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_QcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2ieBtxmEdqEPrOCkNZ5Vg" name="submachineState" type="_M2sOwNxmEdqEPrOCkNZ5Vg" association="_M2_JttxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2ieB9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2ieBtxmEdqEPrOCkNZ5Vg">
<body>References the submachine(s) in case of a submachine state. Multiple machines are referenced in case of a concurrent state.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAv_Q8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAv_RMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2ieCNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2ieCdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hAv_RcWCEdqI1bY5Lwi8Hg" name="LCA" isQuery="true" bodyCondition="_hAv_SMWCEdqI1bY5Lwi8Hg">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hAv_RsWCEdqI1bY5Lwi8Hg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_R8WCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_RcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2ieCtxmEdqEPrOCkNZ5Vg" name="LCA" isQuery="true" bodyCondition="_M2ieDdxmEdqEPrOCkNZ5Vg">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_M2ieC9xmEdqEPrOCkNZ5Vg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2ieDNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2ieCtxmEdqEPrOCkNZ5Vg">
<body>The operation LCA(s1,s2) returns an orthogonal state or region which is the least common ancestor of states s1 and s2, based on the statemachine containment hierarchy.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAv_SMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hAv_RcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAv_ScWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2ieDdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2ieCtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2ieDtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hAv_SsWCEdqI1bY5Lwi8Hg" type="_ZiwkoGwLEdq7X4sGURiZYA" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hAv_S8WCEdqI1bY5Lwi8Hg" name="s1" type="_hA5wEMWCEdqI1bY5Lwi8Hg"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hAv_TMWCEdqI1bY5Lwi8Hg" name="s2" type="_hA5wEMWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2ieD9xmEdqEPrOCkNZ5Vg" type="_ZiwkoGwLEdq7X4sGURiZYA" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2ieENxmEdqEPrOCkNZ5Vg" name="s1" type="_M2sOwNxmEdqEPrOCkNZ5Vg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2ieEdxmEdqEPrOCkNZ5Vg" name="s2" type="_M2sOwNxmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hAv_TcWCEdqI1bY5Lwi8Hg" name="ancestor" isQuery="true" bodyCondition="_hAv_T8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_TsWCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_TcWCEdqI1bY5Lwi8Hg">
- <body>The query ancestor(s1, s2) checks whether s2 is an ancestor state of state s1. context StateMachine::ancestor (s1 : State, s2 : State) : Boolean
-
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2ieEtxmEdqEPrOCkNZ5Vg" name="ancestor" isQuery="true" bodyCondition="_M2ieFNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2ieE9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2ieEtxmEdqEPrOCkNZ5Vg">
+ <body>The query ancestor(s1, s2) checks whether s2 is an ancestor state of state s1. context StateMachine::ancestor (s1 : State, s2 : State) : Boolean&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAv_T8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hAv_TcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAv_UMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2ieFNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2ieEtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2ieFdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if (s2 = s1) then&#xA;true&#xA;else if (s1.container->isEmpty) then&#xA;true&#xA;else if (s2.container->isEmpty) then&#xA;false&#xA;else (ancestor (s1, s2.container))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hAv_UcWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hAv_UsWCEdqI1bY5Lwi8Hg" name="s1" type="_hA5wEMWCEdqI1bY5Lwi8Hg"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hAv_U8WCEdqI1bY5Lwi8Hg" name="s2" type="_hA5wEMWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2ieFtxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2ieF9xmEdqEPrOCkNZ5Vg" name="s1" type="_M2sOwNxmEdqEPrOCkNZ5Vg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2ieGNxmEdqEPrOCkNZ5Vg" name="s2" type="_M2sOwNxmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hAv_VMWCEdqI1bY5Lwi8Hg" name="isRedefinitionContextValid" isQuery="true" redefinedOperation="_g1H-MMWCEdqI1bY5Lwi8Hg" bodyCondition="_hAv_VsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_VcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_VMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2ieGdxmEdqEPrOCkNZ5Vg" name="isRedefinitionContextValid" isQuery="true" redefinedOperation="_MsjbZ9xmEdqEPrOCkNZ5Vg" bodyCondition="_M2ieG9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2ieGtxmEdqEPrOCkNZ5Vg" annotatedElement="_M2ieGdxmEdqEPrOCkNZ5Vg">
<body>The query isRedefinitionContextValid() specifies whether the redefinition contexts of a statemachine are properly related to the redefinition contexts of the specified statemachine to allow this element to redefine the other. The containing classifier of a redefining statemachine must redefine the containing classifier of the redefined statemachine.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAv_VsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hAv_VMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAv_V8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2ieG9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2ieGdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2ieHNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hAv_WMWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hAv_WcWCEdqI1bY5Lwi8Hg" name="redefined" type="_hAv_JsWCEdqI1bY5Lwi8Hg" effect="read"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2ieHdxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2ieHtxmEdqEPrOCkNZ5Vg" name="redefined" type="_M2id69xmEdqEPrOCkNZ5Vg" effect="read"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hAv_WsWCEdqI1bY5Lwi8Hg" name="isConsistentWith" isQuery="true" redefinedOperation="_g1H-KsWCEdqI1bY5Lwi8Hg" bodyCondition="_hAv_XcWCEdqI1bY5Lwi8Hg">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hAv_W8WCEdqI1bY5Lwi8Hg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAv_XMWCEdqI1bY5Lwi8Hg" annotatedElement="_hAv_WsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2ieH9xmEdqEPrOCkNZ5Vg" name="isConsistentWith" isQuery="true" redefinedOperation="_MsjbYdxmEdqEPrOCkNZ5Vg" bodyCondition="_M2ieItxmEdqEPrOCkNZ5Vg">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_M2ieINxmEdqEPrOCkNZ5Vg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2ieIdxmEdqEPrOCkNZ5Vg" annotatedElement="_M2ieH9xmEdqEPrOCkNZ5Vg">
<body>The query isConsistentWith() specifies that a redefining state machine is consistent with a redefined state machine provided that the redefining state machine is an extension of the redefined state machine: Regions are inherited and regions can be added, inherited regions can be redefined. In case of multiple redefining state machines, extension implies that the redefining state machine gets orthogonal regions for each of the redefined state machines.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAv_XcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hAv_WsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAv_XsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2ieItxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2ieH9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2ieI9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hAv_X8WCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hAv_YMWCEdqI1bY5Lwi8Hg" name="redefinee" type="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2ieJNxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2ieJdxmEdqEPrOCkNZ5Vg" name="redefinee" type="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hBpW8MWCEdqI1bY5Lwi8Hg" name="Transition">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpW8cWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpW8MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2sPNtxmEdqEPrOCkNZ5Vg" name="Transition">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPN9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPNtxmEdqEPrOCkNZ5Vg">
<body>A transition is a directed relationship between a source vertex and a target vertex. It may be part of a compound transition, which takes the state machine from one state configuration to another, representing the complete response of the state machine to an occurrence of an event of a particular type.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpW8sWCEdqI1bY5Lwi8Hg" name="fork_segment_guards" constrainedElement="_hBpW8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpW88WCEdqI1bY5Lwi8Hg" annotatedElement="_hBpW8sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPONxmEdqEPrOCkNZ5Vg" name="fork_segment_guards" constrainedElement="_M2sPNtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPOdxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPONxmEdqEPrOCkNZ5Vg">
<body>A fork segment must not have guards or triggers.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpW9MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPOtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(source.oclIsKindOf(Pseudostate) and source.kind = #fork) implies (guard->isEmpty() and trigger->isEmpty())</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpW9cWCEdqI1bY5Lwi8Hg" name="join_segment_guards" constrainedElement="_hBpW8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpW9sWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpW9cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPO9xmEdqEPrOCkNZ5Vg" name="join_segment_guards" constrainedElement="_M2sPNtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPPNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPO9xmEdqEPrOCkNZ5Vg">
<body>A join segment must not have guards or triggers.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpW98WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPPdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(target.oclIsKindOf(Pseudostate) and target.kind = #join) implies (guard->isEmpty() and trigger->isEmpty())</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpW-MWCEdqI1bY5Lwi8Hg" name="fork_segment_state" constrainedElement="_hBpW8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpW-cWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpW-MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPPtxmEdqEPrOCkNZ5Vg" name="fork_segment_state" constrainedElement="_M2sPNtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPP9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPPtxmEdqEPrOCkNZ5Vg">
<body>A fork segment must always target a state.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpW-sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPQNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(source.oclIsKindOf(Pseudostate) and source.kind = #fork) implies (target.oclIsKindOf(State))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpW-8WCEdqI1bY5Lwi8Hg" name="join_segment_state" constrainedElement="_hBpW8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpW_MWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpW-8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPQdxmEdqEPrOCkNZ5Vg" name="join_segment_state" constrainedElement="_M2sPNtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPQtxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPQdxmEdqEPrOCkNZ5Vg">
<body>A join segment must always originate from a state.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpW_cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPQ9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(target.oclIsKindOf(Pseudostate) and target.kind = #join) implies (source.oclIsKindOf(State))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpW_sWCEdqI1bY5Lwi8Hg" name="outgoing_pseudostates" constrainedElement="_hBpW8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpW_8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBpW_sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPRNxmEdqEPrOCkNZ5Vg" name="outgoing_pseudostates" constrainedElement="_M2sPNtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPRdxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPRNxmEdqEPrOCkNZ5Vg">
<body>Transitions outgoing pseudostates may not have a trigger.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXAMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPRtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>source.oclIsKindOf(Pseudostate) and&#xA;((source.kind &lt;> #junction) and (source.kind &lt;> #join) and (source.kind &lt;> #initial)) implies trigger->isEmpty()&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXAcWCEdqI1bY5Lwi8Hg" name="initial_transition" constrainedElement="_hBpW8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXAsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXAcWCEdqI1bY5Lwi8Hg">
- <body>An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype “create”.</body>
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPR9xmEdqEPrOCkNZ5Vg" name="initial_transition" constrainedElement="_M2sPNtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPSNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPR9xmEdqEPrOCkNZ5Vg">
+ <body>An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype «create».</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXA8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPSdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.source.oclIsKindOf(Pseudostate) implies&#xA;(self.source.oclAsType(Pseudostate).kind = #initial) implies&#xA;(self.source.container = self.stateMachine.top) implies&#xA;((self.trigger->isEmpty) or&#xA;(self.trigger.stereotype.name = 'create'))&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXBMWCEdqI1bY5Lwi8Hg" name="signatures_compatible" constrainedElement="_hBpW8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXBcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXBMWCEdqI1bY5Lwi8Hg">
- <body>In case of more than one trigger, the signatures of these must be compatible in case the parameters of the signal are assigned to local variables/attributes.
-
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPStxmEdqEPrOCkNZ5Vg" name="signatures_compatible" constrainedElement="_M2sPNtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPS9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPStxmEdqEPrOCkNZ5Vg">
+ <body>In case of more than one trigger, the signatures of these must be compatible in case the parameters of the signal are assigned to local variables/attributes.&#xD;
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXBsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPTNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hBpXB8WCEdqI1bY5Lwi8Hg" general="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hBpXCMWCEdqI1bY5Lwi8Hg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXCcWCEdqI1bY5Lwi8Hg" name="kind" type="_hBzISMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXCsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXCcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2sPTdxmEdqEPrOCkNZ5Vg" general="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2sPTtxmEdqEPrOCkNZ5Vg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sPT9xmEdqEPrOCkNZ5Vg" name="kind" type="_M21Zb9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPUNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPT9xmEdqEPrOCkNZ5Vg">
<body>Indicates the precise type of the transition.</body>
</ownedComment>
- <defaultValue xmi:type="uml:InstanceValue" xmi:id="_hBpXC8WCEdqI1bY5Lwi8Hg" type="_hBzISMWCEdqI1bY5Lwi8Hg" instance="_hBzIVMWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_M2sPUdxmEdqEPrOCkNZ5Vg" type="_M21Zb9xmEdqEPrOCkNZ5Vg" instance="_M21Ze9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXDMWCEdqI1bY5Lwi8Hg" name="container" type="_hBzH8MWCEdqI1bY5Lwi8Hg" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_hBzIWMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXDcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXDMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sPUtxmEdqEPrOCkNZ5Vg" name="container" type="_M21ZF9xmEdqEPrOCkNZ5Vg" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_M2_JstxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPU9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPUtxmEdqEPrOCkNZ5Vg">
<body>Designates the region that owns this transition.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXDsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXD8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sPVNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sPVdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXEMWCEdqI1bY5Lwi8Hg" name="source" type="_hBpXPsWCEdqI1bY5Lwi8Hg" association="_hBzIWsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXEcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXEMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sPVtxmEdqEPrOCkNZ5Vg" name="source" type="_M21YsNxmEdqEPrOCkNZ5Vg" association="_M2_JtNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPV9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPVtxmEdqEPrOCkNZ5Vg">
<body>Designates the originating vertex (state or pseudostate) of the transition.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXEsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXE8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sPWNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sPWdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXFMWCEdqI1bY5Lwi8Hg" name="target" type="_hBpXPsWCEdqI1bY5Lwi8Hg" association="_hBzIW8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXFcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXFMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sPWtxmEdqEPrOCkNZ5Vg" name="target" type="_M21YsNxmEdqEPrOCkNZ5Vg" association="_M2_JtdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPW9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPWtxmEdqEPrOCkNZ5Vg">
<body>Designates the target vertex that is reached when the transition is taken.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXFsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXF8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sPXNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sPXdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXGMWCEdqI1bY5Lwi8Hg" name="redefinedTransition" type="_hBpW8MWCEdqI1bY5Lwi8Hg" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_hBzIaMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXGcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXGMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sPXtxmEdqEPrOCkNZ5Vg" name="redefinedTransition" type="_M2sPNtxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_M2_JwtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPX9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPXtxmEdqEPrOCkNZ5Vg">
<body>The transition that is redefined by this transition.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXGsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXG8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sPYNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sPYdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXHMWCEdqI1bY5Lwi8Hg" name="guard" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H97MWCEdqI1bY5Lwi8Hg" association="_hB8R5cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXHcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXHMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sPYtxmEdqEPrOCkNZ5Vg" name="guard" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRftxmEdqEPrOCkNZ5Vg" association="_M2_J29xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPY9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPYtxmEdqEPrOCkNZ5Vg">
<body>A guard is a constraint that provides a fine-grained control over the firing of the transition. The guard is evaluated when an event occurrence is dispatched by the state machine. If the guard is true at that time, the transition may be enabled, otherwise, it is disabled. Guards should be pure expressions without side effects. Guard expressions with side effects are ill formed.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXHsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXH8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sPZNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sPZdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXIMWCEdqI1bY5Lwi8Hg" name="redefinitionContext" type="_6UV2QGwJEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" redefinedProperty="_g1H-IsWCEdqI1bY5Lwi8Hg" association="_hB8R9MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXIcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXIMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sPZtxmEdqEPrOCkNZ5Vg" name="redefinitionContext" type="_6UV2QGwJEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" redefinedProperty="_MsjbWdxmEdqEPrOCkNZ5Vg" association="_M2_J6txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPZ9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPZtxmEdqEPrOCkNZ5Vg">
<body>References the classifier in which context this element may be redefined.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXIsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXI8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sPaNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sPadxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXJMWCEdqI1bY5Lwi8Hg" name="effect" type="_TUPtYGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hB8R_sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXJcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXJMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sPatxmEdqEPrOCkNZ5Vg" name="effect" type="_TUPtYGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M2_J9NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPa9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPatxmEdqEPrOCkNZ5Vg">
<body>Specifies an optional behavior to be performed when the transition fires.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXJsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXJ8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sPbNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sPbdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXKMWCEdqI1bY5Lwi8Hg" name="trigger" type="_g-OPmsWCEdqI1bY5Lwi8Hg" aggregation="composite" association="_hB8SFMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXKcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXKMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sPbtxmEdqEPrOCkNZ5Vg" name="trigger" type="_M0AHRtxmEdqEPrOCkNZ5Vg" aggregation="composite" association="_M2_KCtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPb9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPbtxmEdqEPrOCkNZ5Vg">
<body>Specifies the triggers that may fire the transition.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXKsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXK8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sPcNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sPcdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hBpXLMWCEdqI1bY5Lwi8Hg" name="redefinitionContext" isQuery="true" bodyCondition="_hBpXLsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXLcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXLMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2sPctxmEdqEPrOCkNZ5Vg" name="redefinitionContext" isQuery="true" bodyCondition="_M2sPdNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPc9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPctxmEdqEPrOCkNZ5Vg">
<body>The redefinition context of a transition is the nearest containing statemachine.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXLsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hBpXLMWCEdqI1bY5Lwi8Hg _hBpXIMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXL8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPdNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2sPctxmEdqEPrOCkNZ5Vg _M2sPZtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPddxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = let sm = containingStateMachine() in&#xA;if sm.context->isEmpty() or sm.general->notEmpty() then&#xA;sm&#xA;else&#xA;sm.context&#xA;endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hBpXMMWCEdqI1bY5Lwi8Hg" type="_6UV2QGwJEdq7X4sGURiZYA" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPdtxmEdqEPrOCkNZ5Vg" type="_6UV2QGwJEdq7X4sGURiZYA" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hBpXMcWCEdqI1bY5Lwi8Hg" name="isConsistentWith" isQuery="true" precondition="_hBpXNcWCEdqI1bY5Lwi8Hg" redefinedOperation="_g1H-KsWCEdqI1bY5Lwi8Hg" bodyCondition="_hBpXM8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXMsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXMcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2sPd9xmEdqEPrOCkNZ5Vg" name="isConsistentWith" isQuery="true" precondition="_M2sPe9xmEdqEPrOCkNZ5Vg" redefinedOperation="_MsjbYdxmEdqEPrOCkNZ5Vg" bodyCondition="_M2sPedxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPeNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPd9xmEdqEPrOCkNZ5Vg">
<body>The query isConsistentWith() specifies that a redefining transition is consistent with a redefined transition provided that the redefining transition has the following relation to the redefined transition: A redefining transition redefines all properties of the corresponding redefined transition, except the source state and the trigger.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXM8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hBpXMcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXNMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPedxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2sPd9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPetxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>result = (redefinee.oclIsKindOf(Transition) and&#xA;&#xA; let trans: Transition = redefinee.oclAsType(Transition) in&#xA;&#xA; (source() = trans.source() and trigger() = tran.trigger())</body>
+ <body>result = (redefinee.oclIsKindOf(Transition) and&#xD;&#xA; let trans: Transition = redefinee.oclAsType(Transition) in&#xD;&#xA; (source() = trans.source() and trigger() = tran.trigger())</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXNcWCEdqI1bY5Lwi8Hg" constrainedElement="_hBpXMcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXNsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPe9xmEdqEPrOCkNZ5Vg" constrainedElement="_M2sPd9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPfNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>redefinee.isRedefinitionContextValid(self)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hBpXN8WCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hBpXOMWCEdqI1bY5Lwi8Hg" name="redefinee" type="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPfdxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPftxmEdqEPrOCkNZ5Vg" name="redefinee" type="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hBpXOcWCEdqI1bY5Lwi8Hg" name="containingStateMachine" isQuery="true" bodyCondition="_hBpXO8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXOsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXOcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2sPf9xmEdqEPrOCkNZ5Vg" name="containingStateMachine" isQuery="true" bodyCondition="_M2sPgdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPgNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPf9xmEdqEPrOCkNZ5Vg">
<body>The query containingStateMachine() returns the state machine that contains the transition either directly or transitively.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXO8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hBpXOcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXPMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPgdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2sPf9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPgtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = container.containingStateMachine()</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hBpXPcWCEdqI1bY5Lwi8Hg" type="_hAv_JsWCEdqI1bY5Lwi8Hg" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPg9xmEdqEPrOCkNZ5Vg" type="_M2id69xmEdqEPrOCkNZ5Vg" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hBpXPsWCEdqI1bY5Lwi8Hg" name="Vertex" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXP8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXPsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M21YsNxmEdqEPrOCkNZ5Vg" name="Vertex" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21YsdxmEdqEPrOCkNZ5Vg" annotatedElement="_M21YsNxmEdqEPrOCkNZ5Vg">
<body>A vertex is an abstraction of a node in a state machine graph. In general, it can be the source or destination of any number of transitions.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hBpXQMWCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXQcWCEdqI1bY5Lwi8Hg" name="container" type="_hBzH8MWCEdqI1bY5Lwi8Hg" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_hBzIVsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXQsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXQcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M21YstxmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21Ys9xmEdqEPrOCkNZ5Vg" name="container" type="_M21ZF9xmEdqEPrOCkNZ5Vg" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_M2_JsNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21YtNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Ys9xmEdqEPrOCkNZ5Vg">
<body>The region that contains this vertex.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXQ8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXRMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21YtdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21YttxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXRcWCEdqI1bY5Lwi8Hg" name="outgoing" type="_hBpW8MWCEdqI1bY5Lwi8Hg" association="_hBzIWsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXRsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXRcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21Yt9xmEdqEPrOCkNZ5Vg" name="outgoing" type="_M2sPNtxmEdqEPrOCkNZ5Vg" association="_M2_JtNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21YuNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Yt9xmEdqEPrOCkNZ5Vg">
<body>Specifies the transitions departing from this vertex.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXR8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXSMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21YudxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21YutxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXScWCEdqI1bY5Lwi8Hg" name="incoming" type="_hBpW8MWCEdqI1bY5Lwi8Hg" association="_hBzIW8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXSsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXScWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21Yu9xmEdqEPrOCkNZ5Vg" name="incoming" type="_M2sPNtxmEdqEPrOCkNZ5Vg" association="_M2_JtdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21YvNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Yu9xmEdqEPrOCkNZ5Vg">
<body>Specifies the transitions entering this vertex.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXS8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXTMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21YvdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21YvtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hBpXTcWCEdqI1bY5Lwi8Hg" name="containingStateMachine" isQuery="true" bodyCondition="_hBpXT8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXTsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXTcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M21Yv9xmEdqEPrOCkNZ5Vg" name="containingStateMachine" isQuery="true" bodyCondition="_M21YwdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21YwNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Yv9xmEdqEPrOCkNZ5Vg">
<body>The operation containingStateMachine() returns the state machine in which this Vertex is defined</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXT8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hBpXTcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXUMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21YwdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M21Yv9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21YwtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if not container->isEmpty()&#xA;then&#xA;-- the container is a region&#xA;container.containingStateMachine()&#xA;else if (oclIsKindOf(Pseudostate)) then&#xA;-- entry or exit point?&#xA;if (kind = #entryPoint) or (kind = #exitPoint) then&#xA;stateMachine&#xA;else if (oclIsKindOf(ConnectionPointReference)) then&#xA;state.containingStateMachine() -- no other valid cases possible&#xA;endif&#xA;</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hBpXUcWCEdqI1bY5Lwi8Hg" type="_hAv_JsWCEdqI1bY5Lwi8Hg" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M21Yw9xmEdqEPrOCkNZ5Vg" type="_M2id69xmEdqEPrOCkNZ5Vg" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hBpXUsWCEdqI1bY5Lwi8Hg" name="Pseudostate">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXU8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXUsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M21YxNxmEdqEPrOCkNZ5Vg" name="Pseudostate">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21YxdxmEdqEPrOCkNZ5Vg" annotatedElement="_M21YxNxmEdqEPrOCkNZ5Vg">
<body>Pseudostates are typically used to connect multiple transitions into more complex state transitions paths. For example, by combining a transition entering a fork pseudostate with a set of transitions exiting the fork pseudostate, we get a compound transition that leads to a set of orthogonal target states.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXVMWCEdqI1bY5Lwi8Hg" name="initial_vertex" constrainedElement="_hBpXUsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXVcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXVMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21YxtxmEdqEPrOCkNZ5Vg" name="initial_vertex" constrainedElement="_M21YxNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Yx9xmEdqEPrOCkNZ5Vg" annotatedElement="_M21YxtxmEdqEPrOCkNZ5Vg">
<body>An initial vertex can have at most one outgoing transition.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXVsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21YyNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(self.kind = #initial) implies (self.outgoing->size &lt;= 1)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXV8WCEdqI1bY5Lwi8Hg" name="history_vertices" constrainedElement="_hBpXUsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXWMWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXV8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21YydxmEdqEPrOCkNZ5Vg" name="history_vertices" constrainedElement="_M21YxNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21YytxmEdqEPrOCkNZ5Vg" annotatedElement="_M21YydxmEdqEPrOCkNZ5Vg">
<body>History vertices can have at most one outgoing transition.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXWcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21Yy9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>((self.kind = #deepHistory) or (self.kind = #shallowHistory)) implies&#xA;(self.outgoing->size &lt;= 1)&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXWsWCEdqI1bY5Lwi8Hg" name="join_vertex" constrainedElement="_hBpXUsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXW8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXWsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21YzNxmEdqEPrOCkNZ5Vg" name="join_vertex" constrainedElement="_M21YxNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21YzdxmEdqEPrOCkNZ5Vg" annotatedElement="_M21YzNxmEdqEPrOCkNZ5Vg">
<body>In a complete statemachine, a join vertex must have at least two incoming transitions and exactly one outgoing transition.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXXMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21YztxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(self.kind = #join) implies&#xA;((self.outgoing->size = 1) and (self.incoming->size >= 2))&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXXcWCEdqI1bY5Lwi8Hg" name="transitions_incoming" constrainedElement="_hBpXUsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXXsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXXcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21Yz9xmEdqEPrOCkNZ5Vg" name="transitions_incoming" constrainedElement="_M21YxNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y0NxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Yz9xmEdqEPrOCkNZ5Vg">
<body>All transitions incoming a join vertex must originate in different regions of an orthogonal state.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXX8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21Y0dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(self.kind = #join) implies&#xA; self.incoming->forAll (t1, t2 | t1&lt;>t2 implies&#xA; (self.stateMachine.LCA(t1.source, t2.source).container.isOrthogonal))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXYMWCEdqI1bY5Lwi8Hg" name="fork_vertex" constrainedElement="_hBpXUsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXYcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXYMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21Y0txmEdqEPrOCkNZ5Vg" name="fork_vertex" constrainedElement="_M21YxNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y09xmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y0txmEdqEPrOCkNZ5Vg">
<body>In a complete statemachine, a fork vertex must have at least two outgoing transitions and exactly one incoming transition.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXYsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21Y1NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(self.kind = #fork) implies&#xA;((self.incoming->size = 1) and (self.outgoing->size >= 2))&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXY8WCEdqI1bY5Lwi8Hg" name="transitions_outgoing" constrainedElement="_hBpXUsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXZMWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXY8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21Y1dxmEdqEPrOCkNZ5Vg" name="transitions_outgoing" constrainedElement="_M21YxNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y1txmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y1dxmEdqEPrOCkNZ5Vg">
<body>All transitions outgoing a fork vertex must target states in different regions of an orthogonal state.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXZcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21Y19xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(self.kind = #fork) implies&#xA; self.outgoing->forAll (t1, t2 | t1&lt;>t2 implies&#xA; (self.stateMachine.LCA(t1.target, t2.target).container.isOrthogonal))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXZsWCEdqI1bY5Lwi8Hg" name="junction_vertex" constrainedElement="_hBpXUsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXZ8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXZsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21Y2NxmEdqEPrOCkNZ5Vg" name="junction_vertex" constrainedElement="_M21YxNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y2dxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y2NxmEdqEPrOCkNZ5Vg">
<body>In a complete statemachine, a junction vertex must have at least one incoming and one outgoing transition.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXaMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21Y2txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(self.kind = #junction) implies&#xA;((self.incoming->size >= 1) and (self.outgoing->size >= 1))&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXacWCEdqI1bY5Lwi8Hg" name="choice_vertex" constrainedElement="_hBpXUsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXasWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXacWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21Y29xmEdqEPrOCkNZ5Vg" name="choice_vertex" constrainedElement="_M21YxNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y3NxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y29xmEdqEPrOCkNZ5Vg">
<body>In a complete statemachine, a choice vertex must have at least one incoming and one outgoing transition.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXa8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21Y3dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(self.kind = #choice) implies&#xA;((self.incoming->size >= 1) and (self.outgoing->size >= 1))&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXbMWCEdqI1bY5Lwi8Hg" name="outgoing_from_initial" constrainedElement="_hBpXUsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXbcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXbMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21Y3txmEdqEPrOCkNZ5Vg" name="outgoing_from_initial" constrainedElement="_M21YxNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y39xmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y3txmEdqEPrOCkNZ5Vg">
<body>The outgoing transition from and initial vertex may have a behavior, but not a trigger or a guard.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXbsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21Y4NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>(self.kind = #initial) implies (self.outgoing.guard->isEmpty()&#xA;&#xA; and self.outgoing.trigger->isEmpty())</body>
+ <body>(self.kind = #initial) implies (self.outgoing.guard->isEmpty()&#xD;&#xA; and self.outgoing.trigger->isEmpty())</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hBpXb8WCEdqI1bY5Lwi8Hg" general="_hBpXPsWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXcMWCEdqI1bY5Lwi8Hg" name="kind" type="_hBzIMsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXccWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXcMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M21Y4dxmEdqEPrOCkNZ5Vg" general="_M21YsNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21Y4txmEdqEPrOCkNZ5Vg" name="kind" type="_M21ZWdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y49xmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y4txmEdqEPrOCkNZ5Vg">
<body>Determines the precise type of the Pseudostate and can be one of: entryPoint, exitPoint, initial, deepHistory, shallowHistory, join, fork, junction, terminate or choice.</body>
</ownedComment>
- <defaultValue xmi:type="uml:InstanceValue" xmi:id="_hBpXcsWCEdqI1bY5Lwi8Hg" type="_hBzIMsWCEdqI1bY5Lwi8Hg" instance="_hBzINMWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_M21Y5NxmEdqEPrOCkNZ5Vg" type="_M21ZWdxmEdqEPrOCkNZ5Vg" instance="_M21ZW9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXc8WCEdqI1bY5Lwi8Hg" name="stateMachine" type="_hAv_JsWCEdqI1bY5Lwi8Hg" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_hBzIc8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXdMWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXc8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21Y5dxmEdqEPrOCkNZ5Vg" name="stateMachine" type="_M2id69xmEdqEPrOCkNZ5Vg" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_M2_JzdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y5txmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y5dxmEdqEPrOCkNZ5Vg">
<body>The StateMachine in which this Pseudostate is defined. This only applies to Pseudostates of the kind entryPoint or exitPoint.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXdcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXdsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21Y59xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21Y6NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXd8WCEdqI1bY5Lwi8Hg" name="state" type="_hA5wEMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_hB8SEsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXeMWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXd8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21Y6dxmEdqEPrOCkNZ5Vg" name="state" type="_M2sOwNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_M2_KCNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y6txmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y6dxmEdqEPrOCkNZ5Vg">
<body>The State that owns this pseudostate and in which it appears.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXecWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXesWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21Y69xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21Y7NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hBpXe8WCEdqI1bY5Lwi8Hg" name="FinalState">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXfMWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXe8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M21Y7dxmEdqEPrOCkNZ5Vg" name="FinalState">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y7txmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y7dxmEdqEPrOCkNZ5Vg">
<body>A special kind of state signifying that the enclosing region is completed. If the enclosing region is directly contained in a state machine and all other regions in the state machine also are completed, then it means that the entire state machine is completed.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXfcWCEdqI1bY5Lwi8Hg" name="no_outgoing_transitions" constrainedElement="_hBpXe8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXfsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXfcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21Y79xmEdqEPrOCkNZ5Vg" name="no_outgoing_transitions" constrainedElement="_M21Y7dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y8NxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y79xmEdqEPrOCkNZ5Vg">
<body>A final state cannot have any outgoing transitions.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXf8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21Y8dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.outgoing->size() = 0</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXgMWCEdqI1bY5Lwi8Hg" name="no_regions" constrainedElement="_hBpXe8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXgcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXgMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21Y8txmEdqEPrOCkNZ5Vg" name="no_regions" constrainedElement="_M21Y7dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y89xmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y8txmEdqEPrOCkNZ5Vg">
<body>A final state cannot have regions.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXgsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21Y9NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.region->size() = 0</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXg8WCEdqI1bY5Lwi8Hg" name="cannot_reference_submachine" constrainedElement="_hBpXe8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXhMWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXg8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21Y9dxmEdqEPrOCkNZ5Vg" name="cannot_reference_submachine" constrainedElement="_M21Y7dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y9txmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y9dxmEdqEPrOCkNZ5Vg">
<body>A final state cannot reference a submachine.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXhcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21Y99xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.submachine->isEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXhsWCEdqI1bY5Lwi8Hg" name="no_entry_behavior" constrainedElement="_hBpXe8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXh8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXhsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21Y-NxmEdqEPrOCkNZ5Vg" name="no_entry_behavior" constrainedElement="_M21Y7dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y-dxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y-NxmEdqEPrOCkNZ5Vg">
<body>A final state has no entry behavior.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXiMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21Y-txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.entry->isEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXicWCEdqI1bY5Lwi8Hg" name="no_exit_behavior" constrainedElement="_hBpXe8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXisWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXicWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21Y-9xmEdqEPrOCkNZ5Vg" name="no_exit_behavior" constrainedElement="_M21Y7dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y_NxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y-9xmEdqEPrOCkNZ5Vg">
<body>A final state has no exit behavior.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXi8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21Y_dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.exit->isEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXjMWCEdqI1bY5Lwi8Hg" name="no_state_behavior" constrainedElement="_hBpXe8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXjcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXjMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21Y_txmEdqEPrOCkNZ5Vg" name="no_state_behavior" constrainedElement="_M21Y7dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21Y_9xmEdqEPrOCkNZ5Vg" annotatedElement="_M21Y_txmEdqEPrOCkNZ5Vg">
<body>A final state has no state (doActivity) behavior.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXjsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21ZANxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.doActivity->isEmpty()</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hBpXj8WCEdqI1bY5Lwi8Hg" general="_hA5wEMWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M21ZAdxmEdqEPrOCkNZ5Vg" general="_M2sOwNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hBpXkMWCEdqI1bY5Lwi8Hg" name="ConnectionPointReference">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXkcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXkMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M21ZAtxmEdqEPrOCkNZ5Vg" name="ConnectionPointReference">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZA9xmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZAtxmEdqEPrOCkNZ5Vg">
<body>Connection point references of a submachine state can be used as sources/targets of transitions. They represent entries into or exits out of the submachine state machine referenced by the submachine state.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXksWCEdqI1bY5Lwi8Hg" name="entry_pseudostates" constrainedElement="_hBpXkMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXk8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXksWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21ZBNxmEdqEPrOCkNZ5Vg" name="entry_pseudostates" constrainedElement="_M21ZAtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZBdxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZBNxmEdqEPrOCkNZ5Vg">
<body>The entry Pseudostates must be Pseudostates with kind entryPoint.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXlMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21ZBtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>entry->notEmpty() implies entry->forAll(e | e.kind = #entryPoint)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBpXlcWCEdqI1bY5Lwi8Hg" name="exit_pseudostates" constrainedElement="_hBpXkMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXlsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXlcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21ZB9xmEdqEPrOCkNZ5Vg" name="exit_pseudostates" constrainedElement="_M21ZAtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZCNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZB9xmEdqEPrOCkNZ5Vg">
<body>The exit Pseudostates must be Pseudostates with kind exitPoint.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBpXl8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21ZCdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>exit->notEmpty() implies exit->forAll(e | e.kind = #exitPoint)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hBpXmMWCEdqI1bY5Lwi8Hg" general="_hBpXPsWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXmcWCEdqI1bY5Lwi8Hg" name="entry" type="_hBpXUsWCEdqI1bY5Lwi8Hg" association="_hBzIXcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXmsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXmcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M21ZCtxmEdqEPrOCkNZ5Vg" general="_M21YsNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21ZC9xmEdqEPrOCkNZ5Vg" name="entry" type="_M21YxNxmEdqEPrOCkNZ5Vg" association="_M2_Jt9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZDNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZC9xmEdqEPrOCkNZ5Vg">
<body>The entryPoint kind pseudo states corresponding to this connection point.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXm8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXnMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21ZDdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21ZDtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXncWCEdqI1bY5Lwi8Hg" name="state" type="_hA5wEMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_hBzIYcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXnsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXncWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21ZD9xmEdqEPrOCkNZ5Vg" name="state" type="_M2sOwNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_M2_Ju9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZENxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZD9xmEdqEPrOCkNZ5Vg">
<body>The State in which the connection point refreshens are defined.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXn8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXoMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21ZEdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21ZEtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBpXocWCEdqI1bY5Lwi8Hg" name="exit" type="_hBpXUsWCEdqI1bY5Lwi8Hg" association="_hBzIbcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBpXosWCEdqI1bY5Lwi8Hg" annotatedElement="_hBpXocWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21ZE9xmEdqEPrOCkNZ5Vg" name="exit" type="_M21YxNxmEdqEPrOCkNZ5Vg" association="_M2_Jx9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZFNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZE9xmEdqEPrOCkNZ5Vg">
<body>The exitPoints kind pseudo states corresponding to this connection point.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBpXo8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBpXpMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21ZFdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21ZFtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-OPu8WCEdqI1bY5Lwi8Hg" name="TimeEvent">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPvMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPu8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M0AHZ9xmEdqEPrOCkNZ5Vg" name="TimeEvent">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHaNxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHZ9xmEdqEPrOCkNZ5Vg">
<body>A time event specifies a point in time by an expression. The expression might be absolute or might be relative to some other point in time.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzILsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPu8WCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZVdxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHZ9xmEdqEPrOCkNZ5Vg">
<body>Extends TimeEvent to be defined relative to entering the current state of the executing state machine.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hAdEVMWCEdqI1bY5Lwi8Hg" name="when_non_negative" constrainedElement="_g-OPu8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hAdEVcWCEdqI1bY5Lwi8Hg" annotatedElement="_hAdEVMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2Ys_9xmEdqEPrOCkNZ5Vg" name="when_non_negative" constrainedElement="_M0AHZ9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2YtANxmEdqEPrOCkNZ5Vg" annotatedElement="_M2Ys_9xmEdqEPrOCkNZ5Vg">
<body>The ValueSpecification when must return a non-negative Integer.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hAdEVsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2YtAdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBzIL8WCEdqI1bY5Lwi8Hg" name="starting_time" constrainedElement="_g-OPu8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIMMWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIL8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21ZVtxmEdqEPrOCkNZ5Vg" name="starting_time" constrainedElement="_M0AHZ9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZV9xmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZVtxmEdqEPrOCkNZ5Vg">
<body>The starting time for a relative time event may only be omitted for a time event that is the trigger of a state machine.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBzIMcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21ZWNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-OPvcWCEdqI1bY5Lwi8Hg" general="_g-OPz8WCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-OPvsWCEdqI1bY5Lwi8Hg" name="isRelative" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPv8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPvsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0AHadxmEdqEPrOCkNZ5Vg" general="_M0AHe9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M0AHatxmEdqEPrOCkNZ5Vg" name="isRelative" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHa9xmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHatxmEdqEPrOCkNZ5Vg">
<body>Specifies whether it is relative or absolute time.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g-OPwMWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M0AHbNxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-OPwcWCEdqI1bY5Lwi8Hg" name="when" visibility="public" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g-XZkMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPwsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPwcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M0AHbdxmEdqEPrOCkNZ5Vg" name="when" visibility="public" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M0wVMNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHbtxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHbdxmEdqEPrOCkNZ5Vg">
<body>Specifies the corresponding time deadline.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hAdEV8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hAdEWMWCEdqI1bY5Lwi8Hg" value="1"/>
- </ownedAttribute>
- </packagedElement>
- <packagedElement xmi:type="uml:Enumeration" xmi:id="_hBzIMsWCEdqI1bY5Lwi8Hg" name="PseudostateKind">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIM8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIMsWCEdqI1bY5Lwi8Hg">
- <body>PseudoStateKind is an enumeration of the following literal values:
-• initial
-• deepHistory
-• shallowHistory
-• join
-• fork
-• junction
-• choice
-• entryPoint
-• exitPoint
-• terminate
-</body>
- </ownedComment>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hBzINMWCEdqI1bY5Lwi8Hg" name="initial">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzINcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzINMWCEdqI1bY5Lwi8Hg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2YtAtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2YtA9xmEdqEPrOCkNZ5Vg" value="1"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_M21ZWdxmEdqEPrOCkNZ5Vg" name="PseudostateKind">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZWtxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZWdxmEdqEPrOCkNZ5Vg">
+ <body>PseudoStateKind is an enumeration of the following literal values:&#xD;
+ - initial&#xD;
+ - deepHistory&#xD;
+ - shallowHistory&#xD;
+ - join&#xD;
+ - fork&#xD;
+ - junction&#xD;
+ - choice&#xD;
+ - entryPoint&#xD;
+ - exitPoint&#xD;
+ - terminate</body>
+ </ownedComment>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M21ZW9xmEdqEPrOCkNZ5Vg" name="initial">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZXNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZW9xmEdqEPrOCkNZ5Vg">
<body>An initial pseudostate represents a default vertex that is the source for a single transition to the default state of a composite state. There can be at most one initial vertex in a region. The outgoing transition from the initial vertex may have a behavior, but not a trigger or guard.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hBzINsWCEdqI1bY5Lwi8Hg" name="deepHistory">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIN8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBzINsWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M21ZXdxmEdqEPrOCkNZ5Vg" name="deepHistory">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZXtxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZXdxmEdqEPrOCkNZ5Vg">
<body>DeepHistory represents the most recent active configuration of the composite state that directly contains this pseudostate; e.g. the state configuration that was active when the composite state was last exited. A composite state can have at most one deep history vertex. At most one transition may originate from the history connector to the default deep history state. This transition is taken in case the composite state had never been active before. Entry actions of states entered on the path to the state represented by a deep history are performed.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hBzIOMWCEdqI1bY5Lwi8Hg" name="shallowHistory">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIOcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIOMWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M21ZX9xmEdqEPrOCkNZ5Vg" name="shallowHistory">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZYNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZX9xmEdqEPrOCkNZ5Vg">
<body>ShallowHistory represents the most recent active substate of its containing state (but not the substates of that substate). A composite state can have at most one shallow history vertex. A transition coming into the shallow history vertex is equivalent to a transition coming into the most recent active substate of a state. At most one transition may originate from the history connector to the default shallow history state. This transition is taken in case the composite state had never been active before. Entry actions of states entered on the path to the state represented by a shallow history are performed.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hBzIOsWCEdqI1bY5Lwi8Hg" name="join">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIO8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIOsWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M21ZYdxmEdqEPrOCkNZ5Vg" name="join">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZYtxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZYdxmEdqEPrOCkNZ5Vg">
<body>Join vertices serve to merge several transitions emanating from source vertices in different orthogonal regions. The transitions entering a join vertex cannot have guards or triggers.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hBzIPMWCEdqI1bY5Lwi8Hg" name="fork">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIPcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIPMWCEdqI1bY5Lwi8Hg">
- <body>Fork vertices serve to split an incoming transition into two or more transitions terminating on orthogonal target vertices
-
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M21ZY9xmEdqEPrOCkNZ5Vg" name="fork">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZZNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZY9xmEdqEPrOCkNZ5Vg">
+ <body>Fork vertices serve to split an incoming transition into two or more transitions terminating on orthogonal target vertices&#xD;
(i.e. vertices in different regions of a composite state). The segments outgoing from a fork vertex must not have guards or triggers.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hBzIPsWCEdqI1bY5Lwi8Hg" name="junction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIP8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIPsWCEdqI1bY5Lwi8Hg">
- <body>Junction vertices are semantic-free vertices that are used to chain together multiple transitions. They are used to construct compound transition paths between states. For example, a junction can be used to converge multiple incoming transitions into a single outgoing transition representing a shared transition path (this is known as an merge). Conversely, they can be used to split an incoming transition into multiple outgoing transition segments with different guard conditions. This realizes a static conditional branch. (In the latter case, outgoing transitions whose guard conditions evaluate to false are disabled. A predefined guard denoted “else” may be defined for at most one outgoing transition. This transition is enabled if all the guards labeling the other transitions are false.) Static conditional branches are distinct from dynamic conditional branches that are realized by choice vertices (described below).</body>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M21ZZdxmEdqEPrOCkNZ5Vg" name="junction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZZtxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZZdxmEdqEPrOCkNZ5Vg">
+ <body>Junction vertices are semantic-free vertices that are used to chain together multiple transitions. They are used to construct compound transition paths between states. For example, a junction can be used to converge multiple incoming transitions into a single outgoing transition representing a shared transition path (this is known as an merge). Conversely, they can be used to split an incoming transition into multiple outgoing transition segments with different guard conditions. This realizes a static conditional branch. (In the latter case, outgoing transitions whose guard conditions evaluate to false are disabled. A predefined guard denoted 'else' may be defined for at most one outgoing transition. This transition is enabled if all the guards labeling the other transitions are false.) Static conditional branches are distinct from dynamic conditional branches that are realized by choice vertices (described below).</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hBzIQMWCEdqI1bY5Lwi8Hg" name="choice">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIQcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIQMWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M21ZZ9xmEdqEPrOCkNZ5Vg" name="choice">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZaNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZZ9xmEdqEPrOCkNZ5Vg">
<body>Choice vertices which, when reached, result in the dynamic evaluation of the guards of the triggers of its outgoing transitions. This realizes a dynamic conditional branch. It allows splitting of transitions into multiple outgoing paths such that the decision on which path to take may be a function of the results of prior actions performed in the same run-tocompletion step. If more than one of the guards evaluates to true, an arbitrary one is selected. If none of the guards evaluates to true, then the model is considered ill-formed. (To avoid this, it is recommended to define one outgoing transition with the predefined else guard for every choice vertex.) Choice vertices should be distinguished from static branch points that are based on junction points (described above).</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hBzIQsWCEdqI1bY5Lwi8Hg" name="entryPoint">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIQ8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIQsWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M21ZadxmEdqEPrOCkNZ5Vg" name="entryPoint">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZatxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZadxmEdqEPrOCkNZ5Vg">
<body>An entry point pseudostate is an entry point of a state machine or composite state. In each region of the state machine or composite state it has a single transition to a vertex within the same region.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hBzIRMWCEdqI1bY5Lwi8Hg" name="exitPoint">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIRcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIRMWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M21Za9xmEdqEPrOCkNZ5Vg" name="exitPoint">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZbNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Za9xmEdqEPrOCkNZ5Vg">
<body>An exit point pseudostate is an exit point of a state machine or composite state. Entering an exit point within any region of the composite state or state machine referenced by a submachine state implies the exit of this composite state or submachine state and the triggering of the transition that has this exit point as source in the state machine enclosing the submachine or composite state.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hBzIRsWCEdqI1bY5Lwi8Hg" name="terminate">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIR8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIRsWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M21ZbdxmEdqEPrOCkNZ5Vg" name="terminate">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZbtxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZbdxmEdqEPrOCkNZ5Vg">
<body>Entering a terminate pseudostate implies that the execution of this state machine by means of its context object is terminated. The state machine does not exit any states nor does it perform any exit actions other than those associated with the transition leading to the terminate pseudostate. Entering a terminate pseudostate is equivalent to invoking a DestroyObjectAction.</body>
</ownedComment>
</ownedLiteral>
</packagedElement>
- <packagedElement xmi:type="uml:Enumeration" xmi:id="_hBzISMWCEdqI1bY5Lwi8Hg" name="TransitionKind">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIScWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzISMWCEdqI1bY5Lwi8Hg">
- <body>TransitionKind is an enumeration of the following literal values:
-• external
-• internal
-• local
-</body>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_M21Zb9xmEdqEPrOCkNZ5Vg" name="TransitionKind">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZcNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Zb9xmEdqEPrOCkNZ5Vg">
+ <body>TransitionKind is an enumeration of the following literal values:&#xD;
+ - external&#xD;
+ - internal&#xD;
+ - local</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBzISsWCEdqI1bY5Lwi8Hg" name="state_is_local" constrainedElement="_hBzISMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIS8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBzISsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21ZcdxmEdqEPrOCkNZ5Vg" name="state_is_local" constrainedElement="_M21Zb9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZctxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZcdxmEdqEPrOCkNZ5Vg">
<body>The source state of a transition with transition kind local must be a composite state.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBzITMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21Zc9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>kind=#local implies owner.source.isComposite</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBzITcWCEdqI1bY5Lwi8Hg" name="state_is_external" constrainedElement="_hBzISMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzITsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzITcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21ZdNxmEdqEPrOCkNZ5Vg" name="state_is_external" constrainedElement="_M21Zb9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZddxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZdNxmEdqEPrOCkNZ5Vg">
<body>The source state of a transition with transition kind external must be a composite state.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBzIT8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21ZdtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>kind=#external implies owner.source.isComposite</body>
</specification>
</ownedRule>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hBzIUMWCEdqI1bY5Lwi8Hg" name="internal">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIUcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIUMWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M21Zd9xmEdqEPrOCkNZ5Vg" name="internal">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZeNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Zd9xmEdqEPrOCkNZ5Vg">
<body>kind=internal implies that the transition, if triggered, occurs without exiting or entering the source state. Thus, it does not cause a state change. This means that the entry or exit condition of the source state will not be invoked. An internal transition can be taken even if the state machine is in one or more regions nested within this state.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hBzIUsWCEdqI1bY5Lwi8Hg" name="local">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIU8WCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIUsWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M21ZedxmEdqEPrOCkNZ5Vg" name="local">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZetxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZedxmEdqEPrOCkNZ5Vg">
<body>kind=local implies that the transition, if triggered, will not exit the composite (source) state, but it will apply to any state within the composite state, and these will be exited and entered.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hBzIVMWCEdqI1bY5Lwi8Hg" name="external">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIVcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIVMWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M21Ze9xmEdqEPrOCkNZ5Vg" name="external">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZfNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21Ze9xmEdqEPrOCkNZ5Vg">
<body>kind=external implies that the transition, if triggered, will exit the composite (source) state.</body>
</ownedComment>
</ownedLiteral>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzIVsWCEdqI1bY5Lwi8Hg" name="A_container_subvertex" memberEnd="_hBpXQcWCEdqI1bY5Lwi8Hg _hBzIAMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hBzIV8WCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_JsNxmEdqEPrOCkNZ5Vg" name="A_container_subvertex" memberEnd="_M21ZJ9xmEdqEPrOCkNZ5Vg _M21Ys9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_JsdxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzIWMWCEdqI1bY5Lwi8Hg" name="A_container_transition" memberEnd="_hBpXDMWCEdqI1bY5Lwi8Hg _hBzIBMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hBzIWcWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_JstxmEdqEPrOCkNZ5Vg" name="A_container_transition" memberEnd="_M2sPUtxmEdqEPrOCkNZ5Vg _M21ZK9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_Js9xmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzIWsWCEdqI1bY5Lwi8Hg" name="A_outgoing_source" memberEnd="_hBpXRcWCEdqI1bY5Lwi8Hg _hBpXEMWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzIW8WCEdqI1bY5Lwi8Hg" name="A_incoming_target" memberEnd="_hBpXFMWCEdqI1bY5Lwi8Hg _hBpXScWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzIXMWCEdqI1bY5Lwi8Hg" name="A_submachineState_submachine" memberEnd="_hA5wMMWCEdqI1bY5Lwi8Hg _hAv_QcWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzIXcWCEdqI1bY5Lwi8Hg" name="A_entry_connectionPointReference" memberEnd="_hBpXmcWCEdqI1bY5Lwi8Hg _hBzIXsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hBzIXsWCEdqI1bY5Lwi8Hg" type="_hBpXkMWCEdqI1bY5Lwi8Hg" association="_hBzIXcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBzIX8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBzIYMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_JtNxmEdqEPrOCkNZ5Vg" name="A_outgoing_source" memberEnd="_M21Yt9xmEdqEPrOCkNZ5Vg _M2sPVtxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_JtdxmEdqEPrOCkNZ5Vg" name="A_incoming_target" memberEnd="_M21Yu9xmEdqEPrOCkNZ5Vg _M2sPWtxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_JttxmEdqEPrOCkNZ5Vg" name="A_submachineState_submachine" memberEnd="_M2ieBtxmEdqEPrOCkNZ5Vg _M2sO4NxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_Jt9xmEdqEPrOCkNZ5Vg" name="A_entry_connectionPointReference" memberEnd="_M21ZC9xmEdqEPrOCkNZ5Vg _M2_JuNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_JuNxmEdqEPrOCkNZ5Vg" type="_M21ZAtxmEdqEPrOCkNZ5Vg" association="_M2_Jt9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_JudxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_JutxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzIYcWCEdqI1bY5Lwi8Hg" name="A_state_connection" memberEnd="_hA5wNMWCEdqI1bY5Lwi8Hg _hBpXncWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hBzIYsWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_Ju9xmEdqEPrOCkNZ5Vg" name="A_state_connection" memberEnd="_M2sO5NxmEdqEPrOCkNZ5Vg _M21ZD9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_JvNxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzIY8WCEdqI1bY5Lwi8Hg" name="A_redefinedState_state" memberEnd="_hA5wOMWCEdqI1bY5Lwi8Hg _hBzIZcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hBzIZMWCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hBzIZcWCEdqI1bY5Lwi8Hg" type="_hA5wEMWCEdqI1bY5Lwi8Hg" redefinedProperty="_g2eB0cWCEdqI1bY5Lwi8Hg" association="_hBzIY8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBzIZsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBzIZ8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_JvdxmEdqEPrOCkNZ5Vg" name="A_redefinedState_state" memberEnd="_M2sO6NxmEdqEPrOCkNZ5Vg _M2_Jv9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_JvtxmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_Jv9xmEdqEPrOCkNZ5Vg" type="_M2sOwNxmEdqEPrOCkNZ5Vg" redefinedProperty="_MtmkZ9xmEdqEPrOCkNZ5Vg" association="_M2_JvdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_JwNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_JwdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzIaMWCEdqI1bY5Lwi8Hg" name="A_redefinedTransition_transition" memberEnd="_hBpXGMWCEdqI1bY5Lwi8Hg _hBzIasWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hBzIacWCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hBzIasWCEdqI1bY5Lwi8Hg" type="_hBpW8MWCEdqI1bY5Lwi8Hg" redefinedProperty="_g2eB0cWCEdqI1bY5Lwi8Hg" association="_hBzIaMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBzIa8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBzIbMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_JwtxmEdqEPrOCkNZ5Vg" name="A_redefinedTransition_transition" memberEnd="_M2sPXtxmEdqEPrOCkNZ5Vg _M2_JxNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_Jw9xmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_JxNxmEdqEPrOCkNZ5Vg" type="_M2sPNtxmEdqEPrOCkNZ5Vg" redefinedProperty="_MtmkZ9xmEdqEPrOCkNZ5Vg" association="_M2_JwtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_JxdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_JxtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzIbcWCEdqI1bY5Lwi8Hg" name="A_exit_connectionPointReference" memberEnd="_hBpXocWCEdqI1bY5Lwi8Hg _hBzIbsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hBzIbsWCEdqI1bY5Lwi8Hg" type="_hBpXkMWCEdqI1bY5Lwi8Hg" association="_hBzIbcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBzIb8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBzIcMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_Jx9xmEdqEPrOCkNZ5Vg" name="A_exit_connectionPointReference" memberEnd="_M21ZE9xmEdqEPrOCkNZ5Vg _M2_JyNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_JyNxmEdqEPrOCkNZ5Vg" type="_M21ZAtxmEdqEPrOCkNZ5Vg" association="_M2_Jx9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_JydxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_JytxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzIccWCEdqI1bY5Lwi8Hg" name="A_region_stateMachine" memberEnd="_hAv_NcWCEdqI1bY5Lwi8Hg _hBzICMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hBzIcsWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_Jy9xmEdqEPrOCkNZ5Vg" name="A_region_stateMachine" memberEnd="_M2id-txmEdqEPrOCkNZ5Vg _M21ZL9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_JzNxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzIc8WCEdqI1bY5Lwi8Hg" name="A_connectionPoint_stateMachine" memberEnd="_hAv_OcWCEdqI1bY5Lwi8Hg _hBpXc8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hBzIdMWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_JzdxmEdqEPrOCkNZ5Vg" name="A_connectionPoint_stateMachine" memberEnd="_M2id_txmEdqEPrOCkNZ5Vg _M21Y5dxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_JztxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzIdcWCEdqI1bY5Lwi8Hg" name="A_region_state" memberEnd="_hBzIDMWCEdqI1bY5Lwi8Hg _hA5wPMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hBzIdsWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_Jz9xmEdqEPrOCkNZ5Vg" name="A_region_state" memberEnd="_M2sO7NxmEdqEPrOCkNZ5Vg _M21ZM9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_J0NxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hBzId8WCEdqI1bY5Lwi8Hg" name="A_region_extendedRegion" memberEnd="_hBzIEMWCEdqI1bY5Lwi8Hg _hBzIecWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hBzIeMWCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hBzIecWCEdqI1bY5Lwi8Hg" type="_hBzH8MWCEdqI1bY5Lwi8Hg" redefinedProperty="_g2eB0cWCEdqI1bY5Lwi8Hg" association="_hBzId8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBzIesWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBzIe8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_J0dxmEdqEPrOCkNZ5Vg" name="A_region_extendedRegion" memberEnd="_M21ZN9xmEdqEPrOCkNZ5Vg _M2_J09xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_J0txmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_J09xmEdqEPrOCkNZ5Vg" type="_M21ZF9xmEdqEPrOCkNZ5Vg" redefinedProperty="_MtmkZ9xmEdqEPrOCkNZ5Vg" association="_M2_J0dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_J1NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_J1dxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hB8R4MWCEdqI1bY5Lwi8Hg" name="A_stateMachine_extendedStateMachine" memberEnd="_hAv_PcWCEdqI1bY5Lwi8Hg _hB8R4sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hB8R4cWCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hB8R4sWCEdqI1bY5Lwi8Hg" type="_hAv_JsWCEdqI1bY5Lwi8Hg" redefinedProperty="_g2eB0cWCEdqI1bY5Lwi8Hg" association="_hB8R4MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hB8R48WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hB8R5MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_J1txmEdqEPrOCkNZ5Vg" name="A_stateMachine_extendedStateMachine" memberEnd="_M2ieAtxmEdqEPrOCkNZ5Vg _M2_J2NxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_J19xmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_J2NxmEdqEPrOCkNZ5Vg" type="_M2id69xmEdqEPrOCkNZ5Vg" redefinedProperty="_MtmkZ9xmEdqEPrOCkNZ5Vg" association="_M2_J1txmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_J2dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_J2txmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hB8R5cWCEdqI1bY5Lwi8Hg" name="A_guard_transition" memberEnd="_hBpXHMWCEdqI1bY5Lwi8Hg _hB8R58WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hB8R5sWCEdqI1bY5Lwi8Hg" general="_g2eCA8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hB8R58WCEdqI1bY5Lwi8Hg" type="_hBpW8MWCEdqI1bY5Lwi8Hg" association="_hB8R5cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hB8R6MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hB8R6cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_J29xmEdqEPrOCkNZ5Vg" name="A_guard_transition" memberEnd="_M2sPYtxmEdqEPrOCkNZ5Vg _M2_J3dxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_J3NxmEdqEPrOCkNZ5Vg" general="_MtmkmdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_J3dxmEdqEPrOCkNZ5Vg" type="_M2sPNtxmEdqEPrOCkNZ5Vg" association="_M2_J29xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_J3txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_J39xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hB8R6sWCEdqI1bY5Lwi8Hg" name="A_redefinitionContext_region" memberEnd="_hBzIFMWCEdqI1bY5Lwi8Hg _hB8R7MWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hB8R68WCEdqI1bY5Lwi8Hg" general="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hB8R7MWCEdqI1bY5Lwi8Hg" type="_hBzH8MWCEdqI1bY5Lwi8Hg" association="_hB8R6sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hB8R7cWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hB8R7sWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_J4NxmEdqEPrOCkNZ5Vg" name="A_redefinitionContext_region" memberEnd="_M21ZO9xmEdqEPrOCkNZ5Vg _M2_J4txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_J4dxmEdqEPrOCkNZ5Vg" general="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_J4txmEdqEPrOCkNZ5Vg" type="_M21ZF9xmEdqEPrOCkNZ5Vg" association="_M2_J4NxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_J49xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_J5NxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hB8R78WCEdqI1bY5Lwi8Hg" name="A_state_redefinitionContext" memberEnd="_hA5wQMWCEdqI1bY5Lwi8Hg _hB8R8cWCEdqI1bY5Lwi8Hg" isDerived="true">
- <generalization xmi:type="uml:Generalization" xmi:id="_hB8R8MWCEdqI1bY5Lwi8Hg" general="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hB8R8cWCEdqI1bY5Lwi8Hg" type="_hA5wEMWCEdqI1bY5Lwi8Hg" association="_hB8R78WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hB8R8sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hB8R88WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_J5dxmEdqEPrOCkNZ5Vg" name="A_state_redefinitionContext" memberEnd="_M2sO8NxmEdqEPrOCkNZ5Vg _M2_J59xmEdqEPrOCkNZ5Vg" isDerived="true">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_J5txmEdqEPrOCkNZ5Vg" general="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_J59xmEdqEPrOCkNZ5Vg" type="_M2sOwNxmEdqEPrOCkNZ5Vg" association="_M2_J5dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_J6NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_J6dxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hB8R9MWCEdqI1bY5Lwi8Hg" name="A_transition_redefinitionContext" memberEnd="_hBpXIMWCEdqI1bY5Lwi8Hg _hB8R9sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hB8R9cWCEdqI1bY5Lwi8Hg" general="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hB8R9sWCEdqI1bY5Lwi8Hg" type="_hBpW8MWCEdqI1bY5Lwi8Hg" association="_hB8R9MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hB8R98WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hB8R-MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_J6txmEdqEPrOCkNZ5Vg" name="A_transition_redefinitionContext" memberEnd="_M2sPZtxmEdqEPrOCkNZ5Vg _M2_J7NxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_J69xmEdqEPrOCkNZ5Vg" general="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_J7NxmEdqEPrOCkNZ5Vg" type="_M2sPNtxmEdqEPrOCkNZ5Vg" association="_M2_J6txmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_J7dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_J7txmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hB8R-cWCEdqI1bY5Lwi8Hg" name="A_stateInvariant_owningState" memberEnd="_hA5wRMWCEdqI1bY5Lwi8Hg _hB8R-8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hB8R-sWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hB8R-8WCEdqI1bY5Lwi8Hg" name="owningState" type="_hA5wEMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_hB8R-cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hB8R_MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hB8R_cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_J79xmEdqEPrOCkNZ5Vg" name="A_stateInvariant_owningState" memberEnd="_M2sO9NxmEdqEPrOCkNZ5Vg _M2_J8dxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_J8NxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_J8dxmEdqEPrOCkNZ5Vg" name="owningState" type="_M2sOwNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_M2_J79xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_J8txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_J89xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hB8R_sWCEdqI1bY5Lwi8Hg" name="A_effect_transition" memberEnd="_hBpXJMWCEdqI1bY5Lwi8Hg _hB8SAMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hB8R_8WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hB8SAMWCEdqI1bY5Lwi8Hg" type="_hBpW8MWCEdqI1bY5Lwi8Hg" association="_hB8R_sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hB8SAcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hB8SAsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_J9NxmEdqEPrOCkNZ5Vg" name="A_effect_transition" memberEnd="_M2sPatxmEdqEPrOCkNZ5Vg _M2_J9txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_J9dxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_J9txmEdqEPrOCkNZ5Vg" type="_M2sPNtxmEdqEPrOCkNZ5Vg" association="_M2_J9NxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_J99xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_J-NxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hB8SA8WCEdqI1bY5Lwi8Hg" name="A_entry_state" memberEnd="_hA5wSMWCEdqI1bY5Lwi8Hg _hB8SBcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hB8SBMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hB8SBcWCEdqI1bY5Lwi8Hg" type="_hA5wEMWCEdqI1bY5Lwi8Hg" association="_hB8SA8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hB8SBsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hB8SB8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_J-dxmEdqEPrOCkNZ5Vg" name="A_entry_state" memberEnd="_M2sO-NxmEdqEPrOCkNZ5Vg _M2_J-9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_J-txmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_J-9xmEdqEPrOCkNZ5Vg" type="_M2sOwNxmEdqEPrOCkNZ5Vg" association="_M2_J-dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_J_NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_J_dxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hB8SCMWCEdqI1bY5Lwi8Hg" name="A_exit_state" memberEnd="_hA5wTMWCEdqI1bY5Lwi8Hg _hB8SCsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hB8SCcWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hB8SCsWCEdqI1bY5Lwi8Hg" type="_hA5wEMWCEdqI1bY5Lwi8Hg" association="_hB8SCMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hB8SC8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hB8SDMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_J_txmEdqEPrOCkNZ5Vg" name="A_exit_state" memberEnd="_M2sO_NxmEdqEPrOCkNZ5Vg _M2_KANxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_J_9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_KANxmEdqEPrOCkNZ5Vg" type="_M2sOwNxmEdqEPrOCkNZ5Vg" association="_M2_J_txmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_KAdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_KAtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hB8SDcWCEdqI1bY5Lwi8Hg" name="A_doActivity_state" memberEnd="_hA5wUMWCEdqI1bY5Lwi8Hg _hB8SD8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hB8SDsWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hB8SD8WCEdqI1bY5Lwi8Hg" type="_hA5wEMWCEdqI1bY5Lwi8Hg" association="_hB8SDcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hB8SEMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hB8SEcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_KA9xmEdqEPrOCkNZ5Vg" name="A_doActivity_state" memberEnd="_M2sPANxmEdqEPrOCkNZ5Vg _M2_KBdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_KBNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_KBdxmEdqEPrOCkNZ5Vg" type="_M2sOwNxmEdqEPrOCkNZ5Vg" association="_M2_KA9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_KBtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_KB9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hB8SEsWCEdqI1bY5Lwi8Hg" name="A_connectionPoint_state" memberEnd="_hA5wVMWCEdqI1bY5Lwi8Hg _hBpXd8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hB8SE8WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_KCNxmEdqEPrOCkNZ5Vg" name="A_connectionPoint_state" memberEnd="_M21Y6dxmEdqEPrOCkNZ5Vg _M2sPBNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2_KCdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hB8SFMWCEdqI1bY5Lwi8Hg" name="A_trigger_transition" memberEnd="_hBpXKMWCEdqI1bY5Lwi8Hg _hB8SFcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hB8SFcWCEdqI1bY5Lwi8Hg" type="_hBpW8MWCEdqI1bY5Lwi8Hg" association="_hB8SFMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hB8SFsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hB8SF8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_KCtxmEdqEPrOCkNZ5Vg" name="A_trigger_transition" memberEnd="_M2sPbtxmEdqEPrOCkNZ5Vg _M2_KC9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_KC9xmEdqEPrOCkNZ5Vg" type="_M2sPNtxmEdqEPrOCkNZ5Vg" association="_M2_KCtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_KDNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_KDdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hB8SGMWCEdqI1bY5Lwi8Hg" name="A_deferrableTrigger_state" memberEnd="_hA5wWMWCEdqI1bY5Lwi8Hg _hB8SGcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hB8SGcWCEdqI1bY5Lwi8Hg" type="_hA5wEMWCEdqI1bY5Lwi8Hg" association="_hB8SGMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hB8SGsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hB8SG8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M2_KDtxmEdqEPrOCkNZ5Vg" name="A_deferrableTrigger_state" memberEnd="_M2sPCNxmEdqEPrOCkNZ5Vg _M2_KD9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M2_KD9xmEdqEPrOCkNZ5Vg" type="_M2sOwNxmEdqEPrOCkNZ5Vg" association="_M2_KDtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2_KENxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2_KEdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_A7vDAGv0Edq7X4sGURiZYA" name="Stereotype">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGC4cWCEdqI1bY5Lwi8Hg" annotatedElement="_A7vDAGv0Edq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I6t9xmEdqEPrOCkNZ5Vg" annotatedElement="_A7vDAGv0Edq7X4sGURiZYA">
<body>Stereotype is a kind of Class that extends Classes through Extensions. Just like a class, a stereotype may have properties, which may be referred to as tag definitions. When a stereotype is applied to a model element, the values of the properties may be referred to as tagged values. Also, stereotype names should not clash with keyword names for the extended model element.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCGC4sWCEdqI1bY5Lwi8Hg" name="name_not_clash" constrainedElement="_A7vDAGv0Edq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGC48WCEdqI1bY5Lwi8Hg" annotatedElement="_hCGC4sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3I6uNxmEdqEPrOCkNZ5Vg" name="name_not_clash" constrainedElement="_A7vDAGv0Edq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I6udxmEdqEPrOCkNZ5Vg" annotatedElement="_M3I6uNxmEdqEPrOCkNZ5Vg">
<body>Stereotype names should not clash with keyword names for the extended model element.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCGC5MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3I6utxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCGC5cWCEdqI1bY5Lwi8Hg" name="generalize" constrainedElement="_A7vDAGv0Edq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGC5sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCGC5cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3I6u9xmEdqEPrOCkNZ5Vg" name="generalize" constrainedElement="_A7vDAGv0Edq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I6vNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3I6u9xmEdqEPrOCkNZ5Vg">
<body>A Stereotype may only generalize or specialize another Stereotype.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCGC58WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3I6vdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>generalization.general->forAll(e |e.oclIsKindOf(Stereotype)) and generalization.specific->forAll(e | e.oclIsKindOf(Stereotype)) </body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCGC6MWCEdqI1bY5Lwi8Hg" general="_00owUGvdEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCGC6cWCEdqI1bY5Lwi8Hg" name="icon" type="_nDq0wJPzEdqpjIDDFZ2Hgw" aggregation="composite" association="_hCY93sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGC6sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCGC6cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3I6vtxmEdqEPrOCkNZ5Vg" general="_00owUGvdEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3I6v9xmEdqEPrOCkNZ5Vg" name="icon" type="_nDq0wJPzEdqpjIDDFZ2Hgw" aggregation="composite" association="_M3b1qtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I6wNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3I6v9xmEdqEPrOCkNZ5Vg">
<body>Stereotype can change the graphical appearance of the extended model element by using attached icons. When this association is not null, it references the location of the icon content to be displayed within diagrams presenting the extended model elements.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCGC68WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCGC7MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3I6wdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3I6wtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_FJce8GwHEdq7X4sGURiZYA" name="createExtension">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_IziyIGwHEdq7X4sGURiZYA" type="_skHGwGvsEdqG6fBIPwe-mw" direction="return"/>
@@ -8120,56 +7923,52 @@ A state machine without a context classifier may use triggers that are independe
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="__pew8GvzEdq7X4sGURiZYA" name="Profile">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGC7cWCEdqI1bY5Lwi8Hg" annotatedElement="__pew8GvzEdq7X4sGURiZYA">
- <body>A Profile is a kind of Package that extends a reference metamodel. The primary extension construct is the Stereotype, which are defined as part of Profiles.
-
-
-
-A profile introduces several constraints, or restrictions, on ordinary metamodeling through the use of the metaclasses defined in this package.
-
-
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I6w9xmEdqEPrOCkNZ5Vg" annotatedElement="__pew8GvzEdq7X4sGURiZYA">
+ <body>A Profile is a kind of Package that extends a reference metamodel. The primary extension construct is the Stereotype, which are defined as part of Profiles.&#xD;
+&#xD;
+A profile introduces several constraints, or restrictions, on ordinary metamodeling through the use of the metaclasses defined in this package.&#xD;
+&#xD;
A profile is a restricted form of a metamodel that must always be related to a reference metamodel, such as UML, as described below. A profile cannot be used without its reference metamodel, and defines a limited capability to extendmetaclasses of the reference metamodel. The extensions are defined as stereotypes that apply to existing metaclasses.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCGC7sWCEdqI1bY5Lwi8Hg" name="metaclass_reference_not_specialized" constrainedElement="__pew8GvzEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGC78WCEdqI1bY5Lwi8Hg" annotatedElement="_hCGC7sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3I6xNxmEdqEPrOCkNZ5Vg" name="metaclass_reference_not_specialized" constrainedElement="__pew8GvzEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I6xdxmEdqEPrOCkNZ5Vg" annotatedElement="_M3I6xNxmEdqEPrOCkNZ5Vg">
<body>An element imported as a metaclassReference is not specialized or generalized in a Profile.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCGC8MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3I6xtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>self.metaclassReference.importedElement->&#xA;&#xA; select(c | c.oclIsKindOf(Classifier) and&#xA;&#xA; (c.generalization.namespace = self or&#xA;&#xA; (c.specialization.namespace = self) )->isEmpty()</body>
+ <body>self.metaclassReference.importedElement->&#xD;&#xA; select(c | c.oclIsKindOf(Classifier) and&#xD;&#xA; (c.generalization.namespace = self or&#xD;&#xA; (c.specialization.namespace = self) )->isEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCGC8cWCEdqI1bY5Lwi8Hg" name="references_same_metamodel" constrainedElement="__pew8GvzEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGC8sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCGC8cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3I6x9xmEdqEPrOCkNZ5Vg" name="references_same_metamodel" constrainedElement="__pew8GvzEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I6yNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3I6x9xmEdqEPrOCkNZ5Vg">
<body>All elements imported either as metaclassReferences or through metamodelReferences are members of the same base reference metamodel.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCGC88WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3I6ydxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>self.metamodelReference.importedPackage.elementImport.importedElement.allOwningPackages())->&#xA;&#xA; union(self.metaclassReference.importedElement.allOwningPackages() )->notEmpty()</body>
+ <body>self.metamodelReference.importedPackage.elementImport.importedElement.allOwningPackages())->&#xD;&#xA; union(self.metaclassReference.importedElement.allOwningPackages() )->notEmpty()</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCGC9MWCEdqI1bY5Lwi8Hg" general="_-cvRAGvzEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCGC9cWCEdqI1bY5Lwi8Hg" name="ownedStereotype" type="_A7vDAGv0Edq7X4sGURiZYA" isDerived="true" aggregation="composite" subsettedProperty="_g14MEsWCEdqI1bY5Lwi8Hg" association="_hCPNDsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGC9sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCGC9cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3I6ytxmEdqEPrOCkNZ5Vg" general="_-cvRAGvzEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3I6y9xmEdqEPrOCkNZ5Vg" name="ownedStereotype" type="_A7vDAGv0Edq7X4sGURiZYA" isDerived="true" aggregation="composite" subsettedProperty="_MtJ4T9xmEdqEPrOCkNZ5Vg" association="_M3SE8NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I6zNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3I6y9xmEdqEPrOCkNZ5Vg">
<body>References the Stereotypes that are owned by the Profile.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCGC98WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCGC-MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3I6zdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3I6ztxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCGC-cWCEdqI1bY5Lwi8Hg" name="metaclassReference" type="_RPl78GwIEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_g0-0PMWCEdqI1bY5Lwi8Hg" association="_hCY91MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGC-sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCGC-cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3I6z9xmEdqEPrOCkNZ5Vg" name="metaclassReference" type="_RPl78GwIEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_MsaRbtxmEdqEPrOCkNZ5Vg" association="_M3b1oNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I60NxmEdqEPrOCkNZ5Vg" annotatedElement="_M3I6z9xmEdqEPrOCkNZ5Vg">
<body>References a metaclass that may be extended.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCGC-8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCGC_MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3I60dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3I60txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCGC_cWCEdqI1bY5Lwi8Hg" name="metamodelReference" type="_SnNPIGwIEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_g1H94MWCEdqI1bY5Lwi8Hg" association="_hCY92cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGC_sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCGC_cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3I609xmEdqEPrOCkNZ5Vg" name="metamodelReference" type="_SnNPIGwIEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_MsaRctxmEdqEPrOCkNZ5Vg" association="_M3b1pdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I61NxmEdqEPrOCkNZ5Vg" annotatedElement="_M3I609xmEdqEPrOCkNZ5Vg">
<body>References a package containing (directly or indirectly) metaclasses that may be extended.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCGC_8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCGDAMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3I61dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3I61txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_2QKPIGwJEdq7X4sGURiZYA" name="create">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_9o-PwGwJEdq7X4sGURiZYA" direction="return">
@@ -8228,85 +8027,85 @@ A profile is a restricted form of a metamodel that must always be related to a r
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_00owUGvdEdq4DLWZOhbdEA" name="Class">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bf7MWCEdqI1bY5Lwi8Hg" annotatedElement="_00owUGvdEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbutxmEdqEPrOCkNZ5Vg" annotatedElement="_00owUGvdEdq4DLWZOhbdEA">
<body>Class is a kind of classifier whose features are attributes and operations. Attributes of a class are represented by instances of Property that are owned by the class. Some of these attributes may represent the navigable ends of binary associations.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPjsWCEdqI1bY5Lwi8Hg" annotatedElement="_00owUGvdEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHOtxmEdqEPrOCkNZ5Vg" annotatedElement="_00owUGvdEdq4DLWZOhbdEA">
<body>A class may be designated as active, i.e., each of its instances having its own thread of control, or passive, i.e., each of its instance executing within the context of some other object. A class may also specify which signals the instances of this class handle.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92YcWCEdqI1bY5Lwi8Hg" annotatedElement="_00owUGvdEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaFdxmEdqEPrOCkNZ5Vg" annotatedElement="_00owUGvdEdq4DLWZOhbdEA">
<body>Extends the metaclass Class with the capability to have an internal structure and ports.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGDBsWCEdqI1bY5Lwi8Hg" annotatedElement="_00owUGvdEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I63NxmEdqEPrOCkNZ5Vg" annotatedElement="_00owUGvdEdq4DLWZOhbdEA">
<body>Class has derived association that indicates how it may be extended through one or more stereotypes.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-OPj8WCEdqI1bY5Lwi8Hg" name="passive_class" constrainedElement="_00owUGvdEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPkMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPj8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M0AHO9xmEdqEPrOCkNZ5Vg" name="passive_class" constrainedElement="_00owUGvdEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHPNxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHO9xmEdqEPrOCkNZ5Vg">
<body>A passive class may not own receptions.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-OPkcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M0AHPdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>not self.isActive implies self.ownedReception.isEmpty()</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-OPksWCEdqI1bY5Lwi8Hg" general="_iY7sMGvsEdqG6fBIPwe-mw"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-92YsWCEdqI1bY5Lwi8Hg" general="_g-0FhcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bf7sWCEdqI1bY5Lwi8Hg" name="isAbstract" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" redefinedProperty="_g4jsYsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bf78WCEdqI1bY5Lwi8Hg" annotatedElement="_g1bf7sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M0AHPtxmEdqEPrOCkNZ5Vg" general="_iY7sMGvsEdqG6fBIPwe-mw"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1MaFtxmEdqEPrOCkNZ5Vg" general="_M1DQQ9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMUNxmEdqEPrOCkNZ5Vg" name="isAbstract" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" redefinedProperty="_MvYs4txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMUdxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMUNxmEdqEPrOCkNZ5Vg">
<body>True when a class is abstract.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5dERsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bf7sWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv_J39xmEdqEPrOCkNZ5Vg" annotatedElement="_MstMUNxmEdqEPrOCkNZ5Vg">
<body>If true, the Classifier does not provide a complete declaration and can typically not be instantiated. An abstract classifier is intended to be used by other classifiers e.g. as the target of general metarelationships or generalization relationships.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g5dER8WCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_Mv_J4NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5dESMWCEdqI1bY5Lwi8Hg" name="nestedClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" isOrdered="true" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g6yhE8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5dEScWCEdqI1bY5Lwi8Hg" annotatedElement="_g5dESMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mv_J4dxmEdqEPrOCkNZ5Vg" name="nestedClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" isOrdered="true" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_MxLcrdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv_J4txmEdqEPrOCkNZ5Vg" annotatedElement="_Mv_J4dxmEdqEPrOCkNZ5Vg">
<body>References all the Classifiers that are defined (nested) within the Class.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5dESsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5dES8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv_J49xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv_J5NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bf8cWCEdqI1bY5Lwi8Hg" name="ownedAttribute" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" redefinedProperty="_g8ua-cWCEdqI1bY5Lwi8Hg" subsettedProperty="_g0iIAMWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg" association="_g2UQssWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bf8sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bf8cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMU9xmEdqEPrOCkNZ5Vg" name="ownedAttribute" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" redefinedProperty="_Myz0fNxmEdqEPrOCkNZ5Vg" subsettedProperty="_Mrz0ctxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg" association="_MtczMtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMVNxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMU9xmEdqEPrOCkNZ5Vg">
<body>The attributes (i.e. the properties) owned by the class.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5dETMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5dETcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv_J5dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv_J5txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bf9cWCEdqI1bY5Lwi8Hg" name="ownedOperation" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g0iIBMWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg" association="_g2UQtcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bf9sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bf9cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMV9xmEdqEPrOCkNZ5Vg" name="ownedOperation" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_Mrz0dtxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg" association="_MtczNdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMWNxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMV9xmEdqEPrOCkNZ5Vg">
<body>The operations owned by the class.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5dETsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5dET8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv_J59xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv_J6NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bf-cWCEdqI1bY5Lwi8Hg" name="superClass" visibility="public" type="_00owUGvdEdq4DLWZOhbdEA" isDerived="true" redefinedProperty="_g0r5AMWCEdqI1bY5Lwi8Hg" association="_g2UQysWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bf-sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bf-cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMW9xmEdqEPrOCkNZ5Vg" name="superClass" visibility="public" type="_00owUGvdEdq4DLWZOhbdEA" isDerived="true" redefinedProperty="_Mrz0etxmEdqEPrOCkNZ5Vg" association="_MtczStxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMXNxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMW9xmEdqEPrOCkNZ5Vg">
<body>This gives the superclasses of a class.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5dEUMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5dEUcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv_J6dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv_J6txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-OPk8WCEdqI1bY5Lwi8Hg" name="isActive" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPlMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPk8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M0AHP9xmEdqEPrOCkNZ5Vg" name="isActive" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHQNxmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHP9xmEdqEPrOCkNZ5Vg">
<body>Determines whether an object specified by this class is active or not. If true, then the owning class is referred to as an active class. If false, then such a class is referred to as a passive class.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g-OPlcWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M0AHQdxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-OPlsWCEdqI1bY5Lwi8Hg" name="ownedReception" type="_g-OPpsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg _g0iIBMWCEdqI1bY5Lwi8Hg" association="_g-XZisWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPl8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPlsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M0AHQtxmEdqEPrOCkNZ5Vg" name="ownedReception" type="_M0AHUtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg _Mrz0dtxmEdqEPrOCkNZ5Vg" association="_M0wVKtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHQ9xmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHQtxmEdqEPrOCkNZ5Vg">
<body>Receptions that objects of this class are willing to accept.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-OPmMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-OPmcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0AHRNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0AHRdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCGDB8WCEdqI1bY5Lwi8Hg" name="extension" type="_skHGwGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" association="_hCPNGMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGDCMWCEdqI1bY5Lwi8Hg" annotatedElement="_hCGDB8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3I63dxmEdqEPrOCkNZ5Vg" name="extension" type="_skHGwGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" association="_M3SE-txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I63txmEdqEPrOCkNZ5Vg" annotatedElement="_M3I63dxmEdqEPrOCkNZ5Vg">
<body>References the Extensions that specify additional properties of the metaclass. The property is derived from the extensions whose memberEnds are typed by the Class.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCGDCcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCGDCsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3I639xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3I64NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_4xcu4FYKEdqrn7iZ0eqieg" name="getExtensions" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_8-RUoFYKEdqrn7iZ0eqieg" type="_skHGwGvsEdqG6fBIPwe-mw" direction="return">
@@ -8336,47 +8135,47 @@ A profile is a restricted form of a metamodel that must always be related to a r
<ownedOperation xmi:type="uml:Operation" xmi:id="_shXKYGwQEdq14q0ETb1t3g" name="isMetaclass" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_urWVsGwQEdq14q0ETb1t3g" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1bf_cWCEdqI1bY5Lwi8Hg" name="inherit" visibility="public" isQuery="true" redefinedOperation="_g01DAsWCEdqI1bY5Lwi8Hg" bodyCondition="_g1bf_8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bf_sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bf_cWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MstMX9xmEdqEPrOCkNZ5Vg" name="inherit" visibility="public" isQuery="true" redefinedOperation="_MsGvm9xmEdqEPrOCkNZ5Vg" bodyCondition="_MstMYdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMYNxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMX9xmEdqEPrOCkNZ5Vg">
<body>The inherit operation is overridden to exclude redefined properties.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1bf_8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1bf_cWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5dEUsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMYdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MstMX9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mv_J69xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = inhs->excluding(inh | ownedMember->select(oclIsKindOf(RedefinableElement))->select(redefinedElement->includes(inh)))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1bgAcWCEdqI1bY5Lwi8Hg" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5dEU8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5dEVMWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MstMY9xmEdqEPrOCkNZ5Vg" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwITwNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwITwdxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1bgBMWCEdqI1bY5Lwi8Hg" name="inhs" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5dEVcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5dEVsWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MstMZtxmEdqEPrOCkNZ5Vg" name="inhs" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwITwtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwITw9xmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_uY5yQGv5Edq7X4sGURiZYA" name="ProfileApplication">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGDC8WCEdqI1bY5Lwi8Hg" annotatedElement="_uY5yQGv5Edq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I64dxmEdqEPrOCkNZ5Vg" annotatedElement="_uY5yQGv5Edq7X4sGURiZYA">
<body>ProfileApplication is a kind of PackageImport that adds the capability to state that a Profile is applied to a Package.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCGDDMWCEdqI1bY5Lwi8Hg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCGDDcWCEdqI1bY5Lwi8Hg" name="appliedProfile" type="__pew8GvzEdq7X4sGURiZYA" subsettedProperty="_g01DGMWCEdqI1bY5Lwi8Hg" association="_hCPNE8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGDDsWCEdqI1bY5Lwi8Hg" annotatedElement="_hCGDDcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3I64txmEdqEPrOCkNZ5Vg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3I649xmEdqEPrOCkNZ5Vg" name="appliedProfile" type="__pew8GvzEdq7X4sGURiZYA" subsettedProperty="_MsGvsdxmEdqEPrOCkNZ5Vg" association="_M3SE9dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I65NxmEdqEPrOCkNZ5Vg" annotatedElement="_M3I649xmEdqEPrOCkNZ5Vg">
<body>References the Profiles that are applied to a Package through this ProfileApplication.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCGDD8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCGDEMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3I65dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3I65txmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCGDEcWCEdqI1bY5Lwi8Hg" name="isStrict" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGDEsWCEdqI1bY5Lwi8Hg" annotatedElement="_hCGDEcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3I659xmEdqEPrOCkNZ5Vg" name="isStrict" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I66NxmEdqEPrOCkNZ5Vg" annotatedElement="_M3I659xmEdqEPrOCkNZ5Vg">
<body>Specifies that the Profile filtering rules for the metaclasses of the referenced metamodel shall be strictly applied.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hCGDE8WCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M3I66dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCGDFMWCEdqI1bY5Lwi8Hg" name="applyingPackage" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_g01DFMWCEdqI1bY5Lwi8Hg _g01DJ8WCEdqI1bY5Lwi8Hg" association="_hCPNC8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCGDFcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCGDFsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3I66txmEdqEPrOCkNZ5Vg" name="applyingPackage" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_MsGvrdxmEdqEPrOCkNZ5Vg _MsQga9xmEdqEPrOCkNZ5Vg" association="_M3SE7dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3I669xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3I67NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_GXI1QW10EdqniMBnIUw7ig" name="getAppliedDefinition" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_LJ9EAG10EdqniMBnIUw7ig" direction="return">
@@ -8395,47 +8194,47 @@ A profile is a restricted form of a metamodel that must always be related to a r
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_skHGwGvsEdqG6fBIPwe-mw" name="Extension">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGDF8WCEdqI1bY5Lwi8Hg" annotatedElement="_skHGwGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I67dxmEdqEPrOCkNZ5Vg" annotatedElement="_skHGwGvsEdqG6fBIPwe-mw">
<body>Extension is a kind of Association. One end of the Extension is an ordinary Property and the other end is an ExtensionEnd. The former ties the Extension to a Class, while the latter ties the Extension to a Stereotype that extends the Class.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCGDGMWCEdqI1bY5Lwi8Hg" name="non_owned_end" constrainedElement="_skHGwGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGDGcWCEdqI1bY5Lwi8Hg" annotatedElement="_hCGDGMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3SEoNxmEdqEPrOCkNZ5Vg" name="non_owned_end" constrainedElement="_skHGwGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SEodxmEdqEPrOCkNZ5Vg" annotatedElement="_M3SEoNxmEdqEPrOCkNZ5Vg">
<body>The non-owned end of an Extension is typed by a Class.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCGDGsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3SEotxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>metaclassEnd()->notEmpty() and metaclass()->oclIsKindOf(Class)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCGDG8WCEdqI1bY5Lwi8Hg" name="is_binary" constrainedElement="_skHGwGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGDHMWCEdqI1bY5Lwi8Hg" annotatedElement="_hCGDG8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3SEo9xmEdqEPrOCkNZ5Vg" name="is_binary" constrainedElement="_skHGwGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SEpNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3SEo9xmEdqEPrOCkNZ5Vg">
<body>An Extension is binary, i.e., it has only two memberEnds.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCGDHcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3SEpdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>memberEnd->size() = 2</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCGDHsWCEdqI1bY5Lwi8Hg" general="_AwvxoGwNEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCGDH8WCEdqI1bY5Lwi8Hg" name="isRequired" type="_UdivYGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGDIMWCEdqI1bY5Lwi8Hg" annotatedElement="_hCGDH8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3SEptxmEdqEPrOCkNZ5Vg" general="_AwvxoGwNEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3SEp9xmEdqEPrOCkNZ5Vg" name="isRequired" type="_UdivYGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SEqNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3SEp9xmEdqEPrOCkNZ5Vg">
<body>Indicates whether an instance of the extending stereotype must be created when an instance of the extended class is created. The attribute value is derived from the multiplicity of the Property referenced by Extension::ownedEnd; a multiplicity of 1 means that isRequired is true, but otherwise it is false. Since the default multiplicity of an ExtensionEnd is 0..1, the default value of isRequired is false.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hCGDIcWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M3SEqdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCGDIsWCEdqI1bY5Lwi8Hg" name="metaclass" type="_00owUGvdEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" association="_hCPNGMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGDI8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCGDIsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3SEqtxmEdqEPrOCkNZ5Vg" name="metaclass" type="_00owUGvdEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" association="_M3SE-txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SEq9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3SEqtxmEdqEPrOCkNZ5Vg">
<body>References the Class that is extended through an Extension. The property is derived from the type of the memberEnd that is not the ownedEnd.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCGDJMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCGDJcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3SErNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3SErdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCGDJsWCEdqI1bY5Lwi8Hg" name="ownedEnd" type="_2QuT0GvdEdq4DLWZOhbdEA" aggregation="composite" redefinedProperty="_g1RvG8WCEdqI1bY5Lwi8Hg" association="_hCPNGcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGDJ8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCGDJsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3SErtxmEdqEPrOCkNZ5Vg" name="ownedEnd" type="_2QuT0GvdEdq4DLWZOhbdEA" aggregation="composite" redefinedProperty="_MsjbqtxmEdqEPrOCkNZ5Vg" association="_M3SE-9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SEr9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3SErtxmEdqEPrOCkNZ5Vg">
<body>References the end of the extension that is typed by a Stereotype.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCGDKMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCGDKcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3SEsNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3SEsdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_k1UVkJPtEdqpjIDDFZ2Hgw" name="getStereotypeEnd" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_BPaXoJPuEdqpjIDDFZ2Hgw" type="_Jp_1oGveEdq4DLWZOhbdEA" direction="return">
@@ -8449,98 +8248,96 @@ A profile is a restricted form of a metamodel that must always be related to a r
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_aF9tkJQGEdqpjIDDFZ2Hgw"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hCPM0MWCEdqI1bY5Lwi8Hg" name="metaclassEnd" isQuery="true" bodyCondition="_hCPM0sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPM0cWCEdqI1bY5Lwi8Hg" annotatedElement="_hCPM0MWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M3SEstxmEdqEPrOCkNZ5Vg" name="metaclassEnd" isQuery="true" bodyCondition="_M3SEtNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SEs9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3SEstxmEdqEPrOCkNZ5Vg">
<body>The query metaclassEnd() returns the Property that is typed by a metaclass (as opposed to a stereotype).</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCPM0sWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hCPM0MWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCPM08WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3SEtNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M3SEstxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3SEtdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = memberEnd->reject(ownedEnd)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hCPM1MWCEdqI1bY5Lwi8Hg" type="_Jp_1oGveEdq4DLWZOhbdEA" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M3SEttxmEdqEPrOCkNZ5Vg" type="_Jp_1oGveEdq4DLWZOhbdEA" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hCPM1cWCEdqI1bY5Lwi8Hg" name="metaclass" isQuery="true" bodyCondition="_hCPM18WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPM1sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCPM1cWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M3SEt9xmEdqEPrOCkNZ5Vg" name="metaclass" isQuery="true" bodyCondition="_M3SEudxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SEuNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3SEt9xmEdqEPrOCkNZ5Vg">
<body>The query metaclass() returns the metaclass that is being extended (as opposed to the extending stereotype).</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCPM18WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hCPM1cWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCPM2MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3SEudxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M3SEt9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3SEutxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = metaclassEnd().type</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hCPM2cWCEdqI1bY5Lwi8Hg" type="_00owUGvdEdq4DLWZOhbdEA" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M3SEu9xmEdqEPrOCkNZ5Vg" type="_00owUGvdEdq4DLWZOhbdEA" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hCPM2sWCEdqI1bY5Lwi8Hg" name="isRequired" isQuery="true" bodyCondition="_hCPM3MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPM28WCEdqI1bY5Lwi8Hg" annotatedElement="_hCPM2sWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M3SEvNxmEdqEPrOCkNZ5Vg" name="isRequired" isQuery="true" bodyCondition="_M3SEvtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SEvdxmEdqEPrOCkNZ5Vg" annotatedElement="_M3SEvNxmEdqEPrOCkNZ5Vg">
<body>The query isRequired() is true if the owned end has a multiplicity with the lower bound of 1.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCPM3MWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hCPM2sWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCPM3cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3SEvtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M3SEvNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3SEv9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = (ownedEnd->lowerBound() = 1)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hCPM3sWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M3SEwNxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_nDq0wJPzEdqpjIDDFZ2Hgw" name="Image">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPM9cWCEdqI1bY5Lwi8Hg" annotatedElement="_nDq0wJPzEdqpjIDDFZ2Hgw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SE19xmEdqEPrOCkNZ5Vg" annotatedElement="_nDq0wJPzEdqpjIDDFZ2Hgw">
<body>The Image class provides the necessary information to display an Image in a diagram. Icons are typically handled through the Image class.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCPM9sWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCPM98WCEdqI1bY5Lwi8Hg" name="content" type="_aAyVgGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPM-MWCEdqI1bY5Lwi8Hg" annotatedElement="_hCPM98WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3SE2NxmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3SE2dxmEdqEPrOCkNZ5Vg" name="content" type="_aAyVgGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SE2txmEdqEPrOCkNZ5Vg" annotatedElement="_M3SE2dxmEdqEPrOCkNZ5Vg">
<body>This contains the serialization of the image according to the format. The value could represent a bitmap, image such as a GIF file, or drawing 'instructions' using a standard such as Scalable Vector Graphic (SVG) (which is XML based).</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCPM-cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCPM-sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3SE29xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3SE3NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCPM-8WCEdqI1bY5Lwi8Hg" name="location" type="_aAyVgGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPM_MWCEdqI1bY5Lwi8Hg" annotatedElement="_hCPM-8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3SE3dxmEdqEPrOCkNZ5Vg" name="location" type="_aAyVgGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SE3txmEdqEPrOCkNZ5Vg" annotatedElement="_M3SE3dxmEdqEPrOCkNZ5Vg">
<body>This contains a location that can be used by a tool to locate the image as an alternative to embedding it in the stereotype.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCPM_cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCPM_sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3SE39xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3SE4NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCPM_8WCEdqI1bY5Lwi8Hg" name="format" type="_aAyVgGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPNAMWCEdqI1bY5Lwi8Hg" annotatedElement="_hCPM_8WCEdqI1bY5Lwi8Hg">
- <body>This indicates the format of the content - which is how the string content should be interpreted. The following values are reserved: SVG, GIF, PNG, JPG, WMF, EMF, BMP.
-
-
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3SE4dxmEdqEPrOCkNZ5Vg" name="format" type="_aAyVgGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SE4txmEdqEPrOCkNZ5Vg" annotatedElement="_M3SE4dxmEdqEPrOCkNZ5Vg">
+ <body>This indicates the format of the content - which is how the string content should be interpreted. The following values are reserved: SVG, GIF, PNG, JPG, WMF, EMF, BMP.&#xD;
+&#xD;
In addition the prefix 'MIME: ' is also reserved. This option can be used as an alternative to express the reserved values above, for example &quot;SVG&quot; could instead be expressed as &quot;MIME: image/svg+xml&quot;.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCPNAcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCPNAsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3SE49xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3SE5NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_kl90MGvbEdq4DLWZOhbdEA" name="Element" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01DHMWCEdqI1bY5Lwi8Hg" annotatedElement="_kl90MGvbEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgYNxmEdqEPrOCkNZ5Vg" annotatedElement="_kl90MGvbEdq4DLWZOhbdEA">
<body>An element can own comments.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2w8sMWCEdqI1bY5Lwi8Hg" annotatedElement="_kl90MGvbEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MuWLEtxmEdqEPrOCkNZ5Vg" annotatedElement="_kl90MGvbEdq4DLWZOhbdEA">
<body>Element is an abstract metaclass with no superclass. It is used as the common superclass for all metaclasses in the infrastructure library. Element has a derived composition association to itself to support the general capability for elements to own other elements.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPNA8WCEdqI1bY5Lwi8Hg" annotatedElement="_kl90MGvbEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SE5dxmEdqEPrOCkNZ5Vg" annotatedElement="_kl90MGvbEdq4DLWZOhbdEA">
<body> An element is a constituent of a model. An element can own comments.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g01DHcWCEdqI1bY5Lwi8Hg" name="not_own_self" constrainedElement="_kl90MGvbEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01DHsWCEdqI1bY5Lwi8Hg" annotatedElement="_g01DHcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgYdxmEdqEPrOCkNZ5Vg" name="not_own_self" constrainedElement="_kl90MGvbEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgYtxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgYdxmEdqEPrOCkNZ5Vg">
<body>An element may not directly or indirectly own itself.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g26toMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MuWLE9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>not self.allOwnedElements()->includes(self)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g01DIMWCEdqI1bY5Lwi8Hg" name="has_owner" constrainedElement="_kl90MGvbEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01DIcWCEdqI1bY5Lwi8Hg" annotatedElement="_g01DIMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgZNxmEdqEPrOCkNZ5Vg" name="has_owner" constrainedElement="_kl90MGvbEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgZdxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgZNxmEdqEPrOCkNZ5Vg">
<body>Elements that must be owned must have an owner.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g26tocWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MuWLFNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.mustBeOwned() implies owner->notEmpty()</body>
</specification>
@@ -8548,26 +8345,26 @@ In addition the prefix 'MIME: ' is also reserved. This option can be used as an
<generalization xmi:type="uml:Generalization" xmi:id="_rcp_MGvbEdq4DLWZOhbdEA">
<general xmi:type="uml:Class" href="Ecore.uml#_439EC3AE03B53903D4E40050"/>
</generalization>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g01DI8WCEdqI1bY5Lwi8Hg" name="ownedElement" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" isDerivedUnion="true" aggregation="composite" association="_g2eBw8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01DJMWCEdqI1bY5Lwi8Hg" annotatedElement="_g01DI8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsQgZ9xmEdqEPrOCkNZ5Vg" name="ownedElement" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" isDerivedUnion="true" aggregation="composite" association="_MtmkWdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgaNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgZ9xmEdqEPrOCkNZ5Vg">
<body>The Elements owned by this element.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g26tosWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g26to8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MuWLFdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MuWLFtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g01DJ8WCEdqI1bY5Lwi8Hg" name="owner" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_g2eBw8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01DKMWCEdqI1bY5Lwi8Hg" annotatedElement="_g01DJ8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsQga9xmEdqEPrOCkNZ5Vg" name="owner" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_MtmkWdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgbNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQga9xmEdqEPrOCkNZ5Vg">
<body>The Element that owns this element.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g26tpMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g26tpcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MuWLF9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MuWLGNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g01DK8WCEdqI1bY5Lwi8Hg" name="ownedComment" visibility="public" type="_g2LG2MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g2eB7MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01DLMWCEdqI1bY5Lwi8Hg" annotatedElement="_g01DK8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MsQgb9xmEdqEPrOCkNZ5Vg" name="ownedComment" visibility="public" type="_MtTCYNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MtmkgtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgcNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgb9xmEdqEPrOCkNZ5Vg">
<body>The Comments owned by this element.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g26tpsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g26tp8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MuWLGdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MuWLGtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_XebbkGvuEdqG6fBIPwe-mw" name="destroy"/>
<ownedOperation xmi:type="uml:Operation" xmi:id="_7f8qYGvgEdq4DLWZOhbdEA" name="hasKeyword" isQuery="true">
@@ -8765,124 +8562,124 @@ In addition the prefix 'MIME: ' is also reserved. This option can be used as an
<type xmi:type="uml:Class" href="Ecore.uml#_439EC3AE03B53903D5BF000A"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g01DL8WCEdqI1bY5Lwi8Hg" name="allOwnedElements" visibility="public" isQuery="true" bodyCondition="_g01DMcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01DMMWCEdqI1bY5Lwi8Hg" annotatedElement="_g01DL8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsQgc9xmEdqEPrOCkNZ5Vg" name="allOwnedElements" visibility="public" isQuery="true" bodyCondition="_MsQgddxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQgdNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgc9xmEdqEPrOCkNZ5Vg">
<body>The query allOwnedElements() gives all of the direct and indirect owned elements of an element.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g01DMcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g01DL8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g26tqMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgddxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsQgc9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MufVANxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = ownedElement->union(ownedElement->collect(e | e.allOwnedElements()))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g01DM8WCEdqI1bY5Lwi8Hg" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g26tqcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g26tqsWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsQgd9xmEdqEPrOCkNZ5Vg" visibility="public" type="_kl90MGvbEdq4DLWZOhbdEA" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MufVAdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MufVAtxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g01DNsWCEdqI1bY5Lwi8Hg" name="mustBeOwned" visibility="public" isQuery="true" bodyCondition="_g01DOMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01DN8WCEdqI1bY5Lwi8Hg" annotatedElement="_g01DNsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsQgetxmEdqEPrOCkNZ5Vg" name="mustBeOwned" visibility="public" isQuery="true" bodyCondition="_MsQgfNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsQge9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsQgetxmEdqEPrOCkNZ5Vg">
<body>The query mustBeOwned() indicates whether elements of this type must have an owner. Subclasses of Element that do not require an owner must override this operation.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g01DOMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g01DNsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g26tq8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsQgfNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsQgetxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MufVA9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g01DOsWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsQgftxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCPNC8WCEdqI1bY5Lwi8Hg" name="A_profileApplication_applyingPackage" memberEnd="_hCGDAsWCEdqI1bY5Lwi8Hg _hCGDFMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hCPNDMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCPNDcWCEdqI1bY5Lwi8Hg" general="_g2eByMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3SE7dxmEdqEPrOCkNZ5Vg" name="A_profileApplication_applyingPackage" memberEnd="_M3I62NxmEdqEPrOCkNZ5Vg _M3I66txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3SE7txmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3SE79xmEdqEPrOCkNZ5Vg" general="_MtmkXtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCPNDsWCEdqI1bY5Lwi8Hg" name="A_ownedStereotype_profile" memberEnd="_hCGC9cWCEdqI1bY5Lwi8Hg _hCPNEMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hCPND8WCEdqI1bY5Lwi8Hg" general="_g2eBsMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCPNEMWCEdqI1bY5Lwi8Hg" type="__pew8GvzEdq7X4sGURiZYA" redefinedProperty="_g2eB4cWCEdqI1bY5Lwi8Hg" association="_hCPNDsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCPNEcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCPNEsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3SE8NxmEdqEPrOCkNZ5Vg" name="A_ownedStereotype_profile" memberEnd="_M3I6y9xmEdqEPrOCkNZ5Vg _M3SE8txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3SE8dxmEdqEPrOCkNZ5Vg" general="_MtmkRtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3SE8txmEdqEPrOCkNZ5Vg" type="__pew8GvzEdq7X4sGURiZYA" redefinedProperty="_Mtmkd9xmEdqEPrOCkNZ5Vg" association="_M3SE8NxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3SE89xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3SE9NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCPNE8WCEdqI1bY5Lwi8Hg" name="A_appliedProfile_profileApplication" memberEnd="_hCGDDcWCEdqI1bY5Lwi8Hg _hCPNFcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hCPNFMWCEdqI1bY5Lwi8Hg" general="_g2eBy8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCPNFcWCEdqI1bY5Lwi8Hg" type="_uY5yQGv5Edq7X4sGURiZYA" association="_hCPNE8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCPNFsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCPNF8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3SE9dxmEdqEPrOCkNZ5Vg" name="A_appliedProfile_profileApplication" memberEnd="_M3I649xmEdqEPrOCkNZ5Vg _M3SE99xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3SE9txmEdqEPrOCkNZ5Vg" general="_MtmkYdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3SE99xmEdqEPrOCkNZ5Vg" type="_uY5yQGv5Edq7X4sGURiZYA" association="_M3SE9dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3SE-NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3SE-dxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCPNGMWCEdqI1bY5Lwi8Hg" name="A_extension_metaclass" memberEnd="_hCGDB8WCEdqI1bY5Lwi8Hg _hCGDIsWCEdqI1bY5Lwi8Hg" isDerived="true"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCPNGcWCEdqI1bY5Lwi8Hg" name="A_ownedEnd_extension" memberEnd="_hCGDJsWCEdqI1bY5Lwi8Hg _hCPNG8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hCPNGsWCEdqI1bY5Lwi8Hg" general="_g2UQucWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCPNG8WCEdqI1bY5Lwi8Hg" type="_skHGwGvsEdqG6fBIPwe-mw" redefinedProperty="_g2eB4cWCEdqI1bY5Lwi8Hg" association="_hCPNGcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCPNHMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCPNHcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3SE-txmEdqEPrOCkNZ5Vg" name="A_extension_metaclass" memberEnd="_M3I63dxmEdqEPrOCkNZ5Vg _M3SEqtxmEdqEPrOCkNZ5Vg" isDerived="true"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3SE-9xmEdqEPrOCkNZ5Vg" name="A_ownedEnd_extension" memberEnd="_M3SErtxmEdqEPrOCkNZ5Vg _M3SE_dxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3SE_NxmEdqEPrOCkNZ5Vg" general="_MtczOdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3SE_dxmEdqEPrOCkNZ5Vg" type="_skHGwGvsEdqG6fBIPwe-mw" redefinedProperty="_Mtmkd9xmEdqEPrOCkNZ5Vg" association="_M3SE-9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3SE_txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3SE_9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCPNHsWCEdqI1bY5Lwi8Hg" name="A_type_extensionEnd" memberEnd="_hCPM58WCEdqI1bY5Lwi8Hg _hCY90cWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hCY90MWCEdqI1bY5Lwi8Hg" general="_g2UQsMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCY90cWCEdqI1bY5Lwi8Hg" type="_2QuT0GvdEdq4DLWZOhbdEA" association="_hCPNHsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCY90sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCY908WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3SFANxmEdqEPrOCkNZ5Vg" name="A_type_extensionEnd" memberEnd="_M3SEydxmEdqEPrOCkNZ5Vg _M3SFAtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3SFAdxmEdqEPrOCkNZ5Vg" general="_MtczMNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3SFAtxmEdqEPrOCkNZ5Vg" type="_2QuT0GvdEdq4DLWZOhbdEA" association="_M3SFANxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3SFA9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3SFBNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCY91MWCEdqI1bY5Lwi8Hg" name="A_metaclassReference_profile" memberEnd="_hCGC-cWCEdqI1bY5Lwi8Hg _hCY91sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hCY91cWCEdqI1bY5Lwi8Hg" general="_g2UQ78WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCY91sWCEdqI1bY5Lwi8Hg" type="__pew8GvzEdq7X4sGURiZYA" association="_hCY91MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCY918WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCY92MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3b1oNxmEdqEPrOCkNZ5Vg" name="A_metaclassReference_profile" memberEnd="_M3I6z9xmEdqEPrOCkNZ5Vg _M3b1otxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3b1odxmEdqEPrOCkNZ5Vg" general="_MtmkQNxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3b1otxmEdqEPrOCkNZ5Vg" type="__pew8GvzEdq7X4sGURiZYA" association="_M3b1oNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3b1o9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3b1pNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCY92cWCEdqI1bY5Lwi8Hg" name="A_metamodelReference_profile" memberEnd="_hCGC_cWCEdqI1bY5Lwi8Hg _hCY928WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hCY92sWCEdqI1bY5Lwi8Hg" general="_g2UQ8sWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCY928WCEdqI1bY5Lwi8Hg" type="__pew8GvzEdq7X4sGURiZYA" association="_hCY92cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCY93MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCY93cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3b1pdxmEdqEPrOCkNZ5Vg" name="A_metamodelReference_profile" memberEnd="_M3I609xmEdqEPrOCkNZ5Vg _M3b1p9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3b1ptxmEdqEPrOCkNZ5Vg" general="_MtmkQ9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3b1p9xmEdqEPrOCkNZ5Vg" type="__pew8GvzEdq7X4sGURiZYA" association="_M3b1pdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3b1qNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3b1qdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCY93sWCEdqI1bY5Lwi8Hg" name="A_icon_stereotype" memberEnd="_hCGC6cWCEdqI1bY5Lwi8Hg _hCY938WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCY938WCEdqI1bY5Lwi8Hg" type="_A7vDAGv0Edq7X4sGURiZYA" association="_hCY93sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCY94MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCY94cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3b1qtxmEdqEPrOCkNZ5Vg" name="A_icon_stereotype" memberEnd="_M3I6v9xmEdqEPrOCkNZ5Vg _M3b1q9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3b1q9xmEdqEPrOCkNZ5Vg" type="_A7vDAGv0Edq7X4sGURiZYA" association="_M3b1qtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3b1rNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3b1rdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_2QuT0GvdEdq4DLWZOhbdEA" name="ExtensionEnd">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPM38WCEdqI1bY5Lwi8Hg" annotatedElement="_2QuT0GvdEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SEwdxmEdqEPrOCkNZ5Vg" annotatedElement="_2QuT0GvdEdq4DLWZOhbdEA">
<body>ExtensionEnd is a kind of Property that is always typed by a Stereotype. An ExtensionEnd is never navigable. If it was navigable, it would be a property of the extended classifier. Since a profile is not allowed to change the referenced metamodel, it is not possible to add properties to the extended classifier. As a consequence, an ExtensionEnd can only be owned by an Extension. The aggregation of an ExtensionEnd is always composite. The default multiplicity of an ExtensionEnd is 0..1.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCPM4MWCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_2QuT0GvdEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPM4cWCEdqI1bY5Lwi8Hg" annotatedElement="_hCPM4MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3SEwtxmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_2QuT0GvdEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SEw9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3SEwtxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of ExtensionEnd is 0..1 or 1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCPM4sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3SExNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(self->lowerBound() = 0 or self->lowerBound() = 1) and self->upperBound() = 1</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCPM48WCEdqI1bY5Lwi8Hg" name="aggregation" constrainedElement="_2QuT0GvdEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPM5MWCEdqI1bY5Lwi8Hg" annotatedElement="_hCPM48WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3SExdxmEdqEPrOCkNZ5Vg" name="aggregation" constrainedElement="_2QuT0GvdEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SExtxmEdqEPrOCkNZ5Vg" annotatedElement="_M3SExdxmEdqEPrOCkNZ5Vg">
<body>The aggregation of an ExtensionEnd is composite.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCPM5cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3SEx9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.aggregation = #composite</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCPM5sWCEdqI1bY5Lwi8Hg" general="_Jp_1oGveEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCPM58WCEdqI1bY5Lwi8Hg" name="type" type="_A7vDAGv0Edq7X4sGURiZYA" redefinedProperty="_g1Ru7MWCEdqI1bY5Lwi8Hg" association="_hCPNHsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPM6MWCEdqI1bY5Lwi8Hg" annotatedElement="_hCPM58WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3SEyNxmEdqEPrOCkNZ5Vg" general="_Jp_1oGveEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3SEydxmEdqEPrOCkNZ5Vg" name="type" type="_A7vDAGv0Edq7X4sGURiZYA" redefinedProperty="_Msjbe9xmEdqEPrOCkNZ5Vg" association="_M3SFANxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SEytxmEdqEPrOCkNZ5Vg" annotatedElement="_M3SEydxmEdqEPrOCkNZ5Vg">
<body>References the type of the ExtensionEnd. Note that this association restricts the possible types of an ExtensionEnd to only be Stereotypes.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCPM6cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCPM6sWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3SEy9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3SEzNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCPM68WCEdqI1bY5Lwi8Hg" name="lower" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw" isDerived="true" redefinedProperty="_g0-0CMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPM7MWCEdqI1bY5Lwi8Hg" annotatedElement="_hCPM68WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3SEzdxmEdqEPrOCkNZ5Vg" name="lower" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw" isDerived="true" redefinedProperty="_MsQgl9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SEztxmEdqEPrOCkNZ5Vg" annotatedElement="_M3SEzdxmEdqEPrOCkNZ5Vg">
<body>This redefinition changes the default multiplicity of association ends, since model elements are usually extended by 0 or 1 instance of the extension stereotype.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCY96sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCY968WCEdqI1bY5Lwi8Hg"/>
- <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_hCY97MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3b1ttxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3b1t9xmEdqEPrOCkNZ5Vg"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_M3b1uNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_WLw30FYLEdqrn7iZ0eqieg" name="getLower" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_ZNVLYFYLEdqrn7iZ0eqieg" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
@@ -8890,2097 +8687,2079 @@ In addition the prefix 'MIME: ' is also reserved. This option can be used as an
<ownedOperation xmi:type="uml:Operation" xmi:id="_3FVzkFYkEdqB6vblk3tuMA" name="setLower" visibility="protected">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_4dG3wFYkEdqB6vblk3tuMA" name="newLower" visibility="protected" type="_XqvEIGvsEdqG6fBIPwe-mw" effect="read"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hCPM8MWCEdqI1bY5Lwi8Hg" name="lowerBound" isQuery="true" redefinedOperation="_g0-0KcWCEdqI1bY5Lwi8Hg" bodyCondition="_hCPM8sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPM8cWCEdqI1bY5Lwi8Hg" annotatedElement="_hCPM8MWCEdqI1bY5Lwi8Hg">
- <body>The query lowerBound() returns the lower bound of the multiplicity as an Integer. This is a redefinition of the default
-
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M3SE0txmEdqEPrOCkNZ5Vg" name="lowerBound" isQuery="true" redefinedOperation="_MsQguNxmEdqEPrOCkNZ5Vg" bodyCondition="_M3SE1NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SE09xmEdqEPrOCkNZ5Vg" annotatedElement="_M3SE0txmEdqEPrOCkNZ5Vg">
+ <body>The query lowerBound() returns the lower bound of the multiplicity as an Integer. This is a redefinition of the default&#xD;
lower bound, which normally, for MultiplicityElements, evaluates to 1 if empty.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCPM8sWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hCPM8MWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCPM88WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3SE1NxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M3SE0txmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3SE1dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = lowerBound = if lowerValue->isEmpty() then 0 else lowerValue->IntegerValue() endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hCPM9MWCEdqI1bY5Lwi8Hg" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M3SE1txmEdqEPrOCkNZ5Vg" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hCY97sWCEdqI1bY5Lwi8Hg" name="VariableAction" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY978WCEdqI1bY5Lwi8Hg" annotatedElement="_hCY97sWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M3b1utxmEdqEPrOCkNZ5Vg" name="VariableAction" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3b1u9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3b1utxmEdqEPrOCkNZ5Vg">
<body>VariableAction is an abstract class for actions that operate on a statically specified variable.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCY98MWCEdqI1bY5Lwi8Hg" name="scope_of_variable" constrainedElement="_hCY97sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY98cWCEdqI1bY5Lwi8Hg" annotatedElement="_hCY98MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3b1vNxmEdqEPrOCkNZ5Vg" name="scope_of_variable" constrainedElement="_M3b1utxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3b1vdxmEdqEPrOCkNZ5Vg" annotatedElement="_M3b1vNxmEdqEPrOCkNZ5Vg">
<body>The action must be in the scope of the variable.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCY98sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3b1vtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.variable.isAccessibleBy(self)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCY988WCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCY99MWCEdqI1bY5Lwi8Hg" name="variable" type="_g7-z-8WCEdqI1bY5Lwi8Hg" association="_hCiu9MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY99cWCEdqI1bY5Lwi8Hg" annotatedElement="_hCY99MWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3b1v9xmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3b1wNxmEdqEPrOCkNZ5Vg" name="variable" type="_MyN-htxmEdqEPrOCkNZ5Vg" association="_M3k_wdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3b1wdxmEdqEPrOCkNZ5Vg" annotatedElement="_M3b1wNxmEdqEPrOCkNZ5Vg">
<body>Variable to be read.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCY99sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCY998WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3b1wtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3b1w9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hCY9-MWCEdqI1bY5Lwi8Hg" name="ReadVariableAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY9-cWCEdqI1bY5Lwi8Hg" annotatedElement="_hCY9-MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M3b1xNxmEdqEPrOCkNZ5Vg" name="ReadVariableAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3b1xdxmEdqEPrOCkNZ5Vg" annotatedElement="_M3b1xNxmEdqEPrOCkNZ5Vg">
<body>This action reads the values of a variables, in order if the variable is ordered.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCY9-sWCEdqI1bY5Lwi8Hg" name="type_and_ordering" constrainedElement="_hCY9-MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY9-8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCY9-sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3b1xtxmEdqEPrOCkNZ5Vg" name="type_and_ordering" constrainedElement="_M3b1xNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3b1x9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3b1xtxmEdqEPrOCkNZ5Vg">
<body>The type and ordering of the result output pin of a read-variable action are the same as the type and ordering of the variable.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCY9_MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3b1yNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.type =self.variable.type&#xA;and self.result.ordering = self.variable.ordering&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCY9_cWCEdqI1bY5Lwi8Hg" name="compatible_multiplicity" constrainedElement="_hCY9-MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY9_sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCY9_cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3b1ydxmEdqEPrOCkNZ5Vg" name="compatible_multiplicity" constrainedElement="_M3b1xNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3b1ytxmEdqEPrOCkNZ5Vg" annotatedElement="_M3b1ydxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the variable must be compatible with the multiplicity of the output pin.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCY9_8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3b1y9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.variable.multiplicity.compatibleWith(self.result.multiplicity)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCY-AMWCEdqI1bY5Lwi8Hg" general="_hCY97sWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCY-AcWCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hCiu-MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY-AsWCEdqI1bY5Lwi8Hg" annotatedElement="_hCY-AcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3b1zNxmEdqEPrOCkNZ5Vg" general="_M3b1utxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3b1zdxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M3k_xdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3b1ztxmEdqEPrOCkNZ5Vg" annotatedElement="_M3b1zdxmEdqEPrOCkNZ5Vg">
<body>Gives the output pin on which the result is put.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCY-A8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCY-BMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3b1z9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3b10NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hCY-BcWCEdqI1bY5Lwi8Hg" name="WriteVariableAction" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY-BsWCEdqI1bY5Lwi8Hg" annotatedElement="_hCY-BcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M3b10dxmEdqEPrOCkNZ5Vg" name="WriteVariableAction" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3b10txmEdqEPrOCkNZ5Vg" annotatedElement="_M3b10dxmEdqEPrOCkNZ5Vg">
<body>A write variable action operates on a variable to modify its values. It has an input pin on which the value that will be added or removed is put. Other aspects of write variable actions are inherited from VariableAction.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCY-B8WCEdqI1bY5Lwi8Hg" name="same_type" constrainedElement="_hCY-BcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY-CMWCEdqI1bY5Lwi8Hg" annotatedElement="_hCY-B8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3b109xmEdqEPrOCkNZ5Vg" name="same_type" constrainedElement="_M3b10dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3b11NxmEdqEPrOCkNZ5Vg" annotatedElement="_M3b109xmEdqEPrOCkNZ5Vg">
<body>The type input pin is the same as the type of the variable.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCY-CcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3b11dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.value.type = self.variable.type</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCY-CsWCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_hCY-BcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY-C8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCY-CsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3b11txmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M3b10dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3b119xmEdqEPrOCkNZ5Vg" annotatedElement="_M3b11txmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the input pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCY-DMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3b12NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.value.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCY-DcWCEdqI1bY5Lwi8Hg" general="_hCY97sWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCY-DsWCEdqI1bY5Lwi8Hg" name="value" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hCiu_cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY-D8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCY-DsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3b12dxmEdqEPrOCkNZ5Vg" general="_M3b1utxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3b12txmEdqEPrOCkNZ5Vg" name="value" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M3k_ytxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3b129xmEdqEPrOCkNZ5Vg" annotatedElement="_M3b12txmEdqEPrOCkNZ5Vg">
<body>Value to be added or removed from the variable.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCY-EMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCY-EcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3b13NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3b13dxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hCY-EsWCEdqI1bY5Lwi8Hg" name="ClearVariableAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY-E8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCY-EsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M3b13txmEdqEPrOCkNZ5Vg" name="ClearVariableAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3b139xmEdqEPrOCkNZ5Vg" annotatedElement="_M3b13txmEdqEPrOCkNZ5Vg">
<body>This action removes all values of an variable.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCY-FMWCEdqI1bY5Lwi8Hg" general="_hCY97sWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3b14NxmEdqEPrOCkNZ5Vg" general="_M3b1utxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hCY-FcWCEdqI1bY5Lwi8Hg" name="AddVariableValueAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY-FsWCEdqI1bY5Lwi8Hg" annotatedElement="_hCY-FcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M3k_kNxmEdqEPrOCkNZ5Vg" name="AddVariableValueAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_kdxmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_kNxmEdqEPrOCkNZ5Vg">
<body>Variables are potentially multi-valued and ordered, so the action supports specification of insertion points for new values. It also supports the removal of existing values of the variable before the new value is added.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCY-F8WCEdqI1bY5Lwi8Hg" name="single_input_pin" constrainedElement="_hCY-FcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY-GMWCEdqI1bY5Lwi8Hg" annotatedElement="_hCY-F8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3k_ktxmEdqEPrOCkNZ5Vg" name="single_input_pin" constrainedElement="_M3k_kNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_k9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_ktxmEdqEPrOCkNZ5Vg">
<body>Actions adding values to ordered variables must have a single input pin for the insertion point with type UnlimtedNatural and multiplicity of 1..1, otherwise the action has no input pin for the insertion point.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCY-GcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3k_lNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>let insertAtPins : Collection = self.insertAt in&#xA;if self.variable.ordering = #unordered&#xA;then insertAtPins->size() = 0&#xA;else let insertAtPin : InputPin = insertAt->asSequence()->first() in&#xA;insertAtPins->size() = 1&#xA;and insertAtPin.type = UnlimitedNatural&#xA;and insertAtPin.multiplicity.is(1,1))&#xA;endif&#xA;</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCY-GsWCEdqI1bY5Lwi8Hg" general="_hCY-BcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCY-G8WCEdqI1bY5Lwi8Hg" name="isReplaceAll" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY-HMWCEdqI1bY5Lwi8Hg" annotatedElement="_hCY-G8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3k_ldxmEdqEPrOCkNZ5Vg" general="_M3b10dxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3k_ltxmEdqEPrOCkNZ5Vg" name="isReplaceAll" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_l9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_ltxmEdqEPrOCkNZ5Vg">
<body>Specifies whether existing values of the variable should be removed before adding the new value.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hCY-HcWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M3k_mNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCY-HsWCEdqI1bY5Lwi8Hg" name="insertAt" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hCivAsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCY-H8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCY-HsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3k_mdxmEdqEPrOCkNZ5Vg" name="insertAt" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M3k_z9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_mtxmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_mdxmEdqEPrOCkNZ5Vg">
<body>Gives the position at which to insert a new value or move an existing value in ordered variables. The types is UnlimitedINatural, but the value cannot be zero. This pin is omitted for unordered variables.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCY-IMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCY-IcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3k_m9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3k_nNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hCiu0MWCEdqI1bY5Lwi8Hg" name="RemoveVariableValueAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCiu0cWCEdqI1bY5Lwi8Hg" annotatedElement="_hCiu0MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M3k_ndxmEdqEPrOCkNZ5Vg" name="RemoveVariableValueAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_ntxmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_ndxmEdqEPrOCkNZ5Vg">
<body>One value is removed from the set of possible variable values. Variables are potentially multi-valued and ordered, and may support duplicates, so the action supports specification of removal points for new values. It also supports the removal of all duplicate values.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCiu0sWCEdqI1bY5Lwi8Hg" name="unlimited_natural" constrainedElement="_hCiu0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCiu08WCEdqI1bY5Lwi8Hg" annotatedElement="_hCiu0sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3k_n9xmEdqEPrOCkNZ5Vg" name="unlimited_natural" constrainedElement="_M3k_ndxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_oNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_n9xmEdqEPrOCkNZ5Vg">
<body>Actions removing a value from ordered nonunique variables must have a single removeAt input pin if isRemoveDuplicates is false. It must be of type UnlimitedNatural with multiplicity of 1..1, otherwise the action has no removeAt input pin.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCiu1MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3k_odxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCiu1cWCEdqI1bY5Lwi8Hg" general="_hCY-BcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCiu1sWCEdqI1bY5Lwi8Hg" name="isRemoveDuplicates" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCiu18WCEdqI1bY5Lwi8Hg" annotatedElement="_hCiu1sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3k_otxmEdqEPrOCkNZ5Vg" general="_M3b10dxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3k_o9xmEdqEPrOCkNZ5Vg" name="isRemoveDuplicates" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_pNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_o9xmEdqEPrOCkNZ5Vg">
<body>Specifies whether to remove duplicates of the value in nonunique variables.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hCiu2MWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M3k_pdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCiu2cWCEdqI1bY5Lwi8Hg" name="removeAt" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hCivB8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCiu2sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCiu2cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3k_ptxmEdqEPrOCkNZ5Vg" name="removeAt" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M3k_1NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_p9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_ptxmEdqEPrOCkNZ5Vg">
<body>Specifies the position of an existing value to remove in ordered nonunique variables. The type of the pin is UnlimitedNatural, but the value cannot be zero or unlimited.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCiu28WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCiu3MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3k_qNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3k_qdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hCiu3cWCEdqI1bY5Lwi8Hg" name="RaiseExceptionAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCiu3sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCiu3cWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M3k_qtxmEdqEPrOCkNZ5Vg" name="RaiseExceptionAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_q9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_qtxmEdqEPrOCkNZ5Vg">
<body>RaiseExceptionAction is an action that causes an exception to occur. The input value becomes the exception object.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCiu38WCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCiu4MWCEdqI1bY5Lwi8Hg" name="exception" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hCivEcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCiu4cWCEdqI1bY5Lwi8Hg" annotatedElement="_hCiu4MWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3k_rNxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3k_rdxmEdqEPrOCkNZ5Vg" name="exception" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M3k_3txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_rtxmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_rdxmEdqEPrOCkNZ5Vg">
<body>An input pin whose value becomes an exception object.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCiu4sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCiu48WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3k_r9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3k_sNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hCiu5MWCEdqI1bY5Lwi8Hg" name="ActionInputPin">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCiu5cWCEdqI1bY5Lwi8Hg" annotatedElement="_hCiu5MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M3k_sdxmEdqEPrOCkNZ5Vg" name="ActionInputPin">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_stxmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_sdxmEdqEPrOCkNZ5Vg">
<body>An action input pin is a kind of pin that executes an action to determine the values to input to another.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCiu5sWCEdqI1bY5Lwi8Hg" name="one_output_pin" constrainedElement="_hCiu5MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCiu58WCEdqI1bY5Lwi8Hg" annotatedElement="_hCiu5sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3k_s9xmEdqEPrOCkNZ5Vg" name="one_output_pin" constrainedElement="_M3k_sdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_tNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_s9xmEdqEPrOCkNZ5Vg">
<body>The fromAction of an action input pin must have exactly one output pin.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCiu6MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3k_tdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCiu6cWCEdqI1bY5Lwi8Hg" name="input_pin" constrainedElement="_hCiu5MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCiu6sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCiu6cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3k_ttxmEdqEPrOCkNZ5Vg" name="input_pin" constrainedElement="_M3k_sdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_t9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_ttxmEdqEPrOCkNZ5Vg">
<body>The fromAction of an action input pin must only have action input pins as input pins.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCiu68WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3k_uNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCiu7MWCEdqI1bY5Lwi8Hg" name="no_control_or_data_flow" constrainedElement="_hCiu5MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCiu7cWCEdqI1bY5Lwi8Hg" annotatedElement="_hCiu7MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3k_udxmEdqEPrOCkNZ5Vg" name="no_control_or_data_flow" constrainedElement="_M3k_sdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_utxmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_udxmEdqEPrOCkNZ5Vg">
<body>The fromAction of an action input pin cannot have control or data flows coming into or out of it or its pins.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCiu7sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3k_u9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCiu78WCEdqI1bY5Lwi8Hg" general="_g7r5EsWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCiu8MWCEdqI1bY5Lwi8Hg" name="fromAction" type="_g71p8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hCivDMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCiu8cWCEdqI1bY5Lwi8Hg" annotatedElement="_hCiu8MWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3k_vNxmEdqEPrOCkNZ5Vg" general="_Mx7DxdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3k_vdxmEdqEPrOCkNZ5Vg" name="fromAction" type="_MyENl9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M3k_2dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_vtxmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_vdxmEdqEPrOCkNZ5Vg">
<body>The action used to provide values.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCiu8sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCiu88WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3k_v9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3k_wNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCiu9MWCEdqI1bY5Lwi8Hg" name="A_variable_variableAction" memberEnd="_hCY99MWCEdqI1bY5Lwi8Hg _hCiu9cWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCiu9cWCEdqI1bY5Lwi8Hg" type="_hCY97sWCEdqI1bY5Lwi8Hg" association="_hCiu9MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCiu9sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCiu98WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3k_wdxmEdqEPrOCkNZ5Vg" name="A_variable_variableAction" memberEnd="_M3b1wNxmEdqEPrOCkNZ5Vg _M3k_wtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3k_wtxmEdqEPrOCkNZ5Vg" type="_M3b1utxmEdqEPrOCkNZ5Vg" association="_M3k_wdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3k_w9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3k_xNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCiu-MWCEdqI1bY5Lwi8Hg" name="A_result_readVariableAction" memberEnd="_hCY-AcWCEdqI1bY5Lwi8Hg _hCiu-sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hCiu-cWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCiu-sWCEdqI1bY5Lwi8Hg" type="_hCY9-MWCEdqI1bY5Lwi8Hg" association="_hCiu-MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCiu-8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCiu_MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3k_xdxmEdqEPrOCkNZ5Vg" name="A_result_readVariableAction" memberEnd="_M3b1zdxmEdqEPrOCkNZ5Vg _M3k_x9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3k_xtxmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3k_x9xmEdqEPrOCkNZ5Vg" type="_M3b1xNxmEdqEPrOCkNZ5Vg" association="_M3k_xdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3k_yNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3k_ydxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCiu_cWCEdqI1bY5Lwi8Hg" name="A_value_writeVariableAction" memberEnd="_hCY-DsWCEdqI1bY5Lwi8Hg _hCiu_8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hCiu_sWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCiu_8WCEdqI1bY5Lwi8Hg" type="_hCY-BcWCEdqI1bY5Lwi8Hg" association="_hCiu_cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCivAMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCivAcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3k_ytxmEdqEPrOCkNZ5Vg" name="A_value_writeVariableAction" memberEnd="_M3b12txmEdqEPrOCkNZ5Vg _M3k_zNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3k_y9xmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3k_zNxmEdqEPrOCkNZ5Vg" type="_M3b10dxmEdqEPrOCkNZ5Vg" association="_M3k_ytxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3k_zdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3k_ztxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCivAsWCEdqI1bY5Lwi8Hg" name="A_insertAt_addVariableValueAction" memberEnd="_hCY-HsWCEdqI1bY5Lwi8Hg _hCivBMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hCivA8WCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCivBMWCEdqI1bY5Lwi8Hg" type="_hCY-FcWCEdqI1bY5Lwi8Hg" association="_hCivAsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCivBcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCivBsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3k_z9xmEdqEPrOCkNZ5Vg" name="A_insertAt_addVariableValueAction" memberEnd="_M3k_mdxmEdqEPrOCkNZ5Vg _M3k_0dxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3k_0NxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3k_0dxmEdqEPrOCkNZ5Vg" type="_M3k_kNxmEdqEPrOCkNZ5Vg" association="_M3k_z9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3k_0txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3k_09xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCivB8WCEdqI1bY5Lwi8Hg" name="A_removeAt_removeVariableValueAction" memberEnd="_hCiu2cWCEdqI1bY5Lwi8Hg _hCivCcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hCivCMWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCivCcWCEdqI1bY5Lwi8Hg" type="_hCiu0MWCEdqI1bY5Lwi8Hg" association="_hCivB8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCivCsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCivC8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3k_1NxmEdqEPrOCkNZ5Vg" name="A_removeAt_removeVariableValueAction" memberEnd="_M3k_ptxmEdqEPrOCkNZ5Vg _M3k_1txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3k_1dxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3k_1txmEdqEPrOCkNZ5Vg" type="_M3k_ndxmEdqEPrOCkNZ5Vg" association="_M3k_1NxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3k_19xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3k_2NxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCivDMWCEdqI1bY5Lwi8Hg" name="A_fromAction_actionInputPin" memberEnd="_hCiu8MWCEdqI1bY5Lwi8Hg _hCivDsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hCivDcWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCivDsWCEdqI1bY5Lwi8Hg" type="_hCiu5MWCEdqI1bY5Lwi8Hg" association="_hCivDMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCivD8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCivEMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3k_2dxmEdqEPrOCkNZ5Vg" name="A_fromAction_actionInputPin" memberEnd="_M3k_vdxmEdqEPrOCkNZ5Vg _M3k_29xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3k_2txmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3k_29xmEdqEPrOCkNZ5Vg" type="_M3k_sdxmEdqEPrOCkNZ5Vg" association="_M3k_2dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3k_3NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3k_3dxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCivEcWCEdqI1bY5Lwi8Hg" name="A_exception_raiseExceptionAction" memberEnd="_hCiu4MWCEdqI1bY5Lwi8Hg _hCivE8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hCivEsWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCivE8WCEdqI1bY5Lwi8Hg" type="_hCiu3cWCEdqI1bY5Lwi8Hg" association="_hCivEcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCivFMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCivFcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3k_3txmEdqEPrOCkNZ5Vg" name="A_exception_raiseExceptionAction" memberEnd="_M3k_rdxmEdqEPrOCkNZ5Vg _M3k_4NxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3k_39xmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3k_4NxmEdqEPrOCkNZ5Vg" type="_M3k_qtxmEdqEPrOCkNZ5Vg" association="_M3k_3txmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3k_4dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3k_4txmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hCivFsWCEdqI1bY5Lwi8Hg" name="GeneralizationSet">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCivF8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCivFsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M3k_49xmEdqEPrOCkNZ5Vg" name="GeneralizationSet">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_5NxmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_49xmEdqEPrOCkNZ5Vg">
<body>Each Generalization is a binary relationship that relates a specific Classifier to a more general Classifier (i.e., from a class to its superclasses). Each GeneralizationSet defines a particular set of Generalization relationships that describe the way in which a general Classifier (or superclass) may be divided using specific subtypes. For example, a GeneralizationSet could define a partitioning of the class Person into two subclasses: Male Person and Female Person. Here, the GeneralizationSet would associate two instances of Generalization. Both instances would have Person as the general classifier, however one Generalization would involve Male Person as the specific Classifier and the other would involve Female Person as the specific classifier. In other words, the class Person can here be said to be partitioned into two subclasses: Male Person and Female Person. Person could also be divided into North American Person, Asian Person, European Person, or something else. This collection of subsets would define a different GeneralizationSet that would associate with three other Generalization relationships. All three would have Person as the general Classifier; only the specific classifiers would differ: i.e., North American Person, Asian Person, and European Person.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCivGMWCEdqI1bY5Lwi8Hg" name="generalization_same_classifier" constrainedElement="_hCivFsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCivGcWCEdqI1bY5Lwi8Hg" annotatedElement="_hCivGMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3k_5dxmEdqEPrOCkNZ5Vg" name="generalization_same_classifier" constrainedElement="_M3k_49xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3k_5txmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_5dxmEdqEPrOCkNZ5Vg">
<body>Every Generalization associated with a particular GeneralizationSet must have the same general Classifier.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCivGsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3k_59xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>generalization->collect(g | g.general)->asSet()->size() &lt;= 1</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCivG8WCEdqI1bY5Lwi8Hg" name="maps_to_generalization_set" constrainedElement="_hCivFsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCivHMWCEdqI1bY5Lwi8Hg" annotatedElement="_hCivG8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3k_6NxmEdqEPrOCkNZ5Vg" name="maps_to_generalization_set" constrainedElement="_M3k_49xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwkNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3k_6NxmEdqEPrOCkNZ5Vg">
<body>The Classifier that maps to a GeneralizationSet may neither be a specific nor a general Classifier in any of the Generalization relationships defined for that GeneralizationSet. In other words, a power type may not be an instance of itself nor may its instances be its subclasses.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCr4wMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3uwkdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCr4wcWCEdqI1bY5Lwi8Hg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr4wsWCEdqI1bY5Lwi8Hg" name="isCovering" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr4w8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCr4wsWCEdqI1bY5Lwi8Hg">
- <body>Indicates (via the associated Generalizations) whether or not the set of specific Classifiers are covering for a particular general classifier. When isCovering is true, every instance of a particular general Classifier is also an instance of at least one of its specific Classifiers for the GeneralizationSet. When isCovering is false, there are one or more instances of the particular general Classifier that are not instances of at least one of its specific Classifiers defined for the GeneralizationSet. For example, Person could have two Generalization relationships each with a different specific Classifier: Male Person and Female Person. This GeneralizationSet would be covering because every instance of Person would be an instance of Male Person or Female Person. In contrast, Person could have a three Generalization relationships involving three specific Classifiers: North American Person, Asian Person, and European Person. This GeneralizationSet would not be covering because there are instances of Person for which these three specific Classifiers do not apply. The first example, then, could be read: any Person would be specialized as either being a Male Person or a Female Person—and nothing else; the second could be read: any Person would be specialized as being North American Person, Asian Person, European Person, or something else.</body>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3uwktxmEdqEPrOCkNZ5Vg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uwk9xmEdqEPrOCkNZ5Vg" name="isCovering" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwlNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwk9xmEdqEPrOCkNZ5Vg">
+ <body>Indicates (via the associated Generalizations) whether or not the set of specific Classifiers are covering for a particular general classifier. When isCovering is true, every instance of a particular general Classifier is also an instance of at least one of its specific Classifiers for the GeneralizationSet. When isCovering is false, there are one or more instances of the particular general Classifier that are not instances of at least one of its specific Classifiers defined for the GeneralizationSet.&#xD;
+&#xD;
+For example, Person could have two Generalization relationships each with a different specific Classifier: Male Person and Female Person. This GeneralizationSet would be covering because every instance of Person would be an instance of Male Person or Female Person. In contrast, Person could have a three Generalization relationships involving three specific Classifiers: North American Person, Asian Person, and European Person. This GeneralizationSet would not be covering because there are instances of Person for which these three specific Classifiers do not apply. The first example, then, could be read: any Person would be specialized as either being a Male Person or a Female Person and nothing else; the second could be read: any Person would be specialized as being North American Person, Asian Person, European Person, or something else.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hCr4xMWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M3uwldxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr4xcWCEdqI1bY5Lwi8Hg" name="isDisjoint" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr4xsWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr4xcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uwltxmEdqEPrOCkNZ5Vg" name="isDisjoint" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwl9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwltxmEdqEPrOCkNZ5Vg">
<body>Indicates whether or not the set of specific Classifiers in a Generalization relationship have instance in common. If isDisjoint is true, the specific Classifiers for a particular GeneralizationSet have no members in common; that is, their intersection is empty. If isDisjoint is false, the specific Classifiers in a particular GeneralizationSet have one or more members in common; that is, their intersection is not empty. For example, Person could have two Generalization relationships, each with the different specific Classifier: Manager or Staff. This would be disjoint because every instance of Person must either be a Manager or Staff. In contrast, Person could have two Generalization relationships involving two specific (and non-covering) Classifiers: Sales Person and Manager. This GeneralizationSet would not be disjoint because there are instances of Person which can be a Sales Person and a Manager.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hCr4x8WCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M3uwmNxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr4yMWCEdqI1bY5Lwi8Hg" name="powertype" type="_6UV2QGwJEdq7X4sGURiZYA" association="_hCr438WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr4ycWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr4yMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uwmdxmEdqEPrOCkNZ5Vg" name="powertype" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M3uwsNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwmtxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwmdxmEdqEPrOCkNZ5Vg">
<body>Designates the Classifier that is defined as the power type for the associated GeneralizationSet.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr4ysWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr4y8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uwm9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uwnNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr4zMWCEdqI1bY5Lwi8Hg" name="generalization" type="_C7AF4GwREdq14q0ETb1t3g" association="_hCr44MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr4zcWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr4zMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uwndxmEdqEPrOCkNZ5Vg" name="generalization" type="_C7AF4GwREdq14q0ETb1t3g" association="_M3uwsdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwntxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwndxmEdqEPrOCkNZ5Vg">
<body>Designates the instances of Generalization which are members of a given GeneralizationSet.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr4zsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr4z8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uwn9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uwoNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_C7AF4GwREdq14q0ETb1t3g" name="Generalization">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5AYZMWCEdqI1bY5Lwi8Hg" annotatedElement="_C7AF4GwREdq14q0ETb1t3g">
- <body>A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.
-
-A generalization can be designated as being a member of a particular generalization set.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mvrn5NxmEdqEPrOCkNZ5Vg" annotatedElement="_C7AF4GwREdq14q0ETb1t3g">
+ <body>A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.&#xD;
+A generalization can be designated as being a member of a particular generalization set.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr418WCEdqI1bY5Lwi8Hg" annotatedElement="_C7AF4GwREdq14q0ETb1t3g">
- <body>A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.
-
-
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwqNxmEdqEPrOCkNZ5Vg" annotatedElement="_C7AF4GwREdq14q0ETb1t3g">
+ <body>A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.&#xD;
+&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCr42MWCEdqI1bY5Lwi8Hg" name="generalization_same_classifier" constrainedElement="_C7AF4GwREdq14q0ETb1t3g">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr42cWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr42MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3uwqdxmEdqEPrOCkNZ5Vg" name="generalization_same_classifier" constrainedElement="_C7AF4GwREdq14q0ETb1t3g">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwqtxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwqdxmEdqEPrOCkNZ5Vg">
<body>Every Generalization associated with a given GeneralizationSet must have the same general Classifier. That is, all Generalizations for a particular GeneralizationSet must have the same superclass.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCr42sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3uwq9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g5AYZcWCEdqI1bY5Lwi8Hg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5AYZsWCEdqI1bY5Lwi8Hg" name="isSubstitutable" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5AYZ8WCEdqI1bY5Lwi8Hg" annotatedElement="_g5AYZsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mvrn5dxmEdqEPrOCkNZ5Vg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mvrn5txmEdqEPrOCkNZ5Vg" name="isSubstitutable" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mvrn59xmEdqEPrOCkNZ5Vg" annotatedElement="_Mvrn5txmEdqEPrOCkNZ5Vg">
<body>Indicates whether the specific classifier can be used wherever the general classifier can be used. If true, the execution traces of the specific classifier will be a superset of the execution traces of the general classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5AYaMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5AYacWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mvrn6NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mvrn6dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5AYasWCEdqI1bY5Lwi8Hg" name="specific" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_g01DFMWCEdqI1bY5Lwi8Hg _g01DJ8WCEdqI1bY5Lwi8Hg" association="_g6yhA8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5AYa8WCEdqI1bY5Lwi8Hg" annotatedElement="_g5AYasWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mvrn6txmEdqEPrOCkNZ5Vg" name="specific" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_MsGvrdxmEdqEPrOCkNZ5Vg _MsQga9xmEdqEPrOCkNZ5Vg" association="_MxBruNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mvrn69xmEdqEPrOCkNZ5Vg" annotatedElement="_Mvrn6txmEdqEPrOCkNZ5Vg">
<body>References the specializing classifier in the Generalization relationship.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5AYbMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5AYbcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mvrn7NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mvrn7dxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5AYbsWCEdqI1bY5Lwi8Hg" name="general" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_g01DGMWCEdqI1bY5Lwi8Hg" association="_g6yhBsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5AYb8WCEdqI1bY5Lwi8Hg" annotatedElement="_g5AYbsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mvrn7txmEdqEPrOCkNZ5Vg" name="general" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_MsGvsdxmEdqEPrOCkNZ5Vg" association="_MxLcoNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mvrn79xmEdqEPrOCkNZ5Vg" annotatedElement="_Mvrn7txmEdqEPrOCkNZ5Vg">
<body>References the general classifier in the Generalization relationship.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5AYcMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5AYccWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mvrn8NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mvrn8dxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr428WCEdqI1bY5Lwi8Hg" name="generalizationSet" type="_hCivFsWCEdqI1bY5Lwi8Hg" association="_hCr44MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr43MWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr428WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uwrNxmEdqEPrOCkNZ5Vg" name="generalizationSet" type="_M3k_49xmEdqEPrOCkNZ5Vg" association="_M3uwsdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwrdxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwrNxmEdqEPrOCkNZ5Vg">
<body>Designates a set in which instances of Generalization is considered members.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr43cWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr43sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uwrtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uwr9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCr438WCEdqI1bY5Lwi8Hg" name="A_powertypeExtent_powertype" memberEnd="_hCr4yMWCEdqI1bY5Lwi8Hg _hCr408WCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCr44MWCEdqI1bY5Lwi8Hg" name="A_generalizationSet_generalization" memberEnd="_hCr428WCEdqI1bY5Lwi8Hg _hCr4zMWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Class" xmi:id="_hCr44cWCEdqI1bY5Lwi8Hg" name="InformationItem">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr44sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr44cWCEdqI1bY5Lwi8Hg">
- <body>An information item is an abstraction of all kinds of information that can be exchanged between objects. It is a kind of classifier intended for representing information in a very abstract way, one which cannot be instantiated. One purpose of InformationItems is to be able to define preliminary models, before having made detailed modeling decisions on types or structures. One other purpose of information items and information flows is to abstract complex models by a less precise but more general representation of the information exchanged betwen entities of a system.
-
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3uwsNxmEdqEPrOCkNZ5Vg" name="A_powertypeExtent_powertype" memberEnd="_M3uwpNxmEdqEPrOCkNZ5Vg _M3uwmdxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3uwsdxmEdqEPrOCkNZ5Vg" name="A_generalizationSet_generalization" memberEnd="_M3uwrNxmEdqEPrOCkNZ5Vg _M3uwndxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_M3uwstxmEdqEPrOCkNZ5Vg" name="InformationItem">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uws9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwstxmEdqEPrOCkNZ5Vg">
+ <body>An information item is an abstraction of all kinds of information that can be exchanged between objects. It is a kind of classifier intended for representing information in a very abstract way, one which cannot be instantiated. One purpose of InformationItems is to be able to define preliminary models, before having made detailed modeling decisions on types or structures. One other purpose of information items and information flows is to abstract complex models by a less precise but more general representation of the information exchanged betwen entities of a system.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCr448WCEdqI1bY5Lwi8Hg" name="sources_and_targets" constrainedElement="_hCr44cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr45MWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr448WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3uwtNxmEdqEPrOCkNZ5Vg" name="sources_and_targets" constrainedElement="_M3uwstxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwtdxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwtNxmEdqEPrOCkNZ5Vg">
<body>The sources and targets of an information item (its related information flows) must designate subsets of the sources and targets of the representation information item, if any.The Classifiers that can realize an information item can only be of the following kind: Class, Interface, InformationItem, Signal, Component.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCr45cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3uwttxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>(self.represented->select(p | p->oclIsKindOf(InformationItem))->forAll(p |&#xA;&#xA; p.informationFlow.source->forAll(q | self.informationFlow.source->include(q)) and&#xA;&#xA; p.informationFlow.target->forAll(q | self.informationFlow.target->include(q)))) and&#xA;&#xA; (self.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface) or&#xA;&#xA; oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component)))</body>
+ <body>(self.represented->select(p | p->oclIsKindOf(InformationItem))->forAll(p |&#xD;&#xA; p.informationFlow.source->forAll(q | self.informationFlow.source->include(q)) and&#xD;&#xA; p.informationFlow.target->forAll(q | self.informationFlow.target->include(q)))) and&#xD;&#xA; (self.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface) or&#xD;&#xA; oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component)))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCr45sWCEdqI1bY5Lwi8Hg" name="has_no" constrainedElement="_hCr44cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr458WCEdqI1bY5Lwi8Hg" annotatedElement="_hCr45sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3uwt9xmEdqEPrOCkNZ5Vg" name="has_no" constrainedElement="_M3uwstxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwuNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwt9xmEdqEPrOCkNZ5Vg">
<body>An informationItem has no feature, no generalization, and no associations.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCr46MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3uwudxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.generalization->isEmpty() and self.feature->isEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCr46cWCEdqI1bY5Lwi8Hg" name="not_instantiable" constrainedElement="_hCr44cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr46sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr46cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3uwutxmEdqEPrOCkNZ5Vg" name="not_instantiable" constrainedElement="_M3uwstxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwu9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwutxmEdqEPrOCkNZ5Vg">
<body>It is not instantiable.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCr468WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3uwvNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>isAbstract</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCr47MWCEdqI1bY5Lwi8Hg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr47cWCEdqI1bY5Lwi8Hg" name="represented" type="_6UV2QGwJEdq7X4sGURiZYA" association="_hCr5HsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr47sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr47cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3uwvdxmEdqEPrOCkNZ5Vg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uwvtxmEdqEPrOCkNZ5Vg" name="represented" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M3uw79xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwv9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwvtxmEdqEPrOCkNZ5Vg">
<body>Determines the classifiers that will specify the structure and nature of the information. An information item represents all its represented classifiers.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr478WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr48MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uwwNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uwwdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hCr48cWCEdqI1bY5Lwi8Hg" name="InformationFlow">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr48sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr48cWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M3uwwtxmEdqEPrOCkNZ5Vg" name="InformationFlow">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uww9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwwtxmEdqEPrOCkNZ5Vg">
<body>An information flow specifies that one or more information items circulates from its sources to its targets. Information flows require some kind of information channel for transmitting information items from the source to the destination. An information channel is represented in various ways depending on the nature of its sources and targets. It may be represented by connectors, links, associations, or even dependencies. For example, if the source and destination are parts in some composite structure such as a collaboration, then the information channel is likely to be represented by a connector between them. Or, if the source and target are objects (which are a kind of InstanceSpecification), they may be represented by a link that joins the two, and so on.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCr488WCEdqI1bY5Lwi8Hg" name="sources_and_targets_kind" constrainedElement="_hCr48cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr49MWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr488WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3uwxNxmEdqEPrOCkNZ5Vg" name="sources_and_targets_kind" constrainedElement="_M3uwwtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwxdxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwxNxmEdqEPrOCkNZ5Vg">
<body>The sources and targets of the information flow can only be one of the following kind: Actor, Node, UseCase, Artifact, Class, Component, Port, Property, Interface, Package, ActivityNode, ActivityPartition and InstanceSpecification except when its classifier is a relationship (i.e. it represents a link).</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCr49cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3uwxtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>(self.source->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xA;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xA;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xA;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xA;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification))) and&#xA;&#xA; (self.target->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xA;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xA;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xA;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xA;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification)))</body>
+ <body>(self.source->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xD;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xD;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xD;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xD;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification))) and&#xD;&#xA; (self.target->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xD;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xD;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xD;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xD;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification)))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCr49sWCEdqI1bY5Lwi8Hg" name="must_conform" constrainedElement="_hCr48cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr498WCEdqI1bY5Lwi8Hg" annotatedElement="_hCr49sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3uwx9xmEdqEPrOCkNZ5Vg" name="must_conform" constrainedElement="_M3uwwtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwyNxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwx9xmEdqEPrOCkNZ5Vg">
<body>The sources and targets of the information flow must conform with the sources and targets or conversely the targets and sources of the realization relationships.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCr4-MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3uwydxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCr4-cWCEdqI1bY5Lwi8Hg" name="convey_classifiers" constrainedElement="_hCr48cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr4-sWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr4-cWCEdqI1bY5Lwi8Hg">
- <body>An information flow can only convey classifiers that are allowed to represent an information item.
-
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3uwytxmEdqEPrOCkNZ5Vg" name="convey_classifiers" constrainedElement="_M3uwwtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwy9xmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwytxmEdqEPrOCkNZ5Vg">
+ <body>An information flow can only convey classifiers that are allowed to represent an information item.&#xD;
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCr4-8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3uwzNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>self.conveyed.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface)&#xA;&#xA; or oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component))</body>
+ <body>self.conveyed.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface)&#xD;&#xA; or oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component))</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCr4_MWCEdqI1bY5Lwi8Hg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hCr4_cWCEdqI1bY5Lwi8Hg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr4_sWCEdqI1bY5Lwi8Hg" name="realization" type="_DH62EKPAEdqi_5gqUMOQtA" association="_hCr5GsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr4_8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCr4_sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3uwzdxmEdqEPrOCkNZ5Vg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3uwztxmEdqEPrOCkNZ5Vg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uwz9xmEdqEPrOCkNZ5Vg" name="realization" type="_DH62EKPAEdqi_5gqUMOQtA" association="_M3uw69xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uw0NxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwz9xmEdqEPrOCkNZ5Vg">
<body>Determines which Relationship will realize the specified flow</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr5AMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr5AcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uw0dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uw0txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr5AsWCEdqI1bY5Lwi8Hg" name="conveyed" type="_6UV2QGwJEdq7X4sGURiZYA" association="_hC1pwMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr5A8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCr5AsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uw09xmEdqEPrOCkNZ5Vg" name="conveyed" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M3uw89xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uw1NxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uw09xmEdqEPrOCkNZ5Vg">
<body>Specifies the information items that may circulate on this information flow.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr5BMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr5BcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uw1dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uw1txmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr5BsWCEdqI1bY5Lwi8Hg" name="informationSource" type="_csVgUGvtEdqG6fBIPwe-mw" subsettedProperty="_g01DFMWCEdqI1bY5Lwi8Hg" association="_hC1pxMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr5B8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCr5BsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uw19xmEdqEPrOCkNZ5Vg" name="informationSource" type="_csVgUGvtEdqG6fBIPwe-mw" subsettedProperty="_MsGvrdxmEdqEPrOCkNZ5Vg" association="_M3uw99xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uw2NxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uw19xmEdqEPrOCkNZ5Vg">
<body>Defines from which source the conveyed InformationItems are initiated.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr5CMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr5CcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uw2dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uw2txmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr5CsWCEdqI1bY5Lwi8Hg" name="informationTarget" type="_csVgUGvtEdqG6fBIPwe-mw" subsettedProperty="_g01DGMWCEdqI1bY5Lwi8Hg" association="_hC1pycWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr5C8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCr5CsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uw29xmEdqEPrOCkNZ5Vg" name="informationTarget" type="_csVgUGvtEdqG6fBIPwe-mw" subsettedProperty="_MsGvsdxmEdqEPrOCkNZ5Vg" association="_M3uw_NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uw3NxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uw29xmEdqEPrOCkNZ5Vg">
<body>Defines to which target the conveyed InformationItems are directed.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr5DMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr5DcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uw3dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uw3txmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr5DsWCEdqI1bY5Lwi8Hg" name="realizingActivityEdge" type="_g9LGrcWCEdqI1bY5Lwi8Hg" association="_hC1pzsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr5D8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCr5DsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uw39xmEdqEPrOCkNZ5Vg" name="realizingActivityEdge" type="_MzQgQNxmEdqEPrOCkNZ5Vg" association="_M34hkNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uw4NxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uw39xmEdqEPrOCkNZ5Vg">
<body>Determines which ActivityEdges will realize the specified flow.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr5EMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr5EcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uw4dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uw4txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr5EsWCEdqI1bY5Lwi8Hg" name="realizingConnector" type="_g8ua2sWCEdqI1bY5Lwi8Hg" association="_hC1p0sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr5E8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCr5EsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uw49xmEdqEPrOCkNZ5Vg" name="realizingConnector" type="_Myz0XdxmEdqEPrOCkNZ5Vg" association="_M34hlNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uw5NxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uw49xmEdqEPrOCkNZ5Vg">
<body>Determines which Connectors will realize the specified flow.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr5FMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr5FcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uw5dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uw5txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr5FsWCEdqI1bY5Lwi8Hg" name="realizingMessage" type="_gfgNwGveEdq4DLWZOhbdEA" association="_hC1p1sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr5F8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCr5FsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uw59xmEdqEPrOCkNZ5Vg" name="realizingMessage" type="_gfgNwGveEdq4DLWZOhbdEA" association="_M34hmNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uw6NxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uw59xmEdqEPrOCkNZ5Vg">
<body>Determines which Messages will realize the specified flow.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr5GMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr5GcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uw6dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uw6txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCr5GsWCEdqI1bY5Lwi8Hg" name="A_realization_abstraction" memberEnd="_hCr4_sWCEdqI1bY5Lwi8Hg _hCr5G8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCr5G8WCEdqI1bY5Lwi8Hg" name="abstraction" type="_hCr48cWCEdqI1bY5Lwi8Hg" association="_hCr5GsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr5HMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr5HcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3uw69xmEdqEPrOCkNZ5Vg" name="A_realization_abstraction" memberEnd="_M3uwz9xmEdqEPrOCkNZ5Vg _M3uw7NxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3uw7NxmEdqEPrOCkNZ5Vg" name="abstraction" type="_M3uwwtxmEdqEPrOCkNZ5Vg" association="_M3uw69xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uw7dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uw7txmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hCr5HsWCEdqI1bY5Lwi8Hg" name="A_represented_representation" memberEnd="_hCr47cWCEdqI1bY5Lwi8Hg _hCr5H8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hCr5H8WCEdqI1bY5Lwi8Hg" name="representation" type="_hCr44cWCEdqI1bY5Lwi8Hg" association="_hCr5HsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr5IMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr5IcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3uw79xmEdqEPrOCkNZ5Vg" name="A_represented_representation" memberEnd="_M3uwvtxmEdqEPrOCkNZ5Vg _M3uw8NxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3uw8NxmEdqEPrOCkNZ5Vg" name="representation" type="_M3uwstxmEdqEPrOCkNZ5Vg" association="_M3uw79xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uw8dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uw8txmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hC1pwMWCEdqI1bY5Lwi8Hg" name="A_conveyed_informationFlow" memberEnd="_hCr5AsWCEdqI1bY5Lwi8Hg _hC1pwcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hC1pwcWCEdqI1bY5Lwi8Hg" type="_hCr48cWCEdqI1bY5Lwi8Hg" association="_hC1pwMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1pwsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1pw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3uw89xmEdqEPrOCkNZ5Vg" name="A_conveyed_informationFlow" memberEnd="_M3uw09xmEdqEPrOCkNZ5Vg _M3uw9NxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3uw9NxmEdqEPrOCkNZ5Vg" type="_M3uwwtxmEdqEPrOCkNZ5Vg" association="_M3uw89xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uw9dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uw9txmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hC1pxMWCEdqI1bY5Lwi8Hg" name="A_informationSource_informationFlow" memberEnd="_hCr5BsWCEdqI1bY5Lwi8Hg _hC1pxsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hC1pxcWCEdqI1bY5Lwi8Hg" general="_g2eByMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hC1pxsWCEdqI1bY5Lwi8Hg" type="_hCr48cWCEdqI1bY5Lwi8Hg" association="_hC1pxMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1px8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1pyMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3uw99xmEdqEPrOCkNZ5Vg" name="A_informationSource_informationFlow" memberEnd="_M3uw19xmEdqEPrOCkNZ5Vg _M3uw-dxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3uw-NxmEdqEPrOCkNZ5Vg" general="_MtmkXtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3uw-dxmEdqEPrOCkNZ5Vg" type="_M3uwwtxmEdqEPrOCkNZ5Vg" association="_M3uw99xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uw-txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uw-9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hC1pycWCEdqI1bY5Lwi8Hg" name="A_informationTarget_informationFlow" memberEnd="_hCr5CsWCEdqI1bY5Lwi8Hg _hC1py8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hC1pysWCEdqI1bY5Lwi8Hg" general="_g2eBy8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hC1py8WCEdqI1bY5Lwi8Hg" type="_hCr48cWCEdqI1bY5Lwi8Hg" association="_hC1pycWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1pzMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1pzcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M3uw_NxmEdqEPrOCkNZ5Vg" name="A_informationTarget_informationFlow" memberEnd="_M3uw29xmEdqEPrOCkNZ5Vg _M3uw_txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M3uw_dxmEdqEPrOCkNZ5Vg" general="_MtmkYdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M3uw_txmEdqEPrOCkNZ5Vg" type="_M3uwwtxmEdqEPrOCkNZ5Vg" association="_M3uw_NxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uw_9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uxANxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hC1pzsWCEdqI1bY5Lwi8Hg" name="A_realizingActivityEdge_informationFlow" memberEnd="_hCr5DsWCEdqI1bY5Lwi8Hg _hC1pz8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hC1pz8WCEdqI1bY5Lwi8Hg" type="_hCr48cWCEdqI1bY5Lwi8Hg" association="_hC1pzsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1p0MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1p0cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M34hkNxmEdqEPrOCkNZ5Vg" name="A_realizingActivityEdge_informationFlow" memberEnd="_M3uw39xmEdqEPrOCkNZ5Vg _M34hkdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M34hkdxmEdqEPrOCkNZ5Vg" type="_M3uwwtxmEdqEPrOCkNZ5Vg" association="_M34hkNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34hktxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34hk9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hC1p0sWCEdqI1bY5Lwi8Hg" name="A_realizingConnector_informationFlow" memberEnd="_hCr5EsWCEdqI1bY5Lwi8Hg _hC1p08WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hC1p08WCEdqI1bY5Lwi8Hg" type="_hCr48cWCEdqI1bY5Lwi8Hg" association="_hC1p0sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1p1MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1p1cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M34hlNxmEdqEPrOCkNZ5Vg" name="A_realizingConnector_informationFlow" memberEnd="_M3uw49xmEdqEPrOCkNZ5Vg _M34hldxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M34hldxmEdqEPrOCkNZ5Vg" type="_M3uwwtxmEdqEPrOCkNZ5Vg" association="_M34hlNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34hltxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34hl9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hC1p1sWCEdqI1bY5Lwi8Hg" name="A_realizingMessage_informationFlow" memberEnd="_hCr5FsWCEdqI1bY5Lwi8Hg _hC1p18WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hC1p18WCEdqI1bY5Lwi8Hg" type="_hCr48cWCEdqI1bY5Lwi8Hg" association="_hC1p1sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1p2MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1p2cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M34hmNxmEdqEPrOCkNZ5Vg" name="A_realizingMessage_informationFlow" memberEnd="_M3uw59xmEdqEPrOCkNZ5Vg _M34hmdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M34hmdxmEdqEPrOCkNZ5Vg" type="_M3uwwtxmEdqEPrOCkNZ5Vg" association="_M34hmNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34hmtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34hm9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_NVhqMGv0Edq7X4sGURiZYA" name="Model">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1p2sWCEdqI1bY5Lwi8Hg" annotatedElement="_NVhqMGv0Edq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34hnNxmEdqEPrOCkNZ5Vg" annotatedElement="_NVhqMGv0Edq7X4sGURiZYA">
<body>The Model construct is defined as a Package. It contains a (hierarchical) set of elements that together describe the physical system being modeled. A Model may also contain a set of elements that represents the environment of the system, typically Actors, together with their interrelationships, such as Associations and Dependencies</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hC1p28WCEdqI1bY5Lwi8Hg" general="_-cvRAGvzEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC1p3MWCEdqI1bY5Lwi8Hg" name="viewpoint" type="_aAyVgGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1p3cWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1p3MWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M34hndxmEdqEPrOCkNZ5Vg" general="_-cvRAGvzEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34hntxmEdqEPrOCkNZ5Vg" name="viewpoint" type="_aAyVgGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34hn9xmEdqEPrOCkNZ5Vg" annotatedElement="_M34hntxmEdqEPrOCkNZ5Vg">
<body>The name of the viewpoint that is expressed by a model (This name may refer to a profile definition).</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1p3sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1p38WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34hoNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34hodxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_9nl2EGwREdq14q0ETb1t3g" name="isMetamodel" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="__8c0oGwREdq14q0ETb1t3g" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hC1p4cWCEdqI1bY5Lwi8Hg" name="ReadExtentAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1p4sWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1p4cWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M34ho9xmEdqEPrOCkNZ5Vg" name="ReadExtentAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34hpNxmEdqEPrOCkNZ5Vg" annotatedElement="_M34ho9xmEdqEPrOCkNZ5Vg">
<body>ReadExtentAction is an action that retrieves the current instances of a classifier.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC1p48WCEdqI1bY5Lwi8Hg" name="type_is_classifier" constrainedElement="_hC1p4cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1p5MWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1p48WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34hpdxmEdqEPrOCkNZ5Vg" name="type_is_classifier" constrainedElement="_M34ho9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34hptxmEdqEPrOCkNZ5Vg" annotatedElement="_M34hpdxmEdqEPrOCkNZ5Vg">
<body>The type of the result output pin is the classifier.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC1p5cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34hp9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC1p5sWCEdqI1bY5Lwi8Hg" name="multiplicity_of_result" constrainedElement="_hC1p4cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1p58WCEdqI1bY5Lwi8Hg" annotatedElement="_hC1p5sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34hqNxmEdqEPrOCkNZ5Vg" name="multiplicity_of_result" constrainedElement="_M34ho9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34hqdxmEdqEPrOCkNZ5Vg" annotatedElement="_M34hqNxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the result output pin is 0..*.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC1p6MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34hqtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.multiplicity.is(0,#null)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hC1p6cWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC1p6sWCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hDIlLsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1p68WCEdqI1bY5Lwi8Hg" annotatedElement="_hC1p6sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M34hq9xmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34hrNxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M4Lcm9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34hrdxmEdqEPrOCkNZ5Vg" annotatedElement="_M34hrNxmEdqEPrOCkNZ5Vg">
<body>The runtime instances of the classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1p7MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1p7cWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34hrtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34hr9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC1p7sWCEdqI1bY5Lwi8Hg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_hDIlM8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1p78WCEdqI1bY5Lwi8Hg" annotatedElement="_hC1p7sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34hsNxmEdqEPrOCkNZ5Vg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M4LcoNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34hsdxmEdqEPrOCkNZ5Vg" annotatedElement="_M34hsNxmEdqEPrOCkNZ5Vg">
<body>The classifier whose instances are to be retrieved.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1p8MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1p8cWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34hstxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34hs9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hC1p8sWCEdqI1bY5Lwi8Hg" name="ReclassifyObjectAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1p88WCEdqI1bY5Lwi8Hg" annotatedElement="_hC1p8sWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M34htNxmEdqEPrOCkNZ5Vg" name="ReclassifyObjectAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34htdxmEdqEPrOCkNZ5Vg" annotatedElement="_M34htNxmEdqEPrOCkNZ5Vg">
<body>ReclassifyObjectAction adds given classifier to an object and removes given classifiers from that object. Multiple classifiers may be added and removed at a time.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC1p9MWCEdqI1bY5Lwi8Hg" name="classifier_not_abstract" constrainedElement="_hC1p8sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1p9cWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1p9MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34httxmEdqEPrOCkNZ5Vg" name="classifier_not_abstract" constrainedElement="_M34htNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34ht9xmEdqEPrOCkNZ5Vg" annotatedElement="_M34httxmEdqEPrOCkNZ5Vg">
<body>None of the new classifiers may be abstract.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC1p9sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34huNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>not self.newClassifier->exists(isAbstract = true)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC1p98WCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_hC1p8sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1p-MWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1p98WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34hudxmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M34htNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34hutxmEdqEPrOCkNZ5Vg" annotatedElement="_M34hudxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the input pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC1p-cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34hu9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.argument.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC1p-sWCEdqI1bY5Lwi8Hg" name="input_pin" constrainedElement="_hC1p8sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1p-8WCEdqI1bY5Lwi8Hg" annotatedElement="_hC1p-sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34hvNxmEdqEPrOCkNZ5Vg" name="input_pin" constrainedElement="_M34htNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34hvdxmEdqEPrOCkNZ5Vg" annotatedElement="_M34hvNxmEdqEPrOCkNZ5Vg">
<body>The input pin has no type.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC1p_MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34hvtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.argument.type->size() = 0</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hC1p_cWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC1p_sWCEdqI1bY5Lwi8Hg" name="isReplaceAll" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1p_8WCEdqI1bY5Lwi8Hg" annotatedElement="_hC1p_sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M34hv9xmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34hwNxmEdqEPrOCkNZ5Vg" name="isReplaceAll" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34hwdxmEdqEPrOCkNZ5Vg" annotatedElement="_M34hwNxmEdqEPrOCkNZ5Vg">
<body>Specifies whether existing classifiers should be removed before adding the new classifiers.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hC1qAMWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M34hwtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC1qAcWCEdqI1bY5Lwi8Hg" name="oldClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_hDSVsMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1qAsWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1qAcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34hw9xmEdqEPrOCkNZ5Vg" name="oldClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M4LcpNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34hxNxmEdqEPrOCkNZ5Vg" annotatedElement="_M34hw9xmEdqEPrOCkNZ5Vg">
<body>A set of classifiers to be removed from the classifiers of the object.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1qA8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1qBMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34hxdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34hxtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC1qBcWCEdqI1bY5Lwi8Hg" name="newClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_hDSVtMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1qBsWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1qBcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34hx9xmEdqEPrOCkNZ5Vg" name="newClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M4LcqNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34hyNxmEdqEPrOCkNZ5Vg" annotatedElement="_M34hx9xmEdqEPrOCkNZ5Vg">
<body>A set of classifiers to be added to the classifiers of the object.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1qB8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1qCMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34hydxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34hytxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC1qCcWCEdqI1bY5Lwi8Hg" name="object" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hDbfrsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1qCsWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1qCcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34hy9xmEdqEPrOCkNZ5Vg" name="object" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M4Lc6txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34hzNxmEdqEPrOCkNZ5Vg" annotatedElement="_M34hy9xmEdqEPrOCkNZ5Vg">
<body>Holds the object to be reclassified.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1qC8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1qDMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34hzdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34hztxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hC1qDcWCEdqI1bY5Lwi8Hg" name="ReadIsClassifiedObjectAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1qDsWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1qDcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M34hz9xmEdqEPrOCkNZ5Vg" name="ReadIsClassifiedObjectAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h0NxmEdqEPrOCkNZ5Vg" annotatedElement="_M34hz9xmEdqEPrOCkNZ5Vg">
<body>This action tests the classification of an object against a given class. It can be restricted to testing direct instances.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC1qD8WCEdqI1bY5Lwi8Hg" name="multiplicity_of_input" constrainedElement="_hC1qDcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1qEMWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1qD8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34h0dxmEdqEPrOCkNZ5Vg" name="multiplicity_of_input" constrainedElement="_M34hz9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h0txmEdqEPrOCkNZ5Vg" annotatedElement="_M34h0dxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the input pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC1qEcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34h09xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.object.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC1qEsWCEdqI1bY5Lwi8Hg" name="no_type" constrainedElement="_hC1qDcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1qE8WCEdqI1bY5Lwi8Hg" annotatedElement="_hC1qEsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34h1NxmEdqEPrOCkNZ5Vg" name="no_type" constrainedElement="_M34hz9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h1dxmEdqEPrOCkNZ5Vg" annotatedElement="_M34h1NxmEdqEPrOCkNZ5Vg">
<body>The input pin has no type.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC1qFMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34h1txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.object.type->isEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC1qFcWCEdqI1bY5Lwi8Hg" name="multiplicity_of_output" constrainedElement="_hC1qDcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1qFsWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1qFcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34h19xmEdqEPrOCkNZ5Vg" name="multiplicity_of_output" constrainedElement="_M34hz9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h2NxmEdqEPrOCkNZ5Vg" annotatedElement="_M34h19xmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the output pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC1qF8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34h2dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC1qGMWCEdqI1bY5Lwi8Hg" name="boolean_result" constrainedElement="_hC1qDcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1qGcWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1qGMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34h2txmEdqEPrOCkNZ5Vg" name="boolean_result" constrainedElement="_M34hz9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h29xmEdqEPrOCkNZ5Vg" annotatedElement="_M34h2txmEdqEPrOCkNZ5Vg">
<body>The type of the output pin is Boolean</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC1qGsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34h3NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.type = Boolean</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hC1qG8WCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC1qHMWCEdqI1bY5Lwi8Hg" name="isDirect" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1qHcWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1qHMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M34h3dxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34h3txmEdqEPrOCkNZ5Vg" name="isDirect" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h39xmEdqEPrOCkNZ5Vg" annotatedElement="_M34h3txmEdqEPrOCkNZ5Vg">
<body>Indicates whether the classifier must directly classify the input object.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hC1qHsWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M34h4NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC1qH8WCEdqI1bY5Lwi8Hg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_hDSVuMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1qIMWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1qH8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34h4dxmEdqEPrOCkNZ5Vg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M4LcrNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h4txmEdqEPrOCkNZ5Vg" annotatedElement="_M34h4dxmEdqEPrOCkNZ5Vg">
<body>The classifier against which the classification of the input object is tested.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1qIcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1qIsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34h49xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34h5NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC1qI8WCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hDSVusWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1qJMWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1qI8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34h5dxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M4LcrtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h5txmEdqEPrOCkNZ5Vg" annotatedElement="_M34h5dxmEdqEPrOCkNZ5Vg">
<body>After termination of the action, will hold the result of the test.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1qJcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1qJsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34h59xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34h6NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC1qJ8WCEdqI1bY5Lwi8Hg" name="object" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hDSVv8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC1qKMWCEdqI1bY5Lwi8Hg" annotatedElement="_hC1qJ8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34h6dxmEdqEPrOCkNZ5Vg" name="object" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M4Lcs9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h6txmEdqEPrOCkNZ5Vg" annotatedElement="_M34h6dxmEdqEPrOCkNZ5Vg">
<body>Holds the object whose classification is to be tested.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC1qKcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC1qKsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34h69xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34h7NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hC_awMWCEdqI1bY5Lwi8Hg" name="StartClassifierBehaviorAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_awcWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_awMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M34h7dxmEdqEPrOCkNZ5Vg" name="StartClassifierBehaviorAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h7txmEdqEPrOCkNZ5Vg" annotatedElement="_M34h7dxmEdqEPrOCkNZ5Vg">
<body>StartClassifierBehaviorAction is an action that starts the classifier behavior of the input.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_awsWCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_hC_awMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_aw8WCEdqI1bY5Lwi8Hg" annotatedElement="_hC_awsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34h79xmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M34h7dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h8NxmEdqEPrOCkNZ5Vg" annotatedElement="_M34h79xmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the input pin is 1..1</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_axMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34h8dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_axcWCEdqI1bY5Lwi8Hg" name="type_has_classifier" constrainedElement="_hC_awMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_axsWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_axcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34h8txmEdqEPrOCkNZ5Vg" name="type_has_classifier" constrainedElement="_M34h7dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h89xmEdqEPrOCkNZ5Vg" annotatedElement="_M34h8txmEdqEPrOCkNZ5Vg">
<body>If the input pin has a type, then the type must have a classifier behavior.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_ax8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34h9NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hC_ayMWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC_aycWCEdqI1bY5Lwi8Hg" name="object" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hDSVxMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_aysWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_aycWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M34h9dxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34h9txmEdqEPrOCkNZ5Vg" name="object" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M4LcuNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h99xmEdqEPrOCkNZ5Vg" annotatedElement="_M34h9txmEdqEPrOCkNZ5Vg">
<body>Holds the object on which to start the owned behavior.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC_ay8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC_azMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34h-NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34h-dxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hC_azcWCEdqI1bY5Lwi8Hg" name="QualifierValue">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_azsWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_azcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M34h-txmEdqEPrOCkNZ5Vg" name="QualifierValue">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h-9xmEdqEPrOCkNZ5Vg" annotatedElement="_M34h-txmEdqEPrOCkNZ5Vg">
<body>A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, as required. This requires more than one piece of data, namely, the end in the user model, the object on the end, and the qualifier values for that end. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_az8WCEdqI1bY5Lwi8Hg" name="qualifier_attribute" constrainedElement="_hC_azcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a0MWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_az8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34h_NxmEdqEPrOCkNZ5Vg" name="qualifier_attribute" constrainedElement="_M34h-txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34h_dxmEdqEPrOCkNZ5Vg" annotatedElement="_M34h_NxmEdqEPrOCkNZ5Vg">
<body>The qualifier attribute must be a qualifier of the association end of the link-end data.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_a0cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34h_txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.LinkEndData.end->collect(qualifier)->includes(self.qualifier)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_a0sWCEdqI1bY5Lwi8Hg" name="type_of_qualifier" constrainedElement="_hC_azcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a08WCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a0sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34h_9xmEdqEPrOCkNZ5Vg" name="type_of_qualifier" constrainedElement="_M34h-txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34iANxmEdqEPrOCkNZ5Vg" annotatedElement="_M34h_9xmEdqEPrOCkNZ5Vg">
<body>The type of the qualifier value input pin is the same as the type of the qualifier attribute.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_a1MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34iAdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.value.type = self.qualifier.type</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_a1cWCEdqI1bY5Lwi8Hg" name="multiplicity_of_qualifier" constrainedElement="_hC_azcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a1sWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a1cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34iAtxmEdqEPrOCkNZ5Vg" name="multiplicity_of_qualifier" constrainedElement="_M34h-txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34iA9xmEdqEPrOCkNZ5Vg" annotatedElement="_M34iAtxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the qualifier value input pin is &quot;1..1&quot;.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_a18WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34iBNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.value.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hC_a2MWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC_a2cWCEdqI1bY5Lwi8Hg" name="qualifier" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_hDSVzcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a2sWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a2cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M34iBdxmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34iBtxmEdqEPrOCkNZ5Vg" name="qualifier" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_M4LcwdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34iB9xmEdqEPrOCkNZ5Vg" annotatedElement="_M34iBtxmEdqEPrOCkNZ5Vg">
<body>Attribute representing the qualifier for which the value is to be specified.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC_a28WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC_a3MWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34iCNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34iCdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC_a3cWCEdqI1bY5Lwi8Hg" name="value" type="_g7r5EsWCEdqI1bY5Lwi8Hg" association="_hDSV0cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a3sWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a3cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34iCtxmEdqEPrOCkNZ5Vg" name="value" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" association="_M4LcxdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34iC9xmEdqEPrOCkNZ5Vg" annotatedElement="_M34iCtxmEdqEPrOCkNZ5Vg">
<body>Input pin from which the specified value for the qualifier is taken.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC_a38WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC_a4MWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34iDNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34iDdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_2nc8WCEdqI1bY5Lwi8Hg" name="LinkEndData">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2ndMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nc8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M18oMNxmEdqEPrOCkNZ5Vg" name="LinkEndData">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oMdxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oMNxmEdqEPrOCkNZ5Vg">
<body>LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a4cWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nc8WCEdqI1bY5Lwi8Hg">
- <body>LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34iDtxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oMNxmEdqEPrOCkNZ5Vg">
+ <body>LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2ndcWCEdqI1bY5Lwi8Hg" name="property_is_association_end" constrainedElement="_g_2nc8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2ndsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2ndcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oMtxmEdqEPrOCkNZ5Vg" name="property_is_association_end" constrainedElement="_M18oMNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oM9xmEdqEPrOCkNZ5Vg" annotatedElement="_M18oMtxmEdqEPrOCkNZ5Vg">
<body>The property must be an association end.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nd8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oNNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.end.association->size() = 1</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2neMWCEdqI1bY5Lwi8Hg" name="same_type" constrainedElement="_g_2nc8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2necWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2neMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oNdxmEdqEPrOCkNZ5Vg" name="same_type" constrainedElement="_M18oMNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oNtxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oNdxmEdqEPrOCkNZ5Vg">
<body>The type of the end object input pin is the same as the type of the association end.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nesWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oN9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.value.type = self.end.type</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_2ne8WCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_g_2nc8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nfMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2ne8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M18oONxmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M18oMNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oOdxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oONxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the end object input pin must be 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_2nfcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M18oOtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.value.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_a4sWCEdqI1bY5Lwi8Hg" name="qualifiers" constrainedElement="_g_2nc8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a48WCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a4sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34iD9xmEdqEPrOCkNZ5Vg" name="qualifiers" constrainedElement="_M18oMNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34iENxmEdqEPrOCkNZ5Vg" annotatedElement="_M34iD9xmEdqEPrOCkNZ5Vg">
<body>The qualifiers include all and only the qualifiers of the association end.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_a5MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34iEdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.qualifier->collect(qualifier) = self.end.qualifier</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_a5cWCEdqI1bY5Lwi8Hg" name="end_object_input_pin" constrainedElement="_g_2nc8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a5sWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a5cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M34iEtxmEdqEPrOCkNZ5Vg" name="end_object_input_pin" constrainedElement="_M18oMNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34iE9xmEdqEPrOCkNZ5Vg" annotatedElement="_M34iEtxmEdqEPrOCkNZ5Vg">
<body>The end object input pin is not also a qualifier value input pin.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_a58WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M34iFNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.value->excludesAll(self.qualifier.value)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_2nfsWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2nf8WCEdqI1bY5Lwi8Hg" name="value" type="_g7r5EsWCEdqI1bY5Lwi8Hg" association="_hAKJSMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2ngMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2nf8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M18oO9xmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18oPNxmEdqEPrOCkNZ5Vg" name="value" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" association="_M2FyWNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oPdxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oPNxmEdqEPrOCkNZ5Vg">
<body>Input pin that provides the specified object for the given end. This pin is omitted if the link-end data specifies an 'open' end for reading.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_2ngcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_2ngsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M18oPtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M18oP9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_2ng8WCEdqI1bY5Lwi8Hg" name="end" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_hAKJTMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_2nhMWCEdqI1bY5Lwi8Hg" annotatedElement="_g_2ng8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M18oQNxmEdqEPrOCkNZ5Vg" name="end" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_M2Pi0NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M18oQdxmEdqEPrOCkNZ5Vg" annotatedElement="_M18oQNxmEdqEPrOCkNZ5Vg">
<body>Association end for which this link-end data specifies values.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_2nhcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_2nhsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M18oQtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M18oQ9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC_a6MWCEdqI1bY5Lwi8Hg" name="qualifier" type="_hC_azcWCEdqI1bY5Lwi8Hg" aggregation="composite" association="_hDSVycWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a6cWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a6MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M34iFdxmEdqEPrOCkNZ5Vg" name="qualifier" type="_M34h-txmEdqEPrOCkNZ5Vg" aggregation="composite" association="_M4LcvdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M34iFtxmEdqEPrOCkNZ5Vg" annotatedElement="_M34iFdxmEdqEPrOCkNZ5Vg">
<body>List of qualifier values</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC_a6sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC_a68WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M34iF9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M34iGNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hC_a7MWCEdqI1bY5Lwi8Hg" name="ReadLinkObjectEndAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a7cWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a7MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M4BrgNxmEdqEPrOCkNZ5Vg" name="ReadLinkObjectEndAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrgdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrgNxmEdqEPrOCkNZ5Vg">
<body>This action reads the object on an end of a link object. The association end to retrieve the object from is specified statically, and the link object to read is provided on the input pin at run time.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_a7sWCEdqI1bY5Lwi8Hg" name="property" constrainedElement="_hC_a7MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a78WCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a7sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BrgtxmEdqEPrOCkNZ5Vg" name="property" constrainedElement="_M4BrgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Brg9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrgtxmEdqEPrOCkNZ5Vg">
<body>The property must be an association end.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_a8MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BrhNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.end.association.notEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_a8cWCEdqI1bY5Lwi8Hg" name="association_of_association" constrainedElement="_hC_a7MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a8sWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a8cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BrhdxmEdqEPrOCkNZ5Vg" name="association_of_association" constrainedElement="_M4BrgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrhtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrhdxmEdqEPrOCkNZ5Vg">
<body>The association of the association end must be an association class.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_a88WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Brh9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.end.Association.oclIsKindOf(AssociationClass)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_a9MWCEdqI1bY5Lwi8Hg" name="ends_of_association" constrainedElement="_hC_a7MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a9cWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a9MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BriNxmEdqEPrOCkNZ5Vg" name="ends_of_association" constrainedElement="_M4BrgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BridxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BriNxmEdqEPrOCkNZ5Vg">
<body>The ends of the association must not be static.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_a9sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BritxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.end.association.memberEnd->forall(e | not e.isStatic)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_a98WCEdqI1bY5Lwi8Hg" name="type_of_object" constrainedElement="_hC_a7MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a-MWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a98WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4Bri9xmEdqEPrOCkNZ5Vg" name="type_of_object" constrainedElement="_M4BrgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrjNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Bri9xmEdqEPrOCkNZ5Vg">
<body>The type of the object input pin is the association class that owns the association end.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_a-cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BrjdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.object.type = self.end.association</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_a-sWCEdqI1bY5Lwi8Hg" name="multiplicity_of_object" constrainedElement="_hC_a7MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a-8WCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a-sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BrjtxmEdqEPrOCkNZ5Vg" name="multiplicity_of_object" constrainedElement="_M4BrgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Brj9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrjtxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the object input pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_a_MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BrkNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.object.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_a_cWCEdqI1bY5Lwi8Hg" name="type_of_result" constrainedElement="_hC_a7MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_a_sWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_a_cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BrkdxmEdqEPrOCkNZ5Vg" name="type_of_result" constrainedElement="_M4BrgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrktxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrkdxmEdqEPrOCkNZ5Vg">
<body>The type of the result output pin is the same as the type of the association end.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_a_8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Brk9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.type = self.end.type</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_bAMWCEdqI1bY5Lwi8Hg" name="multiplicity_of_result" constrainedElement="_hC_a7MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bAcWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bAMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BrlNxmEdqEPrOCkNZ5Vg" name="multiplicity_of_result" constrainedElement="_M4BrgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrldxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrlNxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the result output pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_bAsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BrltxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hC_bA8WCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC_bBMWCEdqI1bY5Lwi8Hg" name="object" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hDSV1cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bBcWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bBMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4Brl9xmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4BrmNxmEdqEPrOCkNZ5Vg" name="object" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M4LcydxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrmdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrmNxmEdqEPrOCkNZ5Vg">
<body>Gives the input pin from which the link object is obtained.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC_bBsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC_bB8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4BrmtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Brm9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC_bCMWCEdqI1bY5Lwi8Hg" name="end" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_hDSV2sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bCcWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bCMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4BrnNxmEdqEPrOCkNZ5Vg" name="end" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_M4LcztxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrndxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrnNxmEdqEPrOCkNZ5Vg">
<body>Link end to be read.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC_bCsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC_bC8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4BrntxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Brn9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC_bDMWCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hDSV3sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bDcWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bDMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4BroNxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M4Lc0txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrodxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BroNxmEdqEPrOCkNZ5Vg">
<body>Pin where the result value is placed</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC_bDsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC_bD8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4BrotxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Bro9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hC_bEMWCEdqI1bY5Lwi8Hg" name="ReadLinkObjectEndQualifierAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bEcWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bEMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M4BrpNxmEdqEPrOCkNZ5Vg" name="ReadLinkObjectEndQualifierAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrpdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrpNxmEdqEPrOCkNZ5Vg">
<body>This action reads a qualifier value or values on an end of a link object. The association end to retrieve the qualifier from is specified statically, and the link object to read is provided on the input pin at run time.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_bEsWCEdqI1bY5Lwi8Hg" name="qualifier_attribute" constrainedElement="_hC_bEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bE8WCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bEsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BrptxmEdqEPrOCkNZ5Vg" name="qualifier_attribute" constrainedElement="_M4BrpNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Brp9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrptxmEdqEPrOCkNZ5Vg">
<body>The qualifier attribute must be a qualifier attribute of an association end.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_bFMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BrqNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.qualifier.associationEnd->size() = 1</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_bFcWCEdqI1bY5Lwi8Hg" name="association_of_association" constrainedElement="_hC_bEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bFsWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bFcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BrqdxmEdqEPrOCkNZ5Vg" name="association_of_association" constrainedElement="_M4BrpNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrqtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrqdxmEdqEPrOCkNZ5Vg">
<body>The association of the association end of the qualifier attribute must be an association class.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_bF8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Brq9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.qualifier.associationEnd.association.oclIsKindOf(AssociationClass)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_bGMWCEdqI1bY5Lwi8Hg" name="ends_of_association" constrainedElement="_hC_bEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bGcWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bGMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BrrNxmEdqEPrOCkNZ5Vg" name="ends_of_association" constrainedElement="_M4BrpNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrrdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrrNxmEdqEPrOCkNZ5Vg">
<body>The ends of the association must not be static.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_bGsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BrrtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.qualifier.associationEnd.association.memberEnd->forall(e | not e.isStatic)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_bG8WCEdqI1bY5Lwi8Hg" name="type_of_object" constrainedElement="_hC_bEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bHMWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bG8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4Brr9xmEdqEPrOCkNZ5Vg" name="type_of_object" constrainedElement="_M4BrpNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrsNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Brr9xmEdqEPrOCkNZ5Vg">
<body>The type of the object input pin is the association class that owns the association end that has the given qualifier attribute.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_bHcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BrsdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.object.type = self.qualifier.associationEnd.association</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_bHsWCEdqI1bY5Lwi8Hg" name="multiplicity_of_qualifier" constrainedElement="_hC_bEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bH8WCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bHsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BrstxmEdqEPrOCkNZ5Vg" name="multiplicity_of_qualifier" constrainedElement="_M4BrpNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Brs9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrstxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the qualifier attribute is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_bIMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BrtNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.qualifier.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_bIcWCEdqI1bY5Lwi8Hg" name="multiplicity_of_object" constrainedElement="_hC_bEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bIsWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bIcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BrtdxmEdqEPrOCkNZ5Vg" name="multiplicity_of_object" constrainedElement="_M4BrpNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrttxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrtdxmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the object input pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_bI8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Brt9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.object.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_bJMWCEdqI1bY5Lwi8Hg" name="same_type" constrainedElement="_hC_bEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bJcWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bJMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BruNxmEdqEPrOCkNZ5Vg" name="same_type" constrainedElement="_M4BrpNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrudxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BruNxmEdqEPrOCkNZ5Vg">
<body>The type of the result output pin is the same as the type of the qualifier attribute.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_bJsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BrutxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.type = self.qualifier.type</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_bJ8WCEdqI1bY5Lwi8Hg" name="multiplicity_of_result" constrainedElement="_hC_bEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bKMWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bJ8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4Bru9xmEdqEPrOCkNZ5Vg" name="multiplicity_of_result" constrainedElement="_M4BrpNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrvNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Bru9xmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the result output pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_bKcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BrvdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hC_bKsWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC_bK8WCEdqI1bY5Lwi8Hg" name="object" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hDSV48WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bLMWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bK8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4BrvtxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4Brv9xmEdqEPrOCkNZ5Vg" name="object" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M4Lc19xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrwNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Brv9xmEdqEPrOCkNZ5Vg">
<body>(Specialized from Action:input) Gives the input pin from which the link object is obtained.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC_bLcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC_bLsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4BrwdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4BrwtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC_bL8WCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hDbfoMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bMMWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bL8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4Brw9xmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M4Lc3NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrxNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Brw9xmEdqEPrOCkNZ5Vg">
<body>Pin where the result value is placed</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC_bMcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC_bMsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4BrxdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4BrxtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC_bM8WCEdqI1bY5Lwi8Hg" name="qualifier" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_hDbfpcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bNMWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bM8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4Brx9xmEdqEPrOCkNZ5Vg" name="qualifier" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_M4Lc4dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BryNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Brx9xmEdqEPrOCkNZ5Vg">
<body>The attribute representing the qualifier to be read.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC_bNcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC_bNsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4BrydxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4BrytxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hC_bN8WCEdqI1bY5Lwi8Hg" name="CreateLinkObjectAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bOMWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bN8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M4Bry9xmEdqEPrOCkNZ5Vg" name="CreateLinkObjectAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrzNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Bry9xmEdqEPrOCkNZ5Vg">
<body>This action is exclusively for creating links of association classes. It returns the created link object.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_bOcWCEdqI1bY5Lwi8Hg" name="association_class" constrainedElement="_hC_bN8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bOsWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bOcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BrzdxmEdqEPrOCkNZ5Vg" name="association_class" constrainedElement="_M4Bry9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BrztxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BrzdxmEdqEPrOCkNZ5Vg">
<body>The association must be an association class.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_bO8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Brz9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.association().oclIsKindOf(Class)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_bPMWCEdqI1bY5Lwi8Hg" name="type_of_result" constrainedElement="_hC_bN8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bPcWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bPMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4Br0NxmEdqEPrOCkNZ5Vg" name="type_of_result" constrainedElement="_M4Bry9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br0dxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br0NxmEdqEPrOCkNZ5Vg">
<body>The type of the result pin must be the same as the association of the action.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_bPsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Br0txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.type = self.association()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hC_bP8WCEdqI1bY5Lwi8Hg" name="multiplicity" constrainedElement="_hC_bN8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bQMWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bP8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4Br09xmEdqEPrOCkNZ5Vg" name="multiplicity" constrainedElement="_M4Bry9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br1NxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br09xmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the output pin is 1..1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hC_bQcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Br1dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.result.multiplicity.is(1,1)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hC_bQsWCEdqI1bY5Lwi8Hg" general="_g_2nrcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hC_bQ8WCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hDbfqcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hC_bRMWCEdqI1bY5Lwi8Hg" annotatedElement="_hC_bQ8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4Br1txmEdqEPrOCkNZ5Vg" general="_M18oatxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4Br19xmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M4Lc5dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br2NxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br19xmEdqEPrOCkNZ5Vg">
<body>Gives the output pin on which the result is put.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hC_bRcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hC_bRsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4Br2dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Br2txmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hDIksMWCEdqI1bY5Lwi8Hg" name="AcceptEventAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIkscWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIksMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M4Br29xmEdqEPrOCkNZ5Vg" name="AcceptEventAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br3NxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br29xmEdqEPrOCkNZ5Vg">
<body>AcceptEventAction is an action that waits for the occurrence of an event meeting specified conditions.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIkssWCEdqI1bY5Lwi8Hg" name="no_input_pins" constrainedElement="_hDIksMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIks8WCEdqI1bY5Lwi8Hg" annotatedElement="_hDIkssWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4Br3dxmEdqEPrOCkNZ5Vg" name="no_input_pins" constrainedElement="_M4Br29xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br3txmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br3dxmEdqEPrOCkNZ5Vg">
<body>AcceptEventActions may have no input pins.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIktMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Br39xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIktcWCEdqI1bY5Lwi8Hg" name="no_output_pins" constrainedElement="_hDIksMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIktsWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIktcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4Br4NxmEdqEPrOCkNZ5Vg" name="no_output_pins" constrainedElement="_M4Br29xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br4dxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br4NxmEdqEPrOCkNZ5Vg">
<body>There are no output pins if the trigger events are only ChangeEvents, or if they are only CallEvents when this action is an instance of AcceptEventAction and not an instance of a descendant of AcceptEventAction (such as AcceptCallAction).</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIkt8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Br4txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIkuMWCEdqI1bY5Lwi8Hg" name="trigger_events" constrainedElement="_hDIksMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIkucWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIkuMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4Br49xmEdqEPrOCkNZ5Vg" name="trigger_events" constrainedElement="_M4Br29xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br5NxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br49xmEdqEPrOCkNZ5Vg">
<body>If the trigger events are all TimeEvents, there is exactly one output pin.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIkusWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Br5dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIku8WCEdqI1bY5Lwi8Hg" name="unmarshall_signal_events" constrainedElement="_hDIksMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIkvMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIku8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4Br5txmEdqEPrOCkNZ5Vg" name="unmarshall_signal_events" constrainedElement="_M4Br29xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br59xmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br5txmEdqEPrOCkNZ5Vg">
<body>If isUnmarshall is true, there must be exactly one trigger for events of type SignalEvent. The number of result output pins must be the same as the number of attributes of the signal. The type and ordering of each result output pin must be the same as the corresponding attribute of the signal. The multiplicity of each result output pin must be compatible with the multiplicity of the corresponding attribute.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIkvcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Br6NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hDIkvsWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIkv8WCEdqI1bY5Lwi8Hg" name="isUnmarshall" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIkwMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIkv8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4Br6dxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4Br6txmEdqEPrOCkNZ5Vg" name="isUnmarshall" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br69xmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br6txmEdqEPrOCkNZ5Vg">
<body>Indicates whether there is a single output pin for the event, or multiple output pins for attributes of the event.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hDIkwcWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M4Br7NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIkwsWCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hDbfscWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIkw8WCEdqI1bY5Lwi8Hg" annotatedElement="_hDIkwsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4Br7dxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M4Lc7dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br7txmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br7dxmEdqEPrOCkNZ5Vg">
<body>Pins holding the received event objects or their attributes. Event objects may be copied in transmission, so identity might not be preserved.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIkxMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIkxcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4Br79xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Br8NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIkxsWCEdqI1bY5Lwi8Hg" name="trigger" type="_g-OPmsWCEdqI1bY5Lwi8Hg" aggregation="composite" association="_hDbf0cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIkx8WCEdqI1bY5Lwi8Hg" annotatedElement="_hDIkxsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4Br8dxmEdqEPrOCkNZ5Vg" name="trigger" type="_M0AHRtxmEdqEPrOCkNZ5Vg" aggregation="composite" association="_M4VNmtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br8txmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br8dxmEdqEPrOCkNZ5Vg">
<body>The type of events accepted by the action, as specified by triggers. For triggers with signal events, a signal of the specified type or any subtype of the specified signal type is accepted.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIkyMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIkycWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4Br89xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Br9NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hDIkysWCEdqI1bY5Lwi8Hg" name="AcceptCallAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIky8WCEdqI1bY5Lwi8Hg" annotatedElement="_hDIkysWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M4Br9dxmEdqEPrOCkNZ5Vg" name="AcceptCallAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br9txmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br9dxmEdqEPrOCkNZ5Vg">
<body>AcceptCallAction is an accept event action representing the receipt of a synchronous call request. In addition to the normal operation parameters, the action produces an output that is needed later to supply the information to the ReplyAction necessary to return control to the caller. This action is for synchronous calls. If it is used to handle an asynchronous call, execution of the subsequent reply action will complete immediately with no effects.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIkzMWCEdqI1bY5Lwi8Hg" name="result_pins" constrainedElement="_hDIkysWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIkzcWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIkzMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4Br99xmEdqEPrOCkNZ5Vg" name="result_pins" constrainedElement="_M4Br9dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br-NxmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br99xmEdqEPrOCkNZ5Vg">
<body>The result pins must match the in and inout parameters of the operation specified by the trigger event in number, type, and order.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIkzsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Br-dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIkz8WCEdqI1bY5Lwi8Hg" name="trigger_call_event" constrainedElement="_hDIkysWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk0MWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIkz8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4Br-txmEdqEPrOCkNZ5Vg" name="trigger_call_event" constrainedElement="_M4Br9dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br-9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br-txmEdqEPrOCkNZ5Vg">
<body>The trigger event must be a CallEvent.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIk0cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Br_NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>trigger.event.oclIsKindOf(CallEvent)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIk0sWCEdqI1bY5Lwi8Hg" name="unmarshall" constrainedElement="_hDIkysWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk08WCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk0sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4Br_dxmEdqEPrOCkNZ5Vg" name="unmarshall" constrainedElement="_M4Br9dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Br_txmEdqEPrOCkNZ5Vg" annotatedElement="_M4Br_dxmEdqEPrOCkNZ5Vg">
<body>isUnmrashall must be true for an AcceptCallAction.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIk1MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Br_9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>isUnmarshall = true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hDIk1cWCEdqI1bY5Lwi8Hg" general="_hDIksMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIk1sWCEdqI1bY5Lwi8Hg" name="returnInformation" type="_g7r5D8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hDbftMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk18WCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk1sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4BsANxmEdqEPrOCkNZ5Vg" general="_M4Br29xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4BsAdxmEdqEPrOCkNZ5Vg" name="returnInformation" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M4Lc8NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsAtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsAdxmEdqEPrOCkNZ5Vg">
<body>Pin where a value is placed containing sufficient information to perform a subsequent reply and return control to the caller. The contents of this value are opaque. It can be passed and copied but it cannot be manipulated by the model.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIk2MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIk2cWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4BsA9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4BsBNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hDIk2sWCEdqI1bY5Lwi8Hg" name="ReplyAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk28WCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk2sWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M4BsBdxmEdqEPrOCkNZ5Vg" name="ReplyAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsBtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsBdxmEdqEPrOCkNZ5Vg">
<body>ReplyAction is an action that accepts a set of return values and a value containing return information produced by a previous accept call action. The reply action returns the values to the caller of the previous call, completing execution of the call.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIk3MWCEdqI1bY5Lwi8Hg" name="pins_match_parameter" constrainedElement="_hDIk2sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk3cWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk3MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BsB9xmEdqEPrOCkNZ5Vg" name="pins_match_parameter" constrainedElement="_M4BsBdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsCNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsB9xmEdqEPrOCkNZ5Vg">
<body>The reply value pins must match the return, out, and inout parameters of the operation on the event on the trigger in number, type, and order.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIk3sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BsCdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIk38WCEdqI1bY5Lwi8Hg" name="event_on_reply_to_call_trigger" constrainedElement="_hDIk2sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk4MWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk38WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BsCtxmEdqEPrOCkNZ5Vg" name="event_on_reply_to_call_trigger" constrainedElement="_M4BsBdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsC9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsCtxmEdqEPrOCkNZ5Vg">
<body>The event on replyToCall trigger must be a CallEvent replyToCallEvent.oclIsKindOf(CallEvent)</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIk4cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BsDNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>replyToCallEvent.oclIsKindOf(CallEvent)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hDIk4sWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIk48WCEdqI1bY5Lwi8Hg" name="replyToCall" type="_g-OPmsWCEdqI1bY5Lwi8Hg" association="_hDbft8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk5MWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk48WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4BsDdxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4BsDtxmEdqEPrOCkNZ5Vg" name="replyToCall" type="_M0AHRtxmEdqEPrOCkNZ5Vg" association="_M4VNgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsD9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsDtxmEdqEPrOCkNZ5Vg">
<body>The trigger specifying the operation whose call is being replied to.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIk5cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIk5sWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4BsENxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4BsEdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIk58WCEdqI1bY5Lwi8Hg" name="returnInformation" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hDbfx8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk6MWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk58WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4BsEtxmEdqEPrOCkNZ5Vg" name="returnInformation" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M4VNkNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsE9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsEtxmEdqEPrOCkNZ5Vg">
<body>A pin containing the return information value produced by an earlier AcceptCallAction.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIk6cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIk6sWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4BsFNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4BsFdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIk68WCEdqI1bY5Lwi8Hg" name="replyValue" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hDbfzMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk7MWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk68WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4BsFtxmEdqEPrOCkNZ5Vg" name="replyValue" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M4VNldxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsF9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsFtxmEdqEPrOCkNZ5Vg">
<body>A list of pins containing the reply values of the operation. These values are returned to the caller.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIk7cWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIk7sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4BsGNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4BsGdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hDIk78WCEdqI1bY5Lwi8Hg" name="UnmarshallAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk8MWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk78WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M4BsGtxmEdqEPrOCkNZ5Vg" name="UnmarshallAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsG9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsGtxmEdqEPrOCkNZ5Vg">
<body>The outputs of this action correspond to the structural features of the specified type. The input must be of this type.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIk8cWCEdqI1bY5Lwi8Hg" name="same_type" constrainedElement="_hDIk78WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk8sWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk8cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BsHNxmEdqEPrOCkNZ5Vg" name="same_type" constrainedElement="_M4BsGtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsHdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsHNxmEdqEPrOCkNZ5Vg">
<body>The type of the object input pin must be the same as the unmarshall classifier.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIk88WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BsHtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIk9MWCEdqI1bY5Lwi8Hg" name="multiplicity_of_object" constrainedElement="_hDIk78WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk9cWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk9MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BsH9xmEdqEPrOCkNZ5Vg" name="multiplicity_of_object" constrainedElement="_M4BsGtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsINxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsH9xmEdqEPrOCkNZ5Vg">
<body>The multiplicity of the object input pin is 1..1</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIk9sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BsIdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIk98WCEdqI1bY5Lwi8Hg" name="number_of_result" constrainedElement="_hDIk78WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk-MWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk98WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BsItxmEdqEPrOCkNZ5Vg" name="number_of_result" constrainedElement="_M4BsGtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsI9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsItxmEdqEPrOCkNZ5Vg">
<body>The number of result output pins must be the same as the number of structural features of the unmarshall classifier.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIk-cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BsJNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIk-sWCEdqI1bY5Lwi8Hg" name="type_and_ordering" constrainedElement="_hDIk78WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk-8WCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk-sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BsJdxmEdqEPrOCkNZ5Vg" name="type_and_ordering" constrainedElement="_M4BsGtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsJtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsJdxmEdqEPrOCkNZ5Vg">
<body>The type and ordering of each result output pin must be the same as the corresponding structural feature of the unmarshall classifier.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIk_MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BsJ9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIk_cWCEdqI1bY5Lwi8Hg" name="multiplicity_of_result" constrainedElement="_hDIk78WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIk_sWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIk_cWCEdqI1bY5Lwi8Hg">
- <body>The multiplicity of each result output pin must be compatible with the multiplicity of the corresponding structural features of the unmarshall classifier.
-
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BsKNxmEdqEPrOCkNZ5Vg" name="multiplicity_of_result" constrainedElement="_M4BsGtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsKdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsKNxmEdqEPrOCkNZ5Vg">
+ <body>The multiplicity of each result output pin must be compatible with the multiplicity of the corresponding structural features of the unmarshall classifier.&#xD;
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIk_8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BsKtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIlAMWCEdqI1bY5Lwi8Hg" name="structural_feature" constrainedElement="_hDIk78WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIlAcWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIlAMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BsK9xmEdqEPrOCkNZ5Vg" name="structural_feature" constrainedElement="_M4BsGtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsLNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsK9xmEdqEPrOCkNZ5Vg">
<body>The unmarshall classifier must have at least one structural feature.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIlAsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BsLdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIlA8WCEdqI1bY5Lwi8Hg" name="unmarshallType_is_classifier" constrainedElement="_hDIk78WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIlBMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIlA8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4BsLtxmEdqEPrOCkNZ5Vg" name="unmarshallType_is_classifier" constrainedElement="_M4BsGtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsL9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsLtxmEdqEPrOCkNZ5Vg">
<body>unmarshallType must be a Classifier with ordered attributes</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIlBcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4BsMNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hDIlBsWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIlB8WCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hDbfucWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIlCMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIlB8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4BsMdxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4BsMtxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M4VNgtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsM9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsMtxmEdqEPrOCkNZ5Vg">
<body>The values of the structural features of the input object.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIlCcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIlCsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4BsNNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4BsNdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIlC8WCEdqI1bY5Lwi8Hg" name="unmarshallType" type="_6UV2QGwJEdq7X4sGURiZYA" association="_hDbfvsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIlDMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIlC8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4BsNtxmEdqEPrOCkNZ5Vg" name="unmarshallType" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M4VNh9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsN9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsNtxmEdqEPrOCkNZ5Vg">
<body>The type of the object to be unmarshalled.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIlDcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIlDsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4BsONxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4BsOdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIlD8WCEdqI1bY5Lwi8Hg" name="object" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hDbfwsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIlEMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIlD8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4BsOtxmEdqEPrOCkNZ5Vg" name="object" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M4VNi9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4BsO9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4BsOtxmEdqEPrOCkNZ5Vg">
<body>The object to be unmarshalled.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIlEcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIlEsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4BsPNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4BsPdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hDIlE8WCEdqI1bY5Lwi8Hg" name="ReduceAction">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIlFMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIlE8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M4LcgNxmEdqEPrOCkNZ5Vg" name="ReduceAction">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4LcgdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4LcgNxmEdqEPrOCkNZ5Vg">
<body>This action takes a collection as input and produces an output by applying a behavior with two inputs pairwise to the elements of the collection.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIlFcWCEdqI1bY5Lwi8Hg" name="input_type_is_collection" constrainedElement="_hDIlE8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIlFsWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIlFcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4LcgtxmEdqEPrOCkNZ5Vg" name="input_type_is_collection" constrainedElement="_M4LcgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4Lcg9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4LcgtxmEdqEPrOCkNZ5Vg">
<body>The type of the input must be a collection.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIlF8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4LchNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIlGMWCEdqI1bY5Lwi8Hg" name="output_types_are_compatible" constrainedElement="_hDIlE8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIlGcWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIlGMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4LchdxmEdqEPrOCkNZ5Vg" name="output_types_are_compatible" constrainedElement="_M4LcgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4LchtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4LchdxmEdqEPrOCkNZ5Vg">
<body>The type of the output must be compatible with the type of the output of the reducer behavior.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIlGsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4Lch9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDIlG8WCEdqI1bY5Lwi8Hg" name="reducer_inputs_output" constrainedElement="_hDIlE8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIlHMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIlG8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4LciNxmEdqEPrOCkNZ5Vg" name="reducer_inputs_output" constrainedElement="_M4LcgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4LcidxmEdqEPrOCkNZ5Vg" annotatedElement="_M4LciNxmEdqEPrOCkNZ5Vg">
<body>The reducer behavior must have two input parameters and one output parameter, of types compatible with the types of elements of the input collection.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDIlHcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4LcitxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hDIlHsWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIlH8WCEdqI1bY5Lwi8Hg" name="reducer" type="_TUPtYGveEdq4DLWZOhbdEA" association="_hDbf28WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIlIMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIlH8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4Lci9xmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4LcjNxmEdqEPrOCkNZ5Vg" name="reducer" type="_TUPtYGveEdq4DLWZOhbdEA" association="_M4VNpNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4LcjdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4LcjNxmEdqEPrOCkNZ5Vg">
<body>Behavior that is applied to two elements of the input collection to produce a value that is the same type as elements of the collection.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIlIcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIlIsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4LcjtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lcj9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIlI8WCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hDbf1cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIlJMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIlI8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4LckNxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M4VNntxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4LckdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4LckNxmEdqEPrOCkNZ5Vg">
<body>Gives the output pin on which the result is put.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIlJcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIlJsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4LcktxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lck9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIlJ8WCEdqI1bY5Lwi8Hg" name="collection" type="_g7r5EsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hDbf2MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIlKMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIlJ8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4LclNxmEdqEPrOCkNZ5Vg" name="collection" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M4VNodxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4LcldxmEdqEPrOCkNZ5Vg" annotatedElement="_M4LclNxmEdqEPrOCkNZ5Vg">
<body>The collection to be reduced.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIlKcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIlKsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4LcltxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lcl9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDIlK8WCEdqI1bY5Lwi8Hg" name="isOrdered" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDIlLMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDIlK8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4LcmNxmEdqEPrOCkNZ5Vg" name="isOrdered" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4LcmdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4LcmNxmEdqEPrOCkNZ5Vg">
<body>Tells whether the order of the input collection should determine the order in which the behavior is applied to its elements.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hDIlLcWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M4LcmtxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDIlLsWCEdqI1bY5Lwi8Hg" name="A_result_readExtentAction" memberEnd="_hC1p6sWCEdqI1bY5Lwi8Hg _hDIlMMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDIlL8WCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDIlMMWCEdqI1bY5Lwi8Hg" type="_hC1p4cWCEdqI1bY5Lwi8Hg" association="_hDIlLsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIlMcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIlMsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4Lcm9xmEdqEPrOCkNZ5Vg" name="A_result_readExtentAction" memberEnd="_M34hrNxmEdqEPrOCkNZ5Vg _M4LcndxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4LcnNxmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4LcndxmEdqEPrOCkNZ5Vg" type="_M34ho9xmEdqEPrOCkNZ5Vg" association="_M4Lcm9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4LcntxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lcn9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDIlM8WCEdqI1bY5Lwi8Hg" name="A_classifier_readExtentAction" memberEnd="_hC1p7sWCEdqI1bY5Lwi8Hg _hDIlNMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDIlNMWCEdqI1bY5Lwi8Hg" type="_hC1p4cWCEdqI1bY5Lwi8Hg" association="_hDIlM8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDIlNcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDIlNsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4LcoNxmEdqEPrOCkNZ5Vg" name="A_classifier_readExtentAction" memberEnd="_M34hsNxmEdqEPrOCkNZ5Vg _M4LcodxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4LcodxmEdqEPrOCkNZ5Vg" type="_M34ho9xmEdqEPrOCkNZ5Vg" association="_M4LcoNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4LcotxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lco9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDSVsMWCEdqI1bY5Lwi8Hg" name="A_oldClassifier_reclassifyObjectAction" memberEnd="_hC1qAcWCEdqI1bY5Lwi8Hg _hDSVscWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDSVscWCEdqI1bY5Lwi8Hg" type="_hC1p8sWCEdqI1bY5Lwi8Hg" association="_hDSVsMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDSVssWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDSVs8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4LcpNxmEdqEPrOCkNZ5Vg" name="A_oldClassifier_reclassifyObjectAction" memberEnd="_M34hw9xmEdqEPrOCkNZ5Vg _M4LcpdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4LcpdxmEdqEPrOCkNZ5Vg" type="_M34htNxmEdqEPrOCkNZ5Vg" association="_M4LcpNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4LcptxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lcp9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDSVtMWCEdqI1bY5Lwi8Hg" name="A_newClassifier_reclassifyObjectAction" memberEnd="_hC1qBcWCEdqI1bY5Lwi8Hg _hDSVtcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDSVtcWCEdqI1bY5Lwi8Hg" type="_hC1p8sWCEdqI1bY5Lwi8Hg" association="_hDSVtMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDSVtsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDSVt8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4LcqNxmEdqEPrOCkNZ5Vg" name="A_newClassifier_reclassifyObjectAction" memberEnd="_M34hx9xmEdqEPrOCkNZ5Vg _M4LcqdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4LcqdxmEdqEPrOCkNZ5Vg" type="_M34htNxmEdqEPrOCkNZ5Vg" association="_M4LcqNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4LcqtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lcq9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDSVuMWCEdqI1bY5Lwi8Hg" name="A_classifier_readIsClassifiedObjectAction" memberEnd="_hC1qH8WCEdqI1bY5Lwi8Hg _hDSVucWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDSVucWCEdqI1bY5Lwi8Hg" type="_hC1qDcWCEdqI1bY5Lwi8Hg" association="_hDSVuMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4LcrNxmEdqEPrOCkNZ5Vg" name="A_classifier_readIsClassifiedObjectAction" memberEnd="_M34h4dxmEdqEPrOCkNZ5Vg _M4LcrdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4LcrdxmEdqEPrOCkNZ5Vg" type="_M34hz9xmEdqEPrOCkNZ5Vg" association="_M4LcrNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDSVusWCEdqI1bY5Lwi8Hg" name="A_result_readIsClassifiedObjectAction" memberEnd="_hC1qI8WCEdqI1bY5Lwi8Hg _hDSVvMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDSVu8WCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDSVvMWCEdqI1bY5Lwi8Hg" type="_hC1qDcWCEdqI1bY5Lwi8Hg" association="_hDSVusWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDSVvcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDSVvsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4LcrtxmEdqEPrOCkNZ5Vg" name="A_result_readIsClassifiedObjectAction" memberEnd="_M34h5dxmEdqEPrOCkNZ5Vg _M4LcsNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4Lcr9xmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4LcsNxmEdqEPrOCkNZ5Vg" type="_M34hz9xmEdqEPrOCkNZ5Vg" association="_M4LcrtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4LcsdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4LcstxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDSVv8WCEdqI1bY5Lwi8Hg" name="A_object_readIsClassifiedObjectAction" memberEnd="_hC1qJ8WCEdqI1bY5Lwi8Hg _hDSVwcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDSVwMWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDSVwcWCEdqI1bY5Lwi8Hg" type="_hC1qDcWCEdqI1bY5Lwi8Hg" association="_hDSVv8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDSVwsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDSVw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4Lcs9xmEdqEPrOCkNZ5Vg" name="A_object_readIsClassifiedObjectAction" memberEnd="_M34h6dxmEdqEPrOCkNZ5Vg _M4LctdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4LctNxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4LctdxmEdqEPrOCkNZ5Vg" type="_M34hz9xmEdqEPrOCkNZ5Vg" association="_M4Lcs9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4LcttxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lct9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDSVxMWCEdqI1bY5Lwi8Hg" name="A_object_startClassifierBehaviorAction" memberEnd="_hC_aycWCEdqI1bY5Lwi8Hg _hDSVxsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDSVxcWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDSVxsWCEdqI1bY5Lwi8Hg" type="_hC_awMWCEdqI1bY5Lwi8Hg" association="_hDSVxMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDSVx8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDSVyMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4LcuNxmEdqEPrOCkNZ5Vg" name="A_object_startClassifierBehaviorAction" memberEnd="_M34h9txmEdqEPrOCkNZ5Vg _M4LcutxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4LcudxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4LcutxmEdqEPrOCkNZ5Vg" type="_M34h7dxmEdqEPrOCkNZ5Vg" association="_M4LcuNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4Lcu9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4LcvNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDSVycWCEdqI1bY5Lwi8Hg" name="A_qualifier_linkEndData" memberEnd="_hC_a6MWCEdqI1bY5Lwi8Hg _hDSVysWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDSVysWCEdqI1bY5Lwi8Hg" type="_g_2nc8WCEdqI1bY5Lwi8Hg" association="_hDSVycWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDSVy8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDSVzMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4LcvdxmEdqEPrOCkNZ5Vg" name="A_qualifier_linkEndData" memberEnd="_M34iFdxmEdqEPrOCkNZ5Vg _M4LcvtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4LcvtxmEdqEPrOCkNZ5Vg" type="_M18oMNxmEdqEPrOCkNZ5Vg" association="_M4LcvdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4Lcv9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4LcwNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDSVzcWCEdqI1bY5Lwi8Hg" name="A_qualifier_qualifierValue" memberEnd="_hC_a2cWCEdqI1bY5Lwi8Hg _hDSVzsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDSVzsWCEdqI1bY5Lwi8Hg" type="_hC_azcWCEdqI1bY5Lwi8Hg" association="_hDSVzcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDSVz8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDSV0MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4LcwdxmEdqEPrOCkNZ5Vg" name="A_qualifier_qualifierValue" memberEnd="_M34iBtxmEdqEPrOCkNZ5Vg _M4LcwtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4LcwtxmEdqEPrOCkNZ5Vg" type="_M34h-txmEdqEPrOCkNZ5Vg" association="_M4LcwdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4Lcw9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4LcxNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDSV0cWCEdqI1bY5Lwi8Hg" name="A_value_qualifierValue" memberEnd="_hC_a3cWCEdqI1bY5Lwi8Hg _hDSV0sWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDSV0sWCEdqI1bY5Lwi8Hg" type="_hC_azcWCEdqI1bY5Lwi8Hg" association="_hDSV0cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDSV08WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDSV1MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4LcxdxmEdqEPrOCkNZ5Vg" name="A_value_qualifierValue" memberEnd="_M34iCtxmEdqEPrOCkNZ5Vg _M4LcxtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4LcxtxmEdqEPrOCkNZ5Vg" type="_M34h-txmEdqEPrOCkNZ5Vg" association="_M4LcxdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4Lcx9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4LcyNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDSV1cWCEdqI1bY5Lwi8Hg" name="A_object_readLinkObjectEndAction" memberEnd="_hC_bBMWCEdqI1bY5Lwi8Hg _hDSV18WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDSV1sWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDSV18WCEdqI1bY5Lwi8Hg" type="_hC_a7MWCEdqI1bY5Lwi8Hg" association="_hDSV1cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDSV2MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDSV2cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4LcydxmEdqEPrOCkNZ5Vg" name="A_object_readLinkObjectEndAction" memberEnd="_M4BrmNxmEdqEPrOCkNZ5Vg _M4Lcy9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4LcytxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4Lcy9xmEdqEPrOCkNZ5Vg" type="_M4BrgNxmEdqEPrOCkNZ5Vg" association="_M4LcydxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4LczNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4LczdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDSV2sWCEdqI1bY5Lwi8Hg" name="A_end_readLinkObjectEndAction" memberEnd="_hC_bCMWCEdqI1bY5Lwi8Hg _hDSV28WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDSV28WCEdqI1bY5Lwi8Hg" type="_hC_a7MWCEdqI1bY5Lwi8Hg" association="_hDSV2sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDSV3MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDSV3cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4LcztxmEdqEPrOCkNZ5Vg" name="A_end_readLinkObjectEndAction" memberEnd="_M4BrnNxmEdqEPrOCkNZ5Vg _M4Lcz9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4Lcz9xmEdqEPrOCkNZ5Vg" type="_M4BrgNxmEdqEPrOCkNZ5Vg" association="_M4LcztxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4Lc0NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lc0dxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDSV3sWCEdqI1bY5Lwi8Hg" name="A_result_readLinkObjectEndAction" memberEnd="_hC_bDMWCEdqI1bY5Lwi8Hg _hDSV4MWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDSV38WCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDSV4MWCEdqI1bY5Lwi8Hg" type="_hC_a7MWCEdqI1bY5Lwi8Hg" association="_hDSV3sWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDSV4cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDSV4sWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4Lc0txmEdqEPrOCkNZ5Vg" name="A_result_readLinkObjectEndAction" memberEnd="_M4BroNxmEdqEPrOCkNZ5Vg _M4Lc1NxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4Lc09xmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4Lc1NxmEdqEPrOCkNZ5Vg" type="_M4BrgNxmEdqEPrOCkNZ5Vg" association="_M4Lc0txmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4Lc1dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lc1txmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDSV48WCEdqI1bY5Lwi8Hg" name="A_object_readLinkObjectEndQualifierAction" memberEnd="_hC_bK8WCEdqI1bY5Lwi8Hg _hDSV5cWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDSV5MWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDSV5cWCEdqI1bY5Lwi8Hg" type="_hC_bEMWCEdqI1bY5Lwi8Hg" association="_hDSV48WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDSV5sWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDSV58WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4Lc19xmEdqEPrOCkNZ5Vg" name="A_object_readLinkObjectEndQualifierAction" memberEnd="_M4Brv9xmEdqEPrOCkNZ5Vg _M4Lc2dxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4Lc2NxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4Lc2dxmEdqEPrOCkNZ5Vg" type="_M4BrpNxmEdqEPrOCkNZ5Vg" association="_M4Lc19xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4Lc2txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lc29xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbfoMWCEdqI1bY5Lwi8Hg" name="A_result_readLinkObjectEndQualifierAction" memberEnd="_hC_bL8WCEdqI1bY5Lwi8Hg _hDbfosWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDbfocWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbfosWCEdqI1bY5Lwi8Hg" type="_hC_bEMWCEdqI1bY5Lwi8Hg" association="_hDbfoMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDbfo8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDbfpMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4Lc3NxmEdqEPrOCkNZ5Vg" name="A_result_readLinkObjectEndQualifierAction" memberEnd="_M4Brw9xmEdqEPrOCkNZ5Vg _M4Lc3txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4Lc3dxmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4Lc3txmEdqEPrOCkNZ5Vg" type="_M4BrpNxmEdqEPrOCkNZ5Vg" association="_M4Lc3NxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4Lc39xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lc4NxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbfpcWCEdqI1bY5Lwi8Hg" name="A_qualifier_readLinkObjectEndQualifierAction" memberEnd="_hC_bM8WCEdqI1bY5Lwi8Hg _hDbfpsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbfpsWCEdqI1bY5Lwi8Hg" type="_hC_bEMWCEdqI1bY5Lwi8Hg" association="_hDbfpcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDbfp8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDbfqMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4Lc4dxmEdqEPrOCkNZ5Vg" name="A_qualifier_readLinkObjectEndQualifierAction" memberEnd="_M4Brx9xmEdqEPrOCkNZ5Vg _M4Lc4txmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4Lc4txmEdqEPrOCkNZ5Vg" type="_M4BrpNxmEdqEPrOCkNZ5Vg" association="_M4Lc4dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4Lc49xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lc5NxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbfqcWCEdqI1bY5Lwi8Hg" name="A_result_createLinkObjectAction" memberEnd="_hC_bQ8WCEdqI1bY5Lwi8Hg _hDbfq8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDbfqsWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbfq8WCEdqI1bY5Lwi8Hg" type="_hC_bN8WCEdqI1bY5Lwi8Hg" association="_hDbfqcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDbfrMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDbfrcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4Lc5dxmEdqEPrOCkNZ5Vg" name="A_result_createLinkObjectAction" memberEnd="_M4Br19xmEdqEPrOCkNZ5Vg _M4Lc59xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4Lc5txmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4Lc59xmEdqEPrOCkNZ5Vg" type="_M4Bry9xmEdqEPrOCkNZ5Vg" association="_M4Lc5dxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4Lc6NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4Lc6dxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbfrsWCEdqI1bY5Lwi8Hg" name="A_reclassifyObjectAction_object" memberEnd="_hC1qCcWCEdqI1bY5Lwi8Hg _hDbfsMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDbfr8WCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbfsMWCEdqI1bY5Lwi8Hg" type="_hC1p8sWCEdqI1bY5Lwi8Hg" redefinedProperty="_g71qIsWCEdqI1bY5Lwi8Hg" association="_hDbfrsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4Lc6txmEdqEPrOCkNZ5Vg" name="A_reclassifyObjectAction_object" memberEnd="_M34hy9xmEdqEPrOCkNZ5Vg _M4Lc7NxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4Lc69xmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4Lc7NxmEdqEPrOCkNZ5Vg" type="_M34htNxmEdqEPrOCkNZ5Vg" redefinedProperty="_MyENydxmEdqEPrOCkNZ5Vg" association="_M4Lc6txmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbfscWCEdqI1bY5Lwi8Hg" name="A_result_acceptEventAction" memberEnd="_hDIkwsWCEdqI1bY5Lwi8Hg _hDbfs8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDbfssWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbfs8WCEdqI1bY5Lwi8Hg" type="_hDIksMWCEdqI1bY5Lwi8Hg" redefinedProperty="_g71qHcWCEdqI1bY5Lwi8Hg" association="_hDbfscWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4Lc7dxmEdqEPrOCkNZ5Vg" name="A_result_acceptEventAction" memberEnd="_M4Br7dxmEdqEPrOCkNZ5Vg _M4Lc79xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4Lc7txmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4Lc79xmEdqEPrOCkNZ5Vg" type="_M4Br29xmEdqEPrOCkNZ5Vg" redefinedProperty="_MyENxNxmEdqEPrOCkNZ5Vg" association="_M4Lc7dxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbftMWCEdqI1bY5Lwi8Hg" name="A_returnInformation_acceptCallAction" memberEnd="_hDIk1sWCEdqI1bY5Lwi8Hg _hDbftsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDbftcWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbftsWCEdqI1bY5Lwi8Hg" type="_hDIkysWCEdqI1bY5Lwi8Hg" redefinedProperty="_g71qHcWCEdqI1bY5Lwi8Hg" association="_hDbftMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4Lc8NxmEdqEPrOCkNZ5Vg" name="A_returnInformation_acceptCallAction" memberEnd="_M4BsAdxmEdqEPrOCkNZ5Vg _M4Lc8txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4Lc8dxmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4Lc8txmEdqEPrOCkNZ5Vg" type="_M4Br9dxmEdqEPrOCkNZ5Vg" redefinedProperty="_MyENxNxmEdqEPrOCkNZ5Vg" association="_M4Lc8NxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbft8WCEdqI1bY5Lwi8Hg" name="A_replyToCall_replyAction" memberEnd="_hDIk48WCEdqI1bY5Lwi8Hg _hDbfuMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbfuMWCEdqI1bY5Lwi8Hg" type="_hDIk2sWCEdqI1bY5Lwi8Hg" association="_hDbft8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4VNgNxmEdqEPrOCkNZ5Vg" name="A_replyToCall_replyAction" memberEnd="_M4BsDtxmEdqEPrOCkNZ5Vg _M4VNgdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4VNgdxmEdqEPrOCkNZ5Vg" type="_M4BsBdxmEdqEPrOCkNZ5Vg" association="_M4VNgNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbfucWCEdqI1bY5Lwi8Hg" name="A_result_unmarshallAction" memberEnd="_hDIlB8WCEdqI1bY5Lwi8Hg _hDbfu8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDbfusWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbfu8WCEdqI1bY5Lwi8Hg" type="_hDIk78WCEdqI1bY5Lwi8Hg" association="_hDbfucWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDbfvMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDbfvcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4VNgtxmEdqEPrOCkNZ5Vg" name="A_result_unmarshallAction" memberEnd="_M4BsMtxmEdqEPrOCkNZ5Vg _M4VNhNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4VNg9xmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4VNhNxmEdqEPrOCkNZ5Vg" type="_M4BsGtxmEdqEPrOCkNZ5Vg" association="_M4VNgtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4VNhdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4VNhtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbfvsWCEdqI1bY5Lwi8Hg" name="A_unmarshallType_unmarshallAction" memberEnd="_hDIlC8WCEdqI1bY5Lwi8Hg _hDbfv8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbfv8WCEdqI1bY5Lwi8Hg" type="_hDIk78WCEdqI1bY5Lwi8Hg" association="_hDbfvsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDbfwMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDbfwcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4VNh9xmEdqEPrOCkNZ5Vg" name="A_unmarshallType_unmarshallAction" memberEnd="_M4BsNtxmEdqEPrOCkNZ5Vg _M4VNiNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4VNiNxmEdqEPrOCkNZ5Vg" type="_M4BsGtxmEdqEPrOCkNZ5Vg" association="_M4VNh9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4VNidxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4VNitxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbfwsWCEdqI1bY5Lwi8Hg" name="A_object_unmarshallAction" memberEnd="_hDIlD8WCEdqI1bY5Lwi8Hg _hDbfxMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDbfw8WCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbfxMWCEdqI1bY5Lwi8Hg" type="_hDIk78WCEdqI1bY5Lwi8Hg" association="_hDbfwsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDbfxcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDbfxsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4VNi9xmEdqEPrOCkNZ5Vg" name="A_object_unmarshallAction" memberEnd="_M4BsOtxmEdqEPrOCkNZ5Vg _M4VNjdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4VNjNxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4VNjdxmEdqEPrOCkNZ5Vg" type="_M4BsGtxmEdqEPrOCkNZ5Vg" association="_M4VNi9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4VNjtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4VNj9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbfx8WCEdqI1bY5Lwi8Hg" name="A_returnInformation_replyAction" memberEnd="_hDIk58WCEdqI1bY5Lwi8Hg _hDbfycWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDbfyMWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbfycWCEdqI1bY5Lwi8Hg" type="_hDIk2sWCEdqI1bY5Lwi8Hg" association="_hDbfx8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDbfysWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDbfy8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4VNkNxmEdqEPrOCkNZ5Vg" name="A_returnInformation_replyAction" memberEnd="_M4BsEtxmEdqEPrOCkNZ5Vg _M4VNktxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4VNkdxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4VNktxmEdqEPrOCkNZ5Vg" type="_M4BsBdxmEdqEPrOCkNZ5Vg" association="_M4VNkNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4VNk9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4VNlNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbfzMWCEdqI1bY5Lwi8Hg" name="A_replyValue_replyAction" memberEnd="_hDIk68WCEdqI1bY5Lwi8Hg _hDbfzsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDbfzcWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbfzsWCEdqI1bY5Lwi8Hg" type="_hDIk2sWCEdqI1bY5Lwi8Hg" association="_hDbfzMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDbfz8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDbf0MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4VNldxmEdqEPrOCkNZ5Vg" name="A_replyValue_replyAction" memberEnd="_M4BsFtxmEdqEPrOCkNZ5Vg _M4VNl9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4VNltxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4VNl9xmEdqEPrOCkNZ5Vg" type="_M4BsBdxmEdqEPrOCkNZ5Vg" association="_M4VNldxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4VNmNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4VNmdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbf0cWCEdqI1bY5Lwi8Hg" name="A_trigger_acceptEventAction" memberEnd="_hDIkxsWCEdqI1bY5Lwi8Hg _hDbf0sWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbf0sWCEdqI1bY5Lwi8Hg" type="_hDIksMWCEdqI1bY5Lwi8Hg" association="_hDbf0cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDbf08WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDbf1MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4VNmtxmEdqEPrOCkNZ5Vg" name="A_trigger_acceptEventAction" memberEnd="_M4Br8dxmEdqEPrOCkNZ5Vg _M4VNm9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4VNm9xmEdqEPrOCkNZ5Vg" type="_M4Br29xmEdqEPrOCkNZ5Vg" association="_M4VNmtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4VNnNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4VNndxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbf1cWCEdqI1bY5Lwi8Hg" name="A_result_reduceAction" memberEnd="_hDIlI8WCEdqI1bY5Lwi8Hg _hDbf18WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDbf1sWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbf18WCEdqI1bY5Lwi8Hg" type="_hDIlE8WCEdqI1bY5Lwi8Hg" redefinedProperty="_g71qHcWCEdqI1bY5Lwi8Hg" association="_hDbf1cWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4VNntxmEdqEPrOCkNZ5Vg" name="A_result_reduceAction" memberEnd="_M4LckNxmEdqEPrOCkNZ5Vg _M4VNoNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4VNn9xmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4VNoNxmEdqEPrOCkNZ5Vg" type="_M4LcgNxmEdqEPrOCkNZ5Vg" redefinedProperty="_MyENxNxmEdqEPrOCkNZ5Vg" association="_M4VNntxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbf2MWCEdqI1bY5Lwi8Hg" name="A_collection_reduceAction" memberEnd="_hDIlJ8WCEdqI1bY5Lwi8Hg _hDbf2sWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hDbf2cWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbf2sWCEdqI1bY5Lwi8Hg" type="_hDIlE8WCEdqI1bY5Lwi8Hg" redefinedProperty="_g71qIsWCEdqI1bY5Lwi8Hg" association="_hDbf2MWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4VNodxmEdqEPrOCkNZ5Vg" name="A_collection_reduceAction" memberEnd="_M4LclNxmEdqEPrOCkNZ5Vg _M4VNo9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4VNotxmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4VNo9xmEdqEPrOCkNZ5Vg" type="_M4LcgNxmEdqEPrOCkNZ5Vg" redefinedProperty="_MyENydxmEdqEPrOCkNZ5Vg" association="_M4VNodxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hDbf28WCEdqI1bY5Lwi8Hg" name="A_reducer_reduceAction" memberEnd="_hDIlH8WCEdqI1bY5Lwi8Hg _hDbf3MWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hDbf3MWCEdqI1bY5Lwi8Hg" type="_hDIlE8WCEdqI1bY5Lwi8Hg" association="_hDbf28WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4VNpNxmEdqEPrOCkNZ5Vg" name="A_reducer_reduceAction" memberEnd="_M4LcjNxmEdqEPrOCkNZ5Vg _M4VNpdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4VNpdxmEdqEPrOCkNZ5Vg" type="_M4LcgNxmEdqEPrOCkNZ5Vg" association="_M4VNpNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g-qUgMWCEdqI1bY5Lwi8Hg" name="JoinNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-qUgcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-qUgMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1DQANxmEdqEPrOCkNZ5Vg" name="JoinNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQAdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQANxmEdqEPrOCkNZ5Vg">
<body>A join node has multiple incoming edges and one outgoing edge.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQoMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-qUgMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNptxmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQANxmEdqEPrOCkNZ5Vg">
<body>A join node has multiple incoming edges and one outgoing edge. In CompleteActivities, Join nodes have a Boolean value specification using the names of the incoming edges to specify the conditions under which the join will emit a token.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDlQocWCEdqI1bY5Lwi8Hg" name="one_outgoing_edge" constrainedElement="_g-qUgMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQosWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQocWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4VNp9xmEdqEPrOCkNZ5Vg" name="one_outgoing_edge" constrainedElement="_M1DQANxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNqNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4VNp9xmEdqEPrOCkNZ5Vg">
<body>A join node has one outgoing edge.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDlQo8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4VNqdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.outgoing->size() = 1</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDlQpMWCEdqI1bY5Lwi8Hg" name="incoming_object_flow" constrainedElement="_g-qUgMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQpcWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQpMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4VNqtxmEdqEPrOCkNZ5Vg" name="incoming_object_flow" constrainedElement="_M1DQANxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNq9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4VNqtxmEdqEPrOCkNZ5Vg">
<body>If a join node has an incoming object flow, it must have an outgoing object flow, otherwise, it must have an outgoing control flow.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDlQpsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4VNrNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>(self.incoming.select(e | e.isTypeOf(ObjectFlow)->notEmpty() implies&#xA;&#xA; self.outgoing.isTypeOf(ObjectFlow)) and&#xA;&#xA; (self.incoming.select(e | e.isTypeOf(ObjectFlow)->empty() implies&#xA;&#xA; self.outgoing.isTypeOf(ControlFlow))</body>
+ <body>(self.incoming.select(e | e.isTypeOf(ObjectFlow)->notEmpty() implies&#xD;&#xA; self.outgoing.isTypeOf(ObjectFlow)) and&#xD;&#xA; (self.incoming.select(e | e.isTypeOf(ObjectFlow)->empty() implies&#xD;&#xA; self.outgoing.isTypeOf(ControlFlow))</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-qUgsWCEdqI1bY5Lwi8Hg" general="_g9LGqsWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDlQp8WCEdqI1bY5Lwi8Hg" name="isCombineDuplicate" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQqMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQp8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1DQAtxmEdqEPrOCkNZ5Vg" general="_MzHWnNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4VNrdxmEdqEPrOCkNZ5Vg" name="isCombineDuplicate" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNrtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4VNrdxmEdqEPrOCkNZ5Vg">
<body>Tells whether tokens having objects with the same identity are combined into one by the join.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hDlQqcWCEdqI1bY5Lwi8Hg" value="true"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M4VNr9xmEdqEPrOCkNZ5Vg" value="true"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDlQqsWCEdqI1bY5Lwi8Hg" name="joinSpec" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hELtmsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQq8WCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQqsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4VNsNxmEdqEPrOCkNZ5Vg" name="joinSpec" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M4xSbdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNsdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4VNsNxmEdqEPrOCkNZ5Vg">
<body>A specification giving the conditions under which the join with emit a token. Default is &quot;and&quot;.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDlQrMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDlQrcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4VNstxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4VNs9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hDlQrsWCEdqI1bY5Lwi8Hg" name="DataStoreNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQr8WCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQrsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M4VNtNxmEdqEPrOCkNZ5Vg" name="DataStoreNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNtdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4VNtNxmEdqEPrOCkNZ5Vg">
<body>A data store keeps all tokens that enter it, copying them when they are chosen to move downstream. Incoming tokens containing a particular object replace any tokens in the object node containing that object.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hDlQsMWCEdqI1bY5Lwi8Hg" general="_g-hKfMWCEdqI1bY5Lwi8Hg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4VNttxmEdqEPrOCkNZ5Vg" general="_M05fA9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9LG0MWCEdqI1bY5Lwi8Hg" name="ObjectFlow">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG0cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG0MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzQgY9xmEdqEPrOCkNZ5Vg" name="ObjectFlow">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgZNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgY9xmEdqEPrOCkNZ5Vg">
<body>An object flow models the flow of values to or from object nodes.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LG0sWCEdqI1bY5Lwi8Hg" name="no_actions" constrainedElement="_g9LG0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG08WCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG0sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgZdxmEdqEPrOCkNZ5Vg" name="no_actions" constrainedElement="_MzQgY9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgZtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgZdxmEdqEPrOCkNZ5Vg">
<body>Object flows may not have actions at either end.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LG1MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgZ9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LG1cWCEdqI1bY5Lwi8Hg" name="compatible_types" constrainedElement="_g9LG0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG1sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG1cWCEdqI1bY5Lwi8Hg">
- <body>Object nodes connected by an object flow, with optionally intervening control nodes, must have compatible types. In particular, the downstream object node type must be the same or a supertype of the upstream object node type.
-
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgaNxmEdqEPrOCkNZ5Vg" name="compatible_types" constrainedElement="_MzQgY9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgadxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgaNxmEdqEPrOCkNZ5Vg">
+ <body>Object nodes connected by an object flow, with optionally intervening control nodes, must have compatible types. In particular, the downstream object node type must be the same or a supertype of the upstream object node type.&#xD;
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LG18WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgatxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LG2MWCEdqI1bY5Lwi8Hg" name="same_upper_bounds" constrainedElement="_g9LG0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG2cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG2MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQga9xmEdqEPrOCkNZ5Vg" name="same_upper_bounds" constrainedElement="_MzQgY9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgbNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQga9xmEdqEPrOCkNZ5Vg">
<body>Object nodes connected by an object flow, with optionally intervening control nodes, must have the same upper bounds.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LG2sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgbdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDlQscWCEdqI1bY5Lwi8Hg" name="target" constrainedElement="_g9LG0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQssWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQscWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4VNt9xmEdqEPrOCkNZ5Vg" name="target" constrainedElement="_MzQgY9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNuNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4VNt9xmEdqEPrOCkNZ5Vg">
<body>An edge with constant weight may not target an object node, or lead to an object node downstream with no intervening actions, that has an upper bound less than the weight.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDlQs8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4VNudxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDlQtMWCEdqI1bY5Lwi8Hg" name="transformation_behaviour" constrainedElement="_g9LG0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQtcWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQtMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4VNutxmEdqEPrOCkNZ5Vg" name="transformation_behaviour" constrainedElement="_MzQgY9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNu9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4VNutxmEdqEPrOCkNZ5Vg">
<body>A transformation behavior has one input parameter and one output parameter. The input parameter must be the same as or a supertype of the type of object token coming from the source end. The output parameter must be the same or a subtype of the type of object token expected downstream. The behavior cannot have side effects.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDlQtsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4VNvNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDlQt8WCEdqI1bY5Lwi8Hg" name="selection_behaviour" constrainedElement="_g9LG0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQuMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQt8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4VNvdxmEdqEPrOCkNZ5Vg" name="selection_behaviour" constrainedElement="_MzQgY9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNvtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4VNvdxmEdqEPrOCkNZ5Vg">
<body>An object flow may have a selection behavior only if has an object node as a source.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDlQucWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4VNv9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDlQusWCEdqI1bY5Lwi8Hg" name="input_and_output_parameter" constrainedElement="_g9LG0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQu8WCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQusWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4VNwNxmEdqEPrOCkNZ5Vg" name="input_and_output_parameter" constrainedElement="_MzQgY9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNwdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4VNwNxmEdqEPrOCkNZ5Vg">
<body>A selection behavior has one input parameter and one output parameter. The input parameter must be a bag of elements of the same as or a supertype of the type of source object node. The output parameter must be the same or a subtype of the type of source object node. The behavior cannot have side effects.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDlQvMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4VNwtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDlQvcWCEdqI1bY5Lwi8Hg" name="is_multicast_or_is_multireceive" constrainedElement="_g9LG0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQvsWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQvcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4VNw9xmEdqEPrOCkNZ5Vg" name="is_multicast_or_is_multireceive" constrainedElement="_MzQgY9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNxNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4VNw9xmEdqEPrOCkNZ5Vg">
<body>isMulticast and isMultireceive cannot both be true.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDlQv8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4VNxdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9LG28WCEdqI1bY5Lwi8Hg" general="_g9LGrcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDlQwMWCEdqI1bY5Lwi8Hg" name="isMulticast" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQwcWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQwMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzQgbtxmEdqEPrOCkNZ5Vg" general="_MzQgQNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4VNxtxmEdqEPrOCkNZ5Vg" name="isMulticast" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNx9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4VNxtxmEdqEPrOCkNZ5Vg">
<body>Tells whether the objects in the flow are passed by multicasting.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hDlQwsWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M4VNyNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDlQw8WCEdqI1bY5Lwi8Hg" name="isMultireceive" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQxMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQw8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4VNydxmEdqEPrOCkNZ5Vg" name="isMultireceive" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNytxmEdqEPrOCkNZ5Vg" annotatedElement="_M4VNydxmEdqEPrOCkNZ5Vg">
<body>Tells whether the objects in the flow are gathered from respondents to multicasting.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hDlQxcWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M4VNy9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDlQxsWCEdqI1bY5Lwi8Hg" name="transformation" type="_TUPtYGveEdq4DLWZOhbdEA" association="_hEB8scWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQx8WCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQxsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4VNzNxmEdqEPrOCkNZ5Vg" name="transformation" type="_TUPtYGveEdq4DLWZOhbdEA" association="_M4oInNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VNzdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4VNzNxmEdqEPrOCkNZ5Vg">
<body>Changes or replaces data tokens flowing along edge.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDlQyMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDlQycWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4VNztxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4VNz9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDlQysWCEdqI1bY5Lwi8Hg" name="selection" type="_TUPtYGveEdq4DLWZOhbdEA" association="_hEB8vsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQy8WCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQysWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4VN0NxmEdqEPrOCkNZ5Vg" name="selection" type="_TUPtYGveEdq4DLWZOhbdEA" association="_M4oIqdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4VN0dxmEdqEPrOCkNZ5Vg" annotatedElement="_M4VN0NxmEdqEPrOCkNZ5Vg">
<body>Selects tokens from a source object node.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDlQzMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDlQzcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4VN0txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4VN09xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9LGoMWCEdqI1bY5Lwi8Hg" name="ObjectNode" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGocWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGoMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzHWktxmEdqEPrOCkNZ5Vg" name="ObjectNode" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWk9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWktxmEdqEPrOCkNZ5Vg">
<body>An object node is an activity node that indicates an instance of a particular classifier, possibly in a particular state, may be available at a particular point in the activity. Object nodes can be used in a variety of ways, depending on where objects are flowing from and to, as described in the semantics section.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQ1sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGoMWCEdqI1bY5Lwi8Hg">
- <body>An object node is an activity node that indicates an instance of a particular classifier, possibly in a particular state, may be available at a particular point in the activity. Object nodes can be used in a variety of ways, depending on where objects are flowing from and to, as described in the semantics section.
-
-Complete object nodes add support for token selection, limitation on the number of tokens, specifying the state required for tokens, and carrying control values.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXeNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWktxmEdqEPrOCkNZ5Vg">
+ <body>An object node is an activity node that indicates an instance of a particular classifier, possibly in a particular state, may be available at a particular point in the activity. Object nodes can be used in a variety of ways, depending on where objects are flowing from and to, as described in the semantics section.&#xD;
+Complete object nodes add support for token selection, limitation on the number of tokens, specifying the state required for tokens, and carrying control values.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LGosWCEdqI1bY5Lwi8Hg" name="object_flow_edges" constrainedElement="_g9LGoMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGo8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGosWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzHWlNxmEdqEPrOCkNZ5Vg" name="object_flow_edges" constrainedElement="_MzHWktxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWldxmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWlNxmEdqEPrOCkNZ5Vg">
<body>All edges coming into or going out of object nodes must be object flow edges.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LGpMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzHWltxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LGpcWCEdqI1bY5Lwi8Hg" name="not_unique" constrainedElement="_g9LGoMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGpsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGpcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzHWl9xmEdqEPrOCkNZ5Vg" name="not_unique" constrainedElement="_MzHWktxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWmNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWl9xmEdqEPrOCkNZ5Vg">
<body>Object nodes are not unique typed elements</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LGp8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzHWmdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>isUnique = false</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDlQ18WCEdqI1bY5Lwi8Hg" name="selection_behavior" constrainedElement="_g9LGoMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQ2MWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQ18WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4eXedxmEdqEPrOCkNZ5Vg" name="selection_behavior" constrainedElement="_MzHWktxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXetxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXedxmEdqEPrOCkNZ5Vg">
<body>If an object node has a selection behavior, then the ordering of the object node is ordered, and vice versa.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDlQ2cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4eXe9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDlQ2sWCEdqI1bY5Lwi8Hg" name="input_output_parameter" constrainedElement="_g9LGoMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQ28WCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQ2sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4eXfNxmEdqEPrOCkNZ5Vg" name="input_output_parameter" constrainedElement="_MzHWktxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXfdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXfNxmEdqEPrOCkNZ5Vg">
<body>A selection behavior has one input parameter and one output parameter. The input parameter must be a bag of elements of the same type as the object node or a supertype of the type of object node. The output parameter must be the same or a subtype of the type of object node. The behavior cannot have side effects.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDlQ3MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4eXftxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9LGqMWCEdqI1bY5Lwi8Hg" general="_g7-z5cWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9LGqcWCEdqI1bY5Lwi8Hg" general="_g1Ru6cWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDlQ3cWCEdqI1bY5Lwi8Hg" name="ordering" type="_hEB8mMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQ3sWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQ3cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzHWmtxmEdqEPrOCkNZ5Vg" general="_MyN-cNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzHWm9xmEdqEPrOCkNZ5Vg" general="_MsjbeNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXf9xmEdqEPrOCkNZ5Vg" name="ordering" type="_M4oIg9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXgNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXf9xmEdqEPrOCkNZ5Vg">
<body>Tells whether and how the tokens in the object node are ordered for selection to traverse edges outgoing from the object node.</body>
</ownedComment>
- <defaultValue xmi:type="uml:InstanceValue" xmi:id="_hDlQ38WCEdqI1bY5Lwi8Hg" instance="_hEB8ncWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_M4eXgdxmEdqEPrOCkNZ5Vg" instance="_M4oIiNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDlQ4MWCEdqI1bY5Lwi8Hg" name="isControlType" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQ4cWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQ4MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXgtxmEdqEPrOCkNZ5Vg" name="isControlType" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXg9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXgtxmEdqEPrOCkNZ5Vg">
<body>Tells whether the type of the object node is to be treated as control.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hDlQ4sWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M4eXhNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDlQ48WCEdqI1bY5Lwi8Hg" name="upperBound" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hEB8p8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQ5MWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQ48WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXhdxmEdqEPrOCkNZ5Vg" name="upperBound" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M4oIktxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXhtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXhdxmEdqEPrOCkNZ5Vg">
<body>The maximum number of tokens allowed in the node. Objects cannot flow into the node if the upper bound is reached.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDlQ5cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDlQ5sWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eXh9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eXiNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDlQ58WCEdqI1bY5Lwi8Hg" name="inState" type="_hA5wEMWCEdqI1bY5Lwi8Hg" association="_hEB8rMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQ6MWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQ58WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXidxmEdqEPrOCkNZ5Vg" name="inState" type="_M2sOwNxmEdqEPrOCkNZ5Vg" association="_M4oIl9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXitxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXidxmEdqEPrOCkNZ5Vg">
<body>The required states of the object available at this point in the activity.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDlQ6cWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDlQ6sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eXi9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eXjNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDlQ68WCEdqI1bY5Lwi8Hg" name="selection" type="_TUPtYGveEdq4DLWZOhbdEA" association="_hEB8wsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQ7MWCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQ68WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXjdxmEdqEPrOCkNZ5Vg" name="selection" type="_TUPtYGveEdq4DLWZOhbdEA" association="_M4oIrdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXjtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXjdxmEdqEPrOCkNZ5Vg">
<body>Selects tokens for outgoing edges.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDlQ7cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDlQ7sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eXj9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eXkNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hDvBoMWCEdqI1bY5Lwi8Hg" name="ParameterSet">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDvBocWCEdqI1bY5Lwi8Hg" annotatedElement="_hDvBoMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M4eXkdxmEdqEPrOCkNZ5Vg" name="ParameterSet">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXktxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXkdxmEdqEPrOCkNZ5Vg">
<body>An parameter set acts as a complete set of inputs or outputs to a behavior, exclusive of other parameter sets on the behavior.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDvBosWCEdqI1bY5Lwi8Hg" name="same_parameterized_entity" constrainedElement="_hDvBoMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDvBo8WCEdqI1bY5Lwi8Hg" annotatedElement="_hDvBosWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4eXk9xmEdqEPrOCkNZ5Vg" name="same_parameterized_entity" constrainedElement="_M4eXkdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXlNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXk9xmEdqEPrOCkNZ5Vg">
<body>The parameters in a parameter set must all be inputs or all be outputs of the same parameterized entity, and the parameter set is owned by that entity.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDvBpMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4eXldxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDvBpcWCEdqI1bY5Lwi8Hg" name="input" constrainedElement="_hDvBoMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDvBpsWCEdqI1bY5Lwi8Hg" annotatedElement="_hDvBpcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4eXltxmEdqEPrOCkNZ5Vg" name="input" constrainedElement="_M4eXkdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXl9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXltxmEdqEPrOCkNZ5Vg">
<body>If a behavior has input parameters that are in a parameter set, then any inputs that are not in a parameter set must be streaming. Same for output parameters.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDvBp8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4eXmNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDvBqMWCEdqI1bY5Lwi8Hg" name="two_parameter_sets" constrainedElement="_hDvBoMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDvBqcWCEdqI1bY5Lwi8Hg" annotatedElement="_hDvBqMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4eXmdxmEdqEPrOCkNZ5Vg" name="two_parameter_sets" constrainedElement="_M4eXkdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXmtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXmdxmEdqEPrOCkNZ5Vg">
<body>Two parameter sets cannot have exactly the same set of parameters.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDvBqsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4eXm9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hDvBq8WCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDvBrMWCEdqI1bY5Lwi8Hg" name="parameter" type="_KyaPMGveEdq4DLWZOhbdEA" association="_hEB8sMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDvBrcWCEdqI1bY5Lwi8Hg" annotatedElement="_hDvBrMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4eXnNxmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXndxmEdqEPrOCkNZ5Vg" name="parameter" type="_KyaPMGveEdq4DLWZOhbdEA" association="_M4oIm9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXntxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXndxmEdqEPrOCkNZ5Vg">
<body>Parameters in the parameter set.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDvBrsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDvBr8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eXn9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eXoNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDvBsMWCEdqI1bY5Lwi8Hg" name="condition" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hEB8xsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDvBscWCEdqI1bY5Lwi8Hg" annotatedElement="_hDvBsMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXodxmEdqEPrOCkNZ5Vg" name="condition" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M4xSYNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXotxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXodxmEdqEPrOCkNZ5Vg">
<body>Constraint that should be satisfied for the owner of the parameters in an input parameter set to start execution using the values provided for those parameters, or the owner of the parameters in an output parameter set to end execution providing the values for those parameters, if all preconditions and conditions on input parameter sets were satisfied.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDvBssWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDvBs8WCEdqI1bY5Lwi8Hg"/>
- </ownedAttribute>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g71qNsWCEdqI1bY5Lwi8Hg" name="Activity">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g71qN8WCEdqI1bY5Lwi8Hg" annotatedElement="_g71qNsWCEdqI1bY5Lwi8Hg">
- <body>An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked.
-
-
-
-Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:
-
-- occurrences of primitive functions, such as arithmetic functions.
-
-- invocations of behavior, such as activities.
-
-- communication actions, such as sending of signals.
-
-- manipulations of objects, such as reading or writing attributes or associations.
-
-
-
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eXo9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eXpNxmEdqEPrOCkNZ5Vg"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_MyEN3dxmEdqEPrOCkNZ5Vg" name="Activity">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyEN3txmEdqEPrOCkNZ5Vg" annotatedElement="_MyEN3dxmEdqEPrOCkNZ5Vg">
+ <body>An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked. &#xD;
+&#xD;
+Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:&#xD;
+- occurrences of primitive functions, such as arithmetic functions.&#xD;
+- invocations of behavior, such as activities.&#xD;
+- communication actions, such as sending of signals.&#xD;
+- manipulations of objects, such as reading or writing attributes or associations.&#xD;
+&#xD;
Actions have no further decomposition in the activity containing them. However, the execution of a single action may induce the execution of many other actions. For example, a call action invokes an operation which is implemented by an activity containing actions that execute before the call action completes.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g71qOMWCEdqI1bY5Lwi8Hg" name="no_supergroups" constrainedElement="_g71qNsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g71qOcWCEdqI1bY5Lwi8Hg" annotatedElement="_g71qOMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MyEN39xmEdqEPrOCkNZ5Vg" name="no_supergroups" constrainedElement="_MyEN3dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyEN4NxmEdqEPrOCkNZ5Vg" annotatedElement="_MyEN39xmEdqEPrOCkNZ5Vg">
<body>The groups of an activity have no supergroups.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g71qOsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MyEN4dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9U3osWCEdqI1bY5Lwi8Hg" name="activity_parameter_node" constrainedElement="_g71qNsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9U3o8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9U3osWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgsNxmEdqEPrOCkNZ5Vg" name="activity_parameter_node" constrainedElement="_MyEN3dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgsdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgsNxmEdqEPrOCkNZ5Vg">
<body>The nodes of the activity must include one ActivityParameterNode for each parameter.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9U3pMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgstxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9U3pcWCEdqI1bY5Lwi8Hg" name="autonomous" constrainedElement="_g71qNsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9U3psWCEdqI1bY5Lwi8Hg" annotatedElement="_g9U3pcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgs9xmEdqEPrOCkNZ5Vg" name="autonomous" constrainedElement="_MyEN3dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgtNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgs9xmEdqEPrOCkNZ5Vg">
<body>An activity cannot be autonomous and have a classifier or behavioral feature context at the same time.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9U3p8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgtdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g71qO8WCEdqI1bY5Lwi8Hg" general="_TUPtYGveEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8Ik6sWCEdqI1bY5Lwi8Hg" name="structuredNode" type="_g7-0EMWCEdqI1bY5Lwi8Hg" isReadOnly="true" isDerived="true" aggregation="composite" subsettedProperty="_g71qPMWCEdqI1bY5Lwi8Hg _g71qQMWCEdqI1bY5Lwi8Hg" association="_g8Ru4sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ik68WCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ik6sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyEN4txmEdqEPrOCkNZ5Vg" general="_TUPtYGveEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-6dxmEdqEPrOCkNZ5Vg" name="structuredNode" type="_MyN-m9xmEdqEPrOCkNZ5Vg" isReadOnly="true" isDerived="true" aggregation="composite" subsettedProperty="_MyEN49xmEdqEPrOCkNZ5Vg _MyEN59xmEdqEPrOCkNZ5Vg" association="_MyXvrdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-6txmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-6dxmEdqEPrOCkNZ5Vg">
<body>Top-level structured nodes in the activity.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ik7MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ik7cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-69xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-7NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8Ik7sWCEdqI1bY5Lwi8Hg" name="variable" type="_g7-z-8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g8Ru5cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ik78WCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ik7sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-7dxmEdqEPrOCkNZ5Vg" name="variable" type="_MyN-htxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_MyXvsNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-7txmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-7dxmEdqEPrOCkNZ5Vg">
<body>Top-level variables in the activity.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ik8MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ik8cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-79xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-8NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g71qPMWCEdqI1bY5Lwi8Hg" name="node" visibility="public" type="_g7-z5cWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g7-z8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g71qPcWCEdqI1bY5Lwi8Hg" annotatedElement="_g71qPMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyEN49xmEdqEPrOCkNZ5Vg" name="node" visibility="public" type="_MyN-cNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MyN-e9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyEN5NxmEdqEPrOCkNZ5Vg" annotatedElement="_MyEN49xmEdqEPrOCkNZ5Vg">
<body>Nodes coordinated by the activity.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ik9MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ik9cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-89xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-9NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9U3qMWCEdqI1bY5Lwi8Hg" name="isReadOnly" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9U3qcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9U3qMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzQgttxmEdqEPrOCkNZ5Vg" name="isReadOnly" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgt9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgttxmEdqEPrOCkNZ5Vg">
<body>If true, this activity must not make any changes to variables outside the activity or to objects. (This is an assertion, not an executable property. It may be used by an execution engine to optimize model execution. If the assertion is violated by the action, then the model is ill-formed.) The default is false (an activity may make nonlocal changes).</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g9U3qsWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MzQguNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9U3q8WCEdqI1bY5Lwi8Hg" name="edge" type="_g9LGrcWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g9U3r8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9U3rMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9U3q8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzQgudxmEdqEPrOCkNZ5Vg" name="edge" type="_MzQgQNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MzQgvdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgutxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgudxmEdqEPrOCkNZ5Vg">
<body>Edges expressing flow between nodes of the activity.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9U3rcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9U3rsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzQgu9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzQgvNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-qUh8WCEdqI1bY5Lwi8Hg" name="partition" type="_g-hKf8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g71qQMWCEdqI1bY5Lwi8Hg" association="_g-0FYMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-qUiMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-qUh8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1DQB9xmEdqEPrOCkNZ5Vg" name="partition" type="_M05fBtxmEdqEPrOCkNZ5Vg" subsettedProperty="_MyEN59xmEdqEPrOCkNZ5Vg" association="_M1DQHtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQCNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQB9xmEdqEPrOCkNZ5Vg">
<body>Top-level partitions in the activity.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-qUicWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-qUisWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1DQCdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1DQCtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g71qQMWCEdqI1bY5Lwi8Hg" name="group" visibility="public" type="_g7-z0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g7-z88WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g71qQcWCEdqI1bY5Lwi8Hg" annotatedElement="_g71qQMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyEN59xmEdqEPrOCkNZ5Vg" name="group" visibility="public" type="_MyEN69xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MyN-ftxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyEN6NxmEdqEPrOCkNZ5Vg" annotatedElement="_MyEN59xmEdqEPrOCkNZ5Vg">
<body>Top-level groups in the activity.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-qUi8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-qUjMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1DQC9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1DQDNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDvBtMWCEdqI1bY5Lwi8Hg" name="isSingleExecution" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDvBtcWCEdqI1bY5Lwi8Hg" annotatedElement="_hDvBtMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXpdxmEdqEPrOCkNZ5Vg" name="isSingleExecution" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXptxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXpdxmEdqEPrOCkNZ5Vg">
<body>If true, all invocations of the activity are handled by the same execution.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hDvBtsWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M4eXp9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_KyaPMGveEdq4DLWZOhbdEA" name="Parameter">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14L0MWCEdqI1bY5Lwi8Hg" annotatedElement="_KyaPMGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHhNxmEdqEPrOCkNZ5Vg" annotatedElement="_KyaPMGveEdq4DLWZOhbdEA">
<body>A parameter is a kind of typed element in order to allow the specification of an optional multiplicity on parameters. In addition, it supports the specification of an optional default value.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiQcWCEdqI1bY5Lwi8Hg" annotatedElement="_KyaPMGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y0dxmEdqEPrOCkNZ5Vg" annotatedElement="_KyaPMGveEdq4DLWZOhbdEA">
<body>A parameter is a specification of an argument used to pass information into or out of an invocation of a behavioral feature. It has a type, and may have a multiplicity and an optional default value.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9B81cWCEdqI1bY5Lwi8Hg" annotatedElement="_KyaPMGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWddxmEdqEPrOCkNZ5Vg" annotatedElement="_KyaPMGveEdq4DLWZOhbdEA">
<body>Parameters are allowed to be treated as connectable elements.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDvBt8WCEdqI1bY5Lwi8Hg" annotatedElement="_KyaPMGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXqNxmEdqEPrOCkNZ5Vg" annotatedElement="_KyaPMGveEdq4DLWZOhbdEA">
<body>Parameters are extended in complete activities to add support for streaming, exceptions, and parameter sets.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9B81sWCEdqI1bY5Lwi8Hg" name="connector_end" constrainedElement="_KyaPMGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9B818WCEdqI1bY5Lwi8Hg" annotatedElement="_g9B81sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzHWdtxmEdqEPrOCkNZ5Vg" name="connector_end" constrainedElement="_KyaPMGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWd9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWdtxmEdqEPrOCkNZ5Vg">
<body>A parameter may only be associated with a connector end within the context of a collaboration.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9B82MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzHWeNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.end.notEmpty() implies self.collaboration.notEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDvBuMWCEdqI1bY5Lwi8Hg" name="stream_and_exception" constrainedElement="_KyaPMGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDvBucWCEdqI1bY5Lwi8Hg" annotatedElement="_hDvBuMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4eXqdxmEdqEPrOCkNZ5Vg" name="stream_and_exception" constrainedElement="_KyaPMGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXqtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXqdxmEdqEPrOCkNZ5Vg">
<body>A parameter cannot be a stream and exception at the same time.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDvBusWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4eXq9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDvBu8WCEdqI1bY5Lwi8Hg" name="not_exception" constrainedElement="_KyaPMGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDvBvMWCEdqI1bY5Lwi8Hg" annotatedElement="_hDvBu8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4eXrNxmEdqEPrOCkNZ5Vg" name="not_exception" constrainedElement="_KyaPMGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXrdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXrNxmEdqEPrOCkNZ5Vg">
<body>An input parameter cannot be an exception.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDvBvcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4eXrtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDvBvsWCEdqI1bY5Lwi8Hg" name="reentrant_behaviors" constrainedElement="_KyaPMGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDvBv8WCEdqI1bY5Lwi8Hg" annotatedElement="_hDvBvsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4eXr9xmEdqEPrOCkNZ5Vg" name="reentrant_behaviors" constrainedElement="_KyaPMGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXsNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXr9xmEdqEPrOCkNZ5Vg">
<body>Reentrant behaviors cannot have stream parameters.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDvBwMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4eXsdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hDvBwcWCEdqI1bY5Lwi8Hg" name="in_and_out" constrainedElement="_KyaPMGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDvBwsWCEdqI1bY5Lwi8Hg" annotatedElement="_hDvBwcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4eXstxmEdqEPrOCkNZ5Vg" name="in_and_out" constrainedElement="_KyaPMGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXs9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXstxmEdqEPrOCkNZ5Vg">
<body>Only in and inout parameters may have a delete effect. Only out, inout, and return parameters may have a create effect.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hDvBw8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4eXtNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g14L0sWCEdqI1bY5Lwi8Hg" general="_Gjgl0GveEdq4DLWZOhbdEA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9B82cWCEdqI1bY5Lwi8Hg" general="_g8ubCcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g14L18WCEdqI1bY5Lwi8Hg" name="direction" visibility="public" type="_g2LG48WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14L2MWCEdqI1bY5Lwi8Hg" annotatedElement="_g14L18WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtAHhtxmEdqEPrOCkNZ5Vg" general="_Gjgl0GveEdq4DLWZOhbdEA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzHWedxmEdqEPrOCkNZ5Vg" general="_My9lWNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHi9xmEdqEPrOCkNZ5Vg" name="direction" visibility="public" type="_MtTCa9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHjNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHi9xmEdqEPrOCkNZ5Vg">
<body>Indicates whether a parameter is being sent into or out of a behavioral element.</body>
</ownedComment>
- <defaultValue xmi:type="uml:InstanceValue" xmi:id="_g5JiQsWCEdqI1bY5Lwi8Hg" instance="_g2LG5cWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_Mv1Y0txmEdqEPrOCkNZ5Vg" instance="_MtTCbdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g14L08WCEdqI1bY5Lwi8Hg" name="default" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14L1MWCEdqI1bY5Lwi8Hg" annotatedElement="_g14L08WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHh9xmEdqEPrOCkNZ5Vg" name="default" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHiNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHh9xmEdqEPrOCkNZ5Vg">
<body>Specifies a String that represents a value to be used when no argument is supplied for the Parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5JiQ8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5JiRMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv1Y09xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv1Y1NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5JiRcWCEdqI1bY5Lwi8Hg" name="defaultValue" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g68SCcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiRsWCEdqI1bY5Lwi8Hg" annotatedElement="_g5JiRcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mv1Y1dxmEdqEPrOCkNZ5Vg" name="defaultValue" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MxUmldxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y1txmEdqEPrOCkNZ5Vg" annotatedElement="_Mv1Y1dxmEdqEPrOCkNZ5Vg">
<body>Specifies a ValueSpecification that represents a value to be used when no argument is supplied for the Parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5JiR8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5JiSMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv1Y19xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv1Y2NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g14L2sWCEdqI1bY5Lwi8Hg" name="operation" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_g2eB6sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14L28WCEdqI1bY5Lwi8Hg" annotatedElement="_g14L2sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHjtxmEdqEPrOCkNZ5Vg" name="operation" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_MtmkgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHj9xmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHjtxmEdqEPrOCkNZ5Vg">
<body>References the Operation for which this is a formal parameter.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5JiScWCEdqI1bY5Lwi8Hg" annotatedElement="_g14L2sWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1Y2dxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHjtxmEdqEPrOCkNZ5Vg">
<body>References the Operation owning this parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5JiSsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5JiS8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv1Y2txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv1Y29xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hD4LkMWCEdqI1bY5Lwi8Hg" name="isException" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4LkcWCEdqI1bY5Lwi8Hg" annotatedElement="_hD4LkMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXtdxmEdqEPrOCkNZ5Vg" name="isException" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXttxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXtdxmEdqEPrOCkNZ5Vg">
<body>Tells whether an output parameter may emit a value to the exclusion of the other outputs.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hD4LksWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M4eXt9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hD4Lk8WCEdqI1bY5Lwi8Hg" name="isStream" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4LlMWCEdqI1bY5Lwi8Hg" annotatedElement="_hD4Lk8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXuNxmEdqEPrOCkNZ5Vg" name="isStream" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXudxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXuNxmEdqEPrOCkNZ5Vg">
<body>Tells whether an input parameter may accept values while its behavior is executing, or whether an output parameter post values while the behavior is executing.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hD4LlcWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M4eXutxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hD4LlsWCEdqI1bY5Lwi8Hg" name="effect" type="_hEB8nsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4Ll8WCEdqI1bY5Lwi8Hg" annotatedElement="_hD4LlsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXu9xmEdqEPrOCkNZ5Vg" name="effect" type="_M4oIidxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXvNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXu9xmEdqEPrOCkNZ5Vg">
<body>Specifies the effect that the owner of the parameter has on values passed in or out of the parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hD4LmMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hD4LmcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eXvdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eXvtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hD4LmsWCEdqI1bY5Lwi8Hg" name="parameterSet" type="_hDvBoMWCEdqI1bY5Lwi8Hg" association="_hEB8sMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4Lm8WCEdqI1bY5Lwi8Hg" annotatedElement="_hD4LmsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXv9xmEdqEPrOCkNZ5Vg" name="parameterSet" type="_M4eXkdxmEdqEPrOCkNZ5Vg" association="_M4oIm9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXwNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXv9xmEdqEPrOCkNZ5Vg">
<body>The parameter sets containing the parameter. See ParameterSet.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hD4LnMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hD4LncWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eXwdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eXwtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_7UJKkFYJEdqrn7iZ0eqieg" name="getDefault" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_-PwAEFYJEdqrn7iZ0eqieg" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return">
@@ -11009,234 +10788,231 @@ Actions have no further decomposition in the activity containing them. However,
</ownedOperation>
<ownedOperation xmi:type="uml:Operation" xmi:id="_kK3ZdK6_EdqjppZik4kD8A" name="setNullDefaultValue"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g71p8MWCEdqI1bY5Lwi8Hg" name="Action" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g71p8cWCEdqI1bY5Lwi8Hg" annotatedElement="_g71p8MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MyENl9xmEdqEPrOCkNZ5Vg" name="Action" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENmNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyENl9xmEdqEPrOCkNZ5Vg">
<body>An action is a named element that is the fundamental unit of executable functionality. The execution of an action represents some transformation or processing in the modeled system, be it a computer system or otherwise.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-z48WCEdqI1bY5Lwi8Hg" annotatedElement="_g71p8MWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyEN_txmEdqEPrOCkNZ5Vg" annotatedElement="_MyENl9xmEdqEPrOCkNZ5Vg">
<body>An action may have sets of incoming and outgoing activity edges that specify control flow and data flow from and to other nodes. An action will not begin execution until all of its input conditions are satisfied. The completion of the execution of an action may enable the execution of a set of successor nodes and actions that take their inputs from the outputs of the action.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4LnsWCEdqI1bY5Lwi8Hg" annotatedElement="_g71p8MWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXw9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyENl9xmEdqEPrOCkNZ5Vg">
<body>An action may have sets of incoming and outgoing activity edges that specify control flow and data flow from and to other nodes. An action will not begin execution until all of its input conditions are satisfied. The completion of the execution of an action may enable the execution of a set of successor nodes and actions that take their inputs from the outputs of the action. In CompleteActivities, action is extended to have pre- and postconditions.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8IlDMWCEdqI1bY5Lwi8Hg" general="_g8IlAsWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g71p88WCEdqI1bY5Lwi8Hg" name="output" type="_g7r5D8WCEdqI1bY5Lwi8Hg" isOrdered="true" isReadOnly="true" isDerived="true" isDerivedUnion="true" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g71qG8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g71p9MWCEdqI1bY5Lwi8Hg" annotatedElement="_g71p88WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyXvgtxmEdqEPrOCkNZ5Vg" general="_MyXveNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyENmtxmEdqEPrOCkNZ5Vg" name="output" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" isOrdered="true" isReadOnly="true" isDerived="true" isDerivedUnion="true" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MyENwtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENm9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyENmtxmEdqEPrOCkNZ5Vg">
<body>The ordered set of output pins connected to the Action. The action places its results onto pins in this set.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g71p9cWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g71p9sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENnNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENndxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g71p98WCEdqI1bY5Lwi8Hg" name="input" type="_g7r5EsWCEdqI1bY5Lwi8Hg" isOrdered="true" isReadOnly="true" isDerived="true" isDerivedUnion="true" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g71qIMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g71p-MWCEdqI1bY5Lwi8Hg" annotatedElement="_g71p98WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyENntxmEdqEPrOCkNZ5Vg" name="input" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" isOrdered="true" isReadOnly="true" isDerived="true" isDerivedUnion="true" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MyENx9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENn9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyENntxmEdqEPrOCkNZ5Vg">
<body>The ordered set of input pins connected to the Action. These are among the total set of inputs.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g71p-cWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g71p-sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENoNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENodxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g71p-8WCEdqI1bY5Lwi8Hg" name="context" type="_6UV2QGwJEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" association="_g71qKcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g71p_MWCEdqI1bY5Lwi8Hg" annotatedElement="_g71p-8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyENotxmEdqEPrOCkNZ5Vg" name="context" type="_6UV2QGwJEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" association="_MyEN0NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyENo9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyENotxmEdqEPrOCkNZ5Vg">
<body>The classifier that owns the behavior of which this action is a part.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g71p_cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g71p_sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyENpNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyENpdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hD4Ln8WCEdqI1bY5Lwi8Hg" name="localPrecondition" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hEB8tcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4LoMWCEdqI1bY5Lwi8Hg" annotatedElement="_hD4Ln8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXxNxmEdqEPrOCkNZ5Vg" name="localPrecondition" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M4oIoNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXxdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXxNxmEdqEPrOCkNZ5Vg">
<body>Constraint that must be satisfied when execution is started.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hD4LocWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hD4LosWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eXxtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eXx9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hD4Lo8WCEdqI1bY5Lwi8Hg" name="localPostcondition" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hEB8uMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4LpMWCEdqI1bY5Lwi8Hg" annotatedElement="_hD4Lo8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXyNxmEdqEPrOCkNZ5Vg" name="localPostcondition" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M4oIo9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXydxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXyNxmEdqEPrOCkNZ5Vg">
<body>Constraint that must be satisfied when executed is completed.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hD4LpcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hD4LpsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eXytxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eXy9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hD4Lp8WCEdqI1bY5Lwi8Hg" name="InterruptibleActivityRegion">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4LqMWCEdqI1bY5Lwi8Hg" annotatedElement="_hD4Lp8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M4eXzNxmEdqEPrOCkNZ5Vg" name="InterruptibleActivityRegion">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXzdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXzNxmEdqEPrOCkNZ5Vg">
<body>An interruptible region contains activity nodes. When a token leaves an interruptible region via edges designated by the region as interrupting edges, all tokens and behaviors in the region are terminated.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hD4LqcWCEdqI1bY5Lwi8Hg" name="interrupting_edges" constrainedElement="_hD4Lp8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4LqsWCEdqI1bY5Lwi8Hg" annotatedElement="_hD4LqcWCEdqI1bY5Lwi8Hg">
- <body>Interrupting edges of a region must have their source node in the region and their target node outside the region in the same activity containing the region.
-
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4eXztxmEdqEPrOCkNZ5Vg" name="interrupting_edges" constrainedElement="_M4eXzNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXz9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXztxmEdqEPrOCkNZ5Vg">
+ <body>Interrupting edges of a region must have their source node in the region and their target node outside the region in the same activity containing the region.&#xD;
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hD4Lq8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4eX0NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hD4LrMWCEdqI1bY5Lwi8Hg" general="_g7-z0MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hD4LrcWCEdqI1bY5Lwi8Hg" name="interruptingEdge" type="_g9LGrcWCEdqI1bY5Lwi8Hg" association="_hEB8u8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4LrsWCEdqI1bY5Lwi8Hg" annotatedElement="_hD4LrcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4eX0dxmEdqEPrOCkNZ5Vg" general="_MyEN69xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eX0txmEdqEPrOCkNZ5Vg" name="interruptingEdge" type="_MzQgQNxmEdqEPrOCkNZ5Vg" association="_M4oIptxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eX09xmEdqEPrOCkNZ5Vg" annotatedElement="_M4eX0txmEdqEPrOCkNZ5Vg">
<body>The edges leaving the region that will abort other tokens flowing in the region.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hD4Lr8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hD4LsMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eX1NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eX1dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hD4LscWCEdqI1bY5Lwi8Hg" name="node" type="_g7-z5cWCEdqI1bY5Lwi8Hg" subsettedProperty="_g7-z08WCEdqI1bY5Lwi8Hg" association="_hEB8vMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4LssWCEdqI1bY5Lwi8Hg" annotatedElement="_hD4LscWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eX1txmEdqEPrOCkNZ5Vg" name="node" type="_MyN-cNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MyEN7txmEdqEPrOCkNZ5Vg" association="_M4oIp9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eX19xmEdqEPrOCkNZ5Vg" annotatedElement="_M4eX1txmEdqEPrOCkNZ5Vg">
<body>Nodes immediately contained in the group.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hD4Ls8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hD4LtMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eX2NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eX2dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7-z5cWCEdqI1bY5Lwi8Hg" name="ActivityNode" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LHC8WCEdqI1bY5Lwi8Hg" annotatedElement="_g7-z5cWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MyN-cNxmEdqEPrOCkNZ5Vg" name="ActivityNode" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgntxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-cNxmEdqEPrOCkNZ5Vg">
<body>An activity node is an abstract class for the steps of an activity. It covers executable nodes, control nodes, and object nodes. Nodes can be replaced in generalization.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-z5sWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-z5cWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-cdxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-cNxmEdqEPrOCkNZ5Vg">
<body>An activity node is an abstract class for the steps of an activity. It covers executable nodes, control nodes, and object nodes.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4LtcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-z5cWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eX2txmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-cNxmEdqEPrOCkNZ5Vg">
<body>An activity node is an abstract class for the steps of an activity. It covers executable nodes, control nodes, and object nodes. Nodes can be contained in interruptible regions.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g8Ik9sWCEdqI1bY5Lwi8Hg" name="owned_structured_node" constrainedElement="_g7-z5cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ik98WCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ik9sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MyN-9dxmEdqEPrOCkNZ5Vg" name="owned_structured_node" constrainedElement="_MyN-cNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-9txmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-9dxmEdqEPrOCkNZ5Vg">
<body>Activity nodes may be owned by at most one structured node.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g8Ik-MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MyN-99xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LHDMWCEdqI1bY5Lwi8Hg" name="owned" constrainedElement="_g7-z5cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LHDcWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LHDMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgn9xmEdqEPrOCkNZ5Vg" name="owned" constrainedElement="_MyN-cNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgoNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgn9xmEdqEPrOCkNZ5Vg">
<body>Activity nodes can only be owned by activities or groups.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LHDsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgodxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8Ik-cWCEdqI1bY5Lwi8Hg" general="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8Ik-sWCEdqI1bY5Lwi8Hg" name="inStructuredNode" type="_g7-0EMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g7-z7MWCEdqI1bY5Lwi8Hg" association="_g8IlE8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ik-8WCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ik-sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyN--NxmEdqEPrOCkNZ5Vg" general="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyXvcNxmEdqEPrOCkNZ5Vg" name="inStructuredNode" type="_MyN-m9xmEdqEPrOCkNZ5Vg" subsettedProperty="_MyN-d9xmEdqEPrOCkNZ5Vg" association="_MyXvidxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyXvcdxmEdqEPrOCkNZ5Vg" annotatedElement="_MyXvcNxmEdqEPrOCkNZ5Vg">
<body>Structured activity node containing the node.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ik_MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ik_cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyXvctxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyXvc9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-z6MWCEdqI1bY5Lwi8Hg" name="activity" visibility="public" type="_g71qNsWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g7-z8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-z6cWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-z6MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-c9xmEdqEPrOCkNZ5Vg" name="activity" visibility="public" type="_MyEN3dxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MyN-e9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-dNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-c9xmEdqEPrOCkNZ5Vg">
<body>Activity containing the node.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8IlAMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8IlAcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyXvdtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyXvd9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9LHD8WCEdqI1bY5Lwi8Hg" name="outgoing" type="_g9LGrcWCEdqI1bY5Lwi8Hg" association="_g9U3scWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LHEMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LHD8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzQgotxmEdqEPrOCkNZ5Vg" name="outgoing" type="_MzQgQNxmEdqEPrOCkNZ5Vg" association="_MzaRQNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgo9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgotxmEdqEPrOCkNZ5Vg">
<body>Edges that have the node as source.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9LHEcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9LHEsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzQgpNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzQgpdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9LHE8WCEdqI1bY5Lwi8Hg" name="incoming" type="_g9LGrcWCEdqI1bY5Lwi8Hg" association="_g9U3ssWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LHFMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LHE8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzQgptxmEdqEPrOCkNZ5Vg" name="incoming" type="_MzQgQNxmEdqEPrOCkNZ5Vg" association="_MzaRQdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgp9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgptxmEdqEPrOCkNZ5Vg">
<body>Edges that have the node as target.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9LHFcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9LHFsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzQgqNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzQgqdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9LHF8WCEdqI1bY5Lwi8Hg" name="redefinedNode" type="_g7-z5cWCEdqI1bY5Lwi8Hg" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_g9U3tsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LHGMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LHF8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzQgqtxmEdqEPrOCkNZ5Vg" name="redefinedNode" type="_MyN-cNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_MzaRRdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgq9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgqtxmEdqEPrOCkNZ5Vg">
<body>Inherited nodes replaced by this node in a specialization of the activity.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9LHGcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9LHGsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzQgrNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzQgrdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-hKtMWCEdqI1bY5Lwi8Hg" name="inPartition" type="_g-hKf8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g7-z7MWCEdqI1bY5Lwi8Hg" association="_g-qUj8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKtcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKtMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M05fO9xmEdqEPrOCkNZ5Vg" name="inPartition" type="_M05fBtxmEdqEPrOCkNZ5Vg" subsettedProperty="_MyN-d9xmEdqEPrOCkNZ5Vg" association="_M1DQD9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fPNxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fO9xmEdqEPrOCkNZ5Vg">
<body>Partitions containing the node.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-hKtsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-hKt8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M05fPdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M05fPtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hD4LtsWCEdqI1bY5Lwi8Hg" name="inInterruptibleRegion" type="_hD4Lp8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g7-z7MWCEdqI1bY5Lwi8Hg" association="_hEB8vMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4Lt8WCEdqI1bY5Lwi8Hg" annotatedElement="_hD4LtsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eX29xmEdqEPrOCkNZ5Vg" name="inInterruptibleRegion" type="_M4eXzNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MyN-d9xmEdqEPrOCkNZ5Vg" association="_M4oIp9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eX3NxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eX29xmEdqEPrOCkNZ5Vg">
<body>Interruptible regions containing the node.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hD4LuMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hD4LucWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eX3dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eX3txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-z7MWCEdqI1bY5Lwi8Hg" name="inGroup" visibility="public" type="_g7-z0MWCEdqI1bY5Lwi8Hg" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_g7-z8sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-z7cWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-z7MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-d9xmEdqEPrOCkNZ5Vg" name="inGroup" visibility="public" type="_MyEN69xmEdqEPrOCkNZ5Vg" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_MyN-fdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-eNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-d9xmEdqEPrOCkNZ5Vg">
<body>Groups containing the node. Multiplicity specialized to [0..1] for StructuredActivity-Group.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hD4LusWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hD4Lu8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eX39xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4oIcNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_rHT3YKOsEdqi_5gqUMOQtA" name="BehavioralFeature" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14L3sWCEdqI1bY5Lwi8Hg" annotatedElement="_rHT3YKOsEdqi_5gqUMOQtA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHktxmEdqEPrOCkNZ5Vg" annotatedElement="_rHT3YKOsEdqi_5gqUMOQtA">
<body>A behavioral feature is a feature of a classifier that specifies an aspect of the behavior of its instances. BehavioralFeature is an abstract metaclass specializing Feature and Namespace. Kinds of behavioral aspects are modeled by subclasses of BehavioralFeature.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5AYcsWCEdqI1bY5Lwi8Hg" annotatedElement="_rHT3YKOsEdqi_5gqUMOQtA">
- <body>A behavioral feature specifies that an instance of a classifier will respond to a designated request by invoking a behavior.
-
-BehavioralFeature is an abstract metaclass specializing Feature and Namespace. Kinds of behavioral aspects are modeled by subclasses of BehavioralFeature.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mvrn8txmEdqEPrOCkNZ5Vg" annotatedElement="_rHT3YKOsEdqi_5gqUMOQtA">
+ <body>A behavioral feature specifies that an instance of a classifier will respond to a designated request by invoking a behavior.&#xD;
+BehavioralFeature is an abstract metaclass specializing Feature and Namespace. Kinds of behavioral aspects are modeled by subclasses of BehavioralFeature.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iH78WCEdqI1bY5Lwi8Hg" annotatedElement="_rHT3YKOsEdqi_5gqUMOQtA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxStdxmEdqEPrOCkNZ5Vg" annotatedElement="_rHT3YKOsEdqi_5gqUMOQtA">
<body>A behavioral feature is implemented (realized) by a behavior. A behavioral feature specifies that a classifier will respond to a designated request by invoking its implementing method.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4LvMWCEdqI1bY5Lwi8Hg" annotatedElement="_rHT3YKOsEdqi_5gqUMOQtA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4oIcdxmEdqEPrOCkNZ5Vg" annotatedElement="_rHT3YKOsEdqi_5gqUMOQtA">
<body>The concept of BehavioralFeature is extended to own ParameterSets.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g14L38WCEdqI1bY5Lwi8Hg" general="_g0-z8MWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g14L4MWCEdqI1bY5Lwi8Hg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g14L4cWCEdqI1bY5Lwi8Hg" name="ownedParameter" visibility="public" type="_KyaPMGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g2UQ38WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14L4sWCEdqI1bY5Lwi8Hg" annotatedElement="_g14L4cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtAHk9xmEdqEPrOCkNZ5Vg" general="_MsQgf9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtAHlNxmEdqEPrOCkNZ5Vg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHldxmEdqEPrOCkNZ5Vg" name="ownedParameter" visibility="public" type="_KyaPMGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_MtmkMNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHltxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHldxmEdqEPrOCkNZ5Vg">
<body>Specifies the ordered set of formal parameters of this BehavioralFeature.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5AYc8WCEdqI1bY5Lwi8Hg" annotatedElement="_g14L4cWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mvrn89xmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHldxmEdqEPrOCkNZ5Vg">
<body>Specifies the ordered set of formal parameters owned by this BehavioralFeature. The parameter direction can be 'in', 'inout', 'out', pr 'return' to specify input, output, or return parameters.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5AYdMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5AYdcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mvrn9NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mvrn9dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7iH8MWCEdqI1bY5Lwi8Hg" name="isAbstract" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iH8cWCEdqI1bY5Lwi8Hg" annotatedElement="_g7iH8MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSttxmEdqEPrOCkNZ5Vg" name="isAbstract" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSt9xmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSttxmEdqEPrOCkNZ5Vg">
<body>If true, then the behavioral feature does not have an implementation, and one must be supplied by a more specific element. If false, the behavioral feature must have an implementation in the classifier or one must be inherited from a more general element.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g7iH8sWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MxxSuNxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7iH88WCEdqI1bY5Lwi8Hg" name="method" type="_TUPtYGveEdq4DLWZOhbdEA" association="_g7iIGsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7iH9MWCEdqI1bY5Lwi8Hg" annotatedElement="_g7iH88WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSudxmEdqEPrOCkNZ5Vg" name="method" type="_TUPtYGveEdq4DLWZOhbdEA" association="_Mx7DgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSutxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSudxmEdqEPrOCkNZ5Vg">
<body>A behavioral description that implements the behavioral feature. There may be at most one behavior for a particular pairing of a classifier (as owner of the behavior) and a behavioral feature (as specification of the behavior).</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7iH9cWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7iH9sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxSu9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxSvNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-EersWCEdqI1bY5Lwi8Hg" name="concurrency" type="_g-XZcMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-Eer8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-EersWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M0AHJtxmEdqEPrOCkNZ5Vg" name="concurrency" type="_M0wVENxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHJ9xmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHJtxmEdqEPrOCkNZ5Vg">
<body>Specifies the semantics of concurrent calls to the same passive instance (i.e., an instance originating from a class with isActive being false). Active instances control access to their own behavioral features.</body>
</ownedComment>
- <defaultValue xmi:type="uml:InstanceValue" xmi:id="_g-EesMWCEdqI1bY5Lwi8Hg" type="_g-XZcMWCEdqI1bY5Lwi8Hg" instance="_g-XZcsWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_M0AHKNxmEdqEPrOCkNZ5Vg" type="_M0wVENxmEdqEPrOCkNZ5Vg" instance="_M0wVEtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g14L5cWCEdqI1bY5Lwi8Hg" name="raisedException" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" association="_g2UQ5MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14L5sWCEdqI1bY5Lwi8Hg" annotatedElement="_g14L5cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHmdxmEdqEPrOCkNZ5Vg" name="raisedException" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" association="_MtmkNdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHmtxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHmdxmEdqEPrOCkNZ5Vg">
<body>References the Types representing exceptions that may be raised during an invocation of this feature.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-EescWCEdqI1bY5Lwi8Hg" annotatedElement="_g14L5cWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHKdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHmdxmEdqEPrOCkNZ5Vg">
<body>The signals that the behavioral feature raises as exceptions.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-EessWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-Ees8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0AHKtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0AHK9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hD4LvcWCEdqI1bY5Lwi8Hg" name="ownedParameterSet" type="_hDvBoMWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_hELtkMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4LvsWCEdqI1bY5Lwi8Hg" annotatedElement="_hD4LvcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4oIctxmEdqEPrOCkNZ5Vg" name="ownedParameterSet" type="_M4eXkdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M4xSY9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4oIc9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4oIctxmEdqEPrOCkNZ5Vg">
<body>The ParameterSets owned by this BehavioralFeature.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hD4Lv8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hD4LwMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4oIdNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4oIddxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_3Y0aYKOuEdqi_5gqUMOQtA" name="createReturnResult">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_8N3dwKOuEdqi_5gqUMOQtA" type="_KyaPMGveEdq4DLWZOhbdEA" direction="return"/>
@@ -11249,131 +11025,122 @@ BehavioralFeature is an abstract metaclass specializing Feature and Namespace. K
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_BJHvcKOyEdqi_5gqUMOQtA"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g14L6cWCEdqI1bY5Lwi8Hg" name="isDistinguishableFrom" visibility="public" isQuery="true" redefinedOperation="_g2LGwMWCEdqI1bY5Lwi8Hg" bodyCondition="_g14L68WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14L6sWCEdqI1bY5Lwi8Hg" annotatedElement="_g14L6cWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtAHndxmEdqEPrOCkNZ5Vg" name="isDistinguishableFrom" visibility="public" isQuery="true" redefinedOperation="_MtTCSNxmEdqEPrOCkNZ5Vg" bodyCondition="_MtAHn9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHntxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHndxmEdqEPrOCkNZ5Vg">
<body>The query isDistinguishableFrom() determines whether two BehavioralFeatures may coexist in the same Namespace. It specifies that they have to have different signatures.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g14L68WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g14L6cWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5JiQMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtAHn9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtAHndxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mv1Y0NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if n.oclIsKindOf(BehavioralFeature)&#xA;then&#xA; if ns.getNamesOfMember(self)->intersection(ns.getNamesOfMember(n))->notEmpty()&#xA; then Set{}->including(self)->including(n)->isUnique(bf | bf.ownedParameter->collect(type))&#xA; else true&#xA; endif&#xA;else true&#xA;endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g14L7cWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g14L7sWCEdqI1bY5Lwi8Hg" name="n" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g14L78WCEdqI1bY5Lwi8Hg" name="ns" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtAHodxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtAHotxmEdqEPrOCkNZ5Vg" name="n" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtAHo9xmEdqEPrOCkNZ5Vg" name="ns" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_TUPtYGveEdq4DLWZOhbdEA" name="Behavior" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y988WCEdqI1bY5Lwi8Hg" annotatedElement="_TUPtYGveEdq4DLWZOhbdEA">
- <body>Behavior is a specification of how its context classifier changes state over time. This specification may be either a definition of possible behavior execution or emergent behavior, or a selective illustration of an interesting subset of possible executions. The latter form is typically used for capturing examples, such as a trace of a particular execution.
-
-
-
-A classifier behavior is always a definition of behavior and not an illustration. It describes the sequence of state changes an instance of a classifier may undergo in the course of its lifetime. Its precise semantics depends on the kind of classifier. For example, the classifier behavior of a collaboration represents emergent behavior of all the parts, whereas the classifier behavior of a class is just the behavior of instances of the class separated from the behaviors of any of its parts.
-
-When a behavior is associated as the method of a behavioral feature, it defines the implementation of that feature; i.e., the computation that generates the effects of the behavioral feature.
-
-
-
-As a classifier, a behavior can be specialized. Instantiating a behavior is referred to as &quot;invoking&quot; the behavior, an instantiated behavior is also called a behavior &quot;execution.&quot; A behavior may be invoked directly or its invocation may be the result of invoking the behavioral feature that specifies this behavior. A behavior can also be instantiated as an object in virtue of it being a class. The specification of a behavior can take a number of forms, as described in the subclasses of Behavior. Behavior is an abstract metaclass factoring out the commonalities of these different specification mechanisms.
-
-
-
-When a behavior is invoked, its execution receives a set of input values that are used to affect the course of execution and as a result of its execution it produces a set of output values which are returned, as specified by its parameters. The observable effects of a behavior execution may include changes of values of various objects involved in the execution, the creation and destruction of objects, generation of communications between objects, as well as an explicit set of output values.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxnhhdxmEdqEPrOCkNZ5Vg" annotatedElement="_TUPtYGveEdq4DLWZOhbdEA">
+ <body>Behavior is a specification of how its context classifier changes state over time. This specification may be either a definition of possible behavior execution or emergent behavior, or a selective illustration of an interesting subset of possible executions. The latter form is typically used for capturing examples, such as a trace of a particular execution.&#xD;
+&#xD;
+A classifier behavior is always a definition of behavior and not an illustration. It describes the sequence of state changes an instance of a classifier may undergo in the course of its lifetime. Its precise semantics depends on the kind of classifier. For example, the classifier behavior of a collaboration represents emergent behavior of all the parts, whereas the classifier behavior of a class is just the behavior of instances of the class separated from the behaviors of any of its parts.&#xD;
+When a behavior is associated as the method of a behavioral feature, it defines the implementation of that feature; i.e., the computation that generates the effects of the behavioral feature.&#xD;
+&#xD;
+As a classifier, a behavior can be specialized. Instantiating a behavior is referred to as &quot;invoking&quot; the behavior, an instantiated behavior is also called a behavior &quot;execution.&quot; A behavior may be invoked directly or its invocation may be the result of invoking the behavioral feature that specifies this behavior. A behavior can also be instantiated as an object in virtue of it being a class. The specification of a behavior can take a number of forms, as described in the subclasses of Behavior. Behavior is an abstract metaclass factoring out the commonalities of these different specification mechanisms.&#xD;
+&#xD;
+When a behavior is invoked, its execution receives a set of input values that are used to affect the course of execution and as a result of its execution it produces a set of output values which are returned, as specified by its parameters. The observable effects of a behavior execution may include changes of values of various objects involved in the execution, the creation and destruction of objects, generation of communications between objects, as well as an explicit set of output values.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4LwcWCEdqI1bY5Lwi8Hg" annotatedElement="_TUPtYGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4oIdtxmEdqEPrOCkNZ5Vg" annotatedElement="_TUPtYGveEdq4DLWZOhbdEA">
<body>The concept of Behavior is extended to own ParameterSets.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7Y99MWCEdqI1bY5Lwi8Hg" name="parameters_match" constrainedElement="_TUPtYGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y99cWCEdqI1bY5Lwi8Hg" annotatedElement="_g7Y99MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MxnhhtxmEdqEPrOCkNZ5Vg" name="parameters_match" constrainedElement="_TUPtYGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mxnhh9xmEdqEPrOCkNZ5Vg" annotatedElement="_MxnhhtxmEdqEPrOCkNZ5Vg">
<body>The parameters of the behavior must match the parameters of the implemented behavioral feature.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7Y99sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MxnhiNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7Y998WCEdqI1bY5Lwi8Hg" name="feature_of_context_classifier" constrainedElement="_TUPtYGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y9-MWCEdqI1bY5Lwi8Hg" annotatedElement="_g7Y998WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MxnhidxmEdqEPrOCkNZ5Vg" name="feature_of_context_classifier" constrainedElement="_TUPtYGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxnhitxmEdqEPrOCkNZ5Vg" annotatedElement="_MxnhidxmEdqEPrOCkNZ5Vg">
<body>The implemented behavioral feature must be a feature (possibly inherited) of the context classifier of the behavior.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7Y9-cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mxnhi9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7Y9-sWCEdqI1bY5Lwi8Hg" name="must_realize" constrainedElement="_TUPtYGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y9-8WCEdqI1bY5Lwi8Hg" annotatedElement="_g7Y9-sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MxnhjNxmEdqEPrOCkNZ5Vg" name="must_realize" constrainedElement="_TUPtYGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxnhjdxmEdqEPrOCkNZ5Vg" annotatedElement="_MxnhjNxmEdqEPrOCkNZ5Vg">
<body>If the implemented behavioral feature has been redefined in the ancestors of the owner of the behavior, then the behavior must realize the latest redefining behavioral feature.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7Y9_MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MxnhjtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g7Y9_cWCEdqI1bY5Lwi8Hg" name="most_one_behaviour" constrainedElement="_TUPtYGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y9_sWCEdqI1bY5Lwi8Hg" annotatedElement="_g7Y9_cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Mxnhj9xmEdqEPrOCkNZ5Vg" name="most_one_behaviour" constrainedElement="_TUPtYGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxnhkNxmEdqEPrOCkNZ5Vg" annotatedElement="_Mxnhj9xmEdqEPrOCkNZ5Vg">
<body>There may be at most one behavior for a given pairing of classifier (as owner of the behavior) and behavioral feature (as specification of the behavior).</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g7Y9_8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MxnhkdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7Y-AMWCEdqI1bY5Lwi8Hg" general="_00owUGvdEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7Y-AcWCEdqI1bY5Lwi8Hg" name="isReentrant" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y-AsWCEdqI1bY5Lwi8Hg" annotatedElement="_g7Y-AcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MxnhktxmEdqEPrOCkNZ5Vg" general="_00owUGvdEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSgNxmEdqEPrOCkNZ5Vg" name="isReentrant" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSgdxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSgNxmEdqEPrOCkNZ5Vg">
<body>Tells whether the behavior can be invoked while it is still executing from a previous invocation.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g7Y-A8WCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MxxSgtxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7Y-BMWCEdqI1bY5Lwi8Hg" name="redefinedBehavior" type="_TUPtYGveEdq4DLWZOhbdEA" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_g7iIFcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y-BcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7Y-BMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSg9xmEdqEPrOCkNZ5Vg" name="redefinedBehavior" type="_TUPtYGveEdq4DLWZOhbdEA" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_MxxS29xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxShNxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSg9xmEdqEPrOCkNZ5Vg">
<body>References a behavior that this behavior redefines. A subtype of Behavior may redefine any other subtype of Behavior. If the behavior implements a behavioral feature, it replaces the redefined behavior. If the behavior is a classifier behavior, it extends the redefined behavior.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7Y-BsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7Y-B8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxShdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxShtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7Y-CMWCEdqI1bY5Lwi8Hg" name="specification" type="_rHT3YKOsEdqi_5gqUMOQtA" association="_g7iIGsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y-CcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7Y-CMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSh9xmEdqEPrOCkNZ5Vg" name="specification" type="_rHT3YKOsEdqi_5gqUMOQtA" association="_Mx7DgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSiNxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSh9xmEdqEPrOCkNZ5Vg">
<body>Designates a behavioral feature that the behavior implements. The behavioral feature must be owned by the classifier that owns the behavior or be inherited by it. The parameters of the behavioral feature and the implementing behavior must match. If a behavior does not have a specification, it is directly associated with a classifier (i.e., it is the behavior of the classifier as a whole).</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7Y-CsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7Y-C8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxSidxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxSitxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7Y-DMWCEdqI1bY5Lwi8Hg" name="ownedParameter" type="_KyaPMGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g7iIG8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y-DcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7Y-DMWCEdqI1bY5Lwi8Hg">
- <body>References a list of parameters to the behavior which describes the order and type of arguments that can be given when the behavior is invoked and of the values which will be returned when the behavior completes its execution.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSi9xmEdqEPrOCkNZ5Vg" name="ownedParameter" type="_KyaPMGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_Mx7DgdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSjNxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSi9xmEdqEPrOCkNZ5Vg">
+ <body>References a list of parameters to the behavior which describes the order and type of arguments that can be given when the behavior is invoked and of the values which will be returned when the behavior completes its execution.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7Y-DsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7Y-D8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxSjdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxSjtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7Y-EMWCEdqI1bY5Lwi8Hg" name="context" type="_iY7sMGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" subsettedProperty="_g1H-IsWCEdqI1bY5Lwi8Hg" association="_g7iIKMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7Y-EcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7Y-EMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSj9xmEdqEPrOCkNZ5Vg" name="context" type="_iY7sMGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" subsettedProperty="_MsjbWdxmEdqEPrOCkNZ5Vg" association="_Mx7DjtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MxxSkNxmEdqEPrOCkNZ5Vg" annotatedElement="_MxxSj9xmEdqEPrOCkNZ5Vg">
<body>The classifier that is the context for the execution of the behavior. If the behavior is owned by a BehavioredClassifier, that classifier is the context. Otherwise, the context is the first BehavioredClassifier reached by following the chain of owner relationships. For example, following this algorithm, the context of an entry action in a state machine is the classifier that owns the state machine. The features of the context classifier as well as the elements visible to the context classifier are visible to the behavior.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7Y-EsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7Y-E8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxSkdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxSktxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7Y-FMWCEdqI1bY5Lwi8Hg" name="precondition" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" association="_g7r44MWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7Y-FcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7Y-FsWCEdqI1bY5Lwi8Hg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSk9xmEdqEPrOCkNZ5Vg" name="precondition" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" association="_Mx7Dk9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxSlNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxSldxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7Y-F8WCEdqI1bY5Lwi8Hg" name="postcondition" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" association="_g7r45cWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7Y-GMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7Y-GcWCEdqI1bY5Lwi8Hg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MxxSltxmEdqEPrOCkNZ5Vg" name="postcondition" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" association="_Mx7DmNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MxxSl9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MxxSmNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hD4LwsWCEdqI1bY5Lwi8Hg" name="ownedParameterSet" type="_hDvBoMWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_hELtlcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hD4Lw8WCEdqI1bY5Lwi8Hg" annotatedElement="_hD4LwsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4oId9xmEdqEPrOCkNZ5Vg" name="ownedParameterSet" type="_M4eXkdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M4xSaNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4oIeNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4oId9xmEdqEPrOCkNZ5Vg">
<body>The ParameterSets owned by this Behavior.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hD4LxMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hD4LxcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4oIedxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4oIetxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_Zp2iwFYgEdqB6vblk3tuMA" name="getContext" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_flYtEFYgEdqB6vblk3tuMA" type="_iY7sMGvsEdqG6fBIPwe-mw" direction="return">
@@ -11382,864 +11149,835 @@ When a behavior is invoked, its execution receives a set of input values that ar
</ownedParameter>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7r5AcWCEdqI1bY5Lwi8Hg" name="Pin">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7r5AsWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5AcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Mx7DtNxmEdqEPrOCkNZ5Vg" name="Pin">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mx7DtdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DtNxmEdqEPrOCkNZ5Vg">
<body>A pin is a typed element and multiplicity element that provides values to actions and accept result values from them.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9U3oMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7r5AcWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgrtxmEdqEPrOCkNZ5Vg" annotatedElement="_Mx7DtNxmEdqEPrOCkNZ5Vg">
<body>A pin is an object node for inputs and outputs to actions.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEB8kMWCEdqI1bY5Lwi8Hg" name="control_pins" constrainedElement="_g7r5AcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEB8kcWCEdqI1bY5Lwi8Hg" annotatedElement="_hEB8kMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4oIe9xmEdqEPrOCkNZ5Vg" name="control_pins" constrainedElement="_Mx7DtNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4oIfNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4oIe9xmEdqEPrOCkNZ5Vg">
<body>Control pins have a control type</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEB8ksWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4oIfdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>isControl implies isControlType</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7r5BMWCEdqI1bY5Lwi8Hg" general="_Gjgl0GveEdq4DLWZOhbdEA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9U3ocWCEdqI1bY5Lwi8Hg" general="_g9LGoMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEB8k8WCEdqI1bY5Lwi8Hg" name="isControl" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEB8lMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEB8k8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mx7Dt9xmEdqEPrOCkNZ5Vg" general="_Gjgl0GveEdq4DLWZOhbdEA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzQgr9xmEdqEPrOCkNZ5Vg" general="_MzHWktxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4oIftxmEdqEPrOCkNZ5Vg" name="isControl" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4oIf9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4oIftxmEdqEPrOCkNZ5Vg">
<body>Tells whether the pins provide data to the actions, or just controls when it executes it.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hEB8lcWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M4oIgNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Enumeration" xmi:id="_hEB8mMWCEdqI1bY5Lwi8Hg" name="ObjectNodeOrderingKind">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEB8mcWCEdqI1bY5Lwi8Hg" annotatedElement="_hEB8mMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_M4oIg9xmEdqEPrOCkNZ5Vg" name="ObjectNodeOrderingKind">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4oIhNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4oIg9xmEdqEPrOCkNZ5Vg">
<body>ObjectNodeOrderingKind is an enumeration indicating queuing order within a node.</body>
</ownedComment>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hEB8msWCEdqI1bY5Lwi8Hg" name="unordered"/>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hEB8m8WCEdqI1bY5Lwi8Hg" name="ordered"/>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hEB8nMWCEdqI1bY5Lwi8Hg" name="LIFO"/>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hEB8ncWCEdqI1bY5Lwi8Hg" name="FIFO"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M4oIhdxmEdqEPrOCkNZ5Vg" name="unordered"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M4oIhtxmEdqEPrOCkNZ5Vg" name="ordered"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M4oIh9xmEdqEPrOCkNZ5Vg" name="LIFO"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M4oIiNxmEdqEPrOCkNZ5Vg" name="FIFO"/>
</packagedElement>
- <packagedElement xmi:type="uml:Enumeration" xmi:id="_hEB8nsWCEdqI1bY5Lwi8Hg" name="ParameterEffectKind">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEB8n8WCEdqI1bY5Lwi8Hg" annotatedElement="_hEB8nsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_M4oIidxmEdqEPrOCkNZ5Vg" name="ParameterEffectKind">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4oIitxmEdqEPrOCkNZ5Vg" annotatedElement="_M4oIidxmEdqEPrOCkNZ5Vg">
<body>The datatype ParameterEffectKind is an enumeration that indicates the effect of a behavior on values passed in or out of its parameters.</body>
</ownedComment>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hEB8oMWCEdqI1bY5Lwi8Hg" name="create"/>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hEB8ocWCEdqI1bY5Lwi8Hg" name="read"/>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hEB8osWCEdqI1bY5Lwi8Hg" name="update"/>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hEB8o8WCEdqI1bY5Lwi8Hg" name="delete"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M4oIi9xmEdqEPrOCkNZ5Vg" name="create"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M4oIjNxmEdqEPrOCkNZ5Vg" name="read"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M4oIjdxmEdqEPrOCkNZ5Vg" name="update"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M4oIjtxmEdqEPrOCkNZ5Vg" name="delete"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEB8pMWCEdqI1bY5Lwi8Hg" name="A_weight_activityEdge" memberEnd="_hDlQzsWCEdqI1bY5Lwi8Hg _hEB8psWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hEB8pcWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEB8psWCEdqI1bY5Lwi8Hg" type="_g9LGrcWCEdqI1bY5Lwi8Hg" association="_hEB8pMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4oIj9xmEdqEPrOCkNZ5Vg" name="A_weight_activityEdge" memberEnd="_M4eXcNxmEdqEPrOCkNZ5Vg _M4oIkdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4oIkNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4oIkdxmEdqEPrOCkNZ5Vg" type="_MzQgQNxmEdqEPrOCkNZ5Vg" association="_M4oIj9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEB8p8WCEdqI1bY5Lwi8Hg" name="A_upperBound_objectNode" memberEnd="_hDlQ48WCEdqI1bY5Lwi8Hg _hEB8qcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hEB8qMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEB8qcWCEdqI1bY5Lwi8Hg" type="_g9LGoMWCEdqI1bY5Lwi8Hg" association="_hEB8p8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEB8qsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEB8q8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4oIktxmEdqEPrOCkNZ5Vg" name="A_upperBound_objectNode" memberEnd="_M4eXhdxmEdqEPrOCkNZ5Vg _M4oIlNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4oIk9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4oIlNxmEdqEPrOCkNZ5Vg" type="_MzHWktxmEdqEPrOCkNZ5Vg" association="_M4oIktxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4oIldxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4oIltxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEB8rMWCEdqI1bY5Lwi8Hg" name="A_inState_objectNode" memberEnd="_hDlQ58WCEdqI1bY5Lwi8Hg _hEB8rcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEB8rcWCEdqI1bY5Lwi8Hg" type="_g9LGoMWCEdqI1bY5Lwi8Hg" association="_hEB8rMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEB8rsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEB8r8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4oIl9xmEdqEPrOCkNZ5Vg" name="A_inState_objectNode" memberEnd="_M4eXidxmEdqEPrOCkNZ5Vg _M4oImNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4oImNxmEdqEPrOCkNZ5Vg" type="_MzHWktxmEdqEPrOCkNZ5Vg" association="_M4oIl9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4oImdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4oImtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEB8sMWCEdqI1bY5Lwi8Hg" name="A_parameterSet_parameter" memberEnd="_hD4LmsWCEdqI1bY5Lwi8Hg _hDvBrMWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEB8scWCEdqI1bY5Lwi8Hg" name="A_transformation_objectFlow" memberEnd="_hDlQxsWCEdqI1bY5Lwi8Hg _hEB8ssWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEB8ssWCEdqI1bY5Lwi8Hg" type="_g9LG0MWCEdqI1bY5Lwi8Hg" association="_hEB8scWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEB8s8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEB8tMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4oIm9xmEdqEPrOCkNZ5Vg" name="A_parameterSet_parameter" memberEnd="_M4eXv9xmEdqEPrOCkNZ5Vg _M4eXndxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4oInNxmEdqEPrOCkNZ5Vg" name="A_transformation_objectFlow" memberEnd="_M4VNzNxmEdqEPrOCkNZ5Vg _M4oIndxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4oIndxmEdqEPrOCkNZ5Vg" type="_MzQgY9xmEdqEPrOCkNZ5Vg" association="_M4oInNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4oIntxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4oIn9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEB8tcWCEdqI1bY5Lwi8Hg" name="A_action_localPrecondition" memberEnd="_hD4Ln8WCEdqI1bY5Lwi8Hg _hEB8t8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hEB8tsWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEB8t8WCEdqI1bY5Lwi8Hg" type="_g71p8MWCEdqI1bY5Lwi8Hg" association="_hEB8tcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4oIoNxmEdqEPrOCkNZ5Vg" name="A_action_localPrecondition" memberEnd="_M4eXxNxmEdqEPrOCkNZ5Vg _M4oIotxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4oIodxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4oIotxmEdqEPrOCkNZ5Vg" type="_MyENl9xmEdqEPrOCkNZ5Vg" association="_M4oIoNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEB8uMWCEdqI1bY5Lwi8Hg" name="A_action_localPostcondition" memberEnd="_hD4Lo8WCEdqI1bY5Lwi8Hg _hEB8usWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hEB8ucWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEB8usWCEdqI1bY5Lwi8Hg" type="_g71p8MWCEdqI1bY5Lwi8Hg" association="_hEB8uMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4oIo9xmEdqEPrOCkNZ5Vg" name="A_action_localPostcondition" memberEnd="_M4eXyNxmEdqEPrOCkNZ5Vg _M4oIpdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4oIpNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4oIpdxmEdqEPrOCkNZ5Vg" type="_MyENl9xmEdqEPrOCkNZ5Vg" association="_M4oIo9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEB8u8WCEdqI1bY5Lwi8Hg" name="A_interruptingEdge_interrupts" memberEnd="_hD4LrcWCEdqI1bY5Lwi8Hg _hDlQ0sWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEB8vMWCEdqI1bY5Lwi8Hg" name="A_inInterruptibleRegion_node" memberEnd="_hD4LtsWCEdqI1bY5Lwi8Hg _hD4LscWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hEB8vcWCEdqI1bY5Lwi8Hg" general="_g7-z8sWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4oIptxmEdqEPrOCkNZ5Vg" name="A_interruptingEdge_interrupts" memberEnd="_M4eX0txmEdqEPrOCkNZ5Vg _M4eXdNxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4oIp9xmEdqEPrOCkNZ5Vg" name="A_inInterruptibleRegion_node" memberEnd="_M4eX29xmEdqEPrOCkNZ5Vg _M4eX1txmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4oIqNxmEdqEPrOCkNZ5Vg" general="_MyN-fdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEB8vsWCEdqI1bY5Lwi8Hg" name="A_selection_objectFlow" memberEnd="_hDlQysWCEdqI1bY5Lwi8Hg _hEB8v8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEB8v8WCEdqI1bY5Lwi8Hg" type="_g9LG0MWCEdqI1bY5Lwi8Hg" association="_hEB8vsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEB8wMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEB8wcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4oIqdxmEdqEPrOCkNZ5Vg" name="A_selection_objectFlow" memberEnd="_M4VN0NxmEdqEPrOCkNZ5Vg _M4oIqtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4oIqtxmEdqEPrOCkNZ5Vg" type="_MzQgY9xmEdqEPrOCkNZ5Vg" association="_M4oIqdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4oIq9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4oIrNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEB8wsWCEdqI1bY5Lwi8Hg" name="A_selection_objectNode" memberEnd="_hDlQ68WCEdqI1bY5Lwi8Hg _hEB8w8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEB8w8WCEdqI1bY5Lwi8Hg" type="_g9LGoMWCEdqI1bY5Lwi8Hg" association="_hEB8wsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEB8xMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEB8xcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4oIrdxmEdqEPrOCkNZ5Vg" name="A_selection_objectNode" memberEnd="_M4eXjdxmEdqEPrOCkNZ5Vg _M4oIrtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4oIrtxmEdqEPrOCkNZ5Vg" type="_MzHWktxmEdqEPrOCkNZ5Vg" association="_M4oIrdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4oIr9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4oIsNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEB8xsWCEdqI1bY5Lwi8Hg" name="A_condition_parameterSet" memberEnd="_hDvBsMWCEdqI1bY5Lwi8Hg _hEB8yMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hEB8x8WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEB8yMWCEdqI1bY5Lwi8Hg" type="_hDvBoMWCEdqI1bY5Lwi8Hg" association="_hEB8xsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4xSYNxmEdqEPrOCkNZ5Vg" name="A_condition_parameterSet" memberEnd="_M4eXodxmEdqEPrOCkNZ5Vg _M4xSYtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4xSYdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4xSYtxmEdqEPrOCkNZ5Vg" type="_M4eXkdxmEdqEPrOCkNZ5Vg" association="_M4xSYNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hELtkMWCEdqI1bY5Lwi8Hg" name="A_ownedParameterSet_behavioralFeature" memberEnd="_hD4LvcWCEdqI1bY5Lwi8Hg _hELtksWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hELtkcWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hELtksWCEdqI1bY5Lwi8Hg" type="_rHT3YKOsEdqi_5gqUMOQtA" association="_hELtkMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hELtk8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hELtlMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4xSY9xmEdqEPrOCkNZ5Vg" name="A_ownedParameterSet_behavioralFeature" memberEnd="_M4oIctxmEdqEPrOCkNZ5Vg _M4xSZdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4xSZNxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4xSZdxmEdqEPrOCkNZ5Vg" type="_rHT3YKOsEdqi_5gqUMOQtA" association="_M4xSY9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4xSZtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4xSZ9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hELtlcWCEdqI1bY5Lwi8Hg" name="A_ownedParameterSet_behavior" memberEnd="_hD4LwsWCEdqI1bY5Lwi8Hg _hELtl8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hELtlsWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hELtl8WCEdqI1bY5Lwi8Hg" type="_TUPtYGveEdq4DLWZOhbdEA" association="_hELtlcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hELtmMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hELtmcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4xSaNxmEdqEPrOCkNZ5Vg" name="A_ownedParameterSet_behavior" memberEnd="_M4oId9xmEdqEPrOCkNZ5Vg _M4xSatxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4xSadxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4xSatxmEdqEPrOCkNZ5Vg" type="_TUPtYGveEdq4DLWZOhbdEA" association="_M4xSaNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4xSa9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4xSbNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g7-z8sWCEdqI1bY5Lwi8Hg" name="A_containedNode_inGroup" memberEnd="_g7-z08WCEdqI1bY5Lwi8Hg _g7-z7MWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_hELtmsWCEdqI1bY5Lwi8Hg" name="A_joinSpec_joinNode" memberEnd="_hDlQqsWCEdqI1bY5Lwi8Hg _hELtnMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hELtm8WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hELtnMWCEdqI1bY5Lwi8Hg" type="_g-qUgMWCEdqI1bY5Lwi8Hg" association="_hELtmsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_MyN-fdxmEdqEPrOCkNZ5Vg" name="A_containedNode_inGroup" memberEnd="_MyEN7txmEdqEPrOCkNZ5Vg _MyN-d9xmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M4xSbdxmEdqEPrOCkNZ5Vg" name="A_joinSpec_joinNode" memberEnd="_M4VNsNxmEdqEPrOCkNZ5Vg _M4xSb9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4xSbtxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M4xSb9xmEdqEPrOCkNZ5Vg" type="_M1DQANxmEdqEPrOCkNZ5Vg" association="_M4xSbdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7-0IcWCEdqI1bY5Lwi8Hg" name="ConditionalNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0IsWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0IcWCEdqI1bY5Lwi8Hg">
- <body>A conditional node consists of one or more clauses. Each clause consists of a test section and a body section. When the conditional node begins execution, the test sections of the clauses are executed. If one or more test sections yield a true value, one of the corresponding body sections will be executed. If more than one test section yields a true value, only one body section will be executed. The choice is nondeterministic unless the test sequence of clauses is specified. If no test section yields a true value, then no body section is executed; this may be a semantic error if output values are expected from the conditional node.
-
-
-
-In general, test section may be executed in any order, including simultaneously (if the underlying execution architecture supports it). The result may therefore be nondeterministic if more than one test section can be true concurrently. To enforce ordering of evaluation, sequencing constraints may be specified among clauses. One frequent case is a total ordering of clauses, in which case the clause execution order is determinate. If it is impossible for more than one test section to evaluate true simultaneously, the result is deterministic and it is unnecessary to order the clauses, as ordering may impose undesirable and unnecessary restrictions on implementation. Note that, although evaluation of test sections may be specified as concurrent, this does not require that the implementation evaluate them in parallel; it merely means that the model does not impose any order on evaluation.
-
-
-
-An &quot;else&quot; clause is a clause that is a successor to all other clauses in the conditional and whose test part always returns true.
-
-
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_MyN-rNxmEdqEPrOCkNZ5Vg" name="ConditionalNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-rdxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-rNxmEdqEPrOCkNZ5Vg">
+ <body>A conditional node consists of one or more clauses. Each clause consists of a test section and a body section. When the conditional node begins execution, the test sections of the clauses are executed. If one or more test sections yield a true value, one of the corresponding body sections will be executed. If more than one test section yields a true value, only one body section will be executed. The choice is nondeterministic unless the test sequence of clauses is specified. If no test section yields a true value, then no body section is executed; this may be a semantic error if output values are expected from the conditional node.&#xD;
+&#xD;
+In general, test section may be executed in any order, including simultaneously (if the underlying execution architecture supports it). The result may therefore be nondeterministic if more than one test section can be true concurrently. To enforce ordering of evaluation, sequencing constraints may be specified among clauses. One frequent case is a total ordering of clauses, in which case the clause execution order is determinate. If it is impossible for more than one test section to evaluate true simultaneously, the result is deterministic and it is unnecessary to order the clauses, as ordering may impose undesirable and unnecessary restrictions on implementation. Note that, although evaluation of test sections may be specified as concurrent, this does not require that the implementation evaluate them in parallel; it merely means that the model does not impose any order on evaluation.&#xD;
+&#xD;
+An &quot;else&quot; clause is a clause that is a successor to all other clauses in the conditional and whose test part always returns true.&#xD;
+&#xD;
Output values created in the test or body section of a clause are potentially available for use outside the conditional. However, any value used outside the conditional must be created in every clause, otherwise an undefined value would be accessed if a clause not defining the value were executed.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hELtnsWCEdqI1bY5Lwi8Hg" name="result_no_incoming" constrainedElement="_g7-0IcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELtn8WCEdqI1bY5Lwi8Hg" annotatedElement="_hELtnsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4xScdxmEdqEPrOCkNZ5Vg" name="result_no_incoming" constrainedElement="_MyN-rNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSctxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xScdxmEdqEPrOCkNZ5Vg">
<body>The result output pins have no incoming edges.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hELtoMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4xSc9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7-0I8WCEdqI1bY5Lwi8Hg" general="_g7-0EMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-0JMWCEdqI1bY5Lwi8Hg" name="isDeterminate" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0JcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0JMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyN-rtxmEdqEPrOCkNZ5Vg" general="_MyN-m9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-r9xmEdqEPrOCkNZ5Vg" name="isDeterminate" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-sNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-r9xmEdqEPrOCkNZ5Vg">
<body>If true, the modeler asserts that at most one test will succeed.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g7-0JsWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MyN-sdxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-0J8WCEdqI1bY5Lwi8Hg" name="isAssured" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0KMWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0J8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-stxmEdqEPrOCkNZ5Vg" name="isAssured" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-s9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-stxmEdqEPrOCkNZ5Vg">
<body>If true, the modeler asserts that at least one test will succeed.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g7-0KcWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MyN-tNxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-0KsWCEdqI1bY5Lwi8Hg" name="clause" type="_g8Ik0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g8Ru0cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0K8WCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0KsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-tdxmEdqEPrOCkNZ5Vg" name="clause" type="_MyN-z9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MyXvnNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-ttxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-tdxmEdqEPrOCkNZ5Vg">
<body>Set of clauses composing the conditional.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7-0LMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7-0LcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-t9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-uNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hELtocWCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" isOrdered="true" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hEU3i8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELtosWCEdqI1bY5Lwi8Hg" annotatedElement="_hELtocWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4xSdNxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" isOrdered="true" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M47DZNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSddxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSdNxmEdqEPrOCkNZ5Vg">
<body>A list of output pins that constitute the data flow outputs of the conditional.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hELto8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hELtpMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4xSdtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4xSd9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7-0EMWCEdqI1bY5Lwi8Hg" name="StructuredActivityNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0EcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0EMWCEdqI1bY5Lwi8Hg">
- <body>A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins when merged with CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.
-
-
-
-Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_MyN-m9xmEdqEPrOCkNZ5Vg" name="StructuredActivityNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-nNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-m9xmEdqEPrOCkNZ5Vg">
+ <body>A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins when merged with CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.&#xD;
+&#xD;
+Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELtpcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0EMWCEdqI1bY5Lwi8Hg">
- <body>A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins in CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.
-
-
-
-Because of the concurrent nature of the execution of actions within and across activities, it can be difficult to guarantee the consistent access and modification of object memory. In order to avoid race conditions or other concurrency-related problems, it is sometimes necessary to isolate the effects of a group of actions from the effects of actions outside the group. This may be indicated by setting the mustIsolate attribute to true on a structured activity node. If a structured activity node is &quot;isolated,&quot; then any object used by an action within the node cannot be accessed by any action outside the node until the structured activity node as a whole completes. Any concurrent actions that would result in accessing such objects are required to have their execution deferred until the completion of the node.
-
-
-
-Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSeNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-m9xmEdqEPrOCkNZ5Vg">
+ <body>A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins in CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.&#xD;
+&#xD;
+Because of the concurrent nature of the execution of actions within and across activities, it can be difficult to guarantee the consistent access and modification of object memory. In order to avoid race conditions or other concurrency-related problems, it is sometimes necessary to isolate the effects of a group of actions from the effects of actions outside the group. This may be indicated by setting the mustIsolate attribute to true on a structured activity node. If a structured activity node is &quot;isolated,&quot; then any object used by an action within the node cannot be accessed by any action outside the node until the structured activity node as a whole completes. Any concurrent actions that would result in accessing such objects are required to have their execution deferred until the completion of the node.&#xD;
+&#xD;
+Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hELtpsWCEdqI1bY5Lwi8Hg" name="edges" constrainedElement="_g7-0EMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELtp8WCEdqI1bY5Lwi8Hg" annotatedElement="_hELtpsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4xSedxmEdqEPrOCkNZ5Vg" name="edges" constrainedElement="_MyN-m9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSetxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSedxmEdqEPrOCkNZ5Vg">
<body>The edges owned by a structured node must have source and target nodes in the structured node, and vice versa.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hELtqMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4xSe9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7-0FMWCEdqI1bY5Lwi8Hg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hELtqcWCEdqI1bY5Lwi8Hg" general="_g71p8MWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7-0EsWCEdqI1bY5Lwi8Hg" general="_g7-z0MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-0FcWCEdqI1bY5Lwi8Hg" name="variable" type="_g7-z-8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g8IlEcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0FsWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0FcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyN-n9xmEdqEPrOCkNZ5Vg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M4xSfNxmEdqEPrOCkNZ5Vg" general="_MyENl9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyN-ndxmEdqEPrOCkNZ5Vg" general="_MyEN69xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-oNxmEdqEPrOCkNZ5Vg" name="variable" type="_MyN-htxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_MyXvh9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-odxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-oNxmEdqEPrOCkNZ5Vg">
<body>A variable defined in the scope of the structured activity node. It has no value and may not be accessed</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7-0F8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7-0GMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-otxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-o9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-0GcWCEdqI1bY5Lwi8Hg" name="node" type="_g7-z5cWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g7-z08WCEdqI1bY5Lwi8Hg" association="_g8IlE8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0GsWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0GcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-pNxmEdqEPrOCkNZ5Vg" name="node" type="_MyN-cNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MyEN7txmEdqEPrOCkNZ5Vg" association="_MyXvidxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-pdxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-pNxmEdqEPrOCkNZ5Vg">
<body>Nodes immediately contained in the group.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7-0G8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7-0HMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-ptxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-p9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-0HcWCEdqI1bY5Lwi8Hg" name="activity" type="_g71qNsWCEdqI1bY5Lwi8Hg" redefinedProperty="_g7-z6MWCEdqI1bY5Lwi8Hg _g7-z18WCEdqI1bY5Lwi8Hg" association="_g8Ru4sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0HsWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0HcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-qNxmEdqEPrOCkNZ5Vg" name="activity" type="_MyEN3dxmEdqEPrOCkNZ5Vg" redefinedProperty="_MyN-c9xmEdqEPrOCkNZ5Vg _MyEN8txmEdqEPrOCkNZ5Vg" association="_MyXvrdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-qdxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-qNxmEdqEPrOCkNZ5Vg">
<body>Activity immediately containing the node.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7-0H8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7-0IMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-qtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-q9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hELtqsWCEdqI1bY5Lwi8Hg" name="mustIsolate" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELtq8WCEdqI1bY5Lwi8Hg" annotatedElement="_hELtqsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4xSfdxmEdqEPrOCkNZ5Vg" name="mustIsolate" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSftxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSfdxmEdqEPrOCkNZ5Vg">
<body>If true, then the actions in the node execute in isolation from actions outside the node.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hELtrMWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M4xSf9xmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hELtrcWCEdqI1bY5Lwi8Hg" name="edge" type="_g9LGrcWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g9LG8cWCEdqI1bY5Lwi8Hg" association="_hEU3psWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELtrsWCEdqI1bY5Lwi8Hg" annotatedElement="_hELtrcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4xSgNxmEdqEPrOCkNZ5Vg" name="edge" type="_MzQgQNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MzQghNxmEdqEPrOCkNZ5Vg" association="_M47Df9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSgdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSgNxmEdqEPrOCkNZ5Vg">
<body>Edges immediately contained in the structured node.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hELtr8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hELtsMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4xSgtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4xSg9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7-0LsWCEdqI1bY5Lwi8Hg" name="LoopNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0L8WCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0LsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MyN-udxmEdqEPrOCkNZ5Vg" name="LoopNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-utxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-udxmEdqEPrOCkNZ5Vg">
<body>Each section is a well-nested subregion of the activity whose nodes follow any predecessors of the loop and precede any successors of the loop. The test section may precede or follow the body section. The setup section is executed once on entry to the loop, and the test and body sections are executed repeatedly until the test produces a false value. The results of the final execution of the test or body are available after completion of execution of the loop.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hELtscWCEdqI1bY5Lwi8Hg" name="input_edges" constrainedElement="_g7-0LsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELtssWCEdqI1bY5Lwi8Hg" annotatedElement="_hELtscWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4xShNxmEdqEPrOCkNZ5Vg" name="input_edges" constrainedElement="_MyN-udxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xShdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xShNxmEdqEPrOCkNZ5Vg">
<body>Loop variable inputs must not have outgoing edges.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hELts8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4xShtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hELttMWCEdqI1bY5Lwi8Hg" name="body_output_pins" constrainedElement="_g7-0LsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELttcWCEdqI1bY5Lwi8Hg" annotatedElement="_hELttMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4xSh9xmEdqEPrOCkNZ5Vg" name="body_output_pins" constrainedElement="_MyN-udxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSiNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSh9xmEdqEPrOCkNZ5Vg">
<body>The bodyOutput pins are output pins on actions in the body of the loop node.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hELttsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4xSidxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hELtt8WCEdqI1bY5Lwi8Hg" name="result_no_incoming" constrainedElement="_g7-0LsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELtuMWCEdqI1bY5Lwi8Hg" annotatedElement="_hELtt8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4xSitxmEdqEPrOCkNZ5Vg" name="result_no_incoming" constrainedElement="_MyN-udxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSi9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSitxmEdqEPrOCkNZ5Vg">
<body>The result output pins have no incoming edges.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hELtucWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4xSjNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7-0MMWCEdqI1bY5Lwi8Hg" general="_g7-0EMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-0McWCEdqI1bY5Lwi8Hg" name="isTestedFirst" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0MsWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0McWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyN-u9xmEdqEPrOCkNZ5Vg" general="_MyN-m9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-vNxmEdqEPrOCkNZ5Vg" name="isTestedFirst" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-vdxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-vNxmEdqEPrOCkNZ5Vg">
<body>If true, the test is performed before the first execution of the body.
If false, the body is executed once before the test is performed.
</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g7-0M8WCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MyN-vtxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-0NMWCEdqI1bY5Lwi8Hg" name="bodyPart" type="_g8IlAsWCEdqI1bY5Lwi8Hg" association="_g8RuycWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0NcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0NMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-v9xmEdqEPrOCkNZ5Vg" name="bodyPart" type="_MyXveNxmEdqEPrOCkNZ5Vg" association="_MyXvlNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-wNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-v9xmEdqEPrOCkNZ5Vg">
<body>The set of nodes and edges that perform the repetitive computations of the loop. The body section is executed as long as the test section produces a true value.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7-0NsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7-0N8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-wdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-wtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-0OMWCEdqI1bY5Lwi8Hg" name="setupPart" type="_g8IlAsWCEdqI1bY5Lwi8Hg" association="_g8RuzcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0OcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0OMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-w9xmEdqEPrOCkNZ5Vg" name="setupPart" type="_MyXveNxmEdqEPrOCkNZ5Vg" association="_MyXvmNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-xNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-w9xmEdqEPrOCkNZ5Vg">
<body>The set of nodes and edges that initialize values or perform other setup computations for the loop.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7-0OsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7-0O8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-xdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-xtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-0PMWCEdqI1bY5Lwi8Hg" name="decider" type="_g7r5D8WCEdqI1bY5Lwi8Hg" association="_g8Ru2sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0PcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0PMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-x9xmEdqEPrOCkNZ5Vg" name="decider" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" association="_MyXvpdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-yNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-x9xmEdqEPrOCkNZ5Vg">
<body>An output pin within the test fragment the value of which is examined after execution of the test to determine whether to execute the loop body.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7-0PsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7-0P8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-ydxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-ytxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-0QMWCEdqI1bY5Lwi8Hg" name="test" type="_g8IlAsWCEdqI1bY5Lwi8Hg" association="_g8Ru3sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-0QcWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-0QMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-y9xmEdqEPrOCkNZ5Vg" name="test" type="_MyXveNxmEdqEPrOCkNZ5Vg" association="_MyXvqdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-zNxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-y9xmEdqEPrOCkNZ5Vg">
<body>The set of nodes, edges, and designated value that compute a Boolean value to determine if another execution of the body will be performed.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7-0QsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7-0Q8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-zdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-ztxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hELtusWCEdqI1bY5Lwi8Hg" name="result" type="_g7r5D8WCEdqI1bY5Lwi8Hg" isOrdered="true" aggregation="composite" subsettedProperty="_g71p88WCEdqI1bY5Lwi8Hg" association="_hEU3kMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELtu8WCEdqI1bY5Lwi8Hg" annotatedElement="_hELtusWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4xSjdxmEdqEPrOCkNZ5Vg" name="result" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" isOrdered="true" aggregation="composite" subsettedProperty="_MyENmtxmEdqEPrOCkNZ5Vg" association="_M47DadxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSjtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSjdxmEdqEPrOCkNZ5Vg">
<body>A list of output pins that constitute the data flow output of the entire loop.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hELtvMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hELtvcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4xSj9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4xSkNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hELtvsWCEdqI1bY5Lwi8Hg" name="loopVariable" type="_g7r5D8WCEdqI1bY5Lwi8Hg" isOrdered="true" association="_hEU3lcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELtv8WCEdqI1bY5Lwi8Hg" annotatedElement="_hELtvsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4xSkdxmEdqEPrOCkNZ5Vg" name="loopVariable" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" isOrdered="true" association="_M47DbtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSktxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSkdxmEdqEPrOCkNZ5Vg">
<body>A list of output pins that hold the values of the loop variables during an execution of the loop. When the test fails, the values are movied to the result pins of the loop.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hELtwMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hELtwcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4xSk9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4xSlNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hELtwsWCEdqI1bY5Lwi8Hg" name="bodyOutput" type="_g7r5D8WCEdqI1bY5Lwi8Hg" isOrdered="true" association="_hEU3mcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELtw8WCEdqI1bY5Lwi8Hg" annotatedElement="_hELtwsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4xSldxmEdqEPrOCkNZ5Vg" name="bodyOutput" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" isOrdered="true" association="_M47DctxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSltxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSldxmEdqEPrOCkNZ5Vg">
<body>A list of output pins within the body fragment the values of which are moved to the loop variable pins after completion of execution of the body, before the next iteration of the loop begins or before the loop exits.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hELtxMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hELtxcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4xSl9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4xSmNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hELtxsWCEdqI1bY5Lwi8Hg" name="loopVariableInput" type="_g7r5EsWCEdqI1bY5Lwi8Hg" isOrdered="true" aggregation="composite" subsettedProperty="_g71p98WCEdqI1bY5Lwi8Hg" association="_hEU3ocWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELtx8WCEdqI1bY5Lwi8Hg" annotatedElement="_hELtxsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4xSmdxmEdqEPrOCkNZ5Vg" name="loopVariableInput" type="_Mx7DxdxmEdqEPrOCkNZ5Vg" isOrdered="true" aggregation="composite" subsettedProperty="_MyENntxmEdqEPrOCkNZ5Vg" association="_M47DetxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSmtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSmdxmEdqEPrOCkNZ5Vg">
<body>A list of values that are moved into the loop variable pins before the first iteration of the loop.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hELtyMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hELtycWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4xSm9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4xSnNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g8Ik0MWCEdqI1bY5Lwi8Hg" name="Clause">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ik0cWCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ik0MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MyN-z9xmEdqEPrOCkNZ5Vg" name="Clause">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-0NxmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-z9xmEdqEPrOCkNZ5Vg">
<body>A clause is an element that represents a single branch of a conditional construct, including a test and a body section. The body section is executed only if (but not necessarily if) the test section evaluates true.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g8Ik0sWCEdqI1bY5Lwi8Hg" name="decider_output" constrainedElement="_g8Ik0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ik08WCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ik0sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MyN-0dxmEdqEPrOCkNZ5Vg" name="decider_output" constrainedElement="_MyN-z9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-0txmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-0dxmEdqEPrOCkNZ5Vg">
<body>The decider output pin must be for the test body or a node contained by the test body as a structured node.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g8Ik1MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MyN-09xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hELtysWCEdqI1bY5Lwi8Hg" name="body_output_pins" constrainedElement="_g8Ik0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELty8WCEdqI1bY5Lwi8Hg" annotatedElement="_hELtysWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4xSndxmEdqEPrOCkNZ5Vg" name="body_output_pins" constrainedElement="_MyN-z9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSntxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSndxmEdqEPrOCkNZ5Vg">
<body>The bodyOutput pins are output pins on actions in the body of the clause.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hELtzMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4xSn9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8Ik1cWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8Ik1sWCEdqI1bY5Lwi8Hg" name="test" type="_g8IlAsWCEdqI1bY5Lwi8Hg" association="_g8RuwMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ik18WCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ik1sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyN-1NxmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-1dxmEdqEPrOCkNZ5Vg" name="test" type="_MyXveNxmEdqEPrOCkNZ5Vg" association="_MyXvi9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-1txmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-1dxmEdqEPrOCkNZ5Vg">
<body>A nested activity fragment with a designated output pin that specifies the result of the test.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ik2MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ik2cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-19xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-2NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8Ik2sWCEdqI1bY5Lwi8Hg" name="body" type="_g8IlAsWCEdqI1bY5Lwi8Hg" association="_g8RuxMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ik28WCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ik2sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-2dxmEdqEPrOCkNZ5Vg" name="body" type="_MyXveNxmEdqEPrOCkNZ5Vg" association="_MyXvj9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-2txmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-2dxmEdqEPrOCkNZ5Vg">
<body>A nested activity fragment that is executed if the test evaluates to true and the clause is chosen over any concurrent clauses that also evaluate to true.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ik3MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ik3cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-29xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-3NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8Ik3sWCEdqI1bY5Lwi8Hg" name="predecessorClause" type="_g8Ik0MWCEdqI1bY5Lwi8Hg" association="_g8RuyMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ik38WCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ik3sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-3dxmEdqEPrOCkNZ5Vg" name="predecessorClause" type="_MyN-z9xmEdqEPrOCkNZ5Vg" association="_MyXvk9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-3txmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-3dxmEdqEPrOCkNZ5Vg">
<body>A set of clauses whose tests must all evaluate false before the current clause can be tested.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ik4MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ik4cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-39xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-4NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8Ik4sWCEdqI1bY5Lwi8Hg" name="successorClause" type="_g8Ik0MWCEdqI1bY5Lwi8Hg" association="_g8RuyMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ik48WCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ik4sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-4dxmEdqEPrOCkNZ5Vg" name="successorClause" type="_MyN-z9xmEdqEPrOCkNZ5Vg" association="_MyXvk9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-4txmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-4dxmEdqEPrOCkNZ5Vg">
<body>A set of clauses which may not be tested unless the current clause tests false.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ik5MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ik5cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-49xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-5NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8Ik5sWCEdqI1bY5Lwi8Hg" name="decider" type="_g7r5D8WCEdqI1bY5Lwi8Hg" association="_g8Ru1sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8Ik58WCEdqI1bY5Lwi8Hg" annotatedElement="_g8Ik5sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyN-5dxmEdqEPrOCkNZ5Vg" name="decider" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" association="_MyXvodxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyN-5txmEdqEPrOCkNZ5Vg" annotatedElement="_MyN-5dxmEdqEPrOCkNZ5Vg">
<body>An output pin within the test fragment the value of which is examined after execution of the test to determine whether the body should be executed.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8Ik6MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8Ik6cWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyN-59xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyN-6NxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hELtzcWCEdqI1bY5Lwi8Hg" name="bodyOutput" type="_g7r5D8WCEdqI1bY5Lwi8Hg" isOrdered="true" association="_hEU3ncWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hELtzsWCEdqI1bY5Lwi8Hg" annotatedElement="_hELtzcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4xSoNxmEdqEPrOCkNZ5Vg" name="bodyOutput" type="_Mx7DwtxmEdqEPrOCkNZ5Vg" isOrdered="true" association="_M47DdtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSodxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSoNxmEdqEPrOCkNZ5Vg">
<body>A list of output pins within the body fragment whose values are moved to the result pins of the containing conditional node after execution of the clause body.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hELtz8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hELt0MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4xSotxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4xSo9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g9LGrcWCEdqI1bY5Lwi8Hg" name="ActivityEdge" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGrsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGrcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MzQgQNxmEdqEPrOCkNZ5Vg" name="ActivityEdge" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgQdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgQNxmEdqEPrOCkNZ5Vg">
<body>ActivityEdge is an abstract class for the connections along which tokens flow between activity nodes. It covers control and data flow edges. Activity edges can control token flow.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LGr8WCEdqI1bY5Lwi8Hg" name="source_and_target" constrainedElement="_g9LGrcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGsMWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGr8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgQtxmEdqEPrOCkNZ5Vg" name="source_and_target" constrainedElement="_MzQgQNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgQ9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgQtxmEdqEPrOCkNZ5Vg">
<body>The source and target of an edge must be in the same activity as the edge.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LGscWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgRNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LGssWCEdqI1bY5Lwi8Hg" name="owned" constrainedElement="_g9LGrcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGs8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGssWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgRdxmEdqEPrOCkNZ5Vg" name="owned" constrainedElement="_MzQgQNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgRtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgRdxmEdqEPrOCkNZ5Vg">
<body>Activity edges may be owned only by activities or groups.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LGtMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgR9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEU3gMWCEdqI1bY5Lwi8Hg" name="structured_node" constrainedElement="_g9LGrcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEU3gcWCEdqI1bY5Lwi8Hg" annotatedElement="_hEU3gMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M4xSpNxmEdqEPrOCkNZ5Vg" name="structured_node" constrainedElement="_MzQgQNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSpdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSpNxmEdqEPrOCkNZ5Vg">
<body>Activity edges may be owned by at most one structured node.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEU3gsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M4xSptxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g9LGtcWCEdqI1bY5Lwi8Hg" general="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9LGtsWCEdqI1bY5Lwi8Hg" name="activity" type="_g71qNsWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g9U3r8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGt8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGtsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MzQgSNxmEdqEPrOCkNZ5Vg" general="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzQgSdxmEdqEPrOCkNZ5Vg" name="activity" type="_MyEN3dxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MzQgvdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgStxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgSdxmEdqEPrOCkNZ5Vg">
<body>Activity containing the edge.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9LGuMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9LGucWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzQgS9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzQgTNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9LGusWCEdqI1bY5Lwi8Hg" name="source" type="_g7-z5cWCEdqI1bY5Lwi8Hg" association="_g9U3scWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGu8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGusWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzQgTdxmEdqEPrOCkNZ5Vg" name="source" type="_MyN-cNxmEdqEPrOCkNZ5Vg" association="_MzaRQNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgTtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgTdxmEdqEPrOCkNZ5Vg">
<body>Node from which tokens are taken when they traverse the edge.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9LGvMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9LGvcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzQgT9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzQgUNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9LGvsWCEdqI1bY5Lwi8Hg" name="target" type="_g7-z5cWCEdqI1bY5Lwi8Hg" association="_g9U3ssWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGv8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGvsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzQgUdxmEdqEPrOCkNZ5Vg" name="target" type="_MyN-cNxmEdqEPrOCkNZ5Vg" association="_MzaRQdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgUtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgUdxmEdqEPrOCkNZ5Vg">
<body>Node to which tokens are put when they traverse the edge.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9LGwMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9LGwcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzQgU9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzQgVNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9LGxsWCEdqI1bY5Lwi8Hg" name="redefinedEdge" type="_g9LGrcWCEdqI1bY5Lwi8Hg" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_g9U3u8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGx8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGxsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzQgWdxmEdqEPrOCkNZ5Vg" name="redefinedEdge" type="_MzQgQNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_MzaRStxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgWtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgWdxmEdqEPrOCkNZ5Vg">
<body>Inherited edges replaced by this edge in a specialization of the activity.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9LGyMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9LGycWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzQgW9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzQgXNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-hKqcWCEdqI1bY5Lwi8Hg" name="inPartition" type="_g-hKf8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g9LGwsWCEdqI1bY5Lwi8Hg" association="_g-qUjcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKqsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKqcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M05fMNxmEdqEPrOCkNZ5Vg" name="inPartition" type="_M05fBtxmEdqEPrOCkNZ5Vg" subsettedProperty="_MzQgVdxmEdqEPrOCkNZ5Vg" association="_M1DQDdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fMdxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fMNxmEdqEPrOCkNZ5Vg">
<body>Partitions containing the edge.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-hKq8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-hKrMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M05fMtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M05fM9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-hKrcWCEdqI1bY5Lwi8Hg" name="guard" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g-qUl8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKrsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-hKrcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M05fNNxmEdqEPrOCkNZ5Vg" name="guard" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M1DQF9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fNdxmEdqEPrOCkNZ5Vg" annotatedElement="_M05fNNxmEdqEPrOCkNZ5Vg">
<body>Specification evaluated at runtime to determine if the edge can be traversed.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-hKr8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-hKsMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M05fNtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M05fN9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDlQzsWCEdqI1bY5Lwi8Hg" name="weight" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hEB8pMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQz8WCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQzsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXcNxmEdqEPrOCkNZ5Vg" name="weight" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M4oIj9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXcdxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXcNxmEdqEPrOCkNZ5Vg">
<body>Number of tokens consumed from the source node on each traversal.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDlQ0MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDlQ0cWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eXctxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eXc9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hDlQ0sWCEdqI1bY5Lwi8Hg" name="interrupts" type="_hD4Lp8WCEdqI1bY5Lwi8Hg" association="_hEB8u8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hDlQ08WCEdqI1bY5Lwi8Hg" annotatedElement="_hDlQ0sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4eXdNxmEdqEPrOCkNZ5Vg" name="interrupts" type="_M4eXzNxmEdqEPrOCkNZ5Vg" association="_M4oIptxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4eXddxmEdqEPrOCkNZ5Vg" annotatedElement="_M4eXdNxmEdqEPrOCkNZ5Vg">
<body>Region that the edge can interrupt.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hDlQ1MWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hDlQ1cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4eXdtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4eXd9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEU3g8WCEdqI1bY5Lwi8Hg" name="inStructuredNode" type="_g7-0EMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g9LGwsWCEdqI1bY5Lwi8Hg" association="_hEU3psWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEU3hMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEU3g8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M4xSp9xmEdqEPrOCkNZ5Vg" name="inStructuredNode" type="_MyN-m9xmEdqEPrOCkNZ5Vg" subsettedProperty="_MzQgVdxmEdqEPrOCkNZ5Vg" association="_M47Df9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M4xSqNxmEdqEPrOCkNZ5Vg" annotatedElement="_M4xSp9xmEdqEPrOCkNZ5Vg">
<body>Structured activity node containing the edge.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEU3hcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEU3hsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4xSqdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4xSqtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9LGwsWCEdqI1bY5Lwi8Hg" name="inGroup" visibility="public" type="_g7-z0MWCEdqI1bY5Lwi8Hg" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_g9U3s8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LGw8WCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGwsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzQgVdxmEdqEPrOCkNZ5Vg" name="inGroup" visibility="public" type="_MyEN69xmEdqEPrOCkNZ5Vg" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_MzaRQtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgVtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgVdxmEdqEPrOCkNZ5Vg">
<body>Groups containing the edge. Multiplicity specialized to [0..1] for StructuredActivityGroup.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-hKscWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LGwsWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M05fONxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgVdxmEdqEPrOCkNZ5Vg">
<body>Groups containing the edge. Multiplicity specialized to [0..1] for StructuredActivity-Group.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEU3h8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEU3iMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M47DYNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M47DYdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g7-z0MWCEdqI1bY5Lwi8Hg" name="ActivityGroup" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-z0cWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-z0MWCEdqI1bY5Lwi8Hg">
- <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.
-
-They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_MyEN69xmEdqEPrOCkNZ5Vg" name="ActivityGroup" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyEN7NxmEdqEPrOCkNZ5Vg" annotatedElement="_MyEN69xmEdqEPrOCkNZ5Vg">
+ <body>Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.&#xD;
+They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LG6MWCEdqI1bY5Lwi8Hg" name="nodes_and_edges" constrainedElement="_g7-z0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG6cWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG6MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQge9xmEdqEPrOCkNZ5Vg" name="nodes_and_edges" constrainedElement="_MyEN69xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgfNxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQge9xmEdqEPrOCkNZ5Vg">
<body>All nodes and edges of the group must be in the same activity as the group.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LG6sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgfdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LG68WCEdqI1bY5Lwi8Hg" name="not_contained" constrainedElement="_g7-z0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG7MWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG68WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQgftxmEdqEPrOCkNZ5Vg" name="not_contained" constrainedElement="_MyEN69xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQgf9xmEdqEPrOCkNZ5Vg" annotatedElement="_MzQgftxmEdqEPrOCkNZ5Vg">
<body>No node or edge in a group may be contained by its subgroups or its containing groups, transitively.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LG7cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQggNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g9LG7sWCEdqI1bY5Lwi8Hg" name="group_owned" constrainedElement="_g7-z0MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG78WCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG7sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MzQggdxmEdqEPrOCkNZ5Vg" name="group_owned" constrainedElement="_MyEN69xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQggtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQggdxmEdqEPrOCkNZ5Vg">
<body>Groups may only be owned by activities or groups.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g9LG8MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MzQgg9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g7-z0sWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-z28WCEdqI1bY5Lwi8Hg" name="subgroup" type="_g7-z0MWCEdqI1bY5Lwi8Hg" isReadOnly="true" isDerived="true" isDerivedUnion="true" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g7-z9cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-z3MWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-z28WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyEN7dxmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyEN9txmEdqEPrOCkNZ5Vg" name="subgroup" type="_MyEN69xmEdqEPrOCkNZ5Vg" isReadOnly="true" isDerived="true" isDerivedUnion="true" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MyN-gNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyEN99xmEdqEPrOCkNZ5Vg" annotatedElement="_MyEN9txmEdqEPrOCkNZ5Vg">
<body>Groups immediately contained in the group.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7-z3cWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7-z3sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyEN-NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyEN-dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-z38WCEdqI1bY5Lwi8Hg" name="superGroup" type="_g7-z0MWCEdqI1bY5Lwi8Hg" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g7-z9cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-z4MWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-z38WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyEN-txmEdqEPrOCkNZ5Vg" name="superGroup" type="_MyEN69xmEdqEPrOCkNZ5Vg" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MyN-gNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyEN-9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyEN-txmEdqEPrOCkNZ5Vg">
<body>Group immediately containing the group.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7-z4cWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7-z4sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyEN_NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyEN_dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-z18WCEdqI1bY5Lwi8Hg" name="inActivity" visibility="public" type="_g71qNsWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g7-z88WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-z2MWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-z18WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyEN8txmEdqEPrOCkNZ5Vg" name="inActivity" visibility="public" type="_MyEN3dxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_MyN-ftxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyEN89xmEdqEPrOCkNZ5Vg" annotatedElement="_MyEN8txmEdqEPrOCkNZ5Vg">
<body>Activity containing the group.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-qUhcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-qUhsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1DQBdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1DQBtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g7-z08WCEdqI1bY5Lwi8Hg" name="containedNode" visibility="public" type="_g7-z5cWCEdqI1bY5Lwi8Hg" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_g7-z8sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7-z1MWCEdqI1bY5Lwi8Hg" annotatedElement="_g7-z08WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyEN7txmEdqEPrOCkNZ5Vg" name="containedNode" visibility="public" type="_MyN-cNxmEdqEPrOCkNZ5Vg" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_MyN-fdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyEN79xmEdqEPrOCkNZ5Vg" annotatedElement="_MyEN7txmEdqEPrOCkNZ5Vg">
<body>Nodes immediately contained in the group.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEB8lsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEB8l8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M4oIgdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M4oIgtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9LG8cWCEdqI1bY5Lwi8Hg" name="containedEdge" visibility="public" type="_g9LGrcWCEdqI1bY5Lwi8Hg" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_g9U3s8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9LG8sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9LG8cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzQghNxmEdqEPrOCkNZ5Vg" name="containedEdge" visibility="public" type="_MzQgQNxmEdqEPrOCkNZ5Vg" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="_MzaRQtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzQghdxmEdqEPrOCkNZ5Vg" annotatedElement="_MzQghNxmEdqEPrOCkNZ5Vg">
<body>Edges immediately contained in the group.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEU3icWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEU3isWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M47DYtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M47DY9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEU3i8WCEdqI1bY5Lwi8Hg" name="A_result_conditionalNode" memberEnd="_hELtocWCEdqI1bY5Lwi8Hg _hEU3jcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hEU3jMWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEU3jcWCEdqI1bY5Lwi8Hg" type="_g7-0IcWCEdqI1bY5Lwi8Hg" association="_hEU3i8WCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEU3jsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEU3j8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M47DZNxmEdqEPrOCkNZ5Vg" name="A_result_conditionalNode" memberEnd="_M4xSdNxmEdqEPrOCkNZ5Vg _M47DZtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M47DZdxmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M47DZtxmEdqEPrOCkNZ5Vg" type="_MyN-rNxmEdqEPrOCkNZ5Vg" association="_M47DZNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M47DZ9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M47DaNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEU3kMWCEdqI1bY5Lwi8Hg" name="A_result_loopNode" memberEnd="_hELtusWCEdqI1bY5Lwi8Hg _hEU3ksWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hEU3kcWCEdqI1bY5Lwi8Hg" general="_g71qG8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEU3ksWCEdqI1bY5Lwi8Hg" type="_g7-0LsWCEdqI1bY5Lwi8Hg" association="_hEU3kMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEU3k8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEU3lMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M47DadxmEdqEPrOCkNZ5Vg" name="A_result_loopNode" memberEnd="_M4xSjdxmEdqEPrOCkNZ5Vg _M47Da9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M47DatxmEdqEPrOCkNZ5Vg" general="_MyENwtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M47Da9xmEdqEPrOCkNZ5Vg" type="_MyN-udxmEdqEPrOCkNZ5Vg" association="_M47DadxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M47DbNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M47DbdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEU3lcWCEdqI1bY5Lwi8Hg" name="A_loopVariable_loopNode" memberEnd="_hELtvsWCEdqI1bY5Lwi8Hg _hEU3lsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEU3lsWCEdqI1bY5Lwi8Hg" type="_g7-0LsWCEdqI1bY5Lwi8Hg" association="_hEU3lcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEU3l8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEU3mMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M47DbtxmEdqEPrOCkNZ5Vg" name="A_loopVariable_loopNode" memberEnd="_M4xSkdxmEdqEPrOCkNZ5Vg _M47Db9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M47Db9xmEdqEPrOCkNZ5Vg" type="_MyN-udxmEdqEPrOCkNZ5Vg" association="_M47DbtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M47DcNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M47DcdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEU3mcWCEdqI1bY5Lwi8Hg" name="A_bodyOutput_loopNode" memberEnd="_hELtwsWCEdqI1bY5Lwi8Hg _hEU3msWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEU3msWCEdqI1bY5Lwi8Hg" type="_g7-0LsWCEdqI1bY5Lwi8Hg" association="_hEU3mcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEU3m8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEU3nMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M47DctxmEdqEPrOCkNZ5Vg" name="A_bodyOutput_loopNode" memberEnd="_M4xSldxmEdqEPrOCkNZ5Vg _M47Dc9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M47Dc9xmEdqEPrOCkNZ5Vg" type="_MyN-udxmEdqEPrOCkNZ5Vg" association="_M47DctxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M47DdNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M47DddxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEU3ncWCEdqI1bY5Lwi8Hg" name="A_bodyOutput_clause" memberEnd="_hELtzcWCEdqI1bY5Lwi8Hg _hEU3nsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEU3nsWCEdqI1bY5Lwi8Hg" type="_g8Ik0MWCEdqI1bY5Lwi8Hg" association="_hEU3ncWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEU3n8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEU3oMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M47DdtxmEdqEPrOCkNZ5Vg" name="A_bodyOutput_clause" memberEnd="_M4xSoNxmEdqEPrOCkNZ5Vg _M47Dd9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M47Dd9xmEdqEPrOCkNZ5Vg" type="_MyN-z9xmEdqEPrOCkNZ5Vg" association="_M47DdtxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M47DeNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M47DedxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEU3ocWCEdqI1bY5Lwi8Hg" name="A_loopVariableInput_loopNode" memberEnd="_hELtxsWCEdqI1bY5Lwi8Hg _hEU3o8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hEU3osWCEdqI1bY5Lwi8Hg" general="_g71qIMWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEU3o8WCEdqI1bY5Lwi8Hg" type="_g7-0LsWCEdqI1bY5Lwi8Hg" association="_hEU3ocWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEU3pMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEU3pcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M47DetxmEdqEPrOCkNZ5Vg" name="A_loopVariableInput_loopNode" memberEnd="_M4xSmdxmEdqEPrOCkNZ5Vg _M47DfNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M47De9xmEdqEPrOCkNZ5Vg" general="_MyENx9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M47DfNxmEdqEPrOCkNZ5Vg" type="_MyN-udxmEdqEPrOCkNZ5Vg" association="_M47DetxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M47DfdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M47DftxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEU3psWCEdqI1bY5Lwi8Hg" name="A_edge_inStructuredNode" memberEnd="_hELtrcWCEdqI1bY5Lwi8Hg _hEU3g8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hEU3p8WCEdqI1bY5Lwi8Hg" general="_g9U3s8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M47Df9xmEdqEPrOCkNZ5Vg" name="A_edge_inStructuredNode" memberEnd="_M4xSp9xmEdqEPrOCkNZ5Vg _M4xSgNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M47DgNxmEdqEPrOCkNZ5Vg" general="_MzaRQtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_g9U3s8WCEdqI1bY5Lwi8Hg" name="A_containedEdge_inGroup" memberEnd="_g9LG8cWCEdqI1bY5Lwi8Hg _g9LGwsWCEdqI1bY5Lwi8Hg" isDerived="true"/>
- <packagedElement xmi:type="uml:Class" xmi:id="_hEeogMWCEdqI1bY5Lwi8Hg" name="ExpansionNode">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeogcWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeogMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Association" xmi:id="_MzaRQtxmEdqEPrOCkNZ5Vg" name="A_containedEdge_inGroup" memberEnd="_MzQghNxmEdqEPrOCkNZ5Vg _MzQgVdxmEdqEPrOCkNZ5Vg" isDerived="true"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_M47DgdxmEdqEPrOCkNZ5Vg" name="ExpansionNode">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M47DgtxmEdqEPrOCkNZ5Vg" annotatedElement="_M47DgdxmEdqEPrOCkNZ5Vg">
<body>An expansion node is an object node used to indicate a flow across the boundary of an expansion region. A flow into a region contains a collection that is broken into its individual elements inside the region, which is executed once per element. A flow out of a region combines individual elements into a collection for use outside the region.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hEeogsWCEdqI1bY5Lwi8Hg" general="_g9LGoMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEeog8WCEdqI1bY5Lwi8Hg" name="regionAsOutput" type="_hEeoi8WCEdqI1bY5Lwi8Hg" association="_hEeox8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeohMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeog8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M47Dg9xmEdqEPrOCkNZ5Vg" general="_MzHWktxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M47DhNxmEdqEPrOCkNZ5Vg" name="regionAsOutput" type="_M47DjNxmEdqEPrOCkNZ5Vg" association="_M5E0h9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M47DhdxmEdqEPrOCkNZ5Vg" annotatedElement="_M47DhNxmEdqEPrOCkNZ5Vg">
<body>The expansion region for which the node is an output.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEeohcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEeohsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M47DhtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M47Dh9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEeoh8WCEdqI1bY5Lwi8Hg" name="regionAsInput" type="_hEeoi8WCEdqI1bY5Lwi8Hg" association="_hEeoyMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeoiMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeoh8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M47DiNxmEdqEPrOCkNZ5Vg" name="regionAsInput" type="_M47DjNxmEdqEPrOCkNZ5Vg" association="_M5E0iNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M47DidxmEdqEPrOCkNZ5Vg" annotatedElement="_M47DiNxmEdqEPrOCkNZ5Vg">
<body>The expansion region for which the node is an input.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEeoicWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEeoisWCEdqI1bY5Lwi8Hg"/>
- </ownedAttribute>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hEeoi8WCEdqI1bY5Lwi8Hg" name="ExpansionRegion">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeojMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeoi8WCEdqI1bY5Lwi8Hg">
- <body>An expansion region is a strictly nested region of an activity with explicit input and outputs (modeled as ExpansionNodes). Each input is a collection of values. If there are multiple inputs, each of them must hold the same kind of collection, although the types of the elements in the different collections may vary. The expansion region is executed once for each element (or position) in the input collection.
-
-
-
-The number of output collections can differ from the number of input collections. On each execution of the region, an output value from the region is inserted into an output collection at the same position as the input elements. If the region execution ends with no output, then nothing is added to the output collection. When this happens the output collection will not have the same number of elements as the input collections, the region acts as a filter. If all the executions provide an output to the collection, then the output collections will have the same number of elements as the input collections.
-
-
-
-The inputs and outputs to an expansion region are modeled as ExpansionNodes. From &quot;outside&quot; of the region, the values on these nodes appear as collections. From &quot;inside&quot; the region the values appear as elements of the collections. Object flow edges connect pins outside the region to input and output expansion nodes as collections. Object flow edges connect pins inside the region to input and output expansion nodes as individual elements. From the inside of the region, these nodes are visible as individual values. If an expansion node has a name, it is the name of the individual element within the region.
-
-
-
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M47DitxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M47Di9xmEdqEPrOCkNZ5Vg"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_M47DjNxmEdqEPrOCkNZ5Vg" name="ExpansionRegion">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M47DjdxmEdqEPrOCkNZ5Vg" annotatedElement="_M47DjNxmEdqEPrOCkNZ5Vg">
+ <body>An expansion region is a strictly nested region of an activity with explicit input and outputs (modeled as ExpansionNodes). Each input is a collection of values. If there are multiple inputs, each of them must hold the same kind of collection, although the types of the elements in the different collections may vary. The expansion region is executed once for each element (or position) in the input collection.&#xD;
+&#xD;
+The number of output collections can differ from the number of input collections. On each execution of the region, an output value from the region is inserted into an output collection at the same position as the input elements. If the region execution ends with no output, then nothing is added to the output collection. When this happens the output collection will not have the same number of elements as the input collections, the region acts as a filter. If all the executions provide an output to the collection, then the output collections will have the same number of elements as the input collections.&#xD;
+&#xD;
+The inputs and outputs to an expansion region are modeled as ExpansionNodes. From &quot;outside&quot; of the region, the values on these nodes appear as collections. From &quot;inside&quot; the region the values appear as elements of the collections. Object flow edges connect pins outside the region to input and output expansion nodes as collections. Object flow edges connect pins inside the region to input and output expansion nodes as individual elements. From the inside of the region, these nodes are visible as individual values. If an expansion node has a name, it is the name of the individual element within the region.&#xD;
+&#xD;
Any object flow edges that cross the boundary of the region, without passing through expansion nodes, provide values that are fixed within the different executions of the region.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEeojcWCEdqI1bY5Lwi8Hg" name="expansion_nodes" constrainedElement="_hEeoi8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeojsWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeojcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M47DjtxmEdqEPrOCkNZ5Vg" name="expansion_nodes" constrainedElement="_M47DjNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M47Dj9xmEdqEPrOCkNZ5Vg" annotatedElement="_M47DjtxmEdqEPrOCkNZ5Vg">
<body>An ExpansionRegion must have one or more argument ExpansionNodes and zero or more result ExpansionNodes.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEeoj8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M47DkNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hEeokMWCEdqI1bY5Lwi8Hg" general="_g7-0EMWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEeokcWCEdqI1bY5Lwi8Hg" name="mode" type="_hEeov8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeoksWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeokcWCEdqI1bY5Lwi8Hg">
- <body>The way in which the executions interact:
-
-parallel: all interactions are independent
-
-iterative: the interactions occur in order of the elements
-
-stream: a stream of values flows into a single execution
-
+ <generalization xmi:type="uml:Generalization" xmi:id="_M47DkdxmEdqEPrOCkNZ5Vg" general="_MyN-m9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M47DktxmEdqEPrOCkNZ5Vg" name="mode" type="_M5E0f9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M47Dk9xmEdqEPrOCkNZ5Vg" annotatedElement="_M47DktxmEdqEPrOCkNZ5Vg">
+ <body>The way in which the executions interact:&#xD;
+parallel: all interactions are independent&#xD;
+iterative: the interactions occur in order of the elements&#xD;
+stream: a stream of values flows into a single execution&#xD;
</body>
</ownedComment>
- <defaultValue xmi:type="uml:InstanceValue" xmi:id="_hEeok8WCEdqI1bY5Lwi8Hg" type="_hEeov8WCEdqI1bY5Lwi8Hg" instance="_hEeow8WCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_M47DlNxmEdqEPrOCkNZ5Vg" type="_M5E0f9xmEdqEPrOCkNZ5Vg" instance="_M5E0g9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEeolMWCEdqI1bY5Lwi8Hg" name="outputElement" type="_hEeogMWCEdqI1bY5Lwi8Hg" association="_hEeox8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeolcWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeolMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M47DldxmEdqEPrOCkNZ5Vg" name="outputElement" type="_M47DgdxmEdqEPrOCkNZ5Vg" association="_M5E0h9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M47DltxmEdqEPrOCkNZ5Vg" annotatedElement="_M47DldxmEdqEPrOCkNZ5Vg">
<body>An object node that accepts a separate element of the output collection during each of the multiple executions of the region. The values are formed into a collection that is available when the execution of the region is complete.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEeolsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEeol8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M47Dl9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M47DmNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEeomMWCEdqI1bY5Lwi8Hg" name="inputElement" type="_hEeogMWCEdqI1bY5Lwi8Hg" association="_hEeoyMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeomcWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeomMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M47DmdxmEdqEPrOCkNZ5Vg" name="inputElement" type="_M47DgdxmEdqEPrOCkNZ5Vg" association="_M5E0iNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M47DmtxmEdqEPrOCkNZ5Vg" annotatedElement="_M47DmdxmEdqEPrOCkNZ5Vg">
<body>An object node that holds a separate element of the input collection during each of the multiple executions of the region.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEeomsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEeom8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M47Dm9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M47DnNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g8IlAsWCEdqI1bY5Lwi8Hg" name="ExecutableNode" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8IlA8WCEdqI1bY5Lwi8Hg" annotatedElement="_g8IlAsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_MyXveNxmEdqEPrOCkNZ5Vg" name="ExecutableNode" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyXvedxmEdqEPrOCkNZ5Vg" annotatedElement="_MyXveNxmEdqEPrOCkNZ5Vg">
<body>An executable node is an abstract class for activity nodes that may be executed. It is used as an attachment point for exception handlers.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8IlBMWCEdqI1bY5Lwi8Hg" general="_g7-z5cWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEeonMWCEdqI1bY5Lwi8Hg" name="handler" type="_hEeooMWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hEeoycWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeoncWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeonMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyXvetxmEdqEPrOCkNZ5Vg" general="_MyN-cNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M47DndxmEdqEPrOCkNZ5Vg" name="handler" type="_M5E0YNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M5E0idxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M47DntxmEdqEPrOCkNZ5Vg" annotatedElement="_M47DndxmEdqEPrOCkNZ5Vg">
<body>A set of exception handlers that are examined if an uncaught exception propagates to the outer level of the executable node.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEeonsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEeon8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M47Dn9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M47DoNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hEeooMWCEdqI1bY5Lwi8Hg" name="ExceptionHandler">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeoocWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeooMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5E0YNxmEdqEPrOCkNZ5Vg" name="ExceptionHandler">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0YdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0YNxmEdqEPrOCkNZ5Vg">
<body>An exception handler is an element that specifies a body to execute in case the specified exception occurs during the execution of the protected node.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEeoosWCEdqI1bY5Lwi8Hg" name="exception_body" constrainedElement="_hEeooMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeoo8WCEdqI1bY5Lwi8Hg" annotatedElement="_hEeoosWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5E0YtxmEdqEPrOCkNZ5Vg" name="exception_body" constrainedElement="_M5E0YNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0Y9xmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0YtxmEdqEPrOCkNZ5Vg">
<body>The exception handler and its input object node are not the source or target of any edge.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEeopMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5E0ZNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEeopcWCEdqI1bY5Lwi8Hg" name="result_pins" constrainedElement="_hEeooMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeopsWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeopcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5E0ZdxmEdqEPrOCkNZ5Vg" name="result_pins" constrainedElement="_M5E0YNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0ZtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0ZdxmEdqEPrOCkNZ5Vg">
<body>The result pins of the exception handler body must correspond in number and types to the result pins of the protected node.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEeop8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5E0Z9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEeoqMWCEdqI1bY5Lwi8Hg" name="one_input" constrainedElement="_hEeooMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeoqcWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeoqMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5E0aNxmEdqEPrOCkNZ5Vg" name="one_input" constrainedElement="_M5E0YNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0adxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0aNxmEdqEPrOCkNZ5Vg">
<body>The handler body has one input, and that input is the same as the exception input.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEeoqsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5E0atxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEeoq8WCEdqI1bY5Lwi8Hg" name="edge_source_target" constrainedElement="_hEeooMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeorMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeoq8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5E0a9xmEdqEPrOCkNZ5Vg" name="edge_source_target" constrainedElement="_M5E0YNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0bNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0a9xmEdqEPrOCkNZ5Vg">
<body>An edge that has a source in an exception handler structured node must have its target in the handler also, and vice versa.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEeorcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5E0bdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hEeorsWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEeor8WCEdqI1bY5Lwi8Hg" name="protectedNode" type="_g8IlAsWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_hEeoycWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeosMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeor8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5E0btxmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5E0b9xmEdqEPrOCkNZ5Vg" name="protectedNode" type="_MyXveNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_M5E0idxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0cNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0b9xmEdqEPrOCkNZ5Vg">
<body>The node protected by the handler. The handler is examined if an exception propagates to the outside of the node.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEeoscWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEeossWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5E0cdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5E0ctxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEeos8WCEdqI1bY5Lwi8Hg" name="handlerBody" type="_g8IlAsWCEdqI1bY5Lwi8Hg" association="_hEeoy8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeotMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeos8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5E0c9xmEdqEPrOCkNZ5Vg" name="handlerBody" type="_MyXveNxmEdqEPrOCkNZ5Vg" association="_M5E0i9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0dNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0c9xmEdqEPrOCkNZ5Vg">
<body>A node that is executed if the handler satisfies an uncaught exception.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEeotcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEeotsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5E0ddxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5E0dtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEeot8WCEdqI1bY5Lwi8Hg" name="exceptionInput" type="_g9LGoMWCEdqI1bY5Lwi8Hg" association="_hEeozcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeouMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeot8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5E0d9xmEdqEPrOCkNZ5Vg" name="exceptionInput" type="_MzHWktxmEdqEPrOCkNZ5Vg" association="_M5E0jdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0eNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0d9xmEdqEPrOCkNZ5Vg">
<body>An object node within the handler body. When the handler catches an exception, the exception token is placed in this node, causing the body to execute.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEeoucWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEeousWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5E0edxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5E0etxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEeou8WCEdqI1bY5Lwi8Hg" name="exceptionType" type="_6UV2QGwJEdq7X4sGURiZYA" association="_hEeoz8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeovMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeou8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5E0e9xmEdqEPrOCkNZ5Vg" name="exceptionType" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M5E0j9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0fNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0e9xmEdqEPrOCkNZ5Vg">
<body>The kind of instances that the handler catches. If an exception occurs whose type is any of the classifiers in the set, the handler catches the exception and executes its body.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEeovcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEeovsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5E0fdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5E0ftxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Enumeration" xmi:id="_hEeov8WCEdqI1bY5Lwi8Hg" name="ExpansionKind">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeowMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeov8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_M5E0f9xmEdqEPrOCkNZ5Vg" name="ExpansionKind">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0gNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0f9xmEdqEPrOCkNZ5Vg">
<body>ExpansionKind is an enumeration type used to specify how multiple executions of an expansion region interact.</body>
</ownedComment>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hEeowcWCEdqI1bY5Lwi8Hg" name="parallel">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeowsWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeowcWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M5E0gdxmEdqEPrOCkNZ5Vg" name="parallel">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0gtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0gdxmEdqEPrOCkNZ5Vg">
<body>The executions are independent. They may be executed concurrently.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hEeow8WCEdqI1bY5Lwi8Hg" name="iterative">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeoxMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeow8WCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M5E0g9xmEdqEPrOCkNZ5Vg" name="iterative">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0hNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0g9xmEdqEPrOCkNZ5Vg">
<body>The executions are dependent and must be executed one at a time, in order of the collection elements.</body>
</ownedComment>
</ownedLiteral>
- <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_hEeoxcWCEdqI1bY5Lwi8Hg" name="stream">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeoxsWCEdqI1bY5Lwi8Hg" annotatedElement="_hEeoxcWCEdqI1bY5Lwi8Hg">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_M5E0hdxmEdqEPrOCkNZ5Vg" name="stream">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0htxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0hdxmEdqEPrOCkNZ5Vg">
<body>A stream of collection elements flows into a single execution, in order of the collection elements.</body>
</ownedComment>
</ownedLiteral>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEeox8WCEdqI1bY5Lwi8Hg" name="A_outputElement_regionAsOutput" memberEnd="_hEeolMWCEdqI1bY5Lwi8Hg _hEeog8WCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEeoyMWCEdqI1bY5Lwi8Hg" name="A_inputElement_regionAsInput" memberEnd="_hEeomMWCEdqI1bY5Lwi8Hg _hEeoh8WCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEeoycWCEdqI1bY5Lwi8Hg" name="A_handler_protectedNode" memberEnd="_hEeonMWCEdqI1bY5Lwi8Hg _hEeor8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hEeoysWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5E0h9xmEdqEPrOCkNZ5Vg" name="A_outputElement_regionAsOutput" memberEnd="_M47DhNxmEdqEPrOCkNZ5Vg _M47DldxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5E0iNxmEdqEPrOCkNZ5Vg" name="A_inputElement_regionAsInput" memberEnd="_M47DmdxmEdqEPrOCkNZ5Vg _M47DiNxmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5E0idxmEdqEPrOCkNZ5Vg" name="A_handler_protectedNode" memberEnd="_M47DndxmEdqEPrOCkNZ5Vg _M5E0b9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5E0itxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEeoy8WCEdqI1bY5Lwi8Hg" name="A_handlerBody_exceptionHandler" memberEnd="_hEeos8WCEdqI1bY5Lwi8Hg _hEeozMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEeozMWCEdqI1bY5Lwi8Hg" type="_hEeooMWCEdqI1bY5Lwi8Hg" association="_hEeoy8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5E0i9xmEdqEPrOCkNZ5Vg" name="A_handlerBody_exceptionHandler" memberEnd="_M5E0c9xmEdqEPrOCkNZ5Vg _M5E0jNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M5E0jNxmEdqEPrOCkNZ5Vg" type="_M5E0YNxmEdqEPrOCkNZ5Vg" association="_M5E0i9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEeozcWCEdqI1bY5Lwi8Hg" name="A_exceptionInput_exceptionHandler" memberEnd="_hEeot8WCEdqI1bY5Lwi8Hg _hEeozsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEeozsWCEdqI1bY5Lwi8Hg" type="_hEeooMWCEdqI1bY5Lwi8Hg" association="_hEeozcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5E0jdxmEdqEPrOCkNZ5Vg" name="A_exceptionInput_exceptionHandler" memberEnd="_M5E0d9xmEdqEPrOCkNZ5Vg _M5E0jtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M5E0jtxmEdqEPrOCkNZ5Vg" type="_M5E0YNxmEdqEPrOCkNZ5Vg" association="_M5E0jdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEeoz8WCEdqI1bY5Lwi8Hg" name="A_exceptionType_exceptionHandler" memberEnd="_hEeou8WCEdqI1bY5Lwi8Hg _hEeo0MWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEeo0MWCEdqI1bY5Lwi8Hg" type="_hEeooMWCEdqI1bY5Lwi8Hg" association="_hEeoz8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5E0j9xmEdqEPrOCkNZ5Vg" name="A_exceptionType_exceptionHandler" memberEnd="_M5E0e9xmEdqEPrOCkNZ5Vg _M5E0kNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M5E0kNxmEdqEPrOCkNZ5Vg" type="_M5E0YNxmEdqEPrOCkNZ5Vg" association="_M5E0j9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_DAbfwa69EdqjppZik4kD8A" name="Component">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92Y8WCEdqI1bY5Lwi8Hg" annotatedElement="_DAbfwa69EdqjppZik4kD8A">
- <body>A component is a subtype of Class which provides for a Component having attributes and operations, and being able to participate in Associations and Generalizations. A Component may form the abstraction for a set of realizingClassifiers that realize its behavior. In addition, because a Class itself is a subtype of an EncapsulatedClassifier, a Component may optionally have an internal structure and own a set of Ports that formalize its interaction points.
-
-
-
-A component has a number of provided and required Interfaces, that form the basis for wiring components together, either using Dependencies, or by using Connectors. A provided Interface is one that is either implemented directly by the component or one of its realizingClassifiers, or it is the type of a provided Port of the Component. A required interface is designated by a Usage Dependency from the Component or one of its realizingClassifiers, or it is the type of a required Port.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaF9xmEdqEPrOCkNZ5Vg" annotatedElement="_DAbfwa69EdqjppZik4kD8A">
+ <body>A component is a subtype of Class which provides for a Component having attributes and operations, and being able to participate in Associations and Generalizations. A Component may form the abstraction for a set of realizingClassifiers that realize its behavior. In addition, because a Class itself is a subtype of an EncapsulatedClassifier, a Component may optionally have an internal structure and own a set of Ports that formalize its interaction points.&#xD;
+&#xD;
+A component has a number of provided and required Interfaces, that form the basis for wiring components together, either using Dependencies, or by using Connectors. A provided Interface is one that is either implemented directly by the component or one of its realizingClassifiers, or it is the type of a provided Port of the Component. A required interface is designated by a Usage Dependency from the Component or one of its realizingClassifiers, or it is the type of a required Port.&#xD;
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-92ZMWCEdqI1bY5Lwi8Hg" general="_00owUGvdEdq4DLWZOhbdEA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hEeo0cWCEdqI1bY5Lwi8Hg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-92ZsWCEdqI1bY5Lwi8Hg" name="isIndirectlyInstantiated" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92Z8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-92ZsWCEdqI1bY5Lwi8Hg">
- <body>The kind of instantiation that applies to a Component. If false, the component is instantiated as an addressable object. If true, the Component is defined at design-time, but at runtime (or execution-time) an object specified by the Component does not exist, that is, the component is instantiated indirectly, through the instantiation of its realizing classifiers or parts. Several standard stereotypes use this meta attribute, e.g. «specification, «focus», «subsystem».</body>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1MaGNxmEdqEPrOCkNZ5Vg" general="_00owUGvdEdq4DLWZOhbdEA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5E0kdxmEdqEPrOCkNZ5Vg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1MaGtxmEdqEPrOCkNZ5Vg" name="isIndirectlyInstantiated" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaG9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaGtxmEdqEPrOCkNZ5Vg">
+ <body>The kind of instantiation that applies to a Component. If false, the component is instantiated as an addressable object. If true, the Component is defined at design-time, but at runtime (or execution-time) an object specified by the Component does not exist, that is, the component is instantiated indirectly, through the instantiation of its realizing classifiers or parts. Several standard stereotypes use this meta attribute, e.g. «specification», «focus», «subsystem».</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g-92aMWCEdqI1bY5Lwi8Hg" value="true"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M1MaHNxmEdqEPrOCkNZ5Vg" value="true"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-92acWCEdqI1bY5Lwi8Hg" name="required" type="_8Ugn8GvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" association="_g-92usWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92asWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92acWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1MaHdxmEdqEPrOCkNZ5Vg" name="required" type="_8Ugn8GvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" association="_M1WK9txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaHtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaHdxmEdqEPrOCkNZ5Vg">
<body>The interfaces that the component requires from other components in its environment in order to be able to offer its full set of provided functionality. These interfaces may be Used by the Component or any of its realizingClassifiers, or they may be the Interfaces that are required by its public Ports.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-92a8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-92bMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaH9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaINxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-92bcWCEdqI1bY5Lwi8Hg" name="provided" type="_8Ugn8GvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" association="_g-92vMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92bsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92bcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1MaIdxmEdqEPrOCkNZ5Vg" name="provided" type="_8Ugn8GvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" association="_M1WK-NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaItxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaIdxmEdqEPrOCkNZ5Vg">
<body>The interfaces that the component exposes to its environment. These interfaces may be Realized by the Component or any of its realizingClassifiers, or they may be the Interfaces that are provided by its public Ports.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-92b8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-92cMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaI9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaJNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-92ccWCEdqI1bY5Lwi8Hg" name="realization" type="_g-92kcWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g-92vsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92csWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92ccWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1MaJdxmEdqEPrOCkNZ5Vg" name="realization" type="_M1MaRdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M1WK-txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaJtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaJdxmEdqEPrOCkNZ5Vg">
<body>The set of Realizations owned by the Component. Realizations reference the Classifiers of which the Component is an abstraction; i.e., that realize its behavior.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-92c8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-92dMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaJ9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaKNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEeo0sWCEdqI1bY5Lwi8Hg" name="packagedElement" type="_jKxnwGwLEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_hEnycMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEeo08WCEdqI1bY5Lwi8Hg" annotatedElement="_hEeo0sWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5E0ktxmEdqEPrOCkNZ5Vg" name="packagedElement" type="_jKxnwGwLEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M5E0ltxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0k9xmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0ktxmEdqEPrOCkNZ5Vg">
<body>The set of PackageableElements that a Component owns. In the namespace of a component, all model elements that are involved in or related to its definition may be owned or imported explicitly. These may include e.g. Classes, Interfaces, Components, Packages, Use cases, Dependencies (e.g. mappings), and Artifacts.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEeo1MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEeo1cWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5E0lNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5E0ldxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_IJwKAK69EdqjppZik4kD8A" name="createOwnedClass">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_IJwKAa69EdqjppZik4kD8A" type="_00owUGvdEdq4DLWZOhbdEA" direction="return"/>
@@ -12258,243 +11996,236 @@ A component has a number of provided and required Interfaces, that form the basi
<ownedParameter xmi:type="uml:Parameter" xmi:id="_IJwKC669EdqjppZik4kD8A" type="_8Ugn8GvtEdqG6fBIPwe-mw" direction="return"/>
<ownedParameter xmi:type="uml:Parameter" xmi:id="_IJwKDK69EdqjppZik4kD8A" name="name" type="_aAyVgGvsEdqG6fBIPwe-mw" effect="read"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g-92dcWCEdqI1bY5Lwi8Hg" name="realizedInterfaces" isQuery="true" bodyCondition="_g-92d8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92dsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92dcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M1MaKdxmEdqEPrOCkNZ5Vg" name="realizedInterfaces" isQuery="true" bodyCondition="_M1MaK9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaKtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaKdxmEdqEPrOCkNZ5Vg">
<body>Utility returning the set of realized interfaces of a component:</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-92d8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g-92dcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-92eMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1MaK9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M1MaKdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1MaLNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = (classifier.clientDependency->&#xA;select(dependency|dependency.oclIsKindOf(Realization) and dependency.supplier.oclIsKindOf(Interface)))->&#xA;collect(dependency|dependency.client)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g-92ecWCEdqI1bY5Lwi8Hg" type="_8Ugn8GvtEdqG6fBIPwe-mw" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-92esWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-92e8WCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M1MaLdxmEdqEPrOCkNZ5Vg" type="_8Ugn8GvtEdqG6fBIPwe-mw" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaLtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaL9xmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g-92fMWCEdqI1bY5Lwi8Hg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" effect="read"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M1MaMNxmEdqEPrOCkNZ5Vg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" effect="read"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g-92fcWCEdqI1bY5Lwi8Hg" name="usedInterfaces" isQuery="true" bodyCondition="_g-92f8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-92fsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-92fcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M1MaMdxmEdqEPrOCkNZ5Vg" name="usedInterfaces" isQuery="true" bodyCondition="_M1MaM9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1MaMtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1MaMdxmEdqEPrOCkNZ5Vg">
<body>Utility returning the set of used interfaces of a component:</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-92f8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g-92fcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-92gMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1MaM9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M1MaMdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1MaNNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = (classifier.supplierDependency->&#xA;select(dependency|dependency.oclIsKindOf(Usage) and dependency.supplier.oclIsKindOf(interface)))->&#xA;collect(dependency|dependency.supplier)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g-92gcWCEdqI1bY5Lwi8Hg" type="_8Ugn8GvtEdqG6fBIPwe-mw" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-92gsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-92g8WCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M1MaNdxmEdqEPrOCkNZ5Vg" type="_8Ugn8GvtEdqG6fBIPwe-mw" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaNtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaN9xmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g-92hMWCEdqI1bY5Lwi8Hg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" effect="read"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M1MaONxmEdqEPrOCkNZ5Vg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" effect="read"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g-92hcWCEdqI1bY5Lwi8Hg" name="required" isQuery="true" bodyCondition="_g-92hsWCEdqI1bY5Lwi8Hg">
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-92hsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g-92hcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-92h8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M1MaOdxmEdqEPrOCkNZ5Vg" name="required" isQuery="true" bodyCondition="_M1MaOtxmEdqEPrOCkNZ5Vg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1MaOtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M1MaOdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1MaO9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>result = let usedInterfaces = UsedInterfaces(self) and&#xA;&#xA; let realizingClassifierUsedInterfaces = UsedInterfaces(self.realizingClassifier) and&#xA;&#xA; let typesOfUsedPorts = self.ownedPort.required in&#xA;&#xA; ((usedInterfaces->union(realizingClassifierUsedInterfaces))->&#xA;&#xA; union(typesOfUsedPorts))->asSet()</body>
+ <body>result = let usedInterfaces = UsedInterfaces(self) and&#xD;&#xA; let realizingClassifierUsedInterfaces = UsedInterfaces(self.realizingClassifier) and&#xD;&#xA; let typesOfUsedPorts = self.ownedPort.required in&#xD;&#xA; ((usedInterfaces->union(realizingClassifierUsedInterfaces))->&#xD;&#xA; union(typesOfUsedPorts))->asSet()</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g-92iMWCEdqI1bY5Lwi8Hg" type="_8Ugn8GvtEdqG6fBIPwe-mw" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-92icWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-92isWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M1MaPNxmEdqEPrOCkNZ5Vg" type="_8Ugn8GvtEdqG6fBIPwe-mw" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaPdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaPtxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g-92i8WCEdqI1bY5Lwi8Hg" name="provided" isQuery="true" bodyCondition="_g-92jMWCEdqI1bY5Lwi8Hg">
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-92jMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g-92i8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-92jcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M1MaP9xmEdqEPrOCkNZ5Vg" name="provided" isQuery="true" bodyCondition="_M1MaQNxmEdqEPrOCkNZ5Vg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1MaQNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M1MaP9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1MaQdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>result = let implementedInterfaces = self.implementation->collect(impl|impl.contract) and&#xA;&#xA; let realizedInterfaces = RealizedInterfaces(self) and&#xA;&#xA; let realizingClassifierInterfaces = RealizedInterfaces(self.realizingClassifier) and&#xA;&#xA; let typesOfRequiredPorts = self.ownedPort.provided in&#xA;&#xA; (((implementedInterfaces->union(realizedInterfaces)->union(realizingClassifierInterfaces))->&#xA;&#xA; union(typesOfRequiredPorts))->asSet()</body>
+ <body>result = let implementedInterfaces = self.implementation->collect(impl|impl.contract) and&#xD;&#xA; let realizedInterfaces = RealizedInterfaces(self) and&#xD;&#xA; let realizingClassifierInterfaces = RealizedInterfaces(self.realizingClassifier) and&#xD;&#xA; let typesOfRequiredPorts = self.ownedPort.provided in&#xD;&#xA; (((implementedInterfaces->union(realizedInterfaces)->union(realizingClassifierInterfaces))->&#xD;&#xA; union(typesOfRequiredPorts))->asSet()</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g-92jsWCEdqI1bY5Lwi8Hg" type="_8Ugn8GvtEdqG6fBIPwe-mw" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-92j8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-92kMWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M1MaQtxmEdqEPrOCkNZ5Vg" type="_8Ugn8GvtEdqG6fBIPwe-mw" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1MaQ9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1MaRNxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEnycMWCEdqI1bY5Lwi8Hg" name="A_component_packagedElement" memberEnd="_hEeo0sWCEdqI1bY5Lwi8Hg _hEnycsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hEnyccWCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hEnycsWCEdqI1bY5Lwi8Hg" type="_DAbfwa69EdqjppZik4kD8A" association="_hEnycMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEnyc8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEnydMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5E0ltxmEdqEPrOCkNZ5Vg" name="A_component_packagedElement" memberEnd="_M5E0ktxmEdqEPrOCkNZ5Vg _M5E0mNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5E0l9xmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M5E0mNxmEdqEPrOCkNZ5Vg" type="_DAbfwa69EdqjppZik4kD8A" association="_M5E0ltxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5E0mdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5E0mtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g_HAlsWCEdqI1bY5Lwi8Hg" name="Deployment">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HAl8WCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAlsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M1WLQ9xmEdqEPrOCkNZ5Vg" name="Deployment">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLRNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLQ9xmEdqEPrOCkNZ5Vg">
<body>In the metamodel, Deployment is a subtype of Dependency.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnydcWCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAlsWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0m9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLQ9xmEdqEPrOCkNZ5Vg">
<body>A component deployment is the deployment of one or more artifacts or artifact instances to a deployment target, optionally parameterized by a deployment specification. Examples are executables and configuration files.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_HAmMWCEdqI1bY5Lwi8Hg" general="_rEDGkGwKEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_HAmcWCEdqI1bY5Lwi8Hg" name="deployedArtifact" type="_g_QxZ8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g8Ru-sWCEdqI1bY5Lwi8Hg" association="_g_QxgMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HAmsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAmcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1WLRdxmEdqEPrOCkNZ5Vg" general="_rEDGkGwKEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1WLRtxmEdqEPrOCkNZ5Vg" name="deployedArtifact" type="_M1f8AdxmEdqEPrOCkNZ5Vg" subsettedProperty="_Myg5btxmEdqEPrOCkNZ5Vg" association="_M1f8GtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLR9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLRtxmEdqEPrOCkNZ5Vg">
<body>The Artifacts that are deployed onto a Node. This association specializes the supplier association.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAm8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAnMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLSNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLSdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g_HAncWCEdqI1bY5Lwi8Hg" name="location" type="_g_QxVsWCEdqI1bY5Lwi8Hg" subsettedProperty="_g8bfwMWCEdqI1bY5Lwi8Hg" association="_g_QxhcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_HAnsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_HAncWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1WLStxmEdqEPrOCkNZ5Vg" name="location" type="_M1f78NxmEdqEPrOCkNZ5Vg" subsettedProperty="_Myg5ctxmEdqEPrOCkNZ5Vg" association="_M1f8H9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1WLS9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1WLStxmEdqEPrOCkNZ5Vg">
<body>The DeployedTarget which is the target of a Deployment.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g_HAn8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g_HAoMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1WLTNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1WLTdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEnydsWCEdqI1bY5Lwi8Hg" name="configuration" type="_hEnyesWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hEnyj8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyd8WCEdqI1bY5Lwi8Hg" annotatedElement="_hEnydsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5E0nNxmEdqEPrOCkNZ5Vg" name="configuration" type="_M5E0oNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M5E0tdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0ndxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0nNxmEdqEPrOCkNZ5Vg">
<body>The specification of properties that parameterize the deployment and execution of one or more Artifacts. This association is specialized from the ownedMember association.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEnyeMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEnyecWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5E0ntxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5E0n9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hEnyesWCEdqI1bY5Lwi8Hg" name="DeploymentSpecification">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnye8WCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyesWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5E0oNxmEdqEPrOCkNZ5Vg" name="DeploymentSpecification">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0odxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0oNxmEdqEPrOCkNZ5Vg">
<body>In the metamodel, a DeploymentSpecification is a subtype of Artifact. It defines a set of deployment properties that are specific to a certain Container type. An instance of a DeploymentSpecification with specific values for these properties may be contained in a complex Artifact.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEnyfMWCEdqI1bY5Lwi8Hg" name="deployed_elements" constrainedElement="_hEnyesWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyfcWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyfMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5E0otxmEdqEPrOCkNZ5Vg" name="deployed_elements" constrainedElement="_M5E0oNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0o9xmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0otxmEdqEPrOCkNZ5Vg">
<body>The deployedElements of a DeploymentTarget that are involved in a Deployment that has an associated Deployment-Specification is a kind of Component (i.e. the configured components).</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEnyfsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5E0pNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>self.deployment->forAll (d | d.location.deployedElements->forAll (de |&#xA;&#xA; de.oclIsKindOf(Component)))</body>
+ <body>self.deployment->forAll (d | d.location.deployedElements->forAll (de |&#xD;&#xA; de.oclIsKindOf(Component)))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEnyf8WCEdqI1bY5Lwi8Hg" name="deployment_target" constrainedElement="_hEnyesWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnygMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyf8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5E0pdxmEdqEPrOCkNZ5Vg" name="deployment_target" constrainedElement="_M5E0oNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0ptxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0pdxmEdqEPrOCkNZ5Vg">
<body>The DeploymentTarget of a DeploymentSpecification is a kind of ExecutionEnvironment.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEnygcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5E0p9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = self.deployment->forAll (d | d.location..oclIsKindOf(ExecutionEnvironment))</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hEnygsWCEdqI1bY5Lwi8Hg" general="_-lGRgHLzEdqziYxiZo0YtA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEnyg8WCEdqI1bY5Lwi8Hg" name="deploymentLocation" type="_aAyVgGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyhMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyg8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5E0qNxmEdqEPrOCkNZ5Vg" general="_-lGRgHLzEdqziYxiZo0YtA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5E0qdxmEdqEPrOCkNZ5Vg" name="deploymentLocation" type="_aAyVgGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0qtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0qdxmEdqEPrOCkNZ5Vg">
<body>The location where an Artifact is deployed onto a Node. This is typically a 'directory' or 'memory address'.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEnyhcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEnyhsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5E0q9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5E0rNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEnyh8WCEdqI1bY5Lwi8Hg" name="executionLocation" type="_aAyVgGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyiMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyh8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5E0rdxmEdqEPrOCkNZ5Vg" name="executionLocation" type="_aAyVgGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0rtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0rdxmEdqEPrOCkNZ5Vg">
<body>The location where a component Artifact executes. This may be a local or remote location.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEnyicWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEnyisWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5E0r9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5E0sNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEnyi8WCEdqI1bY5Lwi8Hg" name="deployment" type="_g_HAlsWCEdqI1bY5Lwi8Hg" association="_hEnyj8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyjMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyi8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5E0sdxmEdqEPrOCkNZ5Vg" name="deployment" type="_M1WLQ9xmEdqEPrOCkNZ5Vg" association="_M5E0tdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0stxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0sdxmEdqEPrOCkNZ5Vg">
<body>The deployment with which the DeploymentSpecification is associated.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEnyjcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEnyjsWCEdqI1bY5Lwi8Hg"/>
- </ownedAttribute>
- </packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hEnyj8WCEdqI1bY5Lwi8Hg" name="A_configuration_deployment" memberEnd="_hEnydsWCEdqI1bY5Lwi8Hg _hEnyi8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hEnykMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hEnyk8WCEdqI1bY5Lwi8Hg" name="ProtocolConformance">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnylMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyk8WCEdqI1bY5Lwi8Hg">
- <body>Protocol state machines can be redefined into more specific protocol state machines, or into behavioral state machines.
-
-
-
-Protocol conformance declares that the specific protocol state machine specifies a protocol that conforms to the general state machine one, or that the specific behavioral state machine abide by the protocol of the general protocol state machine.
-
-
-
-A protocol state machine is owned by a classifier. The classifiers owning a general state machine and an associated specific state machine are generally also connected by a generalization or a realization link.
-
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5E0s9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5E0tNxmEdqEPrOCkNZ5Vg"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5E0tdxmEdqEPrOCkNZ5Vg" name="A_configuration_deployment" memberEnd="_M5E0nNxmEdqEPrOCkNZ5Vg _M5E0sdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5E0ttxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5E0udxmEdqEPrOCkNZ5Vg" name="ProtocolConformance">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0utxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0udxmEdqEPrOCkNZ5Vg">
+ <body>Protocol state machines can be redefined into more specific protocol state machines, or into behavioral state machines.&#xD;
+&#xD;
+Protocol conformance declares that the specific protocol state machine specifies a protocol that conforms to the general state machine one, or that the specific behavioral state machine abide by the protocol of the general protocol state machine.&#xD;
+&#xD;
+A protocol state machine is owned by a classifier. The classifiers owning a general state machine and an associated specific state machine are generally also connected by a generalization or a realization link.&#xD;
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hEnylcWCEdqI1bY5Lwi8Hg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEnylsWCEdqI1bY5Lwi8Hg" name="specificMachine" type="_hEnywMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DFMWCEdqI1bY5Lwi8Hg _g01DJ8WCEdqI1bY5Lwi8Hg" association="_hExjdsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyl8WCEdqI1bY5Lwi8Hg" annotatedElement="_hEnylsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5E0u9xmEdqEPrOCkNZ5Vg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5E0vNxmEdqEPrOCkNZ5Vg" name="specificMachine" type="_M5N-bdxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsGvrdxmEdqEPrOCkNZ5Vg _MsQga9xmEdqEPrOCkNZ5Vg" association="_M5N-idxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0vdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0vNxmEdqEPrOCkNZ5Vg">
<body>Specifies the state machine which conforms to the general state machine.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEnymMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEnymcWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5E0vtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5E0v9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEnymsWCEdqI1bY5Lwi8Hg" name="generalMachine" type="_hEnywMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DGMWCEdqI1bY5Lwi8Hg" association="_hExjiMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnym8WCEdqI1bY5Lwi8Hg" annotatedElement="_hEnymsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5E0wNxmEdqEPrOCkNZ5Vg" name="generalMachine" type="_M5N-bdxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsGvsdxmEdqEPrOCkNZ5Vg" association="_M5N-m9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0wdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0wNxmEdqEPrOCkNZ5Vg">
<body>Specifies the protocol state machine to which the specific state machine conforms.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEnynMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEnyncWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5E0wtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5E0w9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_8Ugn8GvtEdqG6fBIPwe-mw" name="Interface">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQy8WCEdqI1bY5Lwi8Hg" annotatedElement="_8Ugn8GvtEdqG6fBIPwe-mw">
- <body>An interface is a kind of classifier that represents a declaration of a set of coherent public features and obligations. An interface specifies a contract; any instance of a classifier that realizes the interface must fulfill that contract. The obligations that may be associated with an interface are in the form of various kinds of constraints (such as pre- and post-conditions) or protocol specifications, which may impose ordering restrictions on interactions through the interface.
-
-Since interfaces are declarations, they are not instantiable. Instead, an interface specification is implemented by an instance of an instantiable classifier, which means that the instantiable classifier presents a public facade that conforms to the interface specification. Note that a given classifier may implement more than one interface and that an interface may be implemented by a number of different classifiers.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyqqddxmEdqEPrOCkNZ5Vg" annotatedElement="_8Ugn8GvtEdqG6fBIPwe-mw">
+ <body>An interface is a kind of classifier that represents a declaration of a set of coherent public features and obligations. An interface specifies a contract; any instance of a classifier that realizes the interface must fulfill that contract. The obligations that may be associated with an interface are in the form of various kinds of constraints (such as pre- and post-conditions) or protocol specifications, which may impose ordering restrictions on interactions through the interface.&#xD;
+Since interfaces are declarations, they are not instantiable. Instead, an interface specification is implemented by an instance of an instantiable classifier, which means that the instantiable classifier presents a public facade that conforms to the interface specification. Note that a given classifier may implement more than one interface and that an interface may be implemented by a number of different classifiers.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPocWCEdqI1bY5Lwi8Hg" annotatedElement="_8Ugn8GvtEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHTdxmEdqEPrOCkNZ5Vg" annotatedElement="_8Ugn8GvtEdqG6fBIPwe-mw">
<body>Adds the capability for interfaces to include receptions (in addition to operations).</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnynsWCEdqI1bY5Lwi8Hg" annotatedElement="_8Ugn8GvtEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0xNxmEdqEPrOCkNZ5Vg" annotatedElement="_8Ugn8GvtEdqG6fBIPwe-mw">
<body>Since an interface specifies conformance characteristics, it does not own detailed behavior specifications. Instead, interfaces may own a protocol state machine that specifies event sequences and pre/post conditions for the operations and receptions described by the interface.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g8lQzMWCEdqI1bY5Lwi8Hg" name="visibility" constrainedElement="_8Ugn8GvtEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQzcWCEdqI1bY5Lwi8Hg" annotatedElement="_g8lQzMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MyqqdtxmEdqEPrOCkNZ5Vg" name="visibility" constrainedElement="_8Ugn8GvtEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myqqd9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyqqdtxmEdqEPrOCkNZ5Vg">
<body>The visibility of all features owned by an interface must be public.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g8lQzsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MyqqeNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.feature->forAll(f | f.visibility = #public)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8lQz8WCEdqI1bY5Lwi8Hg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8lQ0MWCEdqI1bY5Lwi8Hg" name="ownedAttribute" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g0iIAMWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg" association="_g8uasMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQ0cWCEdqI1bY5Lwi8Hg" annotatedElement="_g8lQ0MWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MyqqedxmEdqEPrOCkNZ5Vg" general="_6UV2QGwJEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyqqetxmEdqEPrOCkNZ5Vg" name="ownedAttribute" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_Mrz0ctxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg" association="_Myqqn9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myqqe9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyqqetxmEdqEPrOCkNZ5Vg">
<body>The attributes (i.e. the properties) owned by the class.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8lQ0sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8lQ08WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqfNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyqqfdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8lQ1MWCEdqI1bY5Lwi8Hg" name="ownedOperation" type="_M4X2IGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g0iIBMWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg" association="_g8uatsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQ1cWCEdqI1bY5Lwi8Hg" annotatedElement="_g8lQ1MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyqqftxmEdqEPrOCkNZ5Vg" name="ownedOperation" type="_M4X2IGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_Mrz0dtxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg" association="_MyqqpdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myqqf9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyqqftxmEdqEPrOCkNZ5Vg">
<body>The operations owned by the class.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8lQ1sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8lQ18WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqgNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyqqgdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8lQ2MWCEdqI1bY5Lwi8Hg" name="nestedClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" isOrdered="true" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g8uawsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQ2cWCEdqI1bY5Lwi8Hg" annotatedElement="_g8lQ2MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyqqgtxmEdqEPrOCkNZ5Vg" name="nestedClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" isOrdered="true" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_MyqqsdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myqqg9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyqqgtxmEdqEPrOCkNZ5Vg">
<body>References all the Classifiers that are defined (nested) within the Class.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8lQ2sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8lQ28WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqhNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyqqhdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8lQ3MWCEdqI1bY5Lwi8Hg" name="redefinedInterface" type="_8Ugn8GvtEdqG6fBIPwe-mw" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_g8uayMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQ3cWCEdqI1bY5Lwi8Hg" annotatedElement="_g8lQ3MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MyqqhtxmEdqEPrOCkNZ5Vg" name="redefinedInterface" type="_8Ugn8GvtEdqG6fBIPwe-mw" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_Myqqt9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myqqh9xmEdqEPrOCkNZ5Vg" annotatedElement="_MyqqhtxmEdqEPrOCkNZ5Vg">
<body>References all the Interfaces redefined by this Interface.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8lQ3sWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8lQ38WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqiNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyqqidxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-OPosWCEdqI1bY5Lwi8Hg" name="ownedReception" type="_g-OPpsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g0iIBMWCEdqI1bY5Lwi8Hg _g1H95MWCEdqI1bY5Lwi8Hg" association="_g-XZhMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OPo8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-OPosWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M0AHTtxmEdqEPrOCkNZ5Vg" name="ownedReception" type="_M0AHUtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_Mrz0dtxmEdqEPrOCkNZ5Vg _MsaRdtxmEdqEPrOCkNZ5Vg" association="_M0wVJNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHT9xmEdqEPrOCkNZ5Vg" annotatedElement="_M0AHTtxmEdqEPrOCkNZ5Vg">
<body>Receptions that objects providing this interface are willing to accept.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-OPpMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-OPpcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M0AHUNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M0AHUdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEnyn8WCEdqI1bY5Lwi8Hg" name="protocol" type="_hEnywMWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_hExjgsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyoMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyn8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5E0xdxmEdqEPrOCkNZ5Vg" name="protocol" type="_M5N-bdxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M5N-ldxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5E0xtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5E0xdxmEdqEPrOCkNZ5Vg">
<body>References a protocol state machine specifying the legal sequences of the invocation of the behavioral features described in the interface.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEnyocWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEnyosWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5E0x9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5E0yNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_FzLo0HL0EdqziYxiZo0YtA" name="createOwnedOperation">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_FzLo0XL0EdqziYxiZo0YtA" type="_M4X2IGveEdq4DLWZOhbdEA" direction="return"/>
@@ -12530,96 +12261,92 @@ Since interfaces are declarations, they are not instantiable. Instead, an interf
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ZAuvEGveEdq4DLWZOhbdEA" name="Port">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FZcWCEdqI1bY5Lwi8Hg" annotatedElement="_ZAuvEGveEdq4DLWZOhbdEA">
- <body>Ports represent interaction points between a classifier and its environment. The interfaces associated with a port specify the nature of the interactions that may occur over a port. The required interfaces of a port characterize the requests which may be made from the classifier to its environment through this port. The provided interfaces of a port characterize requests to the classifier that its environment may make through this port.
-
-
-
-A port has the ability to specify that any requests arriving at this port are handled by the behavior of the instance of the owning classifier, rather than being forwarded to any contained instances, if any.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQI9xmEdqEPrOCkNZ5Vg" annotatedElement="_ZAuvEGveEdq4DLWZOhbdEA">
+ <body>Ports represent interaction points between a classifier and its environment. The interfaces associated with a port specify the nature of the interactions that may occur over a port. The required interfaces of a port characterize the requests which may be made from the classifier to its environment through this port. The provided interfaces of a port characterize requests to the classifier that its environment may make through this port.&#xD;
+&#xD;
+A port has the ability to specify that any requests arriving at this port are handled by the behavior of the instance of the owning classifier, rather than being forwarded to any contained instances, if any.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyo8WCEdqI1bY5Lwi8Hg" annotatedElement="_ZAuvEGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-UNxmEdqEPrOCkNZ5Vg" annotatedElement="_ZAuvEGveEdq4DLWZOhbdEA">
<body>Port is defined as a specialization of the general Port, adding an association to a protocol state machine.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-0FZsWCEdqI1bY5Lwi8Hg" name="required_interfaces" constrainedElement="_ZAuvEGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FZ8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-0FZsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1DQJNxmEdqEPrOCkNZ5Vg" name="required_interfaces" constrainedElement="_ZAuvEGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQJdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQJNxmEdqEPrOCkNZ5Vg">
<body>The required interfaces of a port must be provided by elements to which the port is connected.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-0FaMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1DQJtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-0FacWCEdqI1bY5Lwi8Hg" name="port_aggregation" constrainedElement="_ZAuvEGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FasWCEdqI1bY5Lwi8Hg" annotatedElement="_g-0FacWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1DQJ9xmEdqEPrOCkNZ5Vg" name="port_aggregation" constrainedElement="_ZAuvEGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQKNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQJ9xmEdqEPrOCkNZ5Vg">
<body>Port.aggregation must be composite.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-0Fa8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1DQKdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-0FbMWCEdqI1bY5Lwi8Hg" name="port_destroyed" constrainedElement="_ZAuvEGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FbcWCEdqI1bY5Lwi8Hg" annotatedElement="_g-0FbMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1DQKtxmEdqEPrOCkNZ5Vg" name="port_destroyed" constrainedElement="_ZAuvEGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQK9xmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQKtxmEdqEPrOCkNZ5Vg">
<body>When a port is destroyed, all connectors attached to this port will be destroyed also.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-0FbsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1DQLNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g-0Fb8WCEdqI1bY5Lwi8Hg" name="default_value" constrainedElement="_ZAuvEGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FcMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-0Fb8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1DQLdxmEdqEPrOCkNZ5Vg" name="default_value" constrainedElement="_ZAuvEGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQLtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQLdxmEdqEPrOCkNZ5Vg">
<body>A defaultValue for port cannot be specified when the type of the Port is an Interface</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g-0FccWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1DQL9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g-0FcsWCEdqI1bY5Lwi8Hg" general="_Jp_1oGveEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-0Fc8WCEdqI1bY5Lwi8Hg" name="isBehavior" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FdMWCEdqI1bY5Lwi8Hg" annotatedElement="_g-0Fc8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1DQMNxmEdqEPrOCkNZ5Vg" general="_Jp_1oGveEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1DQMdxmEdqEPrOCkNZ5Vg" name="isBehavior" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQMtxmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQMdxmEdqEPrOCkNZ5Vg">
<body>Specifies whether requests arriving at this port are sent to the classifier behavior of this classifier. Such ports are referred to as behavior port. Any invocation of a behavioral feature targeted at a behavior port will be handled by the instance of the owning classifier itself, rather than by any instances that this classifier may contain.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g-0FdcWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M1DQM9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-0FdsWCEdqI1bY5Lwi8Hg" name="isService" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0Fd8WCEdqI1bY5Lwi8Hg" annotatedElement="_g-0FdsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1DQNNxmEdqEPrOCkNZ5Vg" name="isService" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQNdxmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQNNxmEdqEPrOCkNZ5Vg">
<body>If true indicates that this port is used to provide the published functionality of a classifier; if false, this port is used to implement the classifier but is not part of the essential externally-visible functionality of the classifier and can, therefore, be altered or deleted along with the internal implementation of the classifier and other properties that are considered part of its implementation.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g-0FeMWCEdqI1bY5Lwi8Hg" value="true"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M1DQNtxmEdqEPrOCkNZ5Vg" value="true"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-0FecWCEdqI1bY5Lwi8Hg" name="required" type="_8Ugn8GvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" association="_g-0Fn8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FesWCEdqI1bY5Lwi8Hg" annotatedElement="_g-0FecWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1DQN9xmEdqEPrOCkNZ5Vg" name="required" type="_8Ugn8GvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" association="_M1MaA9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQONxmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQN9xmEdqEPrOCkNZ5Vg">
<body>References the interfaces specifying the set of operations and receptions which the classifier expects its environment to handle. This association is derived as the set of interfaces required by the type of the port or its supertypes.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-0Fe8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-0FfMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1DQOdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1DQOtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-0FfcWCEdqI1bY5Lwi8Hg" name="redefinedPort" type="_ZAuvEGveEdq4DLWZOhbdEA" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_g-0Fo8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FfsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-0FfcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1DQO9xmEdqEPrOCkNZ5Vg" name="redefinedPort" type="_ZAuvEGveEdq4DLWZOhbdEA" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_M1MaB9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQPNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQO9xmEdqEPrOCkNZ5Vg">
<body>A port may be redefined when its containing classifier is specialized. The redefining port may have additional interfaces to those that are associated with the redefined port or it may replace an interface by one of its subtypes.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-0Ff8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-0FgMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1DQPdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1DQPtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-0FgcWCEdqI1bY5Lwi8Hg" name="provided" type="_8Ugn8GvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" association="_g-0FqMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-0FgsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-0FgcWCEdqI1bY5Lwi8Hg">
- <body>References the interfaces specifying the set of operations and receptions which the classifier offers to its environment, and which it will handle either directly or by forwarding it to a part of its internal structure. This association is derived from the interfaces realized by the type of the port or by the type of the port, if the port was typed by an interface.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M1DQP9xmEdqEPrOCkNZ5Vg" name="provided" type="_8Ugn8GvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" association="_M1MaDNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1DQQNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1DQP9xmEdqEPrOCkNZ5Vg">
+ <body>References the interfaces specifying the set of operations and receptions which the classifier offers to its environment, and which it will handle either directly or by forwarding it to a part of its internal structure. This association is derived from the interfaces realized by the type of the port or by the type of the port, if the port was typed by an interface.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-0Fg8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-0FhMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M1DQQdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M1DQQtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEnypMWCEdqI1bY5Lwi8Hg" name="protocol" type="_hEnywMWCEdqI1bY5Lwi8Hg" association="_hExjecWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnypcWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnypMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5N-UdxmEdqEPrOCkNZ5Vg" name="protocol" type="_M5N-bdxmEdqEPrOCkNZ5Vg" association="_M5N-jNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-UtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-UdxmEdqEPrOCkNZ5Vg">
<body>References an optional protocol state machine which describes valid interactions at this interaction point.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEnypsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEnyp8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5N-U9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5N-VNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_gtr8cFYhEdqB6vblk3tuMA" name="getProvideds" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_jIqKEFYhEdqB6vblk3tuMA" type="_8Ugn8GvtEdqG6fBIPwe-mw" direction="return">
@@ -12634,784 +12361,750 @@ A port has the ability to specify that any requests arriving at this port are ha
</ownedParameter>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hEnyqMWCEdqI1bY5Lwi8Hg" name="ProtocolTransition">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyqcWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyqMWCEdqI1bY5Lwi8Hg">
- <body>A protocol transition (transition as specialized in the ProtocolStateMachines package) specifies a legal transition for an operation. Transitions of protocol state machines have the following information: a pre condition (guard), on trigger, and a post condition. Every protocol transition is associated to zero or one operation (referred BehavioralFeature) that belongs to the context classifier of the protocol state machine.
-
-
-
-The protocol transition specifies that the associated (referred) operation can be called for an instance in the origin state under the initial condition (guard), and that at the end of the transition, the destination state will be reached under the final condition (post).
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5N-VdxmEdqEPrOCkNZ5Vg" name="ProtocolTransition">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-VtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-VdxmEdqEPrOCkNZ5Vg">
+ <body>A protocol transition (transition as specialized in the ProtocolStateMachines package) specifies a legal transition for an operation. Transitions of protocol state machines have the following information: a pre condition (guard), on trigger, and a post condition. Every protocol transition is associated to zero or one operation (referred BehavioralFeature) that belongs to the context classifier of the protocol state machine.&#xD;
+&#xD;
+The protocol transition specifies that the associated (referred) operation can be called for an instance in the origin state under the initial condition (guard), and that at the end of the transition, the destination state will be reached under the final condition (post).&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEnyqsWCEdqI1bY5Lwi8Hg" name="belongs_to_psm" constrainedElement="_hEnyqMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyq8WCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyqsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5N-V9xmEdqEPrOCkNZ5Vg" name="belongs_to_psm" constrainedElement="_M5N-VdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-WNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-V9xmEdqEPrOCkNZ5Vg">
<body>A protocol transition always belongs to a protocol state machine.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEnyrMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5N-WdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>container.belongsToPSM()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEnyrcWCEdqI1bY5Lwi8Hg" name="associated_actions" constrainedElement="_hEnyqMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyrsWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyrcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5N-WtxmEdqEPrOCkNZ5Vg" name="associated_actions" constrainedElement="_M5N-VdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-W9xmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-WtxmEdqEPrOCkNZ5Vg">
<body>A protocol transition never has associated actions.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEnyr8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5N-XNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>effect->isEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEnysMWCEdqI1bY5Lwi8Hg" name="refers_to_operation" constrainedElement="_hEnyqMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyscWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnysMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5N-XdxmEdqEPrOCkNZ5Vg" name="refers_to_operation" constrainedElement="_M5N-VdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-XtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-XdxmEdqEPrOCkNZ5Vg">
<body>If a protocol transition refers to an operation (i. e. has a call trigger corresponding to an operation), then that operation should apply to the context classifier of the state machine of the protocol transition.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEnyssWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5N-X9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hEnys8WCEdqI1bY5Lwi8Hg" general="_hBpW8MWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEnytMWCEdqI1bY5Lwi8Hg" name="postCondition" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H97MWCEdqI1bY5Lwi8Hg" association="_hExjfcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnytcWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnytMWCEdqI1bY5Lwi8Hg">
- <body>Specifies the post condition of the transition which is the condition that should be obtained once the transition is triggered. This post condition is part of the post condition of the operation connected to the transition.
-
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5N-YNxmEdqEPrOCkNZ5Vg" general="_M2sPNtxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5N-YdxmEdqEPrOCkNZ5Vg" name="postCondition" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRftxmEdqEPrOCkNZ5Vg" association="_M5N-kNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-YtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-YdxmEdqEPrOCkNZ5Vg">
+ <body>Specifies the post condition of the transition which is the condition that should be obtained once the transition is triggered. This post condition is part of the post condition of the operation connected to the transition.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEnytsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEnyt8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5N-Y9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5N-ZNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEnyuMWCEdqI1bY5Lwi8Hg" name="referred" type="_M4X2IGveEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" association="_hExjjcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyucWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyuMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5N-ZdxmEdqEPrOCkNZ5Vg" name="referred" type="_M4X2IGveEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" association="_M5N-oNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-ZtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-ZdxmEdqEPrOCkNZ5Vg">
<body>This association refers to the associated operation. It is derived from the operation of the call trigger when applicable.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEnyusWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEnyu8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5N-Z9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5N-aNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEnyvMWCEdqI1bY5Lwi8Hg" name="preCondition" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_hBpXHMWCEdqI1bY5Lwi8Hg" association="_hExjkcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyvcWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyvMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5N-adxmEdqEPrOCkNZ5Vg" name="preCondition" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_M2sPYtxmEdqEPrOCkNZ5Vg" association="_M5XvUNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-atxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-adxmEdqEPrOCkNZ5Vg">
<body>Specifies the precondition of the transition. It specifies the condition that should be verified before triggering the transition. This guard condition added to the source state will be evaluated as part of the precondition of the operation referred by the transition if any.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEnyvsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEnyv8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5N-a9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5N-bNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hEnywMWCEdqI1bY5Lwi8Hg" name="ProtocolStateMachine">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnywcWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnywMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5N-bdxmEdqEPrOCkNZ5Vg" name="ProtocolStateMachine">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-btxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-bdxmEdqEPrOCkNZ5Vg">
<body>A protocol state machine is always defined in the context of a classifier. It specifies which operations of the classifier can be called in which state and under which condition, thus specifying the allowed call sequences on the classifier's operations. A protocol state machine presents the possible and permitted transitions on the instances of its context classifier, together with the operations which carry the transitions. In this manner, an instance lifecycle can be created for a classifier, by specifying the order in which the operations can be activated and the states through which an instance progresses during its existence.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEnywsWCEdqI1bY5Lwi8Hg" name="classifier_context" constrainedElement="_hEnywMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyw8WCEdqI1bY5Lwi8Hg" annotatedElement="_hEnywsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5N-b9xmEdqEPrOCkNZ5Vg" name="classifier_context" constrainedElement="_M5N-bdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-cNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-b9xmEdqEPrOCkNZ5Vg">
<body>A protocol state machine must only have a classifier context, not a behavioral feature context.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEnyxMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5N-cdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(not context->isEmpty( )) and specification->isEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEnyxcWCEdqI1bY5Lwi8Hg" name="protocol_transitions" constrainedElement="_hEnywMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyxsWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyxcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5N-ctxmEdqEPrOCkNZ5Vg" name="protocol_transitions" constrainedElement="_M5N-bdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-c9xmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-ctxmEdqEPrOCkNZ5Vg">
<body>All transitions of a protocol state machine must be protocol transitions. (transitions as extended by the ProtocolStateMachines package)</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEnyx8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5N-dNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>region->forAll(r | r.transition->forAll(t | t.oclIsTypeOf(ProtocolTransition)))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEnyyMWCEdqI1bY5Lwi8Hg" name="entry_exit_do" constrainedElement="_hEnywMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyycWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyyMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5N-ddxmEdqEPrOCkNZ5Vg" name="entry_exit_do" constrainedElement="_M5N-bdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-dtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-ddxmEdqEPrOCkNZ5Vg">
<body>The states of a protocol state machine cannot have entry, exit, or do activity actions.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEnyysWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5N-d9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>region->forAll(r | r.subvertex->forAll(v | v.oclIsKindOf(State) implies&#xA;(v.entry->isEmpty() and v.exit->isEmpty() and v.doActivity->isEmpty())))&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEnyy8WCEdqI1bY5Lwi8Hg" name="deep_or_shallow_history" constrainedElement="_hEnywMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyzMWCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyy8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5N-eNxmEdqEPrOCkNZ5Vg" name="deep_or_shallow_history" constrainedElement="_M5N-bdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-edxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-eNxmEdqEPrOCkNZ5Vg">
<body>Protocol state machines cannot have deep or shallow history pseudostates.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEnyzcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5N-etxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>region->forAll (r | r.subvertex->forAll (v | v.oclIsKindOf(Psuedostate) implies&#xA;((v.kind &lt;> #deepHistory) and (v.kind &lt;> #shallowHistory)))))&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hEnyzsWCEdqI1bY5Lwi8Hg" name="ports_connected" constrainedElement="_hEnywMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEnyz8WCEdqI1bY5Lwi8Hg" annotatedElement="_hEnyzsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5N-e9xmEdqEPrOCkNZ5Vg" name="ports_connected" constrainedElement="_M5N-bdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-fNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-e9xmEdqEPrOCkNZ5Vg">
<body>If two ports are connected, then the protocol state machine of the required interface (if defined) must be conformant to the protocol state machine of the provided interface (if defined).</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hEny0MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5N-fdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hEny0cWCEdqI1bY5Lwi8Hg" general="_hAv_JsWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hEny0sWCEdqI1bY5Lwi8Hg" name="conformance" type="_hEnyk8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hExjdsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hEny08WCEdqI1bY5Lwi8Hg" annotatedElement="_hEny0sWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5N-ftxmEdqEPrOCkNZ5Vg" general="_M2id69xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5N-f9xmEdqEPrOCkNZ5Vg" name="conformance" type="_M5E0udxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M5N-idxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-gNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-f9xmEdqEPrOCkNZ5Vg">
<body>Conformance between protocol state machines.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hEny1MWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hEny1cWCEdqI1bY5Lwi8Hg"/>
- </ownedAttribute>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hA5wEMWCEdqI1bY5Lwi8Hg" name="State">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wEcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wEMWCEdqI1bY5Lwi8Hg">
- <body>A state models a situation during which some (usually implicit) invariant condition holds. The invariant may represent a static situation such as an object waiting for some external event to occur. However, it can also model dynamic conditions such as the process of performing some behavior (i.e., the model element under consideration enters the state when the behavior commences and leaves it as soon as the behavior is completed). The following kinds of states are distinguished:
-
-o Simple state,
-
-o composite state, and
-
-o submachine state.
-
-A composite state is either a simple composite state (with just one region) or an orthogonal state (with more than one region).
-
-
-
-Simple state
-
-A simple state is a state that does not have substates, i.e. it has no regions and it has no submachine state machine.
-
-
-
-Composite state
-
-A composite state either contains one region or is decomposed into two or more orthogonal regions. Each region has a set of mutually exclusive disjoint subvertices and a set of transitions. A given state may only be decomposed in one of these two ways.
-
-Any state enclosed within a region of a composite state is called a substate of that composite state. It is called a direct substate when it is not contained by any other state; otherwise it is referred to as a indirect substate.
-
-Each region of a composite state may have an initial pseudostate and a final state. A transition to the enclosing state represents a transition to the initial pseudostate in each region. A newly-created object takes it's topmost default transitions, originating from the topmost initial pseudostates of each region.
-
-
-
-A transition to a final state represents the completion of behavior in the enclosing region. Completion of behavior in all orthogonal regions represents completion of behavior by the enclosing state and triggers a completion event on the enclosing state. Completion of the topmost regions of an object corresponds to its termination.
-
-
-
-An entry pseudostate is used to join an external transition terminating on that entry point to an internal transition emanating from that entry point. An exit pseudostate is used to join an internal transition terminating on that exit point to an external transition emanating from that exit point. The main purpose of such entry and exit points is to execute the state entry and exit actions respectively in between the actions that are associated with the joined transitions.
-
-
-
-Semantic variation point (default entry rule)
-
-If a transition terminates on an enclosing state and the enclosed regions do not have an initial pseudostate, the interpretation of this situation is a semantic variation point. In some interpretations, this is considered an ill-formed model. That is, in those cases the initial pseudostate is mandatory.
-
-An alternative interpretation allows this situation and it means that, when such a transition is taken, the state machine stays in the composite state, without entering any of the regions or their substates.
-
-
-
-Submachine state
-
-A submachine state specifies the insertion of the specification of a submachine state machine. The state machine that contains the submachine state is called the containing state machine. The same state machine may be a submachine more than once in the context of a single containing state machine.
-
-
-
-A submachine state is semantically equivalent to a composite state. The regions of the submachine state machine are the regions of the composite state. The entry, exit and behavior actions, and internal transitions, are defined as part of the state. Submachine state is a decomposition mechanism that allows factoring of common behaviors and their reuse.
-
-Transitions in the containing state machine can have entry/exit points of the inserted state machine as targets/sources.
-
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5N-gdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5N-gtxmEdqEPrOCkNZ5Vg"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_M2sOwNxmEdqEPrOCkNZ5Vg" name="State">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sOwdxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sOwNxmEdqEPrOCkNZ5Vg">
+ <body>A state models a situation during which some (usually implicit) invariant condition holds. The invariant may represent a static situation such as an object waiting for some external event to occur. However, it can also model dynamic conditions such as the process of performing some behavior (i.e., the model element under consideration enters the state when the behavior commences and leaves it as soon as the behavior is completed). The following kinds of states are distinguished:&#xD;
+o Simple state,&#xD;
+o composite state, and&#xD;
+o submachine state.&#xD;
+A composite state is either a simple composite state (with just one region) or an orthogonal state (with more than one region).&#xD;
+&#xD;
+Simple state&#xD;
+A simple state is a state that does not have substates, i.e. it has no regions and it has no submachine state machine.&#xD;
+&#xD;
+Composite state&#xD;
+A composite state either contains one region or is decomposed into two or more orthogonal regions. Each region has a set of mutually exclusive disjoint subvertices and a set of transitions. A given state may only be decomposed in one of these two ways. &#xD;
+Any state enclosed within a region of a composite state is called a substate of that composite state. It is called a direct substate when it is not contained by any other state; otherwise it is referred to as a indirect substate. &#xD;
+Each region of a composite state may have an initial pseudostate and a final state. A transition to the enclosing state represents a transition to the initial pseudostate in each region. A newly-created object takes it's topmost default transitions, originating from the topmost initial pseudostates of each region.&#xD;
+&#xD;
+A transition to a final state represents the completion of behavior in the enclosing region. Completion of behavior in all orthogonal regions represents completion of behavior by the enclosing state and triggers a completion event on the enclosing state. Completion of the topmost regions of an object corresponds to its termination.&#xD;
+&#xD;
+An entry pseudostate is used to join an external transition terminating on that entry point to an internal transition emanating from that entry point. An exit pseudostate is used to join an internal transition terminating on that exit point to an external transition emanating from that exit point. The main purpose of such entry and exit points is to execute the state entry and exit actions respectively in between the actions that are associated with the joined transitions.&#xD;
+&#xD;
+Semantic variation point (default entry rule)&#xD;
+If a transition terminates on an enclosing state and the enclosed regions do not have an initial pseudostate, the interpretation of this situation is a semantic variation point. In some interpretations, this is considered an ill-formed model. That is, in those cases the initial pseudostate is mandatory. &#xD;
+An alternative interpretation allows this situation and it means that, when such a transition is taken, the state machine stays in the composite state, without entering any of the regions or their substates.&#xD;
+&#xD;
+Submachine state&#xD;
+A submachine state specifies the insertion of the specification of a submachine state machine. The state machine that contains the submachine state is called the containing state machine. The same state machine may be a submachine more than once in the context of a single containing state machine.&#xD;
+&#xD;
+A submachine state is semantically equivalent to a composite state. The regions of the submachine state machine are the regions of the composite state. The entry, exit and behavior actions, and internal transitions, are defined as part of the state. Submachine state is a decomposition mechanism that allows factoring of common behaviors and their reuse.&#xD;
+Transitions in the containing state machine can have entry/exit points of the inserted state machine as targets/sources.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hExjcMWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wEMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-g9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sOwNxmEdqEPrOCkNZ5Vg">
<body>The states of protocol state machines are exposed to the users of their context classifiers. A protocol state represents an exposed stable situation of its context classifier: when an instance of the classifier is not processing any operation, users of this instance can always know its state configuration.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hA5wEsWCEdqI1bY5Lwi8Hg" name="submachine_states" constrainedElement="_hA5wEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wE8WCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wEsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sOwtxmEdqEPrOCkNZ5Vg" name="submachine_states" constrainedElement="_M2sOwNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sOw9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sOwtxmEdqEPrOCkNZ5Vg">
<body>Only submachine states can have connection point references.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hA5wFMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sOxNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>isSubmachineState implies connection->notEmpty ( )</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hA5wFcWCEdqI1bY5Lwi8Hg" name="destinations_or_sources_of_transitions" constrainedElement="_hA5wEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wFsWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wFcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sOxdxmEdqEPrOCkNZ5Vg" name="destinations_or_sources_of_transitions" constrainedElement="_M2sOwNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sOxtxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sOxdxmEdqEPrOCkNZ5Vg">
<body>The connection point references used as destinations/sources of transitions associated with a submachine state must be defined as entry/exit points in the submachine state machine.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hA5wF8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sOx9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>self.isSubmachineState implies (self.connection->forAll (cp |&#xA;&#xA;cp.entry->forAll (p | p.statemachine = self.submachine) and&#xA;&#xA;cp.exit->forAll (p | p.statemachine = self.submachine)))</body>
+ <body>self.isSubmachineState implies (self.connection->forAll (cp |&#xD;&#xA;cp.entry->forAll (p | p.statemachine = self.submachine) and&#xD;&#xA;cp.exit->forAll (p | p.statemachine = self.submachine)))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hA5wGMWCEdqI1bY5Lwi8Hg" name="submachine_or_regions" constrainedElement="_hA5wEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wGcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wGMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sOyNxmEdqEPrOCkNZ5Vg" name="submachine_or_regions" constrainedElement="_M2sOwNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sOydxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sOyNxmEdqEPrOCkNZ5Vg">
<body>A state is not allowed to have both a submachine and regions.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hA5wGsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sOytxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>isComposite implies not isSubmachineState</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hA5wG8WCEdqI1bY5Lwi8Hg" name="composite_states" constrainedElement="_hA5wEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wHMWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wG8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sOy9xmEdqEPrOCkNZ5Vg" name="composite_states" constrainedElement="_M2sOwNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sOzNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sOy9xmEdqEPrOCkNZ5Vg">
<body>Only composite states can have entry or exit pseudostates defined.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hA5wHcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sOzdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>connectionPoint->notEmpty() implies isComoposite</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hA5wHsWCEdqI1bY5Lwi8Hg" name="entry_or_exit" constrainedElement="_hA5wEMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wH8WCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wHsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sOztxmEdqEPrOCkNZ5Vg" name="entry_or_exit" constrainedElement="_M2sOwNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sOz9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sOztxmEdqEPrOCkNZ5Vg">
<body>Only entry or exit pseudostates can serve as connection points.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hA5wIMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sO0NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>connectionPoint->forAll(cp|cp.kind = #entry or cp.kind = #exit)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hA5wIcWCEdqI1bY5Lwi8Hg" general="_hBpXPsWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hA5wIsWCEdqI1bY5Lwi8Hg" general="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hA5wI8WCEdqI1bY5Lwi8Hg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wJMWCEdqI1bY5Lwi8Hg" name="isComposite" type="_UdivYGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wJcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wJMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2sO0dxmEdqEPrOCkNZ5Vg" general="_M21YsNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2sO0txmEdqEPrOCkNZ5Vg" general="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M2sO09xmEdqEPrOCkNZ5Vg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sO1NxmEdqEPrOCkNZ5Vg" name="isComposite" type="_UdivYGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sO1dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sO1NxmEdqEPrOCkNZ5Vg">
<body>A state with isComposite=true is said to be a composite state. A composite state is a state that contains at least one region.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hA5wJsWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M2sO1txmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wJ8WCEdqI1bY5Lwi8Hg" name="isOrthogonal" type="_UdivYGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wKMWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wJ8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sO19xmEdqEPrOCkNZ5Vg" name="isOrthogonal" type="_UdivYGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sO2NxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sO19xmEdqEPrOCkNZ5Vg">
<body>A state with isOrthogonal=true is said to be an orthogonal composite state. An orthogonal composite state contains two or more regions.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hA5wKcWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M2sO2dxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wKsWCEdqI1bY5Lwi8Hg" name="isSimple" type="_UdivYGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wK8WCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wKsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sO2txmEdqEPrOCkNZ5Vg" name="isSimple" type="_UdivYGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sO29xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sO2txmEdqEPrOCkNZ5Vg">
<body>A state with isSimple=true is said to be a simple state. A simple state does not have any regions and it does not refer to any submachine state machine.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hA5wLMWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" value="true"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M2sO3NxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" value="true"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wLcWCEdqI1bY5Lwi8Hg" name="isSubmachineState" type="_UdivYGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wLsWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wLcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sO3dxmEdqEPrOCkNZ5Vg" name="isSubmachineState" type="_UdivYGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sO3txmEdqEPrOCkNZ5Vg" annotatedElement="_M2sO3dxmEdqEPrOCkNZ5Vg">
<body>A state with isSubmachineState=true is said to be a submachine state. Such a state refers to a state machine (submachine).</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hA5wL8WCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M2sO39xmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wMMWCEdqI1bY5Lwi8Hg" name="submachine" type="_hAv_JsWCEdqI1bY5Lwi8Hg" association="_hBzIXMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wMcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wMMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sO4NxmEdqEPrOCkNZ5Vg" name="submachine" type="_M2id69xmEdqEPrOCkNZ5Vg" association="_M2_JttxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sO4dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sO4NxmEdqEPrOCkNZ5Vg">
<body>The state machine that is to be inserted in place of the (submachine) state.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hA5wMsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hA5wM8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sO4txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sO49xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wNMWCEdqI1bY5Lwi8Hg" name="connection" type="_hBpXkMWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_hBzIYcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wNcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wNMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sO5NxmEdqEPrOCkNZ5Vg" name="connection" type="_M21ZAtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M2_Ju9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sO5dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sO5NxmEdqEPrOCkNZ5Vg">
<body>The entry and exit connection points used in conjunction with this (submachine) state, i.e. as targets and sources, respectively, in the region with the submachine state. A connection point reference references the corresponding definition of a connection point pseudostate in the statemachine referenced by the submachinestate.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hA5wNsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hA5wN8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sO5txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sO59xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wOMWCEdqI1bY5Lwi8Hg" name="redefinedState" type="_hA5wEMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_hBzIY8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wOcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wOMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sO6NxmEdqEPrOCkNZ5Vg" name="redefinedState" type="_M2sOwNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_M2_JvdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sO6dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sO6NxmEdqEPrOCkNZ5Vg">
<body>The state of which this state is a redefinition.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hA5wOsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hA5wO8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sO6txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sO69xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wPMWCEdqI1bY5Lwi8Hg" name="region" type="_hBzH8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_hBzIdcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wPcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wPMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sO7NxmEdqEPrOCkNZ5Vg" name="region" type="_M21ZF9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M2_Jz9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sO7dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sO7NxmEdqEPrOCkNZ5Vg">
<body>The regions owned directly by the state.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hA5wPsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hA5wP8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sO7txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sO79xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wQMWCEdqI1bY5Lwi8Hg" name="redefinitionContext" type="_6UV2QGwJEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" redefinedProperty="_g1H-IsWCEdqI1bY5Lwi8Hg" association="_hB8R78WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wQcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wQMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sO8NxmEdqEPrOCkNZ5Vg" name="redefinitionContext" type="_6UV2QGwJEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" redefinedProperty="_MsjbWdxmEdqEPrOCkNZ5Vg" association="_M2_J5dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sO8dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sO8NxmEdqEPrOCkNZ5Vg">
<body>References the classifier in which context this element may be redefined.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hA5wQsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hA5wQ8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sO8txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sO89xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wRMWCEdqI1bY5Lwi8Hg" name="stateInvariant" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hB8R-cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wRcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wRMWCEdqI1bY5Lwi8Hg">
- <body>Specifies conditions that are always true when this state is the current state. In protocol state machines, state invariants are additional conditions to the preconditions of the outgoing transitions, and to the postcondition of the incoming transitions.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sO9NxmEdqEPrOCkNZ5Vg" name="stateInvariant" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M2_J79xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sO9dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sO9NxmEdqEPrOCkNZ5Vg">
+ <body>Specifies conditions that are always true when this state is the current state. In protocol state machines, state invariants are additional conditions to the preconditions of the outgoing transitions, and to the postcondition of the incoming transitions.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hA5wRsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hA5wR8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sO9txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sO99xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wSMWCEdqI1bY5Lwi8Hg" name="entry" type="_TUPtYGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hB8SA8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wScWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wSMWCEdqI1bY5Lwi8Hg">
- <body>An optional behavior that is executed whenever this state is entered regardless of the transition taken to reach the state. If defined, entry actions are always executed to completion prior to any internal behavior or transitions performed within the state.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sO-NxmEdqEPrOCkNZ5Vg" name="entry" type="_TUPtYGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M2_J-dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sO-dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sO-NxmEdqEPrOCkNZ5Vg">
+ <body>An optional behavior that is executed whenever this state is entered regardless of the transition taken to reach the state. If defined, entry actions are always executed to completion prior to any internal behavior or transitions performed within the state.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hA5wSsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hA5wS8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sO-txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sO-9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wTMWCEdqI1bY5Lwi8Hg" name="exit" type="_TUPtYGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hB8SCMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wTcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wTMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sO_NxmEdqEPrOCkNZ5Vg" name="exit" type="_TUPtYGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M2_J_txmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sO_dxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sO_NxmEdqEPrOCkNZ5Vg">
<body>An optional behavior that is executed whenever this state is exited regardless of which transition was taken out of the state. If defined, exit actions are always executed to completion only after all internal activities and transition actions have completed execution.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hA5wTsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hA5wT8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sO_txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sO_9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wUMWCEdqI1bY5Lwi8Hg" name="doActivity" type="_TUPtYGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hB8SDcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wUcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wUMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sPANxmEdqEPrOCkNZ5Vg" name="doActivity" type="_TUPtYGveEdq4DLWZOhbdEA" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M2_KA9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPAdxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPANxmEdqEPrOCkNZ5Vg">
<body>An optional behavior that is executed while being in the state. The execution starts when this state is entered, and stops either by itself, or when the state is exited, whichever comes first.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hA5wUsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hA5wU8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sPAtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sPA9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wVMWCEdqI1bY5Lwi8Hg" name="connectionPoint" type="_hBpXUsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hB8SEsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wVcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wVMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sPBNxmEdqEPrOCkNZ5Vg" name="connectionPoint" type="_M21YxNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M2_KCNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPBdxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPBNxmEdqEPrOCkNZ5Vg">
<body>The entry and exit pseudostates of a composite state. These can only be entry or exit Pseudostates, and they must have different names. They can only be defined for composite states.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hA5wVsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hA5wV8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sPBtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sPB9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hA5wWMWCEdqI1bY5Lwi8Hg" name="deferrableTrigger" type="_g-OPmsWCEdqI1bY5Lwi8Hg" aggregation="composite" association="_hB8SGMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wWcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wWMWCEdqI1bY5Lwi8Hg">
- <body>A list of triggers that are candidates to be retained by the state machine if they trigger no transitions out of the state (not consumed). A deferred trigger is retained until the state machine reaches a state configuration where it is no longer deferred.
-
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M2sPCNxmEdqEPrOCkNZ5Vg" name="deferrableTrigger" type="_M0AHRtxmEdqEPrOCkNZ5Vg" aggregation="composite" association="_M2_KDtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPCdxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPCNxmEdqEPrOCkNZ5Vg">
+ <body>A list of triggers that are candidates to be retained by the state machine if they trigger no transitions out of the state (not consumed). A deferred trigger is retained until the state machine reaches a state configuration where it is no longer deferred.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hA5wWsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hA5wW8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M2sPCtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M2sPC9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hA5wXMWCEdqI1bY5Lwi8Hg" name="isSimple" isQuery="true" bodyCondition="_hA5wXsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wXcWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wXMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2sPDNxmEdqEPrOCkNZ5Vg" name="isSimple" isQuery="true" bodyCondition="_M2sPDtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPDdxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPDNxmEdqEPrOCkNZ5Vg">
<body>A simple state is a state without any regions.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hA5wXsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hA5wXMWCEdqI1bY5Lwi8Hg _hA5wKsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hA5wX8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPDtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2sPDNxmEdqEPrOCkNZ5Vg _M2sO2txmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPD9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = region.isEmpty()</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hA5wYMWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPENxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hA5wYcWCEdqI1bY5Lwi8Hg" name="isComposite" isQuery="true" bodyCondition="_hA5wY8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wYsWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wYcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2sPEdxmEdqEPrOCkNZ5Vg" name="isComposite" isQuery="true" bodyCondition="_M2sPE9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPEtxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPEdxmEdqEPrOCkNZ5Vg">
<body>A composite state is a state with at least one region.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hA5wY8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hA5wYcWCEdqI1bY5Lwi8Hg _hA5wJMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hA5wZMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPE9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2sPEdxmEdqEPrOCkNZ5Vg _M2sO1NxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPFNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = region.notEmpty()</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hA5wZcWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPFdxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hA5wZsWCEdqI1bY5Lwi8Hg" name="isOrthogonal" isQuery="true" bodyCondition="_hA5waMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wZ8WCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wZsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2sPFtxmEdqEPrOCkNZ5Vg" name="isOrthogonal" isQuery="true" bodyCondition="_M2sPGNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPF9xmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPFtxmEdqEPrOCkNZ5Vg">
<body>An orthogonal state is a composite state with at least 2 regions</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hA5waMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hA5wZsWCEdqI1bY5Lwi8Hg _hA5wJ8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hA5wacWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPGNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2sPFtxmEdqEPrOCkNZ5Vg _M2sO19xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPGdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = (region->size () > 1)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hA5wasWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPGtxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hA5wa8WCEdqI1bY5Lwi8Hg" name="isSubmachineState" isQuery="true" bodyCondition="_hA5wbcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wbMWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wa8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2sPG9xmEdqEPrOCkNZ5Vg" name="isSubmachineState" isQuery="true" bodyCondition="_M2sPHdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPHNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPG9xmEdqEPrOCkNZ5Vg">
<body>Only submachine states can have a reference statemachine.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hA5wbcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hA5wa8WCEdqI1bY5Lwi8Hg _hA5wLcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hA5wbsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPHdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2sPG9xmEdqEPrOCkNZ5Vg _M2sO3dxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPHtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = submachine.notEmpty()</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hA5wb8WCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPH9xmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hA5wcMWCEdqI1bY5Lwi8Hg" name="redefinitionContext" isQuery="true" bodyCondition="_hA5wcsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wccWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wcMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2sPINxmEdqEPrOCkNZ5Vg" name="redefinitionContext" isQuery="true" bodyCondition="_M2sPItxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPIdxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPINxmEdqEPrOCkNZ5Vg">
<body>The redefinition context of a state is the nearest containing statemachine.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hA5wcsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hA5wcMWCEdqI1bY5Lwi8Hg _hA5wQMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hA5wc8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPItxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2sPINxmEdqEPrOCkNZ5Vg _M2sO8NxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPI9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = let sm = containingStateMachine() in&#xA;if sm.context->isEmpty() or sm.general->notEmpty() then&#xA;sm&#xA;else&#xA;sm.context&#xA;endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hA5wdMWCEdqI1bY5Lwi8Hg" type="_6UV2QGwJEdq7X4sGURiZYA" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPJNxmEdqEPrOCkNZ5Vg" type="_6UV2QGwJEdq7X4sGURiZYA" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hA5wdcWCEdqI1bY5Lwi8Hg" name="isRedefinitionContextValid" isQuery="true" redefinedOperation="_g1H-MMWCEdqI1bY5Lwi8Hg" bodyCondition="_hA5wd8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wdsWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wdcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2sPJdxmEdqEPrOCkNZ5Vg" name="isRedefinitionContextValid" isQuery="true" redefinedOperation="_MsjbZ9xmEdqEPrOCkNZ5Vg" bodyCondition="_M2sPJ9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPJtxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPJdxmEdqEPrOCkNZ5Vg">
<body>The query isRedefinitionContextValid() specifies whether the redefinition contexts of a state are properly related to the redefinition contexts of the specified state to allow this element to redefine the other. The containing region of a redefining state must redefine the containing region of the redefined state.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hA5wd8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hA5wdcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hA5weMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPJ9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2sPJdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPKNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hA5wecWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hA5wesWCEdqI1bY5Lwi8Hg" name="redefined" type="_hA5wEMWCEdqI1bY5Lwi8Hg" effect="read"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPKdxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPKtxmEdqEPrOCkNZ5Vg" name="redefined" type="_M2sOwNxmEdqEPrOCkNZ5Vg" effect="read"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hA5we8WCEdqI1bY5Lwi8Hg" name="isConsistentWith" isQuery="true" redefinedOperation="_g1H-KsWCEdqI1bY5Lwi8Hg" bodyCondition="_hA5wfcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wfMWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5we8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2sPK9xmEdqEPrOCkNZ5Vg" name="isConsistentWith" isQuery="true" redefinedOperation="_MsjbYdxmEdqEPrOCkNZ5Vg" bodyCondition="_M2sPLdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPLNxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPK9xmEdqEPrOCkNZ5Vg">
<body>The query isConsistentWith() specifies that a redefining state is consistent with a redefined state provided that the redefining state is an extension of the redefined state: A simple state can be redefined (extended) to become a composite state (by adding a region) and a composite state can be redefined (extended) by adding regions and by adding vertices, states, and transitions to inherited regions. All states may add or replace entry, exit, and 'doActivity' actions.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hA5wfcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hA5we8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hA5wfsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPLdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2sPK9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPLtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hA5wf8WCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hA5wgMWCEdqI1bY5Lwi8Hg" name="redefinee" type="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPL9xmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPMNxmEdqEPrOCkNZ5Vg" name="redefinee" type="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hA5wgcWCEdqI1bY5Lwi8Hg" name="containingStateMachine" isQuery="true" redefinedOperation="_hBpXTcWCEdqI1bY5Lwi8Hg" bodyCondition="_hA5wg8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hA5wgsWCEdqI1bY5Lwi8Hg" annotatedElement="_hA5wgcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M2sPMdxmEdqEPrOCkNZ5Vg" name="containingStateMachine" isQuery="true" redefinedOperation="_M21Yv9xmEdqEPrOCkNZ5Vg" bodyCondition="_M2sPM9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M2sPMtxmEdqEPrOCkNZ5Vg" annotatedElement="_M2sPMdxmEdqEPrOCkNZ5Vg">
<body>The query containingStateMachine() returns the state machine that contains the state either directly or transitively.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hA5wg8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hA5wgcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hA5whMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M2sPM9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M2sPMdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M2sPNNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = container.containingStateMachine()</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hA5whcWCEdqI1bY5Lwi8Hg" type="_hAv_JsWCEdqI1bY5Lwi8Hg" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M2sPNdxmEdqEPrOCkNZ5Vg" type="_M2id69xmEdqEPrOCkNZ5Vg" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hBzH8MWCEdqI1bY5Lwi8Hg" name="Region">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzH8cWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzH8MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M21ZF9xmEdqEPrOCkNZ5Vg" name="Region">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZGNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZF9xmEdqEPrOCkNZ5Vg">
<body>A region is an orthogonal part of either a composite state or a state machine. It contains states and transitions.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBzH8sWCEdqI1bY5Lwi8Hg" name="initial_vertex" constrainedElement="_hBzH8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzH88WCEdqI1bY5Lwi8Hg" annotatedElement="_hBzH8sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21ZGdxmEdqEPrOCkNZ5Vg" name="initial_vertex" constrainedElement="_M21ZF9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZGtxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZGdxmEdqEPrOCkNZ5Vg">
<body>A region can have at most one initial vertex</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBzH9MWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21ZG9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.subvertex->select (v | v.oclIsKindOf(Pseudostate))->&#xA;select(p : Pseudostate | p.kind = #initial)->size() &lt;= 1&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBzH9cWCEdqI1bY5Lwi8Hg" name="deep_history_vertex" constrainedElement="_hBzH8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzH9sWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzH9cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21ZHNxmEdqEPrOCkNZ5Vg" name="deep_history_vertex" constrainedElement="_M21ZF9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZHdxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZHNxmEdqEPrOCkNZ5Vg">
<body>A region can have at most one deep history vertex</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBzH98WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21ZHtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.subvertex->select (v | v.oclIsKindOf(Pseudostate))->&#xA;select(p : Pseudostate | p.kind = #deepHistory)->size() &lt;= 1&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBzH-MWCEdqI1bY5Lwi8Hg" name="shallow_history_vertex" constrainedElement="_hBzH8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzH-cWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzH-MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21ZH9xmEdqEPrOCkNZ5Vg" name="shallow_history_vertex" constrainedElement="_M21ZF9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZINxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZH9xmEdqEPrOCkNZ5Vg">
<body>A region can have at most one shallow history vertex</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBzH-sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21ZIdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.subvertex->select(v | v.oclIsKindOf(Pseudostate))->&#xA;select(p : Pseudostate | p.kind = #shallowHistory)->size() &lt;= 1&#xA;</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBzH-8WCEdqI1bY5Lwi8Hg" name="owned" constrainedElement="_hBzH8MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzH_MWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzH-8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21ZItxmEdqEPrOCkNZ5Vg" name="owned" constrainedElement="_M21ZF9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZI9xmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZItxmEdqEPrOCkNZ5Vg">
<body>If a Region is owned by a StateMachine, then it cannot also be owned by a State and vice versa.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBzH_cWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21ZJNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(stateMachine->notEmpty() implies state->isEmpty()) and (state->notEmpty() implies stateMachine->isEmpty())</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hBzH_sWCEdqI1bY5Lwi8Hg" general="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hBzH_8WCEdqI1bY5Lwi8Hg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBzIAMWCEdqI1bY5Lwi8Hg" name="subvertex" type="_hBpXPsWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_hBzIVsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIAcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIAMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M21ZJdxmEdqEPrOCkNZ5Vg" general="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M21ZJtxmEdqEPrOCkNZ5Vg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21ZJ9xmEdqEPrOCkNZ5Vg" name="subvertex" type="_M21YsNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M2_JsNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZKNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZJ9xmEdqEPrOCkNZ5Vg">
<body>The set of vertices that are owned by this region.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBzIAsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBzIA8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21ZKdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21ZKtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBzIBMWCEdqI1bY5Lwi8Hg" name="transition" type="_hBpW8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_hBzIWMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIBcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIBMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21ZK9xmEdqEPrOCkNZ5Vg" name="transition" type="_M2sPNtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M2_JstxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZLNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZK9xmEdqEPrOCkNZ5Vg">
<body>The set of transitions owned by the region. Note that internal transitions are owned by a region, but applies to the source state.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBzIBsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBzIB8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21ZLdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21ZLtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBzICMWCEdqI1bY5Lwi8Hg" name="stateMachine" type="_hAv_JsWCEdqI1bY5Lwi8Hg" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_hBzIccWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzICcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzICMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21ZL9xmEdqEPrOCkNZ5Vg" name="stateMachine" type="_M2id69xmEdqEPrOCkNZ5Vg" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_M2_Jy9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZMNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZL9xmEdqEPrOCkNZ5Vg">
<body>The StateMachine that owns the Region. If a Region is owned by a StateMachine, then it cannot also be owned by a State.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBzICsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBzIC8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21ZMdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21ZMtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBzIDMWCEdqI1bY5Lwi8Hg" name="state" type="_hA5wEMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_hBzIdcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIDcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIDMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21ZM9xmEdqEPrOCkNZ5Vg" name="state" type="_M2sOwNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_M2_Jz9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZNNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZM9xmEdqEPrOCkNZ5Vg">
<body>The State that owns the Region. If a Region is owned by a State, then it cannot also be owned by a StateMachine.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBzIDsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBzID8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21ZNdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21ZNtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBzIEMWCEdqI1bY5Lwi8Hg" name="extendedRegion" type="_hBzH8MWCEdqI1bY5Lwi8Hg" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_hBzId8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIEcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIEMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21ZN9xmEdqEPrOCkNZ5Vg" name="extendedRegion" type="_M21ZF9xmEdqEPrOCkNZ5Vg" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_M2_J0dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZONxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZN9xmEdqEPrOCkNZ5Vg">
<body>The region of which this region is an extension.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBzIEsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBzIE8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21ZOdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21ZOtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hBzIFMWCEdqI1bY5Lwi8Hg" name="redefinitionContext" type="_6UV2QGwJEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" redefinedProperty="_g1H-IsWCEdqI1bY5Lwi8Hg" association="_hB8R6sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIFcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIFMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M21ZO9xmEdqEPrOCkNZ5Vg" name="redefinitionContext" type="_6UV2QGwJEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" redefinedProperty="_MsjbWdxmEdqEPrOCkNZ5Vg" association="_M2_J4NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZPNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZO9xmEdqEPrOCkNZ5Vg">
<body>References the classifier in which context this element may be redefined.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hBzIFsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hBzIF8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M21ZPdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M21ZPtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hBzIGMWCEdqI1bY5Lwi8Hg" name="redefinitionContext" isQuery="true" bodyCondition="_hBzIGsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIGcWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIGMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M21ZP9xmEdqEPrOCkNZ5Vg" name="redefinitionContext" isQuery="true" bodyCondition="_M21ZQdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZQNxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZP9xmEdqEPrOCkNZ5Vg">
<body>The redefinition context of a region is the nearest containing statemachine</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBzIGsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hBzIGMWCEdqI1bY5Lwi8Hg _hBzIFMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBzIG8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21ZQdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M21ZP9xmEdqEPrOCkNZ5Vg _M21ZO9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21ZQtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = let sm = containingStateMachine() in&#xA;if sm.context->isEmpty() or sm.general->notEmpty() then&#xA;sm&#xA;else&#xA;sm.context&#xA;endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hBzIHMWCEdqI1bY5Lwi8Hg" type="_6UV2QGwJEdq7X4sGURiZYA" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M21ZQ9xmEdqEPrOCkNZ5Vg" type="_6UV2QGwJEdq7X4sGURiZYA" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hBzIHcWCEdqI1bY5Lwi8Hg" name="isRedefinitionContextValid" isQuery="true" redefinedOperation="_g1H-MMWCEdqI1bY5Lwi8Hg" bodyCondition="_hBzIH8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIHsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIHcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M21ZRNxmEdqEPrOCkNZ5Vg" name="isRedefinitionContextValid" isQuery="true" redefinedOperation="_MsjbZ9xmEdqEPrOCkNZ5Vg" bodyCondition="_M21ZRtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZRdxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZRNxmEdqEPrOCkNZ5Vg">
<body>The query isRedefinitionContextValid() specifies whether the redefinition contexts of a region are properly related to the redefinition contexts of the specified region to allow this element to redefine the other. The containing statemachine/state of a redefining region must redefine the containing statemachine/state of the redefined region.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBzIH8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hBzIHcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBzIIMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21ZRtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M21ZRNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21ZR9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hBzIIcWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hBzIIsWCEdqI1bY5Lwi8Hg" name="redefined" type="_hBzH8MWCEdqI1bY5Lwi8Hg" effect="read"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M21ZSNxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M21ZSdxmEdqEPrOCkNZ5Vg" name="redefined" type="_M21ZF9xmEdqEPrOCkNZ5Vg" effect="read"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hBzII8WCEdqI1bY5Lwi8Hg" name="isConsistentWith" isQuery="true" redefinedOperation="_g1H-KsWCEdqI1bY5Lwi8Hg" bodyCondition="_hBzIJcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIJMWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzII8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M21ZStxmEdqEPrOCkNZ5Vg" name="isConsistentWith" isQuery="true" redefinedOperation="_MsjbYdxmEdqEPrOCkNZ5Vg" bodyCondition="_M21ZTNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZS9xmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZStxmEdqEPrOCkNZ5Vg">
<body>The query isConsistentWith() specifies that a redefining region is consistent with a redefined region provided that the redefining region is an extension of the redefined region, i.e. it adds vertices and transitions and it redefines states and transitions of the redefined region.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBzIJcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hBzII8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBzIJsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21ZTNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M21ZStxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21ZTdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hBzIJ8WCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hBzIKMWCEdqI1bY5Lwi8Hg" name="redefinee" type="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M21ZTtxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M21ZT9xmEdqEPrOCkNZ5Vg" name="redefinee" type="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hBzIKcWCEdqI1bY5Lwi8Hg" name="containingStateMachine" isQuery="true" bodyCondition="_hBzIK8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hBzIKsWCEdqI1bY5Lwi8Hg" annotatedElement="_hBzIKcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M21ZUNxmEdqEPrOCkNZ5Vg" name="containingStateMachine" isQuery="true" bodyCondition="_M21ZUtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M21ZUdxmEdqEPrOCkNZ5Vg" annotatedElement="_M21ZUNxmEdqEPrOCkNZ5Vg">
<body>The operation containingStateMachine() returns the sate machine in which this Region is defined</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hBzIK8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hBzIKcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hBzILMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M21ZUtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M21ZUNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M21ZU9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if stateMachine->isEmpty() &#xA;then&#xA;state.containingStateMachine()&#xA;else&#xA;stateMachine&#xA;endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hBzILcWCEdqI1bY5Lwi8Hg" type="_hAv_JsWCEdqI1bY5Lwi8Hg" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M21ZVNxmEdqEPrOCkNZ5Vg" type="_M2id69xmEdqEPrOCkNZ5Vg" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hExjccWCEdqI1bY5Lwi8Hg" name="belongsToPSM" isQuery="true" bodyCondition="_hExjc8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hExjcsWCEdqI1bY5Lwi8Hg" annotatedElement="_hExjccWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M5N-hNxmEdqEPrOCkNZ5Vg" name="belongsToPSM" isQuery="true" bodyCondition="_M5N-htxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-hdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-hNxmEdqEPrOCkNZ5Vg">
<body>The operation belongsToPSM () checks if the region belongs to a protocol state machine</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hExjc8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hExjccWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hExjdMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5N-htxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M5N-hNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5N-h9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if not stateMachine->isEmpty() then&#xA;oclIsTypeOf(ProtocolStateMachine)&#xA;else if not state->isEmpty() then&#xA;state.container.belongsToPSM ()&#xA;else false</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hExjdcWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5N-iNxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hExjdsWCEdqI1bY5Lwi8Hg" name="A_conformance_specificMachine" memberEnd="_hEny0sWCEdqI1bY5Lwi8Hg _hEnylsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hExjd8WCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hExjeMWCEdqI1bY5Lwi8Hg" general="_g2eByMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5N-idxmEdqEPrOCkNZ5Vg" name="A_conformance_specificMachine" memberEnd="_M5N-f9xmEdqEPrOCkNZ5Vg _M5E0vNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5N-itxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5N-i9xmEdqEPrOCkNZ5Vg" general="_MtmkXtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hExjecWCEdqI1bY5Lwi8Hg" name="A_protocol_port" memberEnd="_hEnypMWCEdqI1bY5Lwi8Hg _hExjesWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hExjesWCEdqI1bY5Lwi8Hg" type="_ZAuvEGveEdq4DLWZOhbdEA" association="_hExjecWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hExje8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hExjfMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5N-jNxmEdqEPrOCkNZ5Vg" name="A_protocol_port" memberEnd="_M5N-UdxmEdqEPrOCkNZ5Vg _M5N-jdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M5N-jdxmEdqEPrOCkNZ5Vg" type="_ZAuvEGveEdq4DLWZOhbdEA" association="_M5N-jNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5N-jtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5N-j9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hExjfcWCEdqI1bY5Lwi8Hg" name="A_postCondition_owningTransition" memberEnd="_hEnytMWCEdqI1bY5Lwi8Hg _hExjf8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hExjfsWCEdqI1bY5Lwi8Hg" general="_g2eCA8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hExjf8WCEdqI1bY5Lwi8Hg" name="owningTransition" type="_hEnyqMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_hExjfcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hExjgMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hExjgcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5N-kNxmEdqEPrOCkNZ5Vg" name="A_postCondition_owningTransition" memberEnd="_M5N-YdxmEdqEPrOCkNZ5Vg _M5N-ktxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5N-kdxmEdqEPrOCkNZ5Vg" general="_MtmkmdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M5N-ktxmEdqEPrOCkNZ5Vg" name="owningTransition" type="_M5N-VdxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_M5N-kNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5N-k9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5N-lNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hExjgsWCEdqI1bY5Lwi8Hg" name="A_protocol_interface" memberEnd="_hEnyn8WCEdqI1bY5Lwi8Hg _hExjhMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hExjg8WCEdqI1bY5Lwi8Hg" general="_g2eB3cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hExjhMWCEdqI1bY5Lwi8Hg" name="interface" type="_8Ugn8GvtEdqG6fBIPwe-mw" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_hExjgsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hExjhcWCEdqI1bY5Lwi8Hg" annotatedElement="_hExjhMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5N-ldxmEdqEPrOCkNZ5Vg" name="A_protocol_interface" memberEnd="_M5E0xdxmEdqEPrOCkNZ5Vg _M5N-l9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5N-ltxmEdqEPrOCkNZ5Vg" general="_Mtmkc9xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M5N-l9xmEdqEPrOCkNZ5Vg" name="interface" type="_8Ugn8GvtEdqG6fBIPwe-mw" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_M5N-ldxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5N-mNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5N-l9xmEdqEPrOCkNZ5Vg">
<body>Specifies the namespace in which the protocol state machine is defined.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hExjhsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hExjh8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5N-mdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5N-mtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hExjiMWCEdqI1bY5Lwi8Hg" name="A_generalMachine_protocolConformance" memberEnd="_hEnymsWCEdqI1bY5Lwi8Hg _hExjisWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hExjicWCEdqI1bY5Lwi8Hg" general="_g2eBy8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hExjisWCEdqI1bY5Lwi8Hg" type="_hEnyk8WCEdqI1bY5Lwi8Hg" association="_hExjiMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hExji8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hExjjMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5N-m9xmEdqEPrOCkNZ5Vg" name="A_generalMachine_protocolConformance" memberEnd="_M5E0wNxmEdqEPrOCkNZ5Vg _M5N-ndxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5N-nNxmEdqEPrOCkNZ5Vg" general="_MtmkYdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M5N-ndxmEdqEPrOCkNZ5Vg" type="_M5E0udxmEdqEPrOCkNZ5Vg" association="_M5N-m9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5N-ntxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5N-n9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hExjjcWCEdqI1bY5Lwi8Hg" name="A_referred_protocolTransition" memberEnd="_hEnyuMWCEdqI1bY5Lwi8Hg _hExjjsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hExjjsWCEdqI1bY5Lwi8Hg" type="_hEnyqMWCEdqI1bY5Lwi8Hg" association="_hExjjcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hExjj8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hExjkMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5N-oNxmEdqEPrOCkNZ5Vg" name="A_referred_protocolTransition" memberEnd="_M5N-ZdxmEdqEPrOCkNZ5Vg _M5N-odxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M5N-odxmEdqEPrOCkNZ5Vg" type="_M5N-VdxmEdqEPrOCkNZ5Vg" association="_M5N-oNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5N-otxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5N-o9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hExjkcWCEdqI1bY5Lwi8Hg" name="A_preCondition_protocolTransition" memberEnd="_hEnyvMWCEdqI1bY5Lwi8Hg _hExjk8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hExjksWCEdqI1bY5Lwi8Hg" general="_hB8R5cWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hExjk8WCEdqI1bY5Lwi8Hg" type="_hEnyqMWCEdqI1bY5Lwi8Hg" redefinedProperty="_hB8R58WCEdqI1bY5Lwi8Hg" association="_hExjkcWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hExjlMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hExjlcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5XvUNxmEdqEPrOCkNZ5Vg" name="A_preCondition_protocolTransition" memberEnd="_M5N-adxmEdqEPrOCkNZ5Vg _M5XvUtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5XvUdxmEdqEPrOCkNZ5Vg" general="_M2_J29xmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M5XvUtxmEdqEPrOCkNZ5Vg" type="_M5N-VdxmEdqEPrOCkNZ5Vg" redefinedProperty="_M2_J3dxmEdqEPrOCkNZ5Vg" association="_M5XvUNxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5XvU9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5XvVNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hE7UcMWCEdqI1bY5Lwi8Hg" name="AssociationClass">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UccWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7UcMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5XvVtxmEdqEPrOCkNZ5Vg" name="AssociationClass">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvV9xmEdqEPrOCkNZ5Vg" annotatedElement="_M5XvVtxmEdqEPrOCkNZ5Vg">
<body>In the metamodel, an AssociationClass is a declaration of a semantic relationship between Classifiers, which has a set of features of its own. AssociationClass is both an Association and a Class.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hE7UcsWCEdqI1bY5Lwi8Hg" name="cannot_be_defined" constrainedElement="_hE7UcMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7Uc8WCEdqI1bY5Lwi8Hg" annotatedElement="_hE7UcsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5XvWNxmEdqEPrOCkNZ5Vg" name="cannot_be_defined" constrainedElement="_M5XvVtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvWdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5XvWNxmEdqEPrOCkNZ5Vg">
<body>An AssociationClass cannot be defined between itself and something else.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hE7UdMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5XvWtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.endType->excludes(self) and self.endType>collect(et|et.allparents()->excludes(self))</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hE7UdcWCEdqI1bY5Lwi8Hg" general="_AwvxoGwNEdq7X4sGURiZYA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hE7UdsWCEdqI1bY5Lwi8Hg" general="_00owUGvdEdq4DLWZOhbdEA"/>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hE7Ud8WCEdqI1bY5Lwi8Hg" name="allConnections" isQuery="true" bodyCondition="_hE7UecWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UeMWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7Ud8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5XvW9xmEdqEPrOCkNZ5Vg" general="_AwvxoGwNEdq7X4sGURiZYA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5XvXNxmEdqEPrOCkNZ5Vg" general="_00owUGvdEdq4DLWZOhbdEA"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M5XvXdxmEdqEPrOCkNZ5Vg" name="allConnections" isQuery="true" bodyCondition="_M5XvX9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvXtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5XvXdxmEdqEPrOCkNZ5Vg">
<body>The operation allConnections results in the set of all AssociationEnds of the Association.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hE7UecWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hE7Ud8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hE7UesWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5XvX9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M5XvXdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5XvYNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = memberEnd->union ( self.parents ()->collect (p | p.allConnections () )</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hE7Ue8WCEdqI1bY5Lwi8Hg" type="_Jp_1oGveEdq4DLWZOhbdEA" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7UfMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7UfcWCEdqI1bY5Lwi8Hg" value="2"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5XvYdxmEdqEPrOCkNZ5Vg" type="_Jp_1oGveEdq4DLWZOhbdEA" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5XvYtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5XvY9xmEdqEPrOCkNZ5Vg" value="2"/>
</ownedParameter>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hE7Uh8WCEdqI1bY5Lwi8Hg" name="A_qualifier_associationEnd" memberEnd="_hE7Uf8WCEdqI1bY5Lwi8Hg _hE7Ug8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hE7UiMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M5XvbdxmEdqEPrOCkNZ5Vg" name="A_qualifier_associationEnd" memberEnd="_M5XvZdxmEdqEPrOCkNZ5Vg _M5XvadxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5XvbtxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hE7UicWCEdqI1bY5Lwi8Hg" name="TemplateSignature">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UisWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7UicWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5Xvb9xmEdqEPrOCkNZ5Vg" name="TemplateSignature">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvcNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5Xvb9xmEdqEPrOCkNZ5Vg">
<body>TemplateParameterSubstitution associates one or more actual parameters with a formal template parameter within the context of a TemplateBinding.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hE7Ui8WCEdqI1bY5Lwi8Hg" name="own_elements" constrainedElement="_hE7UicWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UjMWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7Ui8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5XvcdxmEdqEPrOCkNZ5Vg" name="own_elements" constrainedElement="_M5Xvb9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvctxmEdqEPrOCkNZ5Vg" annotatedElement="_M5XvcdxmEdqEPrOCkNZ5Vg">
<body>Parameters must own the elements they parameter or those elements must be owned by the element being templated.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hE7UjcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5Xvc9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>templatedElement.ownedElement->includesAll(parameter.parameteredElement - parameter.ownedParameteredElement)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hE7UjsWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hE7Uj8WCEdqI1bY5Lwi8Hg" name="parameter" type="_KxRzgGvuEdqG6fBIPwe-mw" isOrdered="true" association="_hFYAd8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UkMWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7Uj8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5XvdNxmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5XvddxmEdqEPrOCkNZ5Vg" name="parameter" type="_KxRzgGvuEdqG6fBIPwe-mw" isOrdered="true" association="_M50bQtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvdtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5XvddxmEdqEPrOCkNZ5Vg">
<body>The ordered set of all formal template parameters for this template signature.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7UkcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7UksWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5Xvd9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5XveNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hE7Uk8WCEdqI1bY5Lwi8Hg" name="ownedParameter" type="_KxRzgGvuEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg _hE7Uj8WCEdqI1bY5Lwi8Hg" association="_hFYAecWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UlMWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7Uk8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5XvedxmEdqEPrOCkNZ5Vg" name="ownedParameter" type="_KxRzgGvuEdqG6fBIPwe-mw" isOrdered="true" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg _M5XvddxmEdqEPrOCkNZ5Vg" association="_M50bRNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvetxmEdqEPrOCkNZ5Vg" annotatedElement="_M5XvedxmEdqEPrOCkNZ5Vg">
<body>The formal template parameters that are owned by this template signature.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7UlcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7UlsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5Xve9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5XvfNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hE7Ul8WCEdqI1bY5Lwi8Hg" name="template" type="_hFEei8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_hFYAi8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UmMWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7Ul8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5XvfdxmEdqEPrOCkNZ5Vg" name="template" type="_M5hgjdxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_M50bVtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvftxmEdqEPrOCkNZ5Vg" annotatedElement="_M5XvfdxmEdqEPrOCkNZ5Vg">
<body>The element that owns this template signature.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7UmcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7UmsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5Xvf9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5XvgNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_csVgUGvtEdqG6fBIPwe-mw" name="NamedElement" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BWCMWCEdqI1bY5Lwi8Hg" annotatedElement="_csVgUGvtEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4n9xmEdqEPrOCkNZ5Vg" annotatedElement="_csVgUGvtEdqG6fBIPwe-mw">
<body>NamedElement has a visibility attribute.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3Eep8WCEdqI1bY5Lwi8Hg" annotatedElement="_csVgUGvtEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MupGBNxmEdqEPrOCkNZ5Vg" annotatedElement="_csVgUGvtEdqG6fBIPwe-mw">
<body>A named element represents elements that may have a name. The name is used for identification of the named element within the namespace in which it is defined. A named element also has a qualified name that allows it to be unambiguously identified within a hierarchy of nested namespaces. NamedElement is an abstract metaclass.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7Um8WCEdqI1bY5Lwi8Hg" annotatedElement="_csVgUGvtEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvgdxmEdqEPrOCkNZ5Vg" annotatedElement="_csVgUGvtEdqG6fBIPwe-mw">
<body>NamedElement specializes Kernel::NamedElement and adds a composition association to Expression.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2BWCcWCEdqI1bY5Lwi8Hg" name="has_no_qualified_name" constrainedElement="_csVgUGvtEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BWCsWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BWCcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtJ4oNxmEdqEPrOCkNZ5Vg" name="has_no_qualified_name" constrainedElement="_csVgUGvtEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4odxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4oNxmEdqEPrOCkNZ5Vg">
<body>If there is no name, or one of the containing namespaces has no name, there is no qualified name.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3EeqMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MupGBdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>(self.name->isEmpty() or self.allNamespaces()->select(ns | ns.name->isEmpty())->notEmpty())&#xA;&#xA; implies self.qualifiedName->isEmpty()</body>
+ <body>(self.name->isEmpty() or self.allNamespaces()->select(ns | ns.name->isEmpty())->notEmpty())&#xD;&#xA; implies self.qualifiedName->isEmpty()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2BWDMWCEdqI1bY5Lwi8Hg" name="has_qualified_name" constrainedElement="_csVgUGvtEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BWDcWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BWDMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtJ4o9xmEdqEPrOCkNZ5Vg" name="has_qualified_name" constrainedElement="_csVgUGvtEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4pNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4o9xmEdqEPrOCkNZ5Vg">
<body>When there is a name, and all of the containing namespaces have a name, the qualified name is constructed from the names of the containing namespaces.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3EeqcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MupGBtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>(self.name->notEmpty() and self.allNamespaces()->select(ns | ns.name->isEmpty())->isEmpty()) implies&#xA; self.qualifiedName = self.allNamespaces()->iterate( ns : Namespace; result: String = self.name | ns.name->union(self.separator())->union(result))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2BWD8WCEdqI1bY5Lwi8Hg" name="visibility_needs_ownership" constrainedElement="_csVgUGvtEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BWEMWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BWD8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtJ4ptxmEdqEPrOCkNZ5Vg" name="visibility_needs_ownership" constrainedElement="_csVgUGvtEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4p9xmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4ptxmEdqEPrOCkNZ5Vg">
<body>If a NamedElement is not owned by a Namespace, it does not have a visibility.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3EeqsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MupGB9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>namespace->isEmpty() implies visibility->isEmpty()</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g2BWEsWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2BWE8WCEdqI1bY5Lwi8Hg" name="name" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BWFMWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BWE8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtTCMNxmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtTCMdxmEdqEPrOCkNZ5Vg" name="name" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCMtxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCMdxmEdqEPrOCkNZ5Vg">
<body>The name of the NamedElement.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3Eeq8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3EerMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MupGCNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MupGCdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2BWF8WCEdqI1bY5Lwi8Hg" name="visibility" visibility="public" type="_AyM_oGwMEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BWGMWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BWF8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtTCNdxmEdqEPrOCkNZ5Vg" name="visibility" visibility="public" type="_AyM_oGwMEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCNtxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCNdxmEdqEPrOCkNZ5Vg">
<body>Determines where the NamedElement appears within different Namespaces within the overall model, and its accessibility.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3EercWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3EersWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MupGCtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MupGC9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2BWH8WCEdqI1bY5Lwi8Hg" name="qualifiedName" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BWIMWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BWH8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtTCPdxmEdqEPrOCkNZ5Vg" name="qualifiedName" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCPtxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCPdxmEdqEPrOCkNZ5Vg">
<body>A name which allows the NamedElement to be identified within a hierarchy of nested Namespaces. It is constructed from the names of the containing namespaces starting at the root of the hierarchy and ending with the name of the NamedElement itself.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3Eer8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3EesMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MupGDNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MupGDdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8bf18WCEdqI1bY5Lwi8Hg" name="clientDependency" type="_rEDGkGwKEdq7X4sGURiZYA" association="_g8lQycWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8bf2MWCEdqI1bY5Lwi8Hg" annotatedElement="_g8bf18WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myg5idxmEdqEPrOCkNZ5Vg" name="clientDependency" type="_rEDGkGwKEdq7X4sGURiZYA" association="_Myqqc9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myg5itxmEdqEPrOCkNZ5Vg" annotatedElement="_Myg5idxmEdqEPrOCkNZ5Vg">
<body>Indicates the dependencies that reference the client.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8bf2cWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8bf2sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myg5i9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myg5jNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2BWG8WCEdqI1bY5Lwi8Hg" name="namespace" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_g2eB3cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BWHMWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BWG8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtTCOdxmEdqEPrOCkNZ5Vg" name="namespace" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_Mtmkc9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCOtxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCOdxmEdqEPrOCkNZ5Vg">
<body>Specifies the namespace that owns the NamedElement.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8bf28WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8bf3MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myg5jdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myg5jtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hE7UnMWCEdqI1bY5Lwi8Hg" name="nameExpression" type="_hE7UucWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hFhKZMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UncWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7UnMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5XvgtxmEdqEPrOCkNZ5Vg" name="nameExpression" type="_M5Xvn9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M50bd9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5Xvg9xmEdqEPrOCkNZ5Vg" annotatedElement="_M5XvgtxmEdqEPrOCkNZ5Vg">
<body>The string expression used to define the name of this named element.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7UnsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7Un8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5XvhNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5XvhdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_o2CW4GwKEdq7X4sGURiZYA" name="createDependency">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_us8f4GwKEdq7X4sGURiZYA" type="_rEDGkGwKEdq7X4sGURiZYA" direction="return"/>
@@ -13430,618 +13123,608 @@ Transitions in the containing state machine can have entry/exit points of the in
</ownedParameter>
<ownedParameter xmi:type="uml:Parameter" xmi:id="_6FwyQGwKEdq7X4sGURiZYA" name="localize" type="_UdivYGvsEdqG6fBIPwe-mw" effect="read"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g2LGzMWCEdqI1bY5Lwi8Hg" name="qualifiedName" isQuery="true" bodyCondition="_g2LGzsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LGzcWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LGzMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtTCVNxmEdqEPrOCkNZ5Vg" name="qualifiedName" isQuery="true" bodyCondition="_MtTCVtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCVdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCVNxmEdqEPrOCkNZ5Vg">
<body>When there is a name, and all of the containing namespaces have a name, the qualified name is constructed from the names of the containing namespaces.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2LGzsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g2LGzMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g2LGz8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtTCVtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtTCVNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MtTCV9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if self.name->notEmpty() and self.allNamespaces()->select(ns | ns.name->isEmpty())->isEmpty()&#xA;then &#xA; self.allNamespaces()->iterate( ns : Namespace; result: String = self.name | ns.name->union(self.separator())->union(result))&#xA;else&#xA; Set{}&#xA;endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2LG0MWCEdqI1bY5Lwi8Hg" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtTCWNxmEdqEPrOCkNZ5Vg" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g2BWI8WCEdqI1bY5Lwi8Hg" name="allNamespaces" visibility="public" isQuery="true" bodyCondition="_g2BWJcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BWJMWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BWI8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtTCQdxmEdqEPrOCkNZ5Vg" name="allNamespaces" visibility="public" isQuery="true" bodyCondition="_MtTCQ9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCQtxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCQdxmEdqEPrOCkNZ5Vg">
<body>The query allNamespaces() gives the sequence of namespaces in which the NamedElement is nested, working outwards.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2BWJcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g2BWI8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3Ees8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtTCQ9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtTCQdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MupGENxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if self.namespace->isEmpty()&#xA;then Sequence{}&#xA;else self.namespace.allNamespaces()->prepend(self.namespace)&#xA;endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2BWJ8WCEdqI1bY5Lwi8Hg" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" isOrdered="true" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g3EetMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g3EetcWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtTCRdxmEdqEPrOCkNZ5Vg" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA" isOrdered="true" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MupGEdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MupGEtxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g2LGwMWCEdqI1bY5Lwi8Hg" name="isDistinguishableFrom" visibility="public" isQuery="true" bodyCondition="_g2LGwsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LGwcWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LGwMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtTCSNxmEdqEPrOCkNZ5Vg" name="isDistinguishableFrom" visibility="public" isQuery="true" bodyCondition="_MtTCStxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCSdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCSNxmEdqEPrOCkNZ5Vg">
<body>The query isDistinguishableFrom() determines whether two NamedElements may logically co-exist within a Namespace. By default, two named elements are distinguishable if (a) they have unrelated types or (b) they have related types but different names.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2LGwsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g2LGwMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3EetsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtTCStxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtTCSNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MupGE9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if self.oclIsKindOf(n.oclType) or n.oclIsKindOf(self.oclType)&#xA;then ns.getNamesOfMember(self)->intersection(ns.getNamesOfMember(n))->isEmpty()&#xA;else true&#xA;endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2LGxMWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2LGxcWCEdqI1bY5Lwi8Hg" name="n" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2LGxsWCEdqI1bY5Lwi8Hg" name="ns" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtTCTNxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtTCTdxmEdqEPrOCkNZ5Vg" name="n" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtTCTtxmEdqEPrOCkNZ5Vg" name="ns" visibility="public" type="_ZiwkoGwLEdq7X4sGURiZYA"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g2LGx8WCEdqI1bY5Lwi8Hg" name="separator" visibility="public" isQuery="true" bodyCondition="_g2LGycWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2LGyMWCEdqI1bY5Lwi8Hg" annotatedElement="_g2LGx8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtTCT9xmEdqEPrOCkNZ5Vg" name="separator" visibility="public" isQuery="true" bodyCondition="_MtTCUdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtTCUNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtTCT9xmEdqEPrOCkNZ5Vg">
<body>The query separator() gives the string that is used to separate names when constructing a qualified name.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2LGycWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g2LGx8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g3NokMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtTCUdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtTCT9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MupGFNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = '::'</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2LGy8WCEdqI1bY5Lwi8Hg" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtTCU9xmEdqEPrOCkNZ5Vg" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hCPNBMWCEdqI1bY5Lwi8Hg" name="allOwningPackages" isQuery="true" bodyCondition="_hCPNBsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCPNBcWCEdqI1bY5Lwi8Hg" annotatedElement="_hCPNBMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M3SE5txmEdqEPrOCkNZ5Vg" name="allOwningPackages" isQuery="true" bodyCondition="_M3SE6NxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3SE59xmEdqEPrOCkNZ5Vg" annotatedElement="_M3SE5txmEdqEPrOCkNZ5Vg">
<body>The query allOwningPackages() returns all the directly or indirectly owning packages.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCPNBsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hCPNBMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCPNB8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3SE6NxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M3SE5txmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3SE6dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = self.namespace->select(p | p.oclIsKindOf(Package))->union(p.allOwningPackages())</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hCPNCMWCEdqI1bY5Lwi8Hg" type="_-cvRAGvzEdq7X4sGURiZYA" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCPNCcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCPNCsWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M3SE6txmEdqEPrOCkNZ5Vg" type="_-cvRAGvzEdq7X4sGURiZYA" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3SE69xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3SE7NxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_KxRzgGvuEdqG6fBIPwe-mw" name="TemplateParameter">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UoMWCEdqI1bY5Lwi8Hg" annotatedElement="_KxRzgGvuEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvhtxmEdqEPrOCkNZ5Vg" annotatedElement="_KxRzgGvuEdqG6fBIPwe-mw">
<body>TemplateParameter references a ParameterableElement which is exposed as a formal template parameter in the containing template.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hE7UocWCEdqI1bY5Lwi8Hg" name="must_be_compatible" constrainedElement="_KxRzgGvuEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UosWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7UocWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5Xvh9xmEdqEPrOCkNZ5Vg" name="must_be_compatible" constrainedElement="_KxRzgGvuEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XviNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5Xvh9xmEdqEPrOCkNZ5Vg">
<body>The default must be compatible with the formal template parameter.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hE7Uo8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5XvidxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>default->notEmpty() implies default->isCompatibleWith(parameteredElement)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hE7UpMWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hE7UpcWCEdqI1bY5Lwi8Hg" name="signature" type="_hE7UicWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_hFYAecWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UpsWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7UpcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5XvitxmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5Xvi9xmEdqEPrOCkNZ5Vg" name="signature" type="_M5Xvb9xmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_M50bRNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvjNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5Xvi9xmEdqEPrOCkNZ5Vg">
<body>The template signature that owns this template parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7Up8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7UqMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5XvjdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5XvjtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hE7UqcWCEdqI1bY5Lwi8Hg" name="parameteredElement" type="_hFEeosWCEdqI1bY5Lwi8Hg" association="_hFYAiMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UqsWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7UqcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5Xvj9xmEdqEPrOCkNZ5Vg" name="parameteredElement" type="_M5hgpNxmEdqEPrOCkNZ5Vg" association="_M50bU9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvkNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5Xvj9xmEdqEPrOCkNZ5Vg">
<body>The element exposed by this template parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7Uq8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7UrMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5XvkdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5XvktxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hE7UrcWCEdqI1bY5Lwi8Hg" name="ownedParameteredElement" type="_hFEeosWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg _hE7UqcWCEdqI1bY5Lwi8Hg" association="_hFYAjcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UrsWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7UrcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5Xvk9xmEdqEPrOCkNZ5Vg" name="ownedParameteredElement" type="_M5hgpNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg _M5Xvj9xmEdqEPrOCkNZ5Vg" association="_M50bWNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvlNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5Xvk9xmEdqEPrOCkNZ5Vg">
<body>The element that is owned by this template parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7Ur8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7UsMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5XvldxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5XvltxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hE7UscWCEdqI1bY5Lwi8Hg" name="default" type="_hFEeosWCEdqI1bY5Lwi8Hg" association="_hFYAkMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UssWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7UscWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5Xvl9xmEdqEPrOCkNZ5Vg" name="default" type="_M5hgpNxmEdqEPrOCkNZ5Vg" association="_M50bW9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvmNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5Xvl9xmEdqEPrOCkNZ5Vg">
<body>The element that is the default for this formal template parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7Us8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7UtMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5XvmdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5XvmtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hE7UtcWCEdqI1bY5Lwi8Hg" name="ownedDefault" type="_hFEeosWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_hE7UscWCEdqI1bY5Lwi8Hg _g01DI8WCEdqI1bY5Lwi8Hg" association="_hFYAksWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UtsWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7UtcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5Xvm9xmEdqEPrOCkNZ5Vg" name="ownedDefault" type="_M5hgpNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_M5Xvl9xmEdqEPrOCkNZ5Vg _MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M50bXdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvnNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5Xvm9xmEdqEPrOCkNZ5Vg">
<body>The element that is owned by this template parameter for the purpose of providing a default.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7Ut8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7UuMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5XvndxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5XvntxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hE7UucWCEdqI1bY5Lwi8Hg" name="StringExpression">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UusWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7UucWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5Xvn9xmEdqEPrOCkNZ5Vg" name="StringExpression">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvoNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5Xvn9xmEdqEPrOCkNZ5Vg">
<body>StringExpression is a specialization of the general Expression metaclass which adds the ability to contain sub-expressions and whose operands are exclusively LiteralStrings.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hE7Uu8WCEdqI1bY5Lwi8Hg" name="operands" constrainedElement="_hE7UucWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UvMWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7Uu8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5XvodxmEdqEPrOCkNZ5Vg" name="operands" constrainedElement="_M5Xvn9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvotxmEdqEPrOCkNZ5Vg" annotatedElement="_M5XvodxmEdqEPrOCkNZ5Vg">
<body>All the operands of a StringExpression must be LiteralStrings</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hE7UvcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5Xvo9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>operand->forAll (op | op.oclIsKindOf (LiteralString))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hE7UvsWCEdqI1bY5Lwi8Hg" name="subexpressions" constrainedElement="_hE7UucWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7Uv8WCEdqI1bY5Lwi8Hg" annotatedElement="_hE7UvsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5hgUNxmEdqEPrOCkNZ5Vg" name="subexpressions" constrainedElement="_M5Xvn9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgUdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgUNxmEdqEPrOCkNZ5Vg">
<body>If a StringExpression has sub-expressions, it cannot have operands and vice versa (this avoids the problem of having to
define a collating sequence between operands and subexpressions).
</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hE7UwMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5hgUtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>if subExpression->notEmpty() then operand->isEmpty() else operand->notEmpty()</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hE7UwcWCEdqI1bY5Lwi8Hg" general="_hFEei8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hE7UwsWCEdqI1bY5Lwi8Hg" general="_g2LG0cWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hE7Uw8WCEdqI1bY5Lwi8Hg" name="subExpression" type="_hE7UucWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hFYAicWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UxMWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7Uw8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5hgU9xmEdqEPrOCkNZ5Vg" general="_M5hgjdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5hgVNxmEdqEPrOCkNZ5Vg" general="_MtTCWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hgVdxmEdqEPrOCkNZ5Vg" name="subExpression" type="_M5Xvn9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M50bVNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgVtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgVdxmEdqEPrOCkNZ5Vg">
<body>The StringExpressions that constitute this StringExpression.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7UxcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7UxsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgV9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hgWNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hE7Ux8WCEdqI1bY5Lwi8Hg" name="owningExpression" type="_hE7UucWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_hFYAicWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UyMWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7Ux8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hgWdxmEdqEPrOCkNZ5Vg" name="owningExpression" type="_M5Xvn9xmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_M50bVNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgWtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgWdxmEdqEPrOCkNZ5Vg">
<body>The string expression of which this expression is a substring.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7UycWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7UysWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgW9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hgXNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hE7Uy8WCEdqI1bY5Lwi8Hg" name="stringValue" isQuery="true" redefinedOperation="_g1RvA8WCEdqI1bY5Lwi8Hg" bodyCondition="_hE7UzcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UzMWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7Uy8WCEdqI1bY5Lwi8Hg">
- <body>The query stringValue() returns the string that concatenates, in order, all the component string literals of all the subexpressions that are part of the StringExpression.
-
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M5hgXdxmEdqEPrOCkNZ5Vg" name="stringValue" isQuery="true" redefinedOperation="_MsjbktxmEdqEPrOCkNZ5Vg" bodyCondition="_M5hgX9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgXtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgXdxmEdqEPrOCkNZ5Vg">
+ <body>The query stringValue() returns the string that concatenates, in order, all the component string literals of all the subexpressions that are part of the StringExpression.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hE7UzcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hE7Uy8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hE7UzsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5hgX9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M5hgXdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5hgYNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if subExpression->notEmpty()&#xA;then subExpression->iterate(se; stringValue = ‘| stringValue.concat(se.stringValue()))&#xA;else operand->iterate()(op; stringValue = ‘ | stringValue.concat(op.value))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hE7Uz8WCEdqI1bY5Lwi8Hg" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5hgYdxmEdqEPrOCkNZ5Vg" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hFEeYMWCEdqI1bY5Lwi8Hg" name="TemplateBinding">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEeYcWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEeYMWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5hgYtxmEdqEPrOCkNZ5Vg" name="TemplateBinding">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgY9xmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgYtxmEdqEPrOCkNZ5Vg">
<body>TemplateBinding is a directed relationship from a bound templateable element to the template signature of the target template. A TemplateBinding owns a set of template parameter substitutions.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFEeYsWCEdqI1bY5Lwi8Hg" name="parameter_substitution_formal" constrainedElement="_hFEeYMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEeY8WCEdqI1bY5Lwi8Hg" annotatedElement="_hFEeYsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5hgZNxmEdqEPrOCkNZ5Vg" name="parameter_substitution_formal" constrainedElement="_M5hgYtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgZdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgZNxmEdqEPrOCkNZ5Vg">
<body>Each parameter substitution must refer to a formal template parameter of the target template signature.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFEeZMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5hgZtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>parameterSubstitution->forAll(b | template.parameter->includes(b.formal))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFEeZcWCEdqI1bY5Lwi8Hg" name="one_parameter_substitution" constrainedElement="_hFEeYMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEeZsWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEeZcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5hgZ9xmEdqEPrOCkNZ5Vg" name="one_parameter_substitution" constrainedElement="_M5hgYtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgaNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgZ9xmEdqEPrOCkNZ5Vg">
<body>A binding contains at most one parameter substitution for each formal template parameter of the target template signature.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFEeZ8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5hgadxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>template.parameter->forAll(p | parameterSubstitution->select(b | b.formal = p)->size() &lt;= 1)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFEeaMWCEdqI1bY5Lwi8Hg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFEeacWCEdqI1bY5Lwi8Hg" name="boundElement" type="_hFEei8WCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg _g01DFMWCEdqI1bY5Lwi8Hg" association="_hFYAfMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEeasWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEeacWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5hgatxmEdqEPrOCkNZ5Vg" general="_JBgfoKPAEdqi_5gqUMOQtA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hga9xmEdqEPrOCkNZ5Vg" name="boundElement" type="_M5hgjdxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg _MsGvrdxmEdqEPrOCkNZ5Vg" association="_M50bR9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgbNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hga9xmEdqEPrOCkNZ5Vg">
<body>The element that is bound by this binding.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFEea8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFEebMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgbdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hgbtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFEebcWCEdqI1bY5Lwi8Hg" name="signature" type="_hE7UicWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DGMWCEdqI1bY5Lwi8Hg" association="_hFYAgcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEebsWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEebcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hgb9xmEdqEPrOCkNZ5Vg" name="signature" type="_M5Xvb9xmEdqEPrOCkNZ5Vg" subsettedProperty="_MsGvsdxmEdqEPrOCkNZ5Vg" association="_M50bTNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgcNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgb9xmEdqEPrOCkNZ5Vg">
<body>The template signature for the template that is the target of the binding.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFEeb8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFEecMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgcdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hgctxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFEeccWCEdqI1bY5Lwi8Hg" name="parameterSubstitution" type="_hFEedcWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hFYAhMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEecsWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEeccWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hgc9xmEdqEPrOCkNZ5Vg" name="parameterSubstitution" type="_M5hgd9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M50bT9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgdNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgc9xmEdqEPrOCkNZ5Vg">
<body>The parameter substitutions owned by this template binding.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFEec8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFEedMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgddxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hgdtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hFEedcWCEdqI1bY5Lwi8Hg" name="TemplateParameterSubstitution">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEedsWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEedcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5hgd9xmEdqEPrOCkNZ5Vg" name="TemplateParameterSubstitution">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgeNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgd9xmEdqEPrOCkNZ5Vg">
<body>TemplateParameterSubstitution associates one or more actual parameters with a formal template parameter within the context of a TemplateBinding.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFEed8WCEdqI1bY5Lwi8Hg" name="must_be_compatible" constrainedElement="_hFEedcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEeeMWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEed8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5hgedxmEdqEPrOCkNZ5Vg" name="must_be_compatible" constrainedElement="_M5hgd9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgetxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgedxmEdqEPrOCkNZ5Vg">
<body>The actual parameter must be compatible with the formal template parameter, e.g. the actual parameter for a class template parameter must be a class.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFEeecWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5hge9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>actual->forAll(a | a.isCompatibleWith(formal.parameteredElement))</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFEeesWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFEee8WCEdqI1bY5Lwi8Hg" name="formal" type="_KxRzgGvuEdqG6fBIPwe-mw" association="_hFYAf8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEefMWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEee8WCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5hgfNxmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hgfdxmEdqEPrOCkNZ5Vg" name="formal" type="_KxRzgGvuEdqG6fBIPwe-mw" association="_M50bStxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgftxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgfdxmEdqEPrOCkNZ5Vg">
<body>The formal template parameter that is associated with this substitution.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFEefcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFEefsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgf9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hggNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFEef8WCEdqI1bY5Lwi8Hg" name="templateBinding" type="_hFEeYMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_hFYAhMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEegMWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEef8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hggdxmEdqEPrOCkNZ5Vg" name="templateBinding" type="_M5hgYtxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_M50bT9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hggtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hggdxmEdqEPrOCkNZ5Vg">
<body>The optional bindings from this element to templates.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFEegcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFEegsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgg9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hghNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFEeg8WCEdqI1bY5Lwi8Hg" name="actual" type="_hFEeosWCEdqI1bY5Lwi8Hg" association="_hFYAhsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEehMWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEeg8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hghdxmEdqEPrOCkNZ5Vg" name="actual" type="_M5hgpNxmEdqEPrOCkNZ5Vg" association="_M50bUdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hghtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hghdxmEdqEPrOCkNZ5Vg">
<body>The elements that are the actual parameters for this substitution.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFEehcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFEehsWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgh9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hgiNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFEeh8WCEdqI1bY5Lwi8Hg" name="ownedActual" type="_hFEeosWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_hFEeg8WCEdqI1bY5Lwi8Hg _g01DI8WCEdqI1bY5Lwi8Hg" association="_hFhKUMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEeiMWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEeh8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hgidxmEdqEPrOCkNZ5Vg" name="ownedActual" type="_M5hgpNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_M5hghdxmEdqEPrOCkNZ5Vg _MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M50bY9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgitxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgidxmEdqEPrOCkNZ5Vg">
<body>The actual parameters that are owned by this substitution.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFEeicWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFEeisWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgi9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hgjNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hFEei8WCEdqI1bY5Lwi8Hg" name="TemplateableElement" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEejMWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEei8WCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5hgjdxmEdqEPrOCkNZ5Vg" name="TemplateableElement" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgjtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgjdxmEdqEPrOCkNZ5Vg">
<body>TemplateableElement may contain a template signature which specifies the formal template parameters. A TemplateableElement that contains a template signature is often referred to as a template. TemplateableElement may contain bindings to templates that describe how the templateable element is constructed by replacing the formal template parameters with actual parameters. A TemplateableElement containing bindings is oftenreferred to as a bound element.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFEejcWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFEejsWCEdqI1bY5Lwi8Hg" name="templateBinding" type="_hFEeYMWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hFYAfMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEej8WCEdqI1bY5Lwi8Hg" annotatedElement="_hFEejsWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5hgj9xmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hgkNxmEdqEPrOCkNZ5Vg" name="templateBinding" type="_M5hgYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M50bR9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgkdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgkNxmEdqEPrOCkNZ5Vg">
<body>The optional bindings from this element to templates.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFEekMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFEekcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgktxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hgk9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFEeksWCEdqI1bY5Lwi8Hg" name="ownedTemplateSignature" type="_hE7UicWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hFYAi8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEek8WCEdqI1bY5Lwi8Hg" annotatedElement="_hFEeksWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hglNxmEdqEPrOCkNZ5Vg" name="ownedTemplateSignature" type="_M5Xvb9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M50bVtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgldxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hglNxmEdqEPrOCkNZ5Vg">
<body>The optional template signature specifying the formal template parameters.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFEelMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFEelcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgltxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hgl9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hFEelsWCEdqI1bY5Lwi8Hg" name="parameterableElements" isQuery="true" bodyCondition="_hFEemMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEel8WCEdqI1bY5Lwi8Hg" annotatedElement="_hFEelsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M5hgmNxmEdqEPrOCkNZ5Vg" name="parameterableElements" isQuery="true" bodyCondition="_M5hgmtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgmdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgmNxmEdqEPrOCkNZ5Vg">
<body>The query parameterableElements() returns the set of elements that may be used as the parametered elements for a template parameter of this templateable element. By default, this set includes all the owned elements. Subclasses may override this operation if they choose to restrict the set of parameterable elements.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFEemMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hFEelsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFEemcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5hgmtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M5hgmNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5hgm9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = allOwnedElements->select(oclIsKindOf(ParameterableElement))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hFEemsWCEdqI1bY5Lwi8Hg" type="_hFEeosWCEdqI1bY5Lwi8Hg" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFEem8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFEenMWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5hgnNxmEdqEPrOCkNZ5Vg" type="_M5hgpNxmEdqEPrOCkNZ5Vg" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgndxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hgntxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hFEencWCEdqI1bY5Lwi8Hg" name="isTemplate" isQuery="true" bodyCondition="_hFEen8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEensWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEencWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M5hgn9xmEdqEPrOCkNZ5Vg" name="isTemplate" isQuery="true" bodyCondition="_M5hgodxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgoNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgn9xmEdqEPrOCkNZ5Vg">
<body>The query isTemplate() returns whether this templateable element is actually a template.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFEen8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hFEencWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFEeoMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5hgodxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M5hgn9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5hgotxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = ownedTemplateSignature->notEmpty()</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hFEeocWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5hgo9xmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hFEeosWCEdqI1bY5Lwi8Hg" name="ParameterableElement" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEeo8WCEdqI1bY5Lwi8Hg" annotatedElement="_hFEeosWCEdqI1bY5Lwi8Hg">
- <body>A ParameterableElement can be referenced by a TemplateParameter when defining a formal template parameter for a template. A ParameterableElement can be referenced by a TemplateParameterSubstitution when used as an actual parameter in a binding of a template.
-
-ParameterableElement is an abstract metaclass.
-
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5hgpNxmEdqEPrOCkNZ5Vg" name="ParameterableElement" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgpdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgpNxmEdqEPrOCkNZ5Vg">
+ <body>A ParameterableElement can be referenced by a TemplateParameter when defining a formal template parameter for a template. A ParameterableElement can be referenced by a TemplateParameterSubstitution when used as an actual parameter in a binding of a template.&#xD;
+ParameterableElement is an abstract metaclass.&#xD;
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFEepMWCEdqI1bY5Lwi8Hg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFEepcWCEdqI1bY5Lwi8Hg" name="templateParameter" type="_KxRzgGvuEdqG6fBIPwe-mw" association="_hFYAiMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEepsWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEepcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5hgptxmEdqEPrOCkNZ5Vg" general="_kl90MGvbEdq4DLWZOhbdEA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hgp9xmEdqEPrOCkNZ5Vg" name="templateParameter" type="_KxRzgGvuEdqG6fBIPwe-mw" association="_M50bU9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgqNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgp9xmEdqEPrOCkNZ5Vg">
<body>The template parameter that exposes this element as a formal parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFEep8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFEeqMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgqdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hgqtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFEeqcWCEdqI1bY5Lwi8Hg" name="owningTemplateParameter" type="_KxRzgGvuEdqG6fBIPwe-mw" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg _hFEepcWCEdqI1bY5Lwi8Hg" association="_hFYAjcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEeqsWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEeqcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hgq9xmEdqEPrOCkNZ5Vg" name="owningTemplateParameter" type="_KxRzgGvuEdqG6fBIPwe-mw" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg _M5hgp9xmEdqEPrOCkNZ5Vg" association="_M50bWNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgrNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgq9xmEdqEPrOCkNZ5Vg">
<body>The formal template parameter that owns this element.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFEeq8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFEerMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hgrdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hgrtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hFEercWCEdqI1bY5Lwi8Hg" name="isCompatibleWith" isQuery="true" bodyCondition="_hFEer8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEersWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEercWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M5hgr9xmEdqEPrOCkNZ5Vg" name="isCompatibleWith" isQuery="true" bodyCondition="_M5hgsdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgsNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgr9xmEdqEPrOCkNZ5Vg">
<body>The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. Subclasses should override this operation to specify different compatibility constraints.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFEer8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hFEercWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFEesMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5hgsdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M5hgr9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5hgstxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = p->oclIsKindOf(self.oclType)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hFEescWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hFEessWCEdqI1bY5Lwi8Hg" name="p" type="_hFEeosWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5hgs9xmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5hgtNxmEdqEPrOCkNZ5Vg" name="p" type="_M5hgpNxmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hFEes8WCEdqI1bY5Lwi8Hg" name="isTemplateParameter" isQuery="true" bodyCondition="_hFEetcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEetMWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEes8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M5hgtdxmEdqEPrOCkNZ5Vg" name="isTemplateParameter" isQuery="true" bodyCondition="_M5hgt9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgttxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgtdxmEdqEPrOCkNZ5Vg">
<body>The query isTemplateParameter() determines if this parameterable element is exposed as a formal template parameter.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFEetcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hFEes8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFEetsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5hgt9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M5hgtdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5hguNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = templateParameter->notEmpty()</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hFEet8WCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5hgudxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_Jp_1oGveEdq4DLWZOhbdEA" name="Property">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgB8WCEdqI1bY5Lwi8Hg" annotatedElement="_Jp_1oGveEdq4DLWZOhbdEA">
- <body>Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association.
-
-
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMadxmEdqEPrOCkNZ5Vg" annotatedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <body>Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association.&#xD;
+&#xD;
Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5dEV8WCEdqI1bY5Lwi8Hg" annotatedElement="_Jp_1oGveEdq4DLWZOhbdEA">
- <body>A property is a structural feature.
-
-A property related to a classifier by ownedAttribute represents an attribute, and it may also represent an association end. It relates an instance of the class to a value or collection of values of the type of the attribute.
-
-A property related to an Association by memberEnd or its specializations represents an end of the association. The type of property is the type of the end of the association.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwITxNxmEdqEPrOCkNZ5Vg" annotatedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <body>A property is a structural feature.&#xD;
+A property related to a classifier by ownedAttribute represents an attribute, and it may also represent an association end. It relates an instance of the class to a value or collection of values of the type of the attribute.&#xD;
+A property related to an Association by memberEnd or its specializations represents an end of the association. The type of property is the type of the end of the association.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ua8sWCEdqI1bY5Lwi8Hg" annotatedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myz0ddxmEdqEPrOCkNZ5Vg" annotatedElement="_Jp_1oGveEdq4DLWZOhbdEA">
<body>A property represents a set of instances that are owned by a containing classifier instance.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_QxcMWCEdqI1bY5Lwi8Hg" annotatedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8CtxmEdqEPrOCkNZ5Vg" annotatedElement="_Jp_1oGveEdq4DLWZOhbdEA">
<body>In the metamodel, Property is a specialization of DeploymentTarget.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UfsWCEdqI1bY5Lwi8Hg" annotatedElement="_Jp_1oGveEdq4DLWZOhbdEA">
- <body>Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association. Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvZNxmEdqEPrOCkNZ5Vg" annotatedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <body>Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association. Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEeuMWCEdqI1bY5Lwi8Hg" annotatedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgutxmEdqEPrOCkNZ5Vg" annotatedElement="_Jp_1oGveEdq4DLWZOhbdEA">
<body>Property specializes ParameterableElement to specify that a property can be exposed as a formal template parameter, and provided as an actual parameter in a binding of a template.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1bgCMWCEdqI1bY5Lwi8Hg" name="multiplicity_of_composite" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgCcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgCMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMatxmEdqEPrOCkNZ5Vg" name="multiplicity_of_composite" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMa9xmEdqEPrOCkNZ5Vg" annotatedElement="_MstMatxmEdqEPrOCkNZ5Vg">
<body>A multiplicity of a composite aggregation must not have an upper bound greater than 1.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5dEWMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgCMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwITxdxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMatxmEdqEPrOCkNZ5Vg">
<body>A multiplicity on an aggregate end of a composite aggregation must not have an upper bound greater than 1.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5dEWcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwITxtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>isComposite implies (upperBound()->isEmpty() or upperBound() &lt;= 1)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1bgC8WCEdqI1bY5Lwi8Hg" name="subsetting_context_conforms" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgDMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgC8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMbdxmEdqEPrOCkNZ5Vg" name="subsetting_context_conforms" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMbtxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMbdxmEdqEPrOCkNZ5Vg">
<body>Subsetting may only occur when the context of the subsetting property conforms to the context of the subsetted property.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5dEWsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwITx9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.subsettedProperty->notEmpty() implies&#xA; (self.subsettingContext()->notEmpty() and self.subsettingContext()->forAll (sc |&#xA; self.subsettedProperty->forAll(sp |&#xA; sp.subsettingContext()->exists(c | sc.conformsTo(c)))))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1bgDsWCEdqI1bY5Lwi8Hg" name="redefined_property_inherited" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgD8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgDsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMcNxmEdqEPrOCkNZ5Vg" name="redefined_property_inherited" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMcdxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMcNxmEdqEPrOCkNZ5Vg">
<body>A redefined property must be inherited from a more general classifier containing the redefining property.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5dEW8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwITyNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>if (redefinedProperty->notEmpty()) then&#xA;&#xA; (redefinitionContext->notEmpty() and&#xA;&#xA; redefinedProperty->forAll(rp|&#xA;&#xA; ((redefinitionContext->collect(fc|&#xA;&#xA; fc.allParents()))->asSet())->collect(c| c.allFeatures())->asSet()->includes(rp))</body>
+ <body>if (redefinedProperty->notEmpty()) then&#xD;&#xA; (redefinitionContext->notEmpty() and&#xD;&#xA; redefinedProperty->forAll(rp|&#xD;&#xA; ((redefinitionContext->collect(fc|&#xD;&#xA; fc.allParents()))->asSet())->collect(c| c.allFeatures())->asSet()->includes(rp))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1bgEcWCEdqI1bY5Lwi8Hg" name="subsetting_rules" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgEsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgEcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMc9xmEdqEPrOCkNZ5Vg" name="subsetting_rules" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMdNxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMc9xmEdqEPrOCkNZ5Vg">
<body>A subsetting property may strengthen the type of the subsetted property, and its upper bound may be less.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5dEXMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwITydxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.subsettedProperty->forAll(sp |&#xA; self.type.conformsTo(sp.type) and&#xA; ((self.upperBound()->notEmpty() and sp.upperBound()->notEmpty()) implies&#xA; self.upperBound()&lt;=sp.upperBound() ))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1bgFMWCEdqI1bY5Lwi8Hg" name="navigable_readonly" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgFcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgFMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMdtxmEdqEPrOCkNZ5Vg" name="navigable_readonly" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMd9xmEdqEPrOCkNZ5Vg" annotatedElement="_MstMdtxmEdqEPrOCkNZ5Vg">
<body>Only a navigable property can be marked as readOnly.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5dEXcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwITytxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>isReadOnly implies isNavigable()</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1bgF8WCEdqI1bY5Lwi8Hg" name="derived_union_is_derived" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgGMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgF8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMedxmEdqEPrOCkNZ5Vg" name="derived_union_is_derived" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMetxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMedxmEdqEPrOCkNZ5Vg">
<body>A derived union is derived.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5dEXsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwITy9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>isDerivedUnion implies isDerived</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g5dEX8WCEdqI1bY5Lwi8Hg" name="derived_union_is_read_only" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5dEYMWCEdqI1bY5Lwi8Hg" annotatedElement="_g5dEX8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MwITzNxmEdqEPrOCkNZ5Vg" name="derived_union_is_read_only" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwITzdxmEdqEPrOCkNZ5Vg" annotatedElement="_MwITzNxmEdqEPrOCkNZ5Vg">
<body>A derived union is read only.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5dEYcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwITztxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>isDerivedUnion implies isReadOnly</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1bgGsWCEdqI1bY5Lwi8Hg" name="subsetted_property_names" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgG8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgGsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMfNxmEdqEPrOCkNZ5Vg" name="subsetted_property_names" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMfdxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMfNxmEdqEPrOCkNZ5Vg">
<body>A property may not subset a property with the same name.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5dEYsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwITz9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g_QxccWCEdqI1bY5Lwi8Hg" name="deployment_target" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g_QxcsWCEdqI1bY5Lwi8Hg" annotatedElement="_g_QxccWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M1f8C9xmEdqEPrOCkNZ5Vg" name="deployment_target" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1f8DNxmEdqEPrOCkNZ5Vg" annotatedElement="_M1f8C9xmEdqEPrOCkNZ5Vg">
<body>A Property can be a DeploymentTarget if it is a kind of Node and functions as a part in the internal structure of an encompassing Node.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g_Qxc8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M1f8DdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFEeucWCEdqI1bY5Lwi8Hg" name="binding_to_attribute" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEeusWCEdqI1bY5Lwi8Hg" annotatedElement="_hFEeucWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5hgu9xmEdqEPrOCkNZ5Vg" name="binding_to_attribute" constrainedElement="_Jp_1oGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgvNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgu9xmEdqEPrOCkNZ5Vg">
<body>A binding of a property template parameter representing an attribute must be to an attribute.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFEeu8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5hgvdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
- <body>(isAttribute(self) and (templateParameterSubstitution->notEmpty())&#xA;&#xA; implies (templateParameterSubstitution->forAll(ts | isAttribute(ts.formal)))</body>
+ <body>(isAttribute(self) and (templateParameterSubstitution->notEmpty())&#xD;&#xA; implies (templateParameterSubstitution->forAll(ts | isAttribute(ts.formal)))</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8ua88WCEdqI1bY5Lwi8Hg" general="_g8ubCcWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g_QxdMWCEdqI1bY5Lwi8Hg" general="_g_QxVsWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1bgHcWCEdqI1bY5Lwi8Hg" general="_g1Ru5MWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFEevcWCEdqI1bY5Lwi8Hg" general="_hFEei8WCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bgKMWCEdqI1bY5Lwi8Hg" name="isDerived" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgKcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgKMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Myz0dtxmEdqEPrOCkNZ5Vg" general="_My9lWNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M1f8DtxmEdqEPrOCkNZ5Vg" general="_M1f78NxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MstMf9xmEdqEPrOCkNZ5Vg" general="_Msjbc9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5hgv9xmEdqEPrOCkNZ5Vg" general="_M5hgjdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMitxmEdqEPrOCkNZ5Vg" name="isDerived" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMi9xmEdqEPrOCkNZ5Vg" annotatedElement="_MstMitxmEdqEPrOCkNZ5Vg">
<body>If isDerived is true, the value of the attribute is derived from information elsewhere.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5mOMMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgKMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwIT0NxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMitxmEdqEPrOCkNZ5Vg">
<body>Specifies whether the Property is derived, i.e., whether its value or values can be computed from other information.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g5mOMcWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MwIT0dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bgHsWCEdqI1bY5Lwi8Hg" name="isReadOnly" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" redefinedProperty="_g5JiTcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgH8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgHsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMgNxmEdqEPrOCkNZ5Vg" name="isReadOnly" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" redefinedProperty="_Mv1Y3dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMgdxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMgNxmEdqEPrOCkNZ5Vg">
<body>This redefines the corresponding attribute in Basic::Property and Abstractions::StructuralFeature.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5mOMsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgHsWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwIT0txmEdqEPrOCkNZ5Vg" annotatedElement="_MstMgNxmEdqEPrOCkNZ5Vg">
<body>If true, the attribute may only be read, and not written.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g5mOM8WCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MwIT09xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bgK8WCEdqI1bY5Lwi8Hg" name="isDerivedUnion" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgLMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgK8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMjdxmEdqEPrOCkNZ5Vg" name="isDerivedUnion" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMjtxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMjdxmEdqEPrOCkNZ5Vg">
<body>Specifies whether the property is derived as the union of all of the properties that are constrained to subset it.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g5mONMWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MwIT1NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bgIcWCEdqI1bY5Lwi8Hg" name="default" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgIsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgIcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMg9xmEdqEPrOCkNZ5Vg" name="default" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMhNxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMg9xmEdqEPrOCkNZ5Vg">
<body>Specifies a String that represents a value to be used when no argument is supplied for the Property.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5mONcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgIcWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwIT1dxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMg9xmEdqEPrOCkNZ5Vg">
<body>A String that is evaluated to give a default value for the Property when an object of the owning Classifier is instantiated.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5mONsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5mON8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwIT1txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwIT19xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5mOOMWCEdqI1bY5Lwi8Hg" name="aggregation" type="_B3q9cGwNEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5mOOcWCEdqI1bY5Lwi8Hg" annotatedElement="_g5mOOMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MwIT2NxmEdqEPrOCkNZ5Vg" name="aggregation" type="_B3q9cGwNEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwIT2dxmEdqEPrOCkNZ5Vg" annotatedElement="_MwIT2NxmEdqEPrOCkNZ5Vg">
<body>Specifies the kind of aggregation that applies to the Property.</body>
</ownedComment>
- <defaultValue xmi:type="uml:InstanceValue" xmi:id="_g5mOOsWCEdqI1bY5Lwi8Hg" instance="_g6pXGMWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_MwIT2txmEdqEPrOCkNZ5Vg" instance="_MxBrrNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bgJcWCEdqI1bY5Lwi8Hg" name="isComposite" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgJsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgJcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMh9xmEdqEPrOCkNZ5Vg" name="isComposite" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMiNxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMh9xmEdqEPrOCkNZ5Vg">
<body>If isComposite is true, the object containing the attribute is a container for the object or value contained in the attribute.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5mOO8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgJcWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwIT29xmEdqEPrOCkNZ5Vg" annotatedElement="_MstMh9xmEdqEPrOCkNZ5Vg">
<body>This is a derived value, indicating whether the aggregation of the Property is composite or not.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g1bgJ8WCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MstMidxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bgLsWCEdqI1bY5Lwi8Hg" name="class" visibility="public" type="_00owUGvdEdq4DLWZOhbdEA" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg _g0-z88WCEdqI1bY5Lwi8Hg _g2UQwMWCEdqI1bY5Lwi8Hg" association="_g2UQssWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgL8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgLsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMkNxmEdqEPrOCkNZ5Vg" name="class" visibility="public" type="_00owUGvdEdq4DLWZOhbdEA" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg _MsQggtxmEdqEPrOCkNZ5Vg _MtczQNxmEdqEPrOCkNZ5Vg" association="_MtczMtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMkdxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMkNxmEdqEPrOCkNZ5Vg">
<body>References the Class that owns the Property.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5mOPMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5mOPcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwIT3NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwIT3dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bgNsWCEdqI1bY5Lwi8Hg" name="redefinedProperty" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_g2UQw8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgN8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgNsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMmNxmEdqEPrOCkNZ5Vg" name="redefinedProperty" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_MtczQ9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMmdxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMmNxmEdqEPrOCkNZ5Vg">
<body>References the properties that are redefined by this property.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5mOPsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5mOP8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwIT3txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwIT39xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bgMsWCEdqI1bY5Lwi8Hg" name="owningAssociation" visibility="public" type="_AwvxoGwNEdq7X4sGURiZYA" subsettedProperty="_g1bgRsWCEdqI1bY5Lwi8Hg _g2BWG8WCEdqI1bY5Lwi8Hg _g0-z88WCEdqI1bY5Lwi8Hg" association="_g2UQucWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgM8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgMsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMlNxmEdqEPrOCkNZ5Vg" name="owningAssociation" visibility="public" type="_AwvxoGwNEdq7X4sGURiZYA" subsettedProperty="_MstMqNxmEdqEPrOCkNZ5Vg _MtTCOdxmEdqEPrOCkNZ5Vg _MsQggtxmEdqEPrOCkNZ5Vg" association="_MtczOdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMldxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMlNxmEdqEPrOCkNZ5Vg">
<body>References the owning association of this property, if any.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5mOQMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgMsWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwIT4NxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMlNxmEdqEPrOCkNZ5Vg">
<body>References the owning association of this property.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5mOQcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5mOQsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwIT4dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwIT4txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bgQsWCEdqI1bY5Lwi8Hg" name="datatype" visibility="public" type="__1ap4HLzEdqziYxiZo0YtA" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg _g0-z88WCEdqI1bY5Lwi8Hg _g2UQwMWCEdqI1bY5Lwi8Hg" association="_g2UQ0sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgQ8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgQsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMpNxmEdqEPrOCkNZ5Vg" name="datatype" visibility="public" type="__1ap4HLzEdqziYxiZo0YtA" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg _MsQggtxmEdqEPrOCkNZ5Vg _MtczQNxmEdqEPrOCkNZ5Vg" association="_MtczUtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMpdxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMpNxmEdqEPrOCkNZ5Vg">
<body>The DataType that owns this Operation.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5mOQ8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgQsWCEdqI1bY5Lwi8Hg">
- <body>The DataType that owns this Property.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwIT49xmEdqEPrOCkNZ5Vg" annotatedElement="_MstMpNxmEdqEPrOCkNZ5Vg">
+ <body>The DataType that owns this Property.&#xD;
</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5mORMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5mORcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwIT5NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwIT5dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g5mORsWCEdqI1bY5Lwi8Hg" name="defaultValue" type="_g1Ru8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g68SDsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5mOR8WCEdqI1bY5Lwi8Hg" annotatedElement="_g5mORsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MwIT5txmEdqEPrOCkNZ5Vg" name="defaultValue" type="_Msjbf9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MxUmmtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwIT59xmEdqEPrOCkNZ5Vg" annotatedElement="_MwIT5txmEdqEPrOCkNZ5Vg">
<body>A ValueSpecification that is evaluated to give a default value for the Property when an object of the owning Classifier is instantiated.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5mOSMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5mOScWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwIT6NxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwIT6dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bgPsWCEdqI1bY5Lwi8Hg" name="opposite" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" isDerived="true" association="_g2UQyMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgP8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgPsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMoNxmEdqEPrOCkNZ5Vg" name="opposite" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" isDerived="true" association="_MtczSNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstModxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMoNxmEdqEPrOCkNZ5Vg">
<body>In the case where the property is one navigable end of a binary association with both ends navigable, this gives the other end.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5mOSsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5mOS8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwIT6txmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwIT69xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bgOsWCEdqI1bY5Lwi8Hg" name="subsettedProperty" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_g2UQxsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgO8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgOsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMnNxmEdqEPrOCkNZ5Vg" name="subsettedProperty" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" association="_MtczRtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMndxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMnNxmEdqEPrOCkNZ5Vg">
<body>References the properties of which this property is constrained to be a subset.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5mOTMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5mOTcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwIT7NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwIT7dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1bgRsWCEdqI1bY5Lwi8Hg" name="association" visibility="public" type="_AwvxoGwNEdq7X4sGURiZYA" association="_g2eBt8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1bgR8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1bgRsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MstMqNxmEdqEPrOCkNZ5Vg" name="association" visibility="public" type="_AwvxoGwNEdq7X4sGURiZYA" association="_MtmkTdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMqdxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMqNxmEdqEPrOCkNZ5Vg">
<body>References the association of which this property is a member, if any.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5mOTsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5mOT8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwSEwNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwSEwdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hE7Uf8WCEdqI1bY5Lwi8Hg" name="qualifier" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hE7Uh8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UgMWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7Uf8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5XvZdxmEdqEPrOCkNZ5Vg" name="qualifier" type="_Jp_1oGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M5XvbdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvZtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5XvZdxmEdqEPrOCkNZ5Vg">
<body>An optional list of ordered qualifier attributes for the end. If the list is empty, then the Association is not qualified.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7UgcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7UgsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5XvZ9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5XvaNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hE7Ug8WCEdqI1bY5Lwi8Hg" name="associationEnd" type="_Jp_1oGveEdq4DLWZOhbdEA" subsettedProperty="_g01DJ8WCEdqI1bY5Lwi8Hg" association="_hE7Uh8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hE7UhMWCEdqI1bY5Lwi8Hg" annotatedElement="_hE7Ug8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5XvadxmEdqEPrOCkNZ5Vg" name="associationEnd" type="_Jp_1oGveEdq4DLWZOhbdEA" subsettedProperty="_MsQga9xmEdqEPrOCkNZ5Vg" association="_M5XvbdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5XvatxmEdqEPrOCkNZ5Vg" annotatedElement="_M5XvadxmEdqEPrOCkNZ5Vg">
<body>Designates the optional association end that owns a qualifier attribute.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hE7UhcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hE7UhsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5Xva9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5XvbNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_oLamMFYJEdqrn7iZ0eqieg" name="getDefault" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_vkrSwFYJEdqrn7iZ0eqieg" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return">
@@ -14084,386 +13767,382 @@ A property related to an Association by memberEnd or its specializations represe
<ownedParameter xmi:type="uml:Parameter" xmi:id="_NXJxEa6_EdqjppZik4kD8A" name="value" type="_dRZxsGvsEdqG6fBIPwe-mw" effect="read"/>
</ownedOperation>
<ownedOperation xmi:type="uml:Operation" xmi:id="_WU_10K6_EdqjppZik4kD8A" name="setNullDefaultValue"/>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1kp6cWCEdqI1bY5Lwi8Hg" name="isAttribute" visibility="public" isQuery="true" bodyCondition="_g1kp68WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kp6sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1kp6cWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MstMxdxmEdqEPrOCkNZ5Vg" name="isAttribute" visibility="public" isQuery="true" bodyCondition="_MstMx9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMxtxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMxdxmEdqEPrOCkNZ5Vg">
<body>The query isAttribute() is true if the Property is defined as an attribute of some classifier.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1kp68WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1kp6cWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5mOUMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMx9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MstMxdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwSEwtxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = Classifier.allInstances->exists(c | c.attribute->includes(p))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1kp7cWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1kp7sWCEdqI1bY5Lwi8Hg" name="p" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" effect="read"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MstMydxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MstMytxmEdqEPrOCkNZ5Vg" name="p" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" effect="read"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1kp0MWCEdqI1bY5Lwi8Hg" name="opposite" visibility="public" isQuery="true" bodyCondition="_g1kp0sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kp0cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1kp0MWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MstMrNxmEdqEPrOCkNZ5Vg" name="opposite" visibility="public" isQuery="true" bodyCondition="_MstMrtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMrdxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMrNxmEdqEPrOCkNZ5Vg">
<body>If this property is owned by a class, associated with a binary association, and the other end of the association is also owned by a class, then opposite gives the other end.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1kp0sWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1kp0MWCEdqI1bY5Lwi8Hg _g1bgPsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5mOUcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMrtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MstMrNxmEdqEPrOCkNZ5Vg _MstMoNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwSEw9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if owningAssociation->isEmpty() and association.memberEnd->size() = 2&#xA; then&#xA; let otherEnd = (association.memberEnd - self)->any() in&#xA; if otherEnd.owningAssociation->isEmpty() then otherEnd else Set{} endif&#xA; else Set {}&#xA; endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1kp1MWCEdqI1bY5Lwi8Hg" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MstMsNxmEdqEPrOCkNZ5Vg" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g5mOUsWCEdqI1bY5Lwi8Hg" name="isComposite" isQuery="true" bodyCondition="_g5mOVMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5mOU8WCEdqI1bY5Lwi8Hg" annotatedElement="_g5mOUsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MwSExNxmEdqEPrOCkNZ5Vg" name="isComposite" isQuery="true" bodyCondition="_MwSExtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwSExdxmEdqEPrOCkNZ5Vg" annotatedElement="_MwSExNxmEdqEPrOCkNZ5Vg">
<body>The value of isComposite is true only if aggregation is composite.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g5mOVMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g5mOUsWCEdqI1bY5Lwi8Hg _g1bgJcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5mOVcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MwSExtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MwSExNxmEdqEPrOCkNZ5Vg _MstMh9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwSEx9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = (self.aggregation = #composite)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g5mOVsWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MwSEyNxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1kp1cWCEdqI1bY5Lwi8Hg" name="isConsistentWith" visibility="public" isQuery="true" precondition="_g1kp18WCEdqI1bY5Lwi8Hg" redefinedOperation="_g1H-KsWCEdqI1bY5Lwi8Hg" bodyCondition="_g1kp2cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kp1sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1kp1cWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MstMsdxmEdqEPrOCkNZ5Vg" name="isConsistentWith" visibility="public" isQuery="true" precondition="_MstMs9xmEdqEPrOCkNZ5Vg" redefinedOperation="_MsjbYdxmEdqEPrOCkNZ5Vg" bodyCondition="_MstMtdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMstxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMsdxmEdqEPrOCkNZ5Vg">
<body>The query isConsistentWith() specifies, for any two Properties in a context in which redefinition is possible, whether redefinition would be logically consistent. A redefining property is consistent with a redefined property if the type of the redefining property conforms to the type of the redefined property, the multiplicity of the redefining property (if specified) is contained in the multiplicity of the redefined property, and the redefining property is derived if the redefined property is derived.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5mOV8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1kp1cWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwSEydxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMsdxmEdqEPrOCkNZ5Vg">
<body>The query isConsistentWith() specifies, for any two Properties in a context in which redefinition is possible, whether redefinition would be logically consistent. A redefining property is consistent with a redefined property if the type of the redefining property conforms to the type of the redefined property, the multiplicity of the redefining property (if specified) is contained in the multiplicity of the redefined property, and the redefining property is derived if the redefined attribute is property.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1kp18WCEdqI1bY5Lwi8Hg" constrainedElement="_g1kp1cWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5mOWMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMs9xmEdqEPrOCkNZ5Vg" constrainedElement="_MstMsdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwSEytxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>redefinee.isRedefinitionContextValid(self)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1kp2cWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1kp1cWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5mOWcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMtdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MstMsdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwSEy9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = redefinee.oclIsKindOf(Property) and &#xA; let prop : Property = redefinee.oclAsType(Property) in &#xA; (prop.type.conformsTo(self.type) and &#xA; ((prop.lowerBound()->notEmpty() and self.lowerBound()->notEmpty()) implies prop.lowerBound() >= self.lowerBound()) and &#xA; ((prop.upperBound()->notEmpty() and self.upperBound()->notEmpty()) implies prop.lowerBound() &lt;= self.lowerBound()) and &#xA; (self.isDerived implies prop.isDerived) and&#xA; (self.isComposite implies prop.isComposite))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1kp28WCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1kp3MWCEdqI1bY5Lwi8Hg" name="redefinee" visibility="public" type="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MstMt9xmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MstMuNxmEdqEPrOCkNZ5Vg" name="redefinee" visibility="public" type="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1kp3cWCEdqI1bY5Lwi8Hg" name="subsettingContext" visibility="public" isQuery="true" bodyCondition="_g1kp38WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kp3sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1kp3cWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MstMudxmEdqEPrOCkNZ5Vg" name="subsettingContext" visibility="public" isQuery="true" bodyCondition="_MstMu9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMutxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMudxmEdqEPrOCkNZ5Vg">
<body>The query subsettingContext() gives the context for subsetting a property. It consists, in the case of an attribute, of the corresponding classifier, and in the case of an association end, all of the classifiers at the other ends.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1kp38WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1kp3cWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5v_MMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMu9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MstMudxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwSEzNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if association->notEmpty()&#xA;then association.endType-type&#xA;else if classifier->notEmpty() then Set{classifier} else Set{} endif&#xA;endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1kp4cWCEdqI1bY5Lwi8Hg" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5v_McWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5v_MsWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MstMvdxmEdqEPrOCkNZ5Vg" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwSEzdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwSEztxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1kp5MWCEdqI1bY5Lwi8Hg" name="isNavigable" visibility="public" isQuery="true" bodyCondition="_g1kp5sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1kp5cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1kp5MWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MstMwNxmEdqEPrOCkNZ5Vg" name="isNavigable" visibility="public" isQuery="true" bodyCondition="_MstMwtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MstMwdxmEdqEPrOCkNZ5Vg" annotatedElement="_MstMwNxmEdqEPrOCkNZ5Vg">
<body>The query isNavigable indicates whether it is possible to navigate across the property.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5v_M8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1kp5MWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwSEz9xmEdqEPrOCkNZ5Vg" annotatedElement="_MstMwNxmEdqEPrOCkNZ5Vg">
<body>The query isNavigable() indicates whether it is possible to navigate across the property.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1kp5sWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1kp5MWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5v_NMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MstMwtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MstMwNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwSE0NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = not classifier->isEmpty() or association.owningAssociation.navigableOwnedEnd->includes(self)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1kp6MWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MstMxNxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hFEevsWCEdqI1bY5Lwi8Hg" name="isCompatibleWith" isQuery="true" redefinedOperation="_hFEercWCEdqI1bY5Lwi8Hg" bodyCondition="_hFEewMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEev8WCEdqI1bY5Lwi8Hg" annotatedElement="_hFEevsWCEdqI1bY5Lwi8Hg">
- <body>The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for properties, the type must be conformant with the type of the specified parameterable element.
-
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M5hgwNxmEdqEPrOCkNZ5Vg" name="isCompatibleWith" isQuery="true" redefinedOperation="_M5hgr9xmEdqEPrOCkNZ5Vg" bodyCondition="_M5hgwtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgwdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgwNxmEdqEPrOCkNZ5Vg">
+ <body>The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for properties, the type must be conformant with the type of the specified parameterable element.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFEewMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hFEevsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFEewcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5hgwtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M5hgwNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5hgw9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = p->oclIsKindOf(self.oclType) and self.type.conformsTo(p.oclAsType(TypedElement).type)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hFEewsWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hFEew8WCEdqI1bY5Lwi8Hg" name="p" type="_hFEeosWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5hgxNxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5hgxdxmEdqEPrOCkNZ5Vg" name="p" type="_M5hgpNxmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g1Ru8MWCEdqI1bY5Lwi8Hg" name="ValueSpecification" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1Ru8cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1Ru8MWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Msjbf9xmEdqEPrOCkNZ5Vg" name="ValueSpecification" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbgNxmEdqEPrOCkNZ5Vg" annotatedElement="_Msjbf9xmEdqEPrOCkNZ5Vg">
<body>ValueSpecification is an abstract metaclass used to identify a value or values in a model. It may reference an instance or it may be an expression denoting an instance or instances when evaluated. It adds a specialization to Constructs::TypedElement.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6V1E8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1Ru8MWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mwuw0NxmEdqEPrOCkNZ5Vg" annotatedElement="_Msjbf9xmEdqEPrOCkNZ5Vg">
<body>ValueSpecification is an abstract metaclass used to identify a value or values in a model. It may reference an instance or it may be an expression denoting an instance or instances when evaluated.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFEexMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1Ru8MWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgxtxmEdqEPrOCkNZ5Vg" annotatedElement="_Msjbf9xmEdqEPrOCkNZ5Vg">
<body>ValueSpecification specializes ParameterableElement to specify that a value specification can be exposed as a formal template parameter, and provided as an actual parameter in a binding of a template.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1Ru8sWCEdqI1bY5Lwi8Hg" general="_g1Ru6cWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1Ru88WCEdqI1bY5Lwi8Hg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1Ru9MWCEdqI1bY5Lwi8Hg" name="isComputable" visibility="public" isQuery="true" bodyCondition="_g1Ru9sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1Ru9cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1Ru9MWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsjbgdxmEdqEPrOCkNZ5Vg" general="_MsjbeNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsjbgtxmEdqEPrOCkNZ5Vg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Msjbg9xmEdqEPrOCkNZ5Vg" name="isComputable" visibility="public" isQuery="true" bodyCondition="_MsjbhdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbhNxmEdqEPrOCkNZ5Vg" annotatedElement="_Msjbg9xmEdqEPrOCkNZ5Vg">
<body>The query isComputable() determines whether a value specification can be computed in a model. This operation cannot be fully defined in OCL. A conforming implementation is expected to deliver true for this operation for all value specifications that it can compute, and to compute all of those for which the operation is true. A conforming implementation is expected to be able to compute the value of all literals.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1Ru9sWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1Ru9MWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6V1FMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsjbhdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Msjbg9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mwuw0dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = false</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1Ru-MWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Msjbh9xmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1Ru-cWCEdqI1bY5Lwi8Hg" name="integerValue" visibility="public" isQuery="true" bodyCondition="_g1Ru-8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1Ru-sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1Ru-cWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsjbiNxmEdqEPrOCkNZ5Vg" name="integerValue" visibility="public" isQuery="true" bodyCondition="_MsjbitxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbidxmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbiNxmEdqEPrOCkNZ5Vg">
<body>The query integerValue() gives a single Integer value when one can be computed.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1Ru-8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1Ru-cWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6V1FcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsjbitxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsjbiNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mw36oNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = Set{}</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1Ru_cWCEdqI1bY5Lwi8Hg" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsjbjNxmEdqEPrOCkNZ5Vg" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1Ru_sWCEdqI1bY5Lwi8Hg" name="booleanValue" visibility="public" isQuery="true" bodyCondition="_g1RvAMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1Ru_8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1Ru_sWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsjbjdxmEdqEPrOCkNZ5Vg" name="booleanValue" visibility="public" isQuery="true" bodyCondition="_Msjbj9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbjtxmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbjdxmEdqEPrOCkNZ5Vg">
<body>The query booleanValue() gives a single Boolean value when one can be computed.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1RvAMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1Ru_sWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6V1FsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Msjbj9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsjbjdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mw36odxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = Set{}</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1RvAsWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsjbkdxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1RvA8WCEdqI1bY5Lwi8Hg" name="stringValue" visibility="public" isQuery="true" bodyCondition="_g1RvBcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1RvBMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1RvA8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsjbktxmEdqEPrOCkNZ5Vg" name="stringValue" visibility="public" isQuery="true" bodyCondition="_MsjblNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Msjbk9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbktxmEdqEPrOCkNZ5Vg">
<body>The query stringValue() gives a single String value when one can be computed.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1RvBcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1RvA8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6V1F8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsjblNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsjbktxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mw36otxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = Set{}</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1RvB8WCEdqI1bY5Lwi8Hg" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsjbltxmEdqEPrOCkNZ5Vg" visibility="public" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1RvCMWCEdqI1bY5Lwi8Hg" name="unlimitedValue" visibility="public" isQuery="true" bodyCondition="_g1RvCsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1RvCcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1RvCMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Msjbl9xmEdqEPrOCkNZ5Vg" name="unlimitedValue" visibility="public" isQuery="true" bodyCondition="_MsjbmdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbmNxmEdqEPrOCkNZ5Vg" annotatedElement="_Msjbl9xmEdqEPrOCkNZ5Vg">
<body>The query unlimitedValue() gives a single UnlimitedNatural value when one can be computed.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1RvCsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1RvCMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6V1GMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsjbmdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_Msjbl9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mw36o9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = Set{}</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1RvDMWCEdqI1bY5Lwi8Hg" visibility="public" type="_dRZxsGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Msjbm9xmEdqEPrOCkNZ5Vg" visibility="public" type="_dRZxsGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1RvDcWCEdqI1bY5Lwi8Hg" name="isNull" visibility="public" isQuery="true" bodyCondition="_g1RvD8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1RvDsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1RvDcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsjbnNxmEdqEPrOCkNZ5Vg" name="isNull" visibility="public" isQuery="true" bodyCondition="_MsjbntxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsjbndxmEdqEPrOCkNZ5Vg" annotatedElement="_MsjbnNxmEdqEPrOCkNZ5Vg">
<body>The query isNull() returns true when it can be computed that the value is null.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1RvD8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1RvDcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6V1GcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsjbntxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsjbnNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mw36pNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = false</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1RvEcWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsjboNxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hFOPYMWCEdqI1bY5Lwi8Hg" name="isCompatibleWith" isQuery="true" redefinedOperation="_hFEercWCEdqI1bY5Lwi8Hg" bodyCondition="_hFOPYsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPYcWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPYMWCEdqI1bY5Lwi8Hg">
- <body>The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for ValueSpecification, the type must be conformant with the type of the specified parameterable element.
-
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M5hgyNxmEdqEPrOCkNZ5Vg" name="isCompatibleWith" isQuery="true" redefinedOperation="_M5hgr9xmEdqEPrOCkNZ5Vg" bodyCondition="_M5hgytxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgydxmEdqEPrOCkNZ5Vg" annotatedElement="_M5hgyNxmEdqEPrOCkNZ5Vg">
+ <body>The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for ValueSpecification, the type must be conformant with the type of the specified parameterable element.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFOPYsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hFOPYMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFOPY8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5hgytxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M5hgyNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5hgy9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = p->oclIsKindOf(self.oclType) and self.type.conformsTo(p.oclAsType(TypedElement).type)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hFOPZMWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hFOPZcWCEdqI1bY5Lwi8Hg" name="p" type="_hFEeosWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5hgzNxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5hgzdxmEdqEPrOCkNZ5Vg" name="p" type="_M5hgpNxmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_M4X2IGveEdq4DLWZOhbdEA" name="Operation">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua8cWCEdqI1bY5Lwi8Hg" annotatedElement="_M4X2IGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2Wg9xmEdqEPrOCkNZ5Vg" annotatedElement="_M4X2IGveEdq4DLWZOhbdEA">
<body>An operation is owned by a class and may be invoked in the context of objects that are instances of that class. It is a typed element and a multiplicity element.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5v_NcWCEdqI1bY5Lwi8Hg" annotatedElement="_M4X2IGveEdq4DLWZOhbdEA">
- <body>An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.
-
-One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwSE0dxmEdqEPrOCkNZ5Vg" annotatedElement="_M4X2IGveEdq4DLWZOhbdEA">
+ <body>An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xD;
+One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQ8MWCEdqI1bY5Lwi8Hg" annotatedElement="_M4X2IGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyqqmtxmEdqEPrOCkNZ5Vg" annotatedElement="_M4X2IGveEdq4DLWZOhbdEA">
<body>An operation is a behavioral feature of a classifier that specifies the name, type, parameters, and constraints for invoking an associated behavior.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-OP0sWCEdqI1bY5Lwi8Hg" annotatedElement="_M4X2IGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M0AHftxmEdqEPrOCkNZ5Vg" annotatedElement="_M4X2IGveEdq4DLWZOhbdEA">
<body>An operation may invoke both the execution of method behaviors as well as other behavioral responses.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPZsWCEdqI1bY5Lwi8Hg" annotatedElement="_M4X2IGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hgztxmEdqEPrOCkNZ5Vg" annotatedElement="_M4X2IGveEdq4DLWZOhbdEA">
<body>Operation specializes TemplateableElement in order to support specification of template operations and bound operations.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1ua9cWCEdqI1bY5Lwi8Hg" name="at_most_one_return" constrainedElement="_M4X2IGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua9sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua9cWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Ms2Wh9xmEdqEPrOCkNZ5Vg" name="at_most_one_return" constrainedElement="_M4X2IGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WiNxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2Wh9xmEdqEPrOCkNZ5Vg">
<body>An operation can have at most one return parameter; i.e., an owned parameter with the direction set to 'return'</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5v_NsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwSE0txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.ownedParameter->select(par | par.direction = #return)->size() &lt;= 1</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1ua8sWCEdqI1bY5Lwi8Hg" name="only_body_for_query" constrainedElement="_M4X2IGveEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua88WCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua8sWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_Ms2WhNxmEdqEPrOCkNZ5Vg" name="only_body_for_query" constrainedElement="_M4X2IGveEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WhdxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WhNxmEdqEPrOCkNZ5Vg">
<body>A bodyCondition can only be specified for a query operation.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5v_N8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwSE09xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>bodyCondition->notEmpty() implies isQuery</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1ua-MWCEdqI1bY5Lwi8Hg" general="_rHT3YKOsEdqi_5gqUMOQtA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFOPZ8WCEdqI1bY5Lwi8Hg" general="_hFEeosWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFOPaMWCEdqI1bY5Lwi8Hg" general="_hFEei8WCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ua-cWCEdqI1bY5Lwi8Hg" name="isQuery" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua-sWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua-cWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_Ms2WitxmEdqEPrOCkNZ5Vg" general="_rHT3YKOsEdqi_5gqUMOQtA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5hgz9xmEdqEPrOCkNZ5Vg" general="_M5hgpNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5hg0NxmEdqEPrOCkNZ5Vg" general="_M5hgjdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2Wi9xmEdqEPrOCkNZ5Vg" name="isQuery" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WjNxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2Wi9xmEdqEPrOCkNZ5Vg">
<body>Specifies whether an execution of the BehavioralFeature leaves the state of the system unchanged (isQuery=true) or whether side effects may occur (isQuery=false).</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g5v_OMWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MwSE1NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ua_MWCEdqI1bY5Lwi8Hg" name="isOrdered" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ua_cWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua_MWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2WjtxmEdqEPrOCkNZ5Vg" name="isOrdered" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2Wj9xmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WjtxmEdqEPrOCkNZ5Vg">
<body>Redefines the corresponding property from Basic to derive this information from the return result for this Operation.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5v_OcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua_MWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwSE1dxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WjtxmEdqEPrOCkNZ5Vg">
<body>Specifies whether the return parameter is ordered or not, if present.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g5v_OsWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MwSE1txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ua_8WCEdqI1bY5Lwi8Hg" name="isUnique" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubAMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua_8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2WkdxmEdqEPrOCkNZ5Vg" name="isUnique" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WktxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WkdxmEdqEPrOCkNZ5Vg">
<body>Redefines the corresponding property from Basic to derive this information from the return result for this Operation.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5v_O8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1ua_8WCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwSE19xmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WkdxmEdqEPrOCkNZ5Vg">
<body>Specifies whether the return parameter is unique or not, if present.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g5v_PMWCEdqI1bY5Lwi8Hg" value="true"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MwSE2NxmEdqEPrOCkNZ5Vg" value="true"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ubAsWCEdqI1bY5Lwi8Hg" name="lower" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubA8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubAsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2WlNxmEdqEPrOCkNZ5Vg" name="lower" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WldxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WlNxmEdqEPrOCkNZ5Vg">
<body>Redefines the corresponding property from Basic to derive this information from the return result for this Operation.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5v_PcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubAsWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwbOsNxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WlNxmEdqEPrOCkNZ5Vg">
<body>Specifies the lower multiplicity of the return parameter, if present.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5v_PsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5v_P8WCEdqI1bY5Lwi8Hg"/>
- <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_g5v_QMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwbOsdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwbOstxmEdqEPrOCkNZ5Vg"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_MwbOs9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ubB8WCEdqI1bY5Lwi8Hg" name="upper" visibility="public" type="_dRZxsGvsEdqG6fBIPwe-mw" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubCMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubB8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2WmdxmEdqEPrOCkNZ5Vg" name="upper" visibility="public" type="_dRZxsGvsEdqG6fBIPwe-mw" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2WmtxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WmdxmEdqEPrOCkNZ5Vg">
<body>Redefines the corresponding property from Basic to derive this information from the return result for this Operation.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5v_QcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubB8WCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwbOtNxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WmdxmEdqEPrOCkNZ5Vg">
<body>Specifies the upper multiplicity of the return parameter, if present.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5v_QsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5v_Q8WCEdqI1bY5Lwi8Hg"/>
- <defaultValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5v_RMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwbOtdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwbOttxmEdqEPrOCkNZ5Vg"/>
+ <defaultValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwbOt9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ubDMWCEdqI1bY5Lwi8Hg" name="class" visibility="public" type="_00owUGvdEdq4DLWZOhbdEA" subsettedProperty="_g1H-IsWCEdqI1bY5Lwi8Hg _g2BWG8WCEdqI1bY5Lwi8Hg _g0-z88WCEdqI1bY5Lwi8Hg" association="_g2UQtcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubDcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubDMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ms2WntxmEdqEPrOCkNZ5Vg" name="class" visibility="public" type="_00owUGvdEdq4DLWZOhbdEA" subsettedProperty="_MsjbWdxmEdqEPrOCkNZ5Vg _MtTCOdxmEdqEPrOCkNZ5Vg _MsQggtxmEdqEPrOCkNZ5Vg" association="_MtczNdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Ms2Wn9xmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WntxmEdqEPrOCkNZ5Vg">
<body>The class that owns the operation.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5v_RcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubDMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwbOuNxmEdqEPrOCkNZ5Vg" annotatedElement="_Ms2WntxmEdqEPrOCkNZ5Vg">
<body>The class that owns this operation.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5v_RsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5v_R8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwbOudxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwbOutxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ubJMWCEdqI1bY5Lwi8Hg" name="precondition" visibility="public" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H97MWCEdqI1bY5Lwi8Hg" association="_g2eB9MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5v_SMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubJMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHVNxmEdqEPrOCkNZ5Vg" name="precondition" visibility="public" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRftxmEdqEPrOCkNZ5Vg" association="_MtmkitxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwbOu9xmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHVNxmEdqEPrOCkNZ5Vg">
<body>An optional set of Constraints on the state of the system when the Operation is invoked.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5v_ScWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5v_SsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwbOvNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwbOvdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ubJ8WCEdqI1bY5Lwi8Hg" name="postcondition" visibility="public" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H97MWCEdqI1bY5Lwi8Hg" association="_g2eB-cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5v_S8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubJ8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHV9xmEdqEPrOCkNZ5Vg" name="postcondition" visibility="public" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRftxmEdqEPrOCkNZ5Vg" association="_Mtmkj9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwbOvtxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHV9xmEdqEPrOCkNZ5Vg">
<body>An optional set of Constraints specifying the state of the system when the Operation is completed.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5v_TMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5v_TcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwbOv9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwbOwNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ubGMWCEdqI1bY5Lwi8Hg" name="redefinedOperation" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_g2UQ3MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubGcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubGMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHSNxmEdqEPrOCkNZ5Vg" name="redefinedOperation" visibility="public" type="_M4X2IGveEdq4DLWZOhbdEA" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_MtczXNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHSdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHSNxmEdqEPrOCkNZ5Vg">
<body>References the Operations that are redefined by this Operation.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5v_TsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5v_T8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwbOwdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwbOwtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ubEMWCEdqI1bY5Lwi8Hg" name="datatype" visibility="public" type="__1ap4HLzEdqziYxiZo0YtA" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg _g1H-IsWCEdqI1bY5Lwi8Hg _g0-z88WCEdqI1bY5Lwi8Hg" association="_g2UQ1cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubEcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubEMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHQNxmEdqEPrOCkNZ5Vg" name="datatype" visibility="public" type="__1ap4HLzEdqziYxiZo0YtA" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg _MsjbWdxmEdqEPrOCkNZ5Vg _MsQggtxmEdqEPrOCkNZ5Vg" association="_MtczVdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHQdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHQNxmEdqEPrOCkNZ5Vg">
<body>The DataType that owns this Operation.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5v_UMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubEMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwbOw9xmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHQNxmEdqEPrOCkNZ5Vg">
<body>The DataType that owns this Property.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5v_UcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g55JIMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwbOxNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwbOxdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ubKsWCEdqI1bY5Lwi8Hg" name="bodyCondition" visibility="public" type="_g1ua0MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H97MWCEdqI1bY5Lwi8Hg" association="_g2eB_sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g55JIcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubKsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHWtxmEdqEPrOCkNZ5Vg" name="bodyCondition" visibility="public" type="_Ms2WYtxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRftxmEdqEPrOCkNZ5Vg" association="_MtmklNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwbOxtxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHWtxmEdqEPrOCkNZ5Vg">
<body>An optional Constraint on the result values of an invocation of this Operation.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g55JIsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g55JI8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwbOx9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwbOyNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ubHMWCEdqI1bY5Lwi8Hg" name="type" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" isDerived="true" association="_g2eBu8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubHcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubHMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHTNxmEdqEPrOCkNZ5Vg" name="type" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" isDerived="true" association="_MtmkUdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHTdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHTNxmEdqEPrOCkNZ5Vg">
<body>Redefines the corresponding property from Basic to derive this information from the return result for this Operation.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g55JJMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubHMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwbOydxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHTNxmEdqEPrOCkNZ5Vg">
<body>Specifies the return result of the operation, if present.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g55JJcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g55JJsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwbOytxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwbOy9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ubIMWCEdqI1bY5Lwi8Hg" name="ownedParameter" visibility="public" type="_KyaPMGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" redefinedProperty="_g14L4cWCEdqI1bY5Lwi8Hg" association="_g2eB6sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubIcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubIMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHUNxmEdqEPrOCkNZ5Vg" name="ownedParameter" visibility="public" type="_KyaPMGveEdq4DLWZOhbdEA" isOrdered="true" aggregation="composite" redefinedProperty="_MtAHldxmEdqEPrOCkNZ5Vg" association="_MtmkgNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHUdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHUNxmEdqEPrOCkNZ5Vg">
<body>Specifies the ordered set of formal parameters of this BehavioralFeature.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g55JJ8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubIMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwbOzNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHUNxmEdqEPrOCkNZ5Vg">
<body>Specifies the parameters owned by this Operation.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g55JKMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g55JKcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwbOzdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwbOztxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g1ubFMWCEdqI1bY5Lwi8Hg" name="raisedException" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" redefinedProperty="_g14L5cWCEdqI1bY5Lwi8Hg" association="_g2UQ2cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubFcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubFMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtAHRNxmEdqEPrOCkNZ5Vg" name="raisedException" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" redefinedProperty="_MtAHmdxmEdqEPrOCkNZ5Vg" association="_MtczWdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHRdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHRNxmEdqEPrOCkNZ5Vg">
<body>References the Types representing exceptions that may be raised during an invocation of this operation.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g55JKsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g55JK8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MwbOz9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MwbO0NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8lQ8cWCEdqI1bY5Lwi8Hg" name="interface" type="_8Ugn8GvtEdqG6fBIPwe-mw" subsettedProperty="_g1H-IsWCEdqI1bY5Lwi8Hg" association="_g8uatsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8lQ8sWCEdqI1bY5Lwi8Hg" annotatedElement="_g8lQ8cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myqqm9xmEdqEPrOCkNZ5Vg" name="interface" type="_8Ugn8GvtEdqG6fBIPwe-mw" subsettedProperty="_MsjbWdxmEdqEPrOCkNZ5Vg" association="_MyqqpdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MyqqnNxmEdqEPrOCkNZ5Vg" annotatedElement="_Myqqm9xmEdqEPrOCkNZ5Vg">
<body>The Interface that owns this Operation.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8lQ88WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8lQ9MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MyqqndxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MyqqntxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFOPacWCEdqI1bY5Lwi8Hg" name="templateParameter" type="_hFOPbcWCEdqI1bY5Lwi8Hg" redefinedProperty="_hFEepcWCEdqI1bY5Lwi8Hg" association="_hFhKacWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPasWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPacWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5hg0dxmEdqEPrOCkNZ5Vg" name="templateParameter" type="_M5qqQNxmEdqEPrOCkNZ5Vg" redefinedProperty="_M5hgp9xmEdqEPrOCkNZ5Vg" association="_M50bfNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5hg0txmEdqEPrOCkNZ5Vg" annotatedElement="_M5hg0dxmEdqEPrOCkNZ5Vg">
<body>The template parameter that exposes this element as a formal parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFOPa8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFOPbMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5hg09xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5hg1NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_ho5pgFYLEdqrn7iZ0eqieg" name="getLower" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_jukVgFYLEdqrn7iZ0eqieg" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
@@ -14492,321 +14171,314 @@ One predefined language for specifying expressions is OCL. Natural language or p
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_OvfegKOyEdqi_5gqUMOQtA"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1ubLcWCEdqI1bY5Lwi8Hg" name="isOrdered" visibility="public" isQuery="true" bodyCondition="_g1ubL8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubLsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubLcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtAHXdxmEdqEPrOCkNZ5Vg" name="isOrdered" visibility="public" isQuery="true" bodyCondition="_MtAHX9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHXtxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHXdxmEdqEPrOCkNZ5Vg">
<body>If this operation has a return parameter, isOrdered equals the value of isOrdered for that parameter. Otherwise isOrdered is false.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1ubL8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1ubLcWCEdqI1bY5Lwi8Hg _g1ua_MWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g55JLMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtAHX9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtAHXdxmEdqEPrOCkNZ5Vg _Ms2WjtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwbO0dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if returnResult()->notEmpty() then returnResult()->any().isOrdered else false endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1ubMcWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtAHYdxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1ubMsWCEdqI1bY5Lwi8Hg" name="isUnique" visibility="public" isQuery="true" bodyCondition="_g1ubNMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubM8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubMsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtAHYtxmEdqEPrOCkNZ5Vg" name="isUnique" visibility="public" isQuery="true" bodyCondition="_MtAHZNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHY9xmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHYtxmEdqEPrOCkNZ5Vg">
<body>If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g55JLcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubMsWCEdqI1bY5Lwi8Hg">
- <body>If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwbO0txmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHYtxmEdqEPrOCkNZ5Vg">
+ <body>If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1ubNMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1ubMsWCEdqI1bY5Lwi8Hg _g1ua_8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g55JLsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtAHZNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtAHYtxmEdqEPrOCkNZ5Vg _Ms2WkdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwbO09xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if returnResult()->notEmpty() then returnResult()->any().isUnique else true endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1ubNsWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtAHZtxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1ubN8WCEdqI1bY5Lwi8Hg" name="lower" visibility="public" isQuery="true" bodyCondition="_g1ubOcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubOMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubN8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtAHZ9xmEdqEPrOCkNZ5Vg" name="lower" visibility="public" isQuery="true" bodyCondition="_MtAHadxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHaNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHZ9xmEdqEPrOCkNZ5Vg">
<body>If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g55JL8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubN8WCEdqI1bY5Lwi8Hg">
- <body>If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwbO1NxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHZ9xmEdqEPrOCkNZ5Vg">
+ <body>If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1ubOcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1ubN8WCEdqI1bY5Lwi8Hg _g1ubAsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g55JMMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtAHadxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtAHZ9xmEdqEPrOCkNZ5Vg _Ms2WlNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwbO1dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if returnResult()->notEmpty() then returnResult()->any().lower else Set{} endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1ubO8WCEdqI1bY5Lwi8Hg" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtAHa9xmEdqEPrOCkNZ5Vg" visibility="public" type="_XqvEIGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1ubPMWCEdqI1bY5Lwi8Hg" name="upper" visibility="public" isQuery="true" bodyCondition="_g1ubPsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubPcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubPMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtAHbNxmEdqEPrOCkNZ5Vg" name="upper" visibility="public" isQuery="true" bodyCondition="_MtAHbtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHbdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHbNxmEdqEPrOCkNZ5Vg">
<body>If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g55JMcWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubPMWCEdqI1bY5Lwi8Hg">
- <body>If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwbO1txmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHbNxmEdqEPrOCkNZ5Vg">
+ <body>If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.&#xD;
</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1ubPsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1ubPMWCEdqI1bY5Lwi8Hg _g1ubB8WCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g55JMsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtAHbtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtAHbNxmEdqEPrOCkNZ5Vg _Ms2WmdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwbO19xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if returnResult()->notEmpty() then returnResult()->any().upper else Set{} endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1ubQMWCEdqI1bY5Lwi8Hg" visibility="public" type="_dRZxsGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtAHcNxmEdqEPrOCkNZ5Vg" visibility="public" type="_dRZxsGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1ubQcWCEdqI1bY5Lwi8Hg" name="type" visibility="public" isQuery="true" bodyCondition="_g1ubQ8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubQsWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubQcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtAHcdxmEdqEPrOCkNZ5Vg" name="type" visibility="public" isQuery="true" bodyCondition="_MtAHc9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHctxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHcdxmEdqEPrOCkNZ5Vg">
<body>If this operation has a return parameter, type equals the value of type for that parameter. Otherwise type is not defined.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1ubQ8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1ubQcWCEdqI1bY5Lwi8Hg _g1ubHMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g55JM8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtAHc9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtAHcdxmEdqEPrOCkNZ5Vg _MtAHTNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwbO2NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if returnResult()->notEmpty() then returnResult()->any().type else Set{} endif</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1ubRcWCEdqI1bY5Lwi8Hg" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtAHddxmEdqEPrOCkNZ5Vg" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1ubRsWCEdqI1bY5Lwi8Hg" name="isConsistentWith" visibility="public" isQuery="true" precondition="_g1ubSMWCEdqI1bY5Lwi8Hg" redefinedOperation="_g1H-KsWCEdqI1bY5Lwi8Hg" bodyCondition="_g1ubSsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1ubR8WCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubRsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtAHdtxmEdqEPrOCkNZ5Vg" name="isConsistentWith" visibility="public" isQuery="true" precondition="_MtAHeNxmEdqEPrOCkNZ5Vg" redefinedOperation="_MsjbYdxmEdqEPrOCkNZ5Vg" bodyCondition="_MtAHetxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtAHd9xmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHdtxmEdqEPrOCkNZ5Vg">
<body>The query isConsistentWith() specifies, for any two Operations in a context in which redefinition is possible, whether redefinition would be consistent in the sense of maintaining type covariance. Other senses of consistency may be required, for example to determine consistency in the sense of contravariance. Users may define alternative queries under names different from 'isConsistentWith()', as for example, users may define a query named 'isContravariantWith()'.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g55JNMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubRsWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MwbO2dxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHdtxmEdqEPrOCkNZ5Vg">
<body>The query isConsistentWith() specifies, for any two Operations in a context in which redefinition is possible, whether redefinition would be logically consistent. A redefining operation is consistent with a redefined operation if it has the same number of owned parameters, and the type of each owned parameter conforms to the type of the corresponding redefined parameter. </body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1ubSMWCEdqI1bY5Lwi8Hg" constrainedElement="_g1ubRsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g55JNcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtAHeNxmEdqEPrOCkNZ5Vg" constrainedElement="_MtAHdtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MwbO2txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>redefinee.isRedefinitionContextValid(self)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1ubSsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1ubRsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g55JNsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtAHetxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtAHdtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mwk_sNxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = (redefinee.oclIsKindOf(Operation) and&#xA;let op: Operation = redefinee.oclAsType(Operation) in&#xA;self.ownedParameter.size() = op.ownedParameter.size() and&#xA;forAll(i | op.ownedParameter[i].type.conformsTo(self.ownedParameter[i].type))&#xA;)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1ubTMWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1ubTcWCEdqI1bY5Lwi8Hg" name="redefinee" visibility="public" type="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtAHfNxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtAHfdxmEdqEPrOCkNZ5Vg" name="redefinee" visibility="public" type="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g1ubTsWCEdqI1bY5Lwi8Hg" name="returnResult" visibility="public" isQuery="true" bodyCondition="_g1ubT8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g6C6IMWCEdqI1bY5Lwi8Hg" annotatedElement="_g1ubTsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtAHftxmEdqEPrOCkNZ5Vg" name="returnResult" visibility="public" isQuery="true" bodyCondition="_MtAHf9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mwk_sdxmEdqEPrOCkNZ5Vg" annotatedElement="_MtAHftxmEdqEPrOCkNZ5Vg">
<body>The query returnResult() returns the set containing the return parameter of the Operation if one exists, otherwise, it returns an empty set</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g1ubT8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g1ubTsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g6C6IcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtAHf9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtAHftxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mwk_stxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = ownedParameter->select (par | par.direction = #return)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g1ubUcWCEdqI1bY5Lwi8Hg" visibility="public" type="_KyaPMGveEdq4DLWZOhbdEA" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g6C6IsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6C6I8WCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtAHgdxmEdqEPrOCkNZ5Vg" visibility="public" type="_KyaPMGveEdq4DLWZOhbdEA" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mwk_s9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mwk_tNxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hFOPbcWCEdqI1bY5Lwi8Hg" name="OperationTemplateParameter">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPbsWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPbcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5qqQNxmEdqEPrOCkNZ5Vg" name="OperationTemplateParameter">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqQdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqQNxmEdqEPrOCkNZ5Vg">
<body>OperationTemplateParameter is a template parameter where the parametered element is an Operation.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFOPb8WCEdqI1bY5Lwi8Hg" general="_KxRzgGvuEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFOPcMWCEdqI1bY5Lwi8Hg" name="parameteredElement" type="_M4X2IGveEdq4DLWZOhbdEA" redefinedProperty="_hE7UqcWCEdqI1bY5Lwi8Hg" association="_hFhKacWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPccWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPcMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5qqQtxmEdqEPrOCkNZ5Vg" general="_KxRzgGvuEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5qqQ9xmEdqEPrOCkNZ5Vg" name="parameteredElement" type="_M4X2IGveEdq4DLWZOhbdEA" redefinedProperty="_M5Xvj9xmEdqEPrOCkNZ5Vg" association="_M50bfNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqRNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqQ9xmEdqEPrOCkNZ5Vg">
<body>The operation for this template parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFOPcsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFOPc8WCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5qqRdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5qqRtxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_jKxnwGwLEdq7X4sGURiZYA" name="PackageableElement" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g1H-F8WCEdqI1bY5Lwi8Hg" annotatedElement="_jKxnwGwLEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsaRqdxmEdqEPrOCkNZ5Vg" annotatedElement="_jKxnwGwLEdq7X4sGURiZYA">
<body>A packageable element indicates a named element that may be owned directly by a package.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPdMWCEdqI1bY5Lwi8Hg" annotatedElement="_jKxnwGwLEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqR9xmEdqEPrOCkNZ5Vg" annotatedElement="_jKxnwGwLEdq7X4sGURiZYA">
<body>PackageableElements are extended to enable any such element to serve as a template parameter.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g1H-GMWCEdqI1bY5Lwi8Hg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFOPdcWCEdqI1bY5Lwi8Hg" general="_hFEeosWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g3NokcWCEdqI1bY5Lwi8Hg" name="visibility" type="_AyM_oGwMEdq7X4sGURiZYA" redefinedProperty="_g2BWF8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g3NoksWCEdqI1bY5Lwi8Hg" annotatedElement="_g3NokcWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MsaRqtxmEdqEPrOCkNZ5Vg" general="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5qqSNxmEdqEPrOCkNZ5Vg" general="_M5hgpNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Muy3ANxmEdqEPrOCkNZ5Vg" name="visibility" type="_AyM_oGwMEdq7X4sGURiZYA" redefinedProperty="_MtTCNdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Muy3AdxmEdqEPrOCkNZ5Vg" annotatedElement="_Muy3ANxmEdqEPrOCkNZ5Vg">
<body>Indicates that packageable elements must always have a visibility, i.e., visibility is not optional.</body>
</ownedComment>
- <defaultValue xmi:type="uml:InstanceValue" xmi:id="_g3Nok8WCEdqI1bY5Lwi8Hg" type="_AyM_oGwMEdq7X4sGURiZYA" instance="_g2LG9sWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_Muy3AtxmEdqEPrOCkNZ5Vg" type="_AyM_oGwMEdq7X4sGURiZYA" instance="_MtTCftxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_6UV2QGwJEdq7X4sGURiZYA" name="Classifier" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0FcEMWCEdqI1bY5Lwi8Hg" annotatedElement="_6UV2QGwJEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MqnhodxmEdqEPrOCkNZ5Vg" annotatedElement="_6UV2QGwJEdq7X4sGURiZYA">
<body>A classifier is a type. It can specify a generalization hierarchy by referencing its general classifiers. A classifier is also a namespace whose members can include features. Classifier is an abstract metaclass.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g84LsMWCEdqI1bY5Lwi8Hg" annotatedElement="_6UV2QGwJEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_My9lX9xmEdqEPrOCkNZ5Vg" annotatedElement="_6UV2QGwJEdq7X4sGURiZYA">
<body>Classifier is extended with the capability to own collaboration uses. These collaboration uses link a collaboration with the classifier to give a description of the workings of the classifier.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-EehMWCEdqI1bY5Lwi8Hg" annotatedElement="_6UV2QGwJEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29jNxmEdqEPrOCkNZ5Vg" annotatedElement="_6UV2QGwJEdq7X4sGURiZYA">
<body>Extends a classifier with the capability to own use cases. Although the owning classifier typically represents the subject to which the owned use cases apply, this is not necessarily the case. In principle, the same use case can be applied to multiple subjects, as identified by the subject association role of a UseCase.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g30FisWCEdqI1bY5Lwi8Hg" annotatedElement="_6UV2QGwJEdq7X4sGURiZYA">
- <body>A classifier is a namespace whose members can include features. Classifier is an abstract metaclass.
-
-A classifier is a type and can own generalizations, thereby making it possible to define generalization relationships to other classifiers. A classifier can specify a generalization hierarchy by referencing its general classifiers.
-
-A classifier is a redefinable element, meaning that it is possible to redefine nested classifiers.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvO7_txmEdqEPrOCkNZ5Vg" annotatedElement="_6UV2QGwJEdq7X4sGURiZYA">
+ <body>A classifier is a namespace whose members can include features. Classifier is an abstract metaclass.&#xD;
+A classifier is a type and can own generalizations, thereby making it possible to define generalization relationships to other classifiers. A classifier can specify a generalization hierarchy by referencing its general classifiers.&#xD;
+A classifier is a redefinable element, meaning that it is possible to redefine nested classifiers.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPdsWCEdqI1bY5Lwi8Hg" annotatedElement="_6UV2QGwJEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqSdxmEdqEPrOCkNZ5Vg" annotatedElement="_6UV2QGwJEdq7X4sGURiZYA">
<body>A classifier can be parameterized, exposed as a formal template parameter, and specified as an actual parameter in a binding of a template.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0FcEcWCEdqI1bY5Lwi8Hg" name="no_cycles_in_generalization" constrainedElement="_6UV2QGwJEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0FcEsWCEdqI1bY5Lwi8Hg" annotatedElement="_g0FcEcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MrqDcNxmEdqEPrOCkNZ5Vg" name="no_cycles_in_generalization" constrainedElement="_6UV2QGwJEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MrqDcdxmEdqEPrOCkNZ5Vg" annotatedElement="_MrqDcNxmEdqEPrOCkNZ5Vg">
<body>Generalization hierarchies must be directed and acyclical. A classifier can not be both a transitively general and transitively specific classifier of the same classifier.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g0FcE8WCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MrqDctxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>not self.allParents()->includes(self)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g30Fi8WCEdqI1bY5Lwi8Hg" name="generalization_hierarchies" constrainedElement="_6UV2QGwJEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g30FjMWCEdqI1bY5Lwi8Hg" annotatedElement="_g30Fi8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MvO7_9xmEdqEPrOCkNZ5Vg" name="generalization_hierarchies" constrainedElement="_6UV2QGwJEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvO8ANxmEdqEPrOCkNZ5Vg" annotatedElement="_MvO7_9xmEdqEPrOCkNZ5Vg">
<body>Generalization hierarchies must be directed and acyclical. A classifier can not be both a transitively general and transitively specific classifier of the same classifier.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g30FjcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvO8AdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>not self.allParents()->includes(self)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0PNEMWCEdqI1bY5Lwi8Hg" name="specialize_type" constrainedElement="_6UV2QGwJEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0PNEcWCEdqI1bY5Lwi8Hg" annotatedElement="_g0PNEMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MrqDc9xmEdqEPrOCkNZ5Vg" name="specialize_type" constrainedElement="_6UV2QGwJEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MrqDdNxmEdqEPrOCkNZ5Vg" annotatedElement="_MrqDc9xmEdqEPrOCkNZ5Vg">
<body>A classifier may only specialize classifiers of a valid type.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g4jsYMWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvYs4NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.parents()->forAll(c | self.maySpecializeType(c))</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hCr40MWCEdqI1bY5Lwi8Hg" name="maps_to_generalization_set" constrainedElement="_6UV2QGwJEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr40cWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr40MWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M3uwodxmEdqEPrOCkNZ5Vg" name="maps_to_generalization_set" constrainedElement="_6UV2QGwJEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwotxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwodxmEdqEPrOCkNZ5Vg">
<body>The Classifier that maps to a GeneralizationSet may neither be a specific nor a general Classifier in any of the Generalization relationships defined for that GeneralizationSet. In other words, a power type may not be an instance of itself nor may its instances also be its subclasses.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hCr40sWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M3uwo9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>true</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g4jsYcWCEdqI1bY5Lwi8Hg" general="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g0YXAMWCEdqI1bY5Lwi8Hg" general="_ynRtoGvtEdqG6fBIPwe-mw"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFOPd8WCEdqI1bY5Lwi8Hg" general="_hFEei8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g0PNE8WCEdqI1bY5Lwi8Hg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g4jsYsWCEdqI1bY5Lwi8Hg" name="isAbstract" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g4jsY8WCEdqI1bY5Lwi8Hg" annotatedElement="_g4jsYsWCEdqI1bY5Lwi8Hg">
- <body>If true, the Classifier does not provide a complete declaration and can typically not be instantiated. An abstract classifier is intended to be used by other classifiers e.g. as the target of general metarelationships or generalization relationships.
-
+ <generalization xmi:type="uml:Generalization" xmi:id="_MvYs4dxmEdqEPrOCkNZ5Vg" general="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mrz0cdxmEdqEPrOCkNZ5Vg" general="_ynRtoGvtEdqG6fBIPwe-mw"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5qqStxmEdqEPrOCkNZ5Vg" general="_M5hgjdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Mrz0cNxmEdqEPrOCkNZ5Vg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MvYs4txmEdqEPrOCkNZ5Vg" name="isAbstract" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvYs49xmEdqEPrOCkNZ5Vg" annotatedElement="_MvYs4txmEdqEPrOCkNZ5Vg">
+ <body>If true, the Classifier does not provide a complete declaration and can typically not be instantiated. An abstract classifier is intended to be used by other classifiers e.g. as the target of general metarelationships or generalization relationships.&#xD;
</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_g4jsZMWCEdqI1bY5Lwi8Hg"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_MvYs5NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g4jsZcWCEdqI1bY5Lwi8Hg" name="generalization" type="_C7AF4GwREdq14q0ETb1t3g" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g6yhA8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g4jsZsWCEdqI1bY5Lwi8Hg" annotatedElement="_g4jsZcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MvYs5dxmEdqEPrOCkNZ5Vg" name="generalization" type="_C7AF4GwREdq14q0ETb1t3g" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MxBruNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvYs5txmEdqEPrOCkNZ5Vg" annotatedElement="_MvYs5dxmEdqEPrOCkNZ5Vg">
<body>Specifies the Generalization relationships for this Classifier. These Generalizations navigaten to more general classifiers in the generalization hierarchy.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g4jsZ8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g4jsaMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvYs59xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvYs6NxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g0iIBMWCEdqI1bY5Lwi8Hg" name="feature" visibility="public" type="_g0-z8MWCEdqI1bY5Lwi8Hg" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_g1H96MWCEdqI1bY5Lwi8Hg" association="_g2eB0sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0iIBcWCEdqI1bY5Lwi8Hg" annotatedElement="_g0iIBMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mrz0dtxmEdqEPrOCkNZ5Vg" name="feature" visibility="public" type="_MsQgf9xmEdqEPrOCkNZ5Vg" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_MsaRetxmEdqEPrOCkNZ5Vg" association="_MtmkaNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mrz0d9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mrz0dtxmEdqEPrOCkNZ5Vg">
<body>Redefines the corresponding association in Abstractions. Note that there may be members of the Classifier that are of the type Feature but are not included in this association, e.g. inherited features.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g4jsacWCEdqI1bY5Lwi8Hg" annotatedElement="_g0iIBMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvYs6dxmEdqEPrOCkNZ5Vg" annotatedElement="_Mrz0dtxmEdqEPrOCkNZ5Vg">
<body>Specifies each feature defined in the classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g4jsasWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g4jsa8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvYs6txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvYs69xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g0r5BMWCEdqI1bY5Lwi8Hg" name="inheritedMember" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" subsettedProperty="_g1H96MWCEdqI1bY5Lwi8Hg" association="_g2eB8cWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0r5BcWCEdqI1bY5Lwi8Hg" annotatedElement="_g0r5BMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mr9lcNxmEdqEPrOCkNZ5Vg" name="inheritedMember" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" subsettedProperty="_MsaRetxmEdqEPrOCkNZ5Vg" association="_Mtmkh9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mr9lcdxmEdqEPrOCkNZ5Vg" annotatedElement="_Mr9lcNxmEdqEPrOCkNZ5Vg">
<body>Specifies all elements inherited by this classifier from the general classifiers.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g4s2UMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g4s2UcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvYs7NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvYs7dxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g4s2VMWCEdqI1bY5Lwi8Hg" name="redefinedClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_g68SBMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g4s2VcWCEdqI1bY5Lwi8Hg" annotatedElement="_g4s2VMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MvYs8NxmEdqEPrOCkNZ5Vg" name="redefinedClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_MxUmkNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvYs8dxmEdqEPrOCkNZ5Vg" annotatedElement="_MvYs8NxmEdqEPrOCkNZ5Vg">
<body>References the Classifiers that are redefined by this Classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g4s2VsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g4s2V8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvYs8txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvYs89xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g0r5AMWCEdqI1bY5Lwi8Hg" name="general" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" isDerived="true" association="_g2eB28WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0r5AcWCEdqI1bY5Lwi8Hg" annotatedElement="_g0r5AMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mrz0etxmEdqEPrOCkNZ5Vg" name="general" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" isDerived="true" association="_MtmkcdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mrz0e9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mrz0etxmEdqEPrOCkNZ5Vg">
<body>References the general classifier in the Generalization relationship.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g4s2WMWCEdqI1bY5Lwi8Hg" annotatedElement="_g0r5AMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MvYs9NxmEdqEPrOCkNZ5Vg" annotatedElement="_Mrz0etxmEdqEPrOCkNZ5Vg">
<body>Specifies the general Classifiers for this Classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g4s2WcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g4s2WsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvYs9dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvYs9txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8bf08WCEdqI1bY5Lwi8Hg" name="substitution" type="_g8bfx8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg _g8bf18WCEdqI1bY5Lwi8Hg" association="_g8lQwMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8bf1MWCEdqI1bY5Lwi8Hg" annotatedElement="_g8bf08WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Myg5hdxmEdqEPrOCkNZ5Vg" name="substitution" type="_Myg5edxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg _Myg5idxmEdqEPrOCkNZ5Vg" association="_MyqqatxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Myg5htxmEdqEPrOCkNZ5Vg" annotatedElement="_Myg5hdxmEdqEPrOCkNZ5Vg">
<body>References the substitutions that are owned by this Classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8bf1cWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8bf1sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Myg5h9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Myg5iNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g0iIAMWCEdqI1bY5Lwi8Hg" name="attribute" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_g0iIBMWCEdqI1bY5Lwi8Hg" association="_g2UQvcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0iIAcWCEdqI1bY5Lwi8Hg" annotatedElement="_g0iIAMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mrz0ctxmEdqEPrOCkNZ5Vg" name="attribute" visibility="public" type="_Jp_1oGveEdq4DLWZOhbdEA" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="_Mrz0dtxmEdqEPrOCkNZ5Vg" association="_MtczPdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mrz0c9xmEdqEPrOCkNZ5Vg" annotatedElement="_Mrz0ctxmEdqEPrOCkNZ5Vg">
<body>Refers to all of the Properties that are direct (i.e. not inherited or imported) attributes of the classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g84LscWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g84LssWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_My9lYNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_My9lYdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9B8zcWCEdqI1bY5Lwi8Hg" name="representation" type="_g9B8sMWCEdqI1bY5Lwi8Hg" subsettedProperty="_g9B80cWCEdqI1bY5Lwi8Hg" association="_g9B848WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9B8zsWCEdqI1bY5Lwi8Hg" annotatedElement="_g9B8zcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzHWbdxmEdqEPrOCkNZ5Vg" name="representation" type="_MzHWUNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MzHWcdxmEdqEPrOCkNZ5Vg" association="_MzHWg9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWbtxmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWbdxmEdqEPrOCkNZ5Vg">
<body>References a collaboration use which indicates the collaboration that represents this classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9B8z8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9B80MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzHWb9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzHWcNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g9B80cWCEdqI1bY5Lwi8Hg" name="collaborationUse" type="_g9B8sMWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g9B86MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g9B80sWCEdqI1bY5Lwi8Hg" annotatedElement="_g9B80cWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MzHWcdxmEdqEPrOCkNZ5Vg" name="collaborationUse" type="_MzHWUNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MzHWiNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MzHWctxmEdqEPrOCkNZ5Vg" annotatedElement="_MzHWcdxmEdqEPrOCkNZ5Vg">
<body>References the collaboration uses owned by the classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g9B808WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g9B81MWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MzHWc9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MzHWdNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-EehcWCEdqI1bY5Lwi8Hg" name="ownedUseCase" type="_g96tu8WCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g-EeqMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-EehsWCEdqI1bY5Lwi8Hg" annotatedElement="_g-EehcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mz29jdxmEdqEPrOCkNZ5Vg" name="ownedUseCase" type="_Mz29XNxmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_M0AHINxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29jtxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29jdxmEdqEPrOCkNZ5Vg">
<body>References the use cases owned by this classifier.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-Eeh8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-EeiMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29j9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29kNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g-EeicWCEdqI1bY5Lwi8Hg" name="useCase" type="_g96tu8WCEdqI1bY5Lwi8Hg" association="_g-EercWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g-EeisWCEdqI1bY5Lwi8Hg" annotatedElement="_g-EeicWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mz29kdxmEdqEPrOCkNZ5Vg" name="useCase" type="_Mz29XNxmEdqEPrOCkNZ5Vg" association="_M0AHJdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mz29ktxmEdqEPrOCkNZ5Vg" annotatedElement="_Mz29kdxmEdqEPrOCkNZ5Vg">
<body>The set of use cases for which this Classifier is the subject.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g-Eei8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g-EejMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mz29k9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mz29lNxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCr408WCEdqI1bY5Lwi8Hg" name="powertypeExtent" type="_hCivFsWCEdqI1bY5Lwi8Hg" association="_hCr438WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCr41MWCEdqI1bY5Lwi8Hg" annotatedElement="_hCr408WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3uwpNxmEdqEPrOCkNZ5Vg" name="powertypeExtent" type="_M3k_49xmEdqEPrOCkNZ5Vg" association="_M3uwsNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3uwpdxmEdqEPrOCkNZ5Vg" annotatedElement="_M3uwpNxmEdqEPrOCkNZ5Vg">
<body>Designates the GeneralizationSet of which the associated Classifier is a power type.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCr41cWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCr41sWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3uwptxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3uwp9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFOPecWCEdqI1bY5Lwi8Hg" name="ownedTemplateSignature" type="_9keOQGvdEdq4DLWZOhbdEA" aggregation="composite" redefinedProperty="_hFEeksWCEdqI1bY5Lwi8Hg" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hFhKVsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPesWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPecWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5qqTNxmEdqEPrOCkNZ5Vg" name="ownedTemplateSignature" type="_9keOQGvdEdq4DLWZOhbdEA" aggregation="composite" redefinedProperty="_M5hglNxmEdqEPrOCkNZ5Vg" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M50badxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqTdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqTNxmEdqEPrOCkNZ5Vg">
<body>The optional template signature specifying the formal template parameters.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFOPe8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFOPfMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5qqTtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5qqT9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFOPfcWCEdqI1bY5Lwi8Hg" name="templateParameter" type="_hFOPhsWCEdqI1bY5Lwi8Hg" redefinedProperty="_hFEepcWCEdqI1bY5Lwi8Hg" association="_hFhKYsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPfsWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPfcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5qqUNxmEdqEPrOCkNZ5Vg" name="templateParameter" type="_M5qqWdxmEdqEPrOCkNZ5Vg" redefinedProperty="_M5hgp9xmEdqEPrOCkNZ5Vg" association="_M50bddxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqUdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqUNxmEdqEPrOCkNZ5Vg">
<body>The template parameter that exposes this element as a formal parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFOPf8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFOPgMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5qqUtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5qqU9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_KjT7EGwREdq14q0ETb1t3g" name="getAllAttributes" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_OXZQsGwREdq14q0ETb1t3g" type="_Jp_1oGveEdq4DLWZOhbdEA" direction="return">
@@ -14875,260 +14547,260 @@ A classifier is a redefinable element, meaning that it is possible to redefine n
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MH_rw66-EdqjppZik4kD8A"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g0r5FcWCEdqI1bY5Lwi8Hg" name="general" visibility="public" isQuery="true" bodyCondition="_g0r5F8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0r5FsWCEdqI1bY5Lwi8Hg" annotatedElement="_g0r5FcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsGvbdxmEdqEPrOCkNZ5Vg" name="general" visibility="public" isQuery="true" bodyCondition="_MsGvb9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsGvbtxmEdqEPrOCkNZ5Vg" annotatedElement="_MsGvbdxmEdqEPrOCkNZ5Vg">
<body>The general classifiers are the classifiers referenced by the generalization relationships.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0r5F8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g0r5FcWCEdqI1bY5Lwi8Hg _g0r5AMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g4s2W8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsGvb9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsGvbdxmEdqEPrOCkNZ5Vg _Mrz0etxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvYs99xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = self.parents()</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0r5GcWCEdqI1bY5Lwi8Hg" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g4s2XMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g4s2XcWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvcdxmEdqEPrOCkNZ5Vg" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvYs-NxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvYs-dxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g0r5I8WCEdqI1bY5Lwi8Hg" name="inheritedMember" visibility="public" isQuery="true" bodyCondition="_g0r5JcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0r5JMWCEdqI1bY5Lwi8Hg" annotatedElement="_g0r5I8WCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsGve9xmEdqEPrOCkNZ5Vg" name="inheritedMember" visibility="public" isQuery="true" bodyCondition="_MsGvfdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsGvfNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsGve9xmEdqEPrOCkNZ5Vg">
<body>The inheritedMember association is derived by inheriting the inheritable members of the parents.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0r5JcWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g0r5I8WCEdqI1bY5Lwi8Hg _g0r5BMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g4s2XsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsGvfdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsGve9xmEdqEPrOCkNZ5Vg _Mr9lcNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvYs-txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = self.inherit(self.parents()->collect(p | p.inheritableMembers(self))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0r5J8WCEdqI1bY5Lwi8Hg" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g4s2X8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g4s2YMWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvf9xmEdqEPrOCkNZ5Vg" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvYs-9xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvYs_NxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g0r5DsWCEdqI1bY5Lwi8Hg" name="allFeatures" visibility="public" isQuery="true" bodyCondition="_g0r5EMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0r5D8WCEdqI1bY5Lwi8Hg" annotatedElement="_g0r5DsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsGvZtxmEdqEPrOCkNZ5Vg" name="allFeatures" visibility="public" isQuery="true" bodyCondition="_MsGvaNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsGvZ9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsGvZtxmEdqEPrOCkNZ5Vg">
<body>The query allFeatures() gives all of the features in the namespace of the classifier. In general, through mechanisms such as inheritance, this will be a larger set than feature.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0r5EMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g0r5DsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g4s2YcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsGvaNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsGvZtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_MvYs_dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = member->select(oclIsKindOf(Feature))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0r5EsWCEdqI1bY5Lwi8Hg" visibility="public" type="_g0-z8MWCEdqI1bY5Lwi8Hg" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g4s2YsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g4s2Y8WCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvatxmEdqEPrOCkNZ5Vg" visibility="public" type="_MsQgf9xmEdqEPrOCkNZ5Vg" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_MvYs_txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MvYs_9xmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g0r5HMWCEdqI1bY5Lwi8Hg" name="parents" visibility="public" isQuery="true" bodyCondition="_g0r5HsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0r5HcWCEdqI1bY5Lwi8Hg" annotatedElement="_g0r5HMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsGvdNxmEdqEPrOCkNZ5Vg" name="parents" visibility="public" isQuery="true" bodyCondition="_MsGvdtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsGvddxmEdqEPrOCkNZ5Vg" annotatedElement="_MsGvdNxmEdqEPrOCkNZ5Vg">
<body>The query parents() gives all of the immediate ancestors of a generalized Classifier.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0r5HsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g0r5HMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g4s2ZMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsGvdtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsGvdNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvid4NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = generalization.general</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0r5IMWCEdqI1bY5Lwi8Hg" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g4s2ZcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g4s2ZsWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGveNxmEdqEPrOCkNZ5Vg" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mvid4dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mvid4txmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g01C8MWCEdqI1bY5Lwi8Hg" name="inheritableMembers" visibility="public" isQuery="true" precondition="_g01C8sWCEdqI1bY5Lwi8Hg" postcondition="_g01C8sWCEdqI1bY5Lwi8Hg" bodyCondition="_g01C9MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01C8cWCEdqI1bY5Lwi8Hg" annotatedElement="_g01C8MWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsGvidxmEdqEPrOCkNZ5Vg" name="inheritableMembers" visibility="public" isQuery="true" precondition="_MsGvi9xmEdqEPrOCkNZ5Vg" postcondition="_MsGvi9xmEdqEPrOCkNZ5Vg" bodyCondition="_MsGvjdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsGvitxmEdqEPrOCkNZ5Vg" annotatedElement="_MsGvidxmEdqEPrOCkNZ5Vg">
<body>The query inheritableMembers() gives all of the members of a classifier that may be inherited in one of its descendants, subject to whatever visibility restrictions apply.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g01C8sWCEdqI1bY5Lwi8Hg" constrainedElement="_g01C8MWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g4s2aMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsGvi9xmEdqEPrOCkNZ5Vg" constrainedElement="_MsGvidxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvid5NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>c.allParents()->includes(self)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g01C9MWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g01C8MWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g4s2acWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsGvjdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsGvidxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvid5dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = member->select(m | c.hasVisibilityOf(m))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g01C9sWCEdqI1bY5Lwi8Hg" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g4s2asWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g4s2a8WCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvj9xmEdqEPrOCkNZ5Vg" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mvid5txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mvid59xmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g01C-cWCEdqI1bY5Lwi8Hg" name="c" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" effect="read"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvktxmEdqEPrOCkNZ5Vg" name="c" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" effect="read"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g01C-sWCEdqI1bY5Lwi8Hg" name="hasVisibilityOf" visibility="public" isQuery="true" precondition="_g01C_MWCEdqI1bY5Lwi8Hg" bodyCondition="_g01C_sWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01C-8WCEdqI1bY5Lwi8Hg" annotatedElement="_g01C-sWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsGvk9xmEdqEPrOCkNZ5Vg" name="hasVisibilityOf" visibility="public" isQuery="true" precondition="_MsGvldxmEdqEPrOCkNZ5Vg" bodyCondition="_MsGvl9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsGvlNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsGvk9xmEdqEPrOCkNZ5Vg">
<body>The query hasVisibilityOf() determines whether a named element is visible in the classifier. By default all are visible. It is only called when the argument is something owned by a parent.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g01C_MWCEdqI1bY5Lwi8Hg" constrainedElement="_g01C-sWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g4s2bMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsGvldxmEdqEPrOCkNZ5Vg" constrainedElement="_MsGvk9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvid6NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.allParents()->collect(c | c.member)->includes(n)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g01C_sWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g01C-sWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g42nUMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsGvl9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsGvk9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvid6dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = if (self.inheritedMember->includes(n)) then (n.visibility &lt;> #private) else true</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g01DAMWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g01DAcWCEdqI1bY5Lwi8Hg" name="n" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvmdxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvmtxmEdqEPrOCkNZ5Vg" name="n" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g0r5CMWCEdqI1bY5Lwi8Hg" name="conformsTo" visibility="public" isQuery="true" redefinedOperation="_g2BWAsWCEdqI1bY5Lwi8Hg" bodyCondition="_g0r5CsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0r5CcWCEdqI1bY5Lwi8Hg" annotatedElement="_g0r5CMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsGvYNxmEdqEPrOCkNZ5Vg" name="conformsTo" visibility="public" isQuery="true" redefinedOperation="_MtJ4mdxmEdqEPrOCkNZ5Vg" bodyCondition="_MsGvYtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsGvYdxmEdqEPrOCkNZ5Vg" annotatedElement="_MsGvYNxmEdqEPrOCkNZ5Vg">
<body>The query conformsTo() gives true for a classifier that defines a type that conforms to another. This is used, for example, in the specification of signature conformance for operations.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0r5CsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g0r5CMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g42nUcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsGvYtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsGvYNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvid6txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = (self=other) or (self.allParents()->includes(other))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0r5DMWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0r5DcWCEdqI1bY5Lwi8Hg" name="other" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvZNxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvZdxmEdqEPrOCkNZ5Vg" name="other" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g01DAsWCEdqI1bY5Lwi8Hg" name="inherit" visibility="public" isQuery="true" bodyCondition="_g01DBMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01DA8WCEdqI1bY5Lwi8Hg" annotatedElement="_g01DAsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsGvm9xmEdqEPrOCkNZ5Vg" name="inherit" visibility="public" isQuery="true" bodyCondition="_MsGvndxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsGvnNxmEdqEPrOCkNZ5Vg" annotatedElement="_MsGvm9xmEdqEPrOCkNZ5Vg">
<body>The inherit operation is overridden to exclude redefined properties.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g42nUsWCEdqI1bY5Lwi8Hg" annotatedElement="_g01DAsWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mvid69xmEdqEPrOCkNZ5Vg" annotatedElement="_MsGvm9xmEdqEPrOCkNZ5Vg">
<body>The query inherit() defines how to inherit a set of elements. Here the operation is defined to inherit them all. It is intended to be redefined in circumstances where inheritance is affected by redefinition.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g01DBMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g01DAsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g42nU8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsGvndxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsGvm9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvid7NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = inhs</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g01DBsWCEdqI1bY5Lwi8Hg" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g42nVMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g42nVcWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvn9xmEdqEPrOCkNZ5Vg" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mvid7dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mvid7txmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g01DCcWCEdqI1bY5Lwi8Hg" name="inhs" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g42nVsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g42nV8WCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvotxmEdqEPrOCkNZ5Vg" name="inhs" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mvid79xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mvid8NxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g01DDMWCEdqI1bY5Lwi8Hg" name="maySpecializeType" visibility="public" isQuery="true" bodyCondition="_g01DDsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g01DDcWCEdqI1bY5Lwi8Hg" annotatedElement="_g01DDMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsGvpdxmEdqEPrOCkNZ5Vg" name="maySpecializeType" visibility="public" isQuery="true" bodyCondition="_MsGvp9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsGvptxmEdqEPrOCkNZ5Vg" annotatedElement="_MsGvpdxmEdqEPrOCkNZ5Vg">
<body>The query maySpecializeType() determines whether this classifier may have a generalization relationship to classifiers of the specified type. By default a classifier may specialize classifiers of the same or a more general type. It is intended to be redefined by classifiers that have different specialization constraints.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g01DDsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g01DDMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g42nWMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsGvp9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsGvpdxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvid8dxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = self.oclIsKindOf(c.oclType)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g01DEMWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g01DEcWCEdqI1bY5Lwi8Hg" name="c" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" effect="read"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvqdxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvqtxmEdqEPrOCkNZ5Vg" name="c" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" effect="read"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g0r5KsWCEdqI1bY5Lwi8Hg" name="allParents" visibility="public" isQuery="true" bodyCondition="_g0r5LMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g0r5K8WCEdqI1bY5Lwi8Hg" annotatedElement="_g0r5KsWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MsGvgtxmEdqEPrOCkNZ5Vg" name="allParents" visibility="public" isQuery="true" bodyCondition="_MsGvhNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MsGvg9xmEdqEPrOCkNZ5Vg" annotatedElement="_MsGvgtxmEdqEPrOCkNZ5Vg">
<body>The query allParents() gives all of the direct and indirect ancestors of a generalized Classifier.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g0r5LMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g0r5KsWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g42nWcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MsGvhNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MsGvgtxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mvid8txmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = self.parents()->union(self.parents()->collect(p | p.allParents())</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g0r5LsWCEdqI1bY5Lwi8Hg" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g42nWsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g42nW8WCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MsGvhtxmEdqEPrOCkNZ5Vg" visibility="public" type="_6UV2QGwJEdq7X4sGURiZYA" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mvid89xmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mvid9NxmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hFOPgcWCEdqI1bY5Lwi8Hg" name="isTemplate" isQuery="true" redefinedOperation="_hFEencWCEdqI1bY5Lwi8Hg" bodyCondition="_hFOPg8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPgsWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPgcWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M5qqVNxmEdqEPrOCkNZ5Vg" name="isTemplate" isQuery="true" redefinedOperation="_M5hgn9xmEdqEPrOCkNZ5Vg" bodyCondition="_M5qqVtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqVdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqVNxmEdqEPrOCkNZ5Vg">
<body>The query isTemplate() returns whether this templateable element is actually a template.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFOPg8WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hFOPgcWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFOPhMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5qqVtxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M5qqVNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5qqV9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = oclAsType(TemplatableElement).isTemplate() or general->exists(g | g.isTemplate())</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hFOPhcWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5qqWNxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hFOPhsWCEdqI1bY5Lwi8Hg" name="ClassifierTemplateParameter">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPh8WCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPhsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5qqWdxmEdqEPrOCkNZ5Vg" name="ClassifierTemplateParameter">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqWtxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqWdxmEdqEPrOCkNZ5Vg">
<body>ClassifierTemplateParameter is a template parameter where the parametered element is a Classifier in its capacity of being a kind of ParameterableElement.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFOPiMWCEdqI1bY5Lwi8Hg" name="has_constraining_classifier" constrainedElement="_hFOPhsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPicWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPiMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5qqW9xmEdqEPrOCkNZ5Vg" name="has_constraining_classifier" constrainedElement="_M5qqWdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqXNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqW9xmEdqEPrOCkNZ5Vg">
<body>If &quot;allowSubstitutable&quot; is true, then there must be a constrainingClassifier.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFOPisWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5qqXdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>allowSubstitutable implies constrainingClassifier->notEmpty()</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFOPi8WCEdqI1bY5Lwi8Hg" general="_KxRzgGvuEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFOPjMWCEdqI1bY5Lwi8Hg" name="allowSubstitutable" type="_UdivYGvsEdqG6fBIPwe-mw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPjcWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPjMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5qqXtxmEdqEPrOCkNZ5Vg" general="_KxRzgGvuEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5qqX9xmEdqEPrOCkNZ5Vg" name="allowSubstitutable" type="_UdivYGvsEdqG6fBIPwe-mw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqYNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqX9xmEdqEPrOCkNZ5Vg">
<body>Constrains the required relationship between an actual parameter and the parameteredElement for this formal parameter.</body>
</ownedComment>
- <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_hFOPjsWCEdqI1bY5Lwi8Hg" value="true"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_M5qqYdxmEdqEPrOCkNZ5Vg" value="true"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFOPj8WCEdqI1bY5Lwi8Hg" name="parameteredElement" type="_6UV2QGwJEdq7X4sGURiZYA" redefinedProperty="_hE7UqcWCEdqI1bY5Lwi8Hg" association="_hFhKYsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPkMWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPj8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5qqYtxmEdqEPrOCkNZ5Vg" name="parameteredElement" type="_6UV2QGwJEdq7X4sGURiZYA" redefinedProperty="_M5Xvj9xmEdqEPrOCkNZ5Vg" association="_M50bddxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqY9xmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqYtxmEdqEPrOCkNZ5Vg">
<body>The parameterable classifier for this template parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFOPkcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFOPksWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5qqZNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5qqZdxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFOPk8WCEdqI1bY5Lwi8Hg" name="defaultClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_hFhKbcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPlMWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPk8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5qqZtxmEdqEPrOCkNZ5Vg" name="defaultClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M59lMNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqZ9xmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqZtxmEdqEPrOCkNZ5Vg">
<body>The classifier that is used by default if no argument is provided during template binding. If this property is empty, then there is no default.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFOPlcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFOPlsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5qqaNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5qqadxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFOPl8WCEdqI1bY5Lwi8Hg" name="constrainingClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_hFhKb8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPmMWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPl8WCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5qqatxmEdqEPrOCkNZ5Vg" name="constrainingClassifier" type="_6UV2QGwJEdq7X4sGURiZYA" association="_M59lMtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqa9xmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqatxmEdqEPrOCkNZ5Vg">
<body>The classifier that constrains the argument that can be used for the parameter. If the allowSubstitutable attribute is true, then any classifier that is compatible with this constraining classifier can be substituted, otherwise it must be either this classifier or one of its subclasses. If this property is empty, there are no constraints on the classifier that can be used as an argument.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFOPmcWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFOPmsWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5qqbNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5qqbdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_9keOQGvdEdq4DLWZOhbdEA" name="RedefinableTemplateSignature">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPm8WCEdqI1bY5Lwi8Hg" annotatedElement="_9keOQGvdEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqbtxmEdqEPrOCkNZ5Vg" annotatedElement="_9keOQGvdEdq4DLWZOhbdEA">
<body>RedefinableTemplateSignature specializes both TemplateSignature and RedefinableElement in order to allow the addition of new formal template parameters in the context of a specializing template Classifier.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFOPnMWCEdqI1bY5Lwi8Hg" name="inherited_parameters" constrainedElement="_9keOQGvdEdq4DLWZOhbdEA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPncWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPnMWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5qqb9xmEdqEPrOCkNZ5Vg" name="inherited_parameters" constrainedElement="_9keOQGvdEdq4DLWZOhbdEA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqcNxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqb9xmEdqEPrOCkNZ5Vg">
<body>The inherited parameters are the parameters of the extended template signature.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFOPnsWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5qqcdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>if extendedSignature->isEmpty() then Set{} else extendedSignature.parameter endif</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFOPn8WCEdqI1bY5Lwi8Hg" general="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFOPoMWCEdqI1bY5Lwi8Hg" general="_hE7UicWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFOPocWCEdqI1bY5Lwi8Hg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_g1H-IsWCEdqI1bY5Lwi8Hg" association="_hFhKVsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPosWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPocWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5qqctxmEdqEPrOCkNZ5Vg" general="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5qqc9xmEdqEPrOCkNZ5Vg" general="_M5Xvb9xmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5qqdNxmEdqEPrOCkNZ5Vg" name="classifier" type="_6UV2QGwJEdq7X4sGURiZYA" subsettedProperty="_MsjbWdxmEdqEPrOCkNZ5Vg" association="_M50badxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqddxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqdNxmEdqEPrOCkNZ5Vg">
<body>The classifier that owns this template signature.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFOPo8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFOPpMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5qqdtxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5qqd9xmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFOPpcWCEdqI1bY5Lwi8Hg" name="extendedSignature" type="_9keOQGvdEdq4DLWZOhbdEA" subsettedProperty="_g1H-JsWCEdqI1bY5Lwi8Hg" association="_hFhKWsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPpsWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPpcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5qqeNxmEdqEPrOCkNZ5Vg" name="extendedSignature" type="_9keOQGvdEdq4DLWZOhbdEA" subsettedProperty="_MsjbXdxmEdqEPrOCkNZ5Vg" association="_M50bbdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqedxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqeNxmEdqEPrOCkNZ5Vg">
<body>The template signature that is extended by this template signature.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFOPp8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFOPqMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5qqetxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5qqe9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFOPqcWCEdqI1bY5Lwi8Hg" name="inheritedParameter" type="_KxRzgGvuEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" subsettedProperty="_hE7Uj8WCEdqI1bY5Lwi8Hg" association="_hFhKX8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFOPqsWCEdqI1bY5Lwi8Hg" annotatedElement="_hFOPqcWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5qqfNxmEdqEPrOCkNZ5Vg" name="inheritedParameter" type="_KxRzgGvuEdqG6fBIPwe-mw" isReadOnly="true" isDerived="true" subsettedProperty="_M5XvddxmEdqEPrOCkNZ5Vg" association="_M50bctxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqfdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqfNxmEdqEPrOCkNZ5Vg">
<body>The formal template parameters of the extendedSignature.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFOPq8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFOPrMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5qqftxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5qqf9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_FvJUYFYLEdqrn7iZ0eqieg" name="getInheritedParameters" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_Jbx-MFYLEdqrn7iZ0eqieg" type="_KxRzgGvuEdqG6fBIPwe-mw" direction="return">
@@ -15136,140 +14808,136 @@ A classifier is a redefinable element, meaning that it is possible to redefine n
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_LQdA0FYLEdqrn7iZ0eqieg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_hFYAYMWCEdqI1bY5Lwi8Hg" name="isConsistentWith" isQuery="true" precondition="_hFYAYsWCEdqI1bY5Lwi8Hg" redefinedOperation="_g1H-KsWCEdqI1bY5Lwi8Hg" bodyCondition="_hFYAZMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFYAYcWCEdqI1bY5Lwi8Hg" annotatedElement="_hFYAYMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M5qqgNxmEdqEPrOCkNZ5Vg" name="isConsistentWith" isQuery="true" precondition="_M5qqgtxmEdqEPrOCkNZ5Vg" redefinedOperation="_MsjbYdxmEdqEPrOCkNZ5Vg" bodyCondition="_M5qqhNxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqgdxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqgNxmEdqEPrOCkNZ5Vg">
<body>The query isConsistentWith() specifies, for any two RedefinableTemplateSignatures in a context in which redefinition is possible, whether redefinition would be logically consistent. A redefining template signature is always consistent with a redefined template signature, since redefinition only adds new formal parameters.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFYAYsWCEdqI1bY5Lwi8Hg" constrainedElement="_hFYAYMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFYAY8WCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5qqgtxmEdqEPrOCkNZ5Vg" constrainedElement="_M5qqgNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5qqg9xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>redefinee.isRedefinitionContextValid(self)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_hFYAZMWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_hFYAYMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_hFYAZcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_M5qqhNxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_M5qqgNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_M5qqhdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = redefinee.oclIsKindOf(RedefineableTemplateSignature)</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hFYAZsWCEdqI1bY5Lwi8Hg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_hFYAZ8WCEdqI1bY5Lwi8Hg" name="redefinee" type="_g1H-GcWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5qqhtxmEdqEPrOCkNZ5Vg" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_M5qqh9xmEdqEPrOCkNZ5Vg" name="redefinee" type="_MsjbUNxmEdqEPrOCkNZ5Vg"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_g8ubCcWCEdqI1bY5Lwi8Hg" name="ConnectableElement" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ubCsWCEdqI1bY5Lwi8Hg" annotatedElement="_g8ubCcWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_My9lWNxmEdqEPrOCkNZ5Vg" name="ConnectableElement" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_My9lWdxmEdqEPrOCkNZ5Vg" annotatedElement="_My9lWNxmEdqEPrOCkNZ5Vg">
<body>A ConnectableElement is an abstract metaclass representing a set of instances that play roles of a classifier. Connectable elements may be joined by attached connectors and specify configurations of linked instances to be created within an instance of the containing classifier.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFYAaMWCEdqI1bY5Lwi8Hg" annotatedElement="_g8ubCcWCEdqI1bY5Lwi8Hg">
- <body>ConnectableElement is the connectable element of a ConnectableElementTemplateParameter.
-
-The ConnectableElements attached as role to each ConnectorEnd owned by a Connector must be roles of the classifier that owned the Connector, or they must be ports of such roles.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqiNxmEdqEPrOCkNZ5Vg" annotatedElement="_My9lWNxmEdqEPrOCkNZ5Vg">
+ <body>ConnectableElement is the connectable element of a ConnectableElementTemplateParameter.&#xD;
+The ConnectableElements attached as role to each ConnectorEnd owned by a Connector must be roles of the classifier that owned the Connector, or they must be ports of such roles. &#xD;
</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_g8ubC8WCEdqI1bY5Lwi8Hg" general="_g1Ru6cWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAacWCEdqI1bY5Lwi8Hg" general="_hFEeosWCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g8ubDMWCEdqI1bY5Lwi8Hg" name="end" type="_aOgw0GveEdq4DLWZOhbdEA" isOrdered="true" association="_g84L3MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g8ubDcWCEdqI1bY5Lwi8Hg" annotatedElement="_g8ubDMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_My9lWtxmEdqEPrOCkNZ5Vg" general="_MsjbeNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5qqidxmEdqEPrOCkNZ5Vg" general="_M5hgpNxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_My9lW9xmEdqEPrOCkNZ5Vg" name="end" type="_aOgw0GveEdq4DLWZOhbdEA" isOrdered="true" association="_My9li9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_My9lXNxmEdqEPrOCkNZ5Vg" annotatedElement="_My9lW9xmEdqEPrOCkNZ5Vg">
<body>Denotes a connector that attaches to this connectable element.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g8ubDsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g8ubD8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_My9lXdxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_My9lXtxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFYAasWCEdqI1bY5Lwi8Hg" name="templateParameter" type="_hFYAbsWCEdqI1bY5Lwi8Hg" redefinedProperty="_hFEepcWCEdqI1bY5Lwi8Hg" association="_hFhKa8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFYAa8WCEdqI1bY5Lwi8Hg" annotatedElement="_hFYAasWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5qqitxmEdqEPrOCkNZ5Vg" name="templateParameter" type="_M5qqjtxmEdqEPrOCkNZ5Vg" redefinedProperty="_M5hgp9xmEdqEPrOCkNZ5Vg" association="_M50bftxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqi9xmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqitxmEdqEPrOCkNZ5Vg">
<body>The ConnectableElementTemplateParameter for this ConnectableElement parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFYAbMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFYAbcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5qqjNxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5qqjdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
</packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hFYAbsWCEdqI1bY5Lwi8Hg" name="ConnectableElementTemplateParameter">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFYAb8WCEdqI1bY5Lwi8Hg" annotatedElement="_hFYAbsWCEdqI1bY5Lwi8Hg">
+ <packagedElement xmi:type="uml:Class" xmi:id="_M5qqjtxmEdqEPrOCkNZ5Vg" name="ConnectableElementTemplateParameter">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqj9xmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqjtxmEdqEPrOCkNZ5Vg">
<body>ConnectableElementTemplateParameter is a template parameter where the parametered element is a ConnectableElement.</body>
</ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAcMWCEdqI1bY5Lwi8Hg" general="_KxRzgGvuEdqG6fBIPwe-mw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hFYAccWCEdqI1bY5Lwi8Hg" name="parameteredElement" type="_g8ubCcWCEdqI1bY5Lwi8Hg" redefinedProperty="_hE7UqcWCEdqI1bY5Lwi8Hg" association="_hFhKa8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFYAcsWCEdqI1bY5Lwi8Hg" annotatedElement="_hFYAccWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M5qqkNxmEdqEPrOCkNZ5Vg" general="_KxRzgGvuEdqG6fBIPwe-mw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M5qqkdxmEdqEPrOCkNZ5Vg" name="parameteredElement" type="_My9lWNxmEdqEPrOCkNZ5Vg" redefinedProperty="_M5Xvj9xmEdqEPrOCkNZ5Vg" association="_M50bftxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M5qqktxmEdqEPrOCkNZ5Vg" annotatedElement="_M5qqkdxmEdqEPrOCkNZ5Vg">
<body>The ConnectableElement for this template parameter.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFYAc8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFYAdMWCEdqI1bY5Lwi8Hg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M5qqk9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M5qqlNxmEdqEPrOCkNZ5Vg" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_-cvRAGvzEdq7X4sGURiZYA" name="Package">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14MDMWCEdqI1bY5Lwi8Hg" annotatedElement="_-cvRAGvzEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4SdxmEdqEPrOCkNZ5Vg" annotatedElement="_-cvRAGvzEdq7X4sGURiZYA">
<body>A package is a namespace for its members, and may contain other packages. Only packageable elements can be owned members of a package. By virtue of being a namespace, a package can import either individual members of other packages, or all the members of other packages. In addition a package can be merged with other packages.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5TTQMWCEdqI1bY5Lwi8Hg" annotatedElement="_-cvRAGvzEdq7X4sGURiZYA">
- <body>A package is a namespace for its members, and may contain other packages. Only packageable elements can be owned members of a package. By virtue of being a namespace, a package can import either individual members of other packages, or all the members of other packages.
-
-In addition a package can be merged with other packages.
-
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv1ZBNxmEdqEPrOCkNZ5Vg" annotatedElement="_-cvRAGvzEdq7X4sGURiZYA">
+ <body>A package is a namespace for its members, and may contain other packages. Only packageable elements can be owned members of a package. By virtue of being a namespace, a package can import either individual members of other packages, or all the members of other packages.&#xD;
+In addition a package can be merged with other packages.&#xD;
</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGDAcWCEdqI1bY5Lwi8Hg" annotatedElement="_-cvRAGvzEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I619xmEdqEPrOCkNZ5Vg" annotatedElement="_-cvRAGvzEdq7X4sGURiZYA">
<body>A Package can have one or more ProfileApplications to indicate which profiles have been applied. Because a profile is a package, it is possible to apply a profile not only to packages, but also to profiles.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_hFYAdcWCEdqI1bY5Lwi8Hg" annotatedElement="_-cvRAGvzEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M50bQNxmEdqEPrOCkNZ5Vg" annotatedElement="_-cvRAGvzEdq7X4sGURiZYA">
<body>Package specializes TemplateableElement and PackageableElement specializes ParameterableElement to specify that a package can be used as a template and a PackageableElement as a template parameter.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g14MDcWCEdqI1bY5Lwi8Hg" name="elements_public_or_private" constrainedElement="_-cvRAGvzEdq7X4sGURiZYA">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14MDsWCEdqI1bY5Lwi8Hg" annotatedElement="_g14MDcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtJ4StxmEdqEPrOCkNZ5Vg" name="elements_public_or_private" constrainedElement="_-cvRAGvzEdq7X4sGURiZYA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4S9xmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4StxmEdqEPrOCkNZ5Vg">
<body>If an element that is owned by a package has visibility, it is public or private.</body>
</ownedComment>
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5TTQcWCEdqI1bY5Lwi8Hg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mv1ZBdxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.ownedElements->forAll(e | e.visibility->notEmpty() implies e.visbility = #public or e.visibility = #private)</body>
</specification>
</ownedRule>
- <generalization xmi:type="uml:Generalization" xmi:id="_g14MEMWCEdqI1bY5Lwi8Hg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_g14MEcWCEdqI1bY5Lwi8Hg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAdsWCEdqI1bY5Lwi8Hg" general="_hFEei8WCEdqI1bY5Lwi8Hg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2BVyMWCEdqI1bY5Lwi8Hg" name="packageMerge" visibility="public" type="_g2BV8MWCEdqI1bY5Lwi8Hg" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_g2eBvcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BVycWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BVyMWCEdqI1bY5Lwi8Hg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtJ4TdxmEdqEPrOCkNZ5Vg" general="_jKxnwGwLEdq7X4sGURiZYA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_MtJ4TtxmEdqEPrOCkNZ5Vg" general="_ZiwkoGwLEdq7X4sGURiZYA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bQdxmEdqEPrOCkNZ5Vg" general="_M5hgjdxmEdqEPrOCkNZ5Vg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtJ4X9xmEdqEPrOCkNZ5Vg" name="packageMerge" visibility="public" type="_MtJ4h9xmEdqEPrOCkNZ5Vg" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_MtmkU9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4YNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4X9xmEdqEPrOCkNZ5Vg">
<body>References the PackageMerges that are owned by this Package.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5TTQsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5TTQ8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv1ZBtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv1ZB9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g14MEsWCEdqI1bY5Lwi8Hg" name="packagedElement" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_g1H95MWCEdqI1bY5Lwi8Hg" association="_g2eBsMWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14ME8WCEdqI1bY5Lwi8Hg" annotatedElement="_g14MEsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtJ4T9xmEdqEPrOCkNZ5Vg" name="packagedElement" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" aggregation="composite" subsettedProperty="_MsaRdtxmEdqEPrOCkNZ5Vg" association="_MtmkRtxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4UNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4T9xmEdqEPrOCkNZ5Vg">
<body>Specifies the packageable elements that are owned by this Package.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5TTRMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5TTRcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv1ZCNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv1ZCdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g14MFsWCEdqI1bY5Lwi8Hg" name="ownedType" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" isDerived="true" aggregation="composite" subsettedProperty="_g14MEsWCEdqI1bY5Lwi8Hg" association="_g2eBtcWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g14MF8WCEdqI1bY5Lwi8Hg" annotatedElement="_g14MFsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtJ4U9xmEdqEPrOCkNZ5Vg" name="ownedType" visibility="public" type="_ynRtoGvtEdqG6fBIPwe-mw" isDerived="true" aggregation="composite" subsettedProperty="_MtJ4T9xmEdqEPrOCkNZ5Vg" association="_MtmkS9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4VNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4U9xmEdqEPrOCkNZ5Vg">
<body>References the packaged elements that are Types.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5TTRsWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5TTR8WCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv1ZCtxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv1ZC9xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2BVwMWCEdqI1bY5Lwi8Hg" name="nestedPackage" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" isDerived="true" aggregation="composite" subsettedProperty="_g14MEsWCEdqI1bY5Lwi8Hg" association="_g2eBucWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BVwcWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BVwMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtJ4V9xmEdqEPrOCkNZ5Vg" name="nestedPackage" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" isDerived="true" aggregation="composite" subsettedProperty="_MtJ4T9xmEdqEPrOCkNZ5Vg" association="_MtmkT9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4WNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4V9xmEdqEPrOCkNZ5Vg">
<body>References the packaged elements that are Packages.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5TTSMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5TTScWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv1ZDNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv1ZDdxmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_g2BVxMWCEdqI1bY5Lwi8Hg" name="nestingPackage" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_g2BWG8WCEdqI1bY5Lwi8Hg" association="_g2eBucWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BVxcWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BVxMWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MtJ4W9xmEdqEPrOCkNZ5Vg" name="nestingPackage" visibility="public" type="_-cvRAGvzEdq7X4sGURiZYA" subsettedProperty="_MtTCOdxmEdqEPrOCkNZ5Vg" association="_MtmkT9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4XNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4W9xmEdqEPrOCkNZ5Vg">
<body>References the owning package of a package.</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_g5TTSsWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BVxMWCEdqI1bY5Lwi8Hg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Mv_J0NxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4W9xmEdqEPrOCkNZ5Vg">
<body>References the Package that owns this Package.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5TTS8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5TTTMWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv_J0dxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv_J0txmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_hCGDAsWCEdqI1bY5Lwi8Hg" name="profileApplication" type="_uY5yQGv5Edq7X4sGURiZYA" aggregation="composite" subsettedProperty="_g01DI8WCEdqI1bY5Lwi8Hg" association="_hCPNC8WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_hCGDA8WCEdqI1bY5Lwi8Hg" annotatedElement="_hCGDAsWCEdqI1bY5Lwi8Hg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_M3I62NxmEdqEPrOCkNZ5Vg" name="profileApplication" type="_uY5yQGv5Edq7X4sGURiZYA" aggregation="composite" subsettedProperty="_MsQgZ9xmEdqEPrOCkNZ5Vg" association="_M3SE7dxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M3I62dxmEdqEPrOCkNZ5Vg" annotatedElement="_M3I62NxmEdqEPrOCkNZ5Vg">
<body>References the ProfileApplications that indicate which profiles have been applied to the Package.</body>
</ownedComment>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hCGDBMWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hCGDBcWCEdqI1bY5Lwi8Hg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M3I62txmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M3I629xmEdqEPrOCkNZ5Vg"/>
</ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_4JyAAGwFEdq7X4sGURiZYA" name="createOwnedClass">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_94M7YGwFEdq7X4sGURiZYA" type="_00owUGvdEdq4DLWZOhbdEA" direction="return"/>
@@ -15359,143 +15027,143 @@ In addition a package can be merged with other packages.
<ownedOperation xmi:type="uml:Operation" xmi:id="_NrOGAIbSEdqhgMOAOWpjfQ" name="isModelLibrary" isQuery="true">
<ownedParameter xmi:type="uml:Parameter" xmi:id="_NrOGAYbSEdqhgMOAOWpjfQ" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g2BVzMWCEdqI1bY5Lwi8Hg" name="mustBeOwned" visibility="public" isQuery="true" redefinedOperation="_g01DNsWCEdqI1bY5Lwi8Hg" bodyCondition="_g2BVzsWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BVzcWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BVzMWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtJ4Y9xmEdqEPrOCkNZ5Vg" name="mustBeOwned" visibility="public" isQuery="true" redefinedOperation="_MsQgetxmEdqEPrOCkNZ5Vg" bodyCondition="_MtJ4ZdxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4ZNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4Y9xmEdqEPrOCkNZ5Vg">
<body>The query mustBeOwned() indicates whether elements of this type must have an owner.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2BVzsWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g2BVzMWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5TTTcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtJ4ZdxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtJ4Y9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mv_J09xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = false</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2BV0MWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtJ4Z9xmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g2BV0cWCEdqI1bY5Lwi8Hg" name="visibleMembers" visibility="public" isQuery="true" bodyCondition="_g2BV08WCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BV0sWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BV0cWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtJ4aNxmEdqEPrOCkNZ5Vg" name="visibleMembers" visibility="public" isQuery="true" bodyCondition="_MtJ4atxmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4adxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4aNxmEdqEPrOCkNZ5Vg">
<body>The query visibleMembers() defines which members of a Package can be accessed outside it.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2BV08WCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g2BV0cWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5TTTsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtJ4atxmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtJ4aNxmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mv_J1NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = member->select( m | self.makesVisible(m))</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2BV1cWCEdqI1bY5Lwi8Hg" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" direction="return">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g5TTT8WCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g5TTUMWCEdqI1bY5Lwi8Hg"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtJ4bNxmEdqEPrOCkNZ5Vg" visibility="public" type="_jKxnwGwLEdq7X4sGURiZYA" direction="return">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Mv_J1dxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Mv_J1txmEdqEPrOCkNZ5Vg"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_g2BV2MWCEdqI1bY5Lwi8Hg" name="makesVisible" visibility="public" isQuery="true" precondition="_g2BV2sWCEdqI1bY5Lwi8Hg" bodyCondition="_g2BV3MWCEdqI1bY5Lwi8Hg">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g2BV2cWCEdqI1bY5Lwi8Hg" annotatedElement="_g2BV2MWCEdqI1bY5Lwi8Hg">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MtJ4b9xmEdqEPrOCkNZ5Vg" name="makesVisible" visibility="public" isQuery="true" precondition="_MtJ4cdxmEdqEPrOCkNZ5Vg" bodyCondition="_MtJ4c9xmEdqEPrOCkNZ5Vg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MtJ4cNxmEdqEPrOCkNZ5Vg" annotatedElement="_MtJ4b9xmEdqEPrOCkNZ5Vg">
<body>The query makesVisible() defines whether a Package makes an element visible outside itself. Elements with no visibility and elements with public visibility are made visible.</body>
</ownedComment>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2BV2sWCEdqI1bY5Lwi8Hg" constrainedElement="_g2BV2MWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5TTUcWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtJ4cdxmEdqEPrOCkNZ5Vg" constrainedElement="_MtJ4b9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mv_J19xmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>self.member->includes(el)</body>
</specification>
</ownedRule>
- <ownedRule xmi:type="uml:Constraint" xmi:id="_g2BV3MWCEdqI1bY5Lwi8Hg" name="spec" constrainedElement="_g2BV2MWCEdqI1bY5Lwi8Hg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_g5TTUsWCEdqI1bY5Lwi8Hg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_MtJ4c9xmEdqEPrOCkNZ5Vg" name="spec" constrainedElement="_MtJ4b9xmEdqEPrOCkNZ5Vg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_Mv_J2NxmEdqEPrOCkNZ5Vg">
<language>OCL</language>
<body>result = (ownedMember->includes(el)) or&#xA;(elementImport->select(ei|ei.importedElement = #public)->collect(ei|ei.importedElement)->includes(el)) or&#xA;(packageImport->select(pi|pi.visibility = #public)->collect(pi|pi.importedPackage.member->includes(el))->notEmpty())</body>
</specification>
</ownedRule>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2BV3sWCEdqI1bY5Lwi8Hg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g2BV38WCEdqI1bY5Lwi8Hg" name="el" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtJ4ddxmEdqEPrOCkNZ5Vg" visibility="public" type="_UdivYGvsEdqG6fBIPwe-mw" direction="return"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_MtJ4dtxmEdqEPrOCkNZ5Vg" name="el" visibility="public" type="_csVgUGvtEdqG6fBIPwe-mw"/>
</ownedOperation>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFYAd8WCEdqI1bY5Lwi8Hg" name="A_parameter_templateSignature" memberEnd="_hE7Uj8WCEdqI1bY5Lwi8Hg _hFYAeMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hFYAeMWCEdqI1bY5Lwi8Hg" type="_hE7UicWCEdqI1bY5Lwi8Hg" association="_hFYAd8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bQtxmEdqEPrOCkNZ5Vg" name="A_parameter_templateSignature" memberEnd="_M5XvddxmEdqEPrOCkNZ5Vg _M50bQ9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M50bQ9xmEdqEPrOCkNZ5Vg" type="_M5Xvb9xmEdqEPrOCkNZ5Vg" association="_M50bQtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFYAecWCEdqI1bY5Lwi8Hg" name="A_ownedParameter_signature" memberEnd="_hE7Uk8WCEdqI1bY5Lwi8Hg _hE7UpcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAesWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAe8WCEdqI1bY5Lwi8Hg" general="_hFYAd8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bRNxmEdqEPrOCkNZ5Vg" name="A_ownedParameter_signature" memberEnd="_M5XvedxmEdqEPrOCkNZ5Vg _M5Xvi9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bRdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bRtxmEdqEPrOCkNZ5Vg" general="_M50bQtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFYAfMWCEdqI1bY5Lwi8Hg" name="A_boundElement_templateBinding" memberEnd="_hFEeacWCEdqI1bY5Lwi8Hg _hFEejsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAfcWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAfsWCEdqI1bY5Lwi8Hg" general="_g2eByMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bR9xmEdqEPrOCkNZ5Vg" name="A_boundElement_templateBinding" memberEnd="_M5hga9xmEdqEPrOCkNZ5Vg _M5hgkNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bSNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bSdxmEdqEPrOCkNZ5Vg" general="_MtmkXtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFYAf8WCEdqI1bY5Lwi8Hg" name="A_formal_templateParameterSubstitution" memberEnd="_hFEee8WCEdqI1bY5Lwi8Hg _hFYAgMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hFYAgMWCEdqI1bY5Lwi8Hg" type="_hFEedcWCEdqI1bY5Lwi8Hg" association="_hFYAf8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bStxmEdqEPrOCkNZ5Vg" name="A_formal_templateParameterSubstitution" memberEnd="_M5hgfdxmEdqEPrOCkNZ5Vg _M50bS9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M50bS9xmEdqEPrOCkNZ5Vg" type="_M5hgd9xmEdqEPrOCkNZ5Vg" association="_M50bStxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFYAgcWCEdqI1bY5Lwi8Hg" name="A_signature_templateBinding" memberEnd="_hFEebcWCEdqI1bY5Lwi8Hg _hFYAg8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAgsWCEdqI1bY5Lwi8Hg" general="_g2eBy8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hFYAg8WCEdqI1bY5Lwi8Hg" type="_hFEeYMWCEdqI1bY5Lwi8Hg" redefinedProperty="_g2eBzcWCEdqI1bY5Lwi8Hg" association="_hFYAgcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bTNxmEdqEPrOCkNZ5Vg" name="A_signature_templateBinding" memberEnd="_M5hgb9xmEdqEPrOCkNZ5Vg _M50bTtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bTdxmEdqEPrOCkNZ5Vg" general="_MtmkYdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M50bTtxmEdqEPrOCkNZ5Vg" type="_M5hgYtxmEdqEPrOCkNZ5Vg" redefinedProperty="_MtmkY9xmEdqEPrOCkNZ5Vg" association="_M50bTNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFYAhMWCEdqI1bY5Lwi8Hg" name="A_parameterSubstitution_templateBinding" memberEnd="_hFEeccWCEdqI1bY5Lwi8Hg _hFEef8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAhcWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bT9xmEdqEPrOCkNZ5Vg" name="A_parameterSubstitution_templateBinding" memberEnd="_M5hggdxmEdqEPrOCkNZ5Vg _M5hgc9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bUNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFYAhsWCEdqI1bY5Lwi8Hg" name="A_actual_templateParameterSubstitution" memberEnd="_hFEeg8WCEdqI1bY5Lwi8Hg _hFYAh8WCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hFYAh8WCEdqI1bY5Lwi8Hg" type="_hFEedcWCEdqI1bY5Lwi8Hg" association="_hFYAhsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bUdxmEdqEPrOCkNZ5Vg" name="A_actual_templateParameterSubstitution" memberEnd="_M5hghdxmEdqEPrOCkNZ5Vg _M50bUtxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M50bUtxmEdqEPrOCkNZ5Vg" type="_M5hgd9xmEdqEPrOCkNZ5Vg" association="_M50bUdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFYAiMWCEdqI1bY5Lwi8Hg" name="A_parameteredElement_templateParameter" memberEnd="_hFEepcWCEdqI1bY5Lwi8Hg _hE7UqcWCEdqI1bY5Lwi8Hg"/>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFYAicWCEdqI1bY5Lwi8Hg" name="A_subExpression_owningExpression" memberEnd="_hE7Ux8WCEdqI1bY5Lwi8Hg _hE7Uw8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAisWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bU9xmEdqEPrOCkNZ5Vg" name="A_parameteredElement_templateParameter" memberEnd="_M5hgp9xmEdqEPrOCkNZ5Vg _M5Xvj9xmEdqEPrOCkNZ5Vg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bVNxmEdqEPrOCkNZ5Vg" name="A_subExpression_owningExpression" memberEnd="_M5hgVdxmEdqEPrOCkNZ5Vg _M5hgWdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bVdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFYAi8WCEdqI1bY5Lwi8Hg" name="A_ownedTemplateSignature_template" memberEnd="_hFEeksWCEdqI1bY5Lwi8Hg _hE7Ul8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAjMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bVtxmEdqEPrOCkNZ5Vg" name="A_ownedTemplateSignature_template" memberEnd="_M5hglNxmEdqEPrOCkNZ5Vg _M5XvfdxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bV9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFYAjcWCEdqI1bY5Lwi8Hg" name="A_ownedParameteredElement_owningTemplateParameter" memberEnd="_hE7UrcWCEdqI1bY5Lwi8Hg _hFEeqcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAjsWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAj8WCEdqI1bY5Lwi8Hg" general="_hFYAiMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bWNxmEdqEPrOCkNZ5Vg" name="A_ownedParameteredElement_owningTemplateParameter" memberEnd="_M5Xvk9xmEdqEPrOCkNZ5Vg _M5hgq9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bWdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bWtxmEdqEPrOCkNZ5Vg" general="_M50bU9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFYAkMWCEdqI1bY5Lwi8Hg" name="A_default_templateParameter" memberEnd="_hE7UscWCEdqI1bY5Lwi8Hg _hFYAkcWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hFYAkcWCEdqI1bY5Lwi8Hg" type="_KxRzgGvuEdqG6fBIPwe-mw" association="_hFYAkMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bW9xmEdqEPrOCkNZ5Vg" name="A_default_templateParameter" memberEnd="_M5Xvl9xmEdqEPrOCkNZ5Vg _M50bXNxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M50bXNxmEdqEPrOCkNZ5Vg" type="_KxRzgGvuEdqG6fBIPwe-mw" association="_M50bW9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFYAksWCEdqI1bY5Lwi8Hg" name="A_ownedDefault_templateParameter" memberEnd="_hE7UtcWCEdqI1bY5Lwi8Hg _hFYAlcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAk8WCEdqI1bY5Lwi8Hg" general="_hFYAkMWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFYAlMWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hFYAlcWCEdqI1bY5Lwi8Hg" type="_KxRzgGvuEdqG6fBIPwe-mw" association="_hFYAksWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFYAlsWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFYAl8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bXdxmEdqEPrOCkNZ5Vg" name="A_ownedDefault_templateParameter" memberEnd="_M5Xvm9xmEdqEPrOCkNZ5Vg _M50bYNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bXtxmEdqEPrOCkNZ5Vg" general="_M50bW9xmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bX9xmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M50bYNxmEdqEPrOCkNZ5Vg" type="_KxRzgGvuEdqG6fBIPwe-mw" association="_M50bXdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M50bYdxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M50bYtxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFhKUMWCEdqI1bY5Lwi8Hg" name="A_ownedActual_templateParameterSubstitution" memberEnd="_hFEeh8WCEdqI1bY5Lwi8Hg _hFhKU8WCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFhKUcWCEdqI1bY5Lwi8Hg" general="_hFYAhsWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFhKUsWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hFhKU8WCEdqI1bY5Lwi8Hg" type="_hFEedcWCEdqI1bY5Lwi8Hg" association="_hFhKUMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFhKVMWCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFhKVcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bY9xmEdqEPrOCkNZ5Vg" name="A_ownedActual_templateParameterSubstitution" memberEnd="_M5hgidxmEdqEPrOCkNZ5Vg _M50bZtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bZNxmEdqEPrOCkNZ5Vg" general="_M50bUdxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bZdxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M50bZtxmEdqEPrOCkNZ5Vg" type="_M5hgd9xmEdqEPrOCkNZ5Vg" association="_M50bY9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M50bZ9xmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M50baNxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFhKVsWCEdqI1bY5Lwi8Hg" name="A_ownedTemplateSignature_classifier" memberEnd="_hFOPecWCEdqI1bY5Lwi8Hg _hFOPocWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFhKWMWCEdqI1bY5Lwi8Hg" general="_g2eBzsWCEdqI1bY5Lwi8Hg"/>
- <generalization xmi:type="uml:Generalization" xmi:id="_hFhKWcWCEdqI1bY5Lwi8Hg" general="_hFYAi8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50badxmEdqEPrOCkNZ5Vg" name="A_ownedTemplateSignature_classifier" memberEnd="_M5qqdNxmEdqEPrOCkNZ5Vg _M5qqTNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50ba9xmEdqEPrOCkNZ5Vg" general="_MtmkZNxmEdqEPrOCkNZ5Vg"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bbNxmEdqEPrOCkNZ5Vg" general="_M50bVtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFhKWsWCEdqI1bY5Lwi8Hg" name="A_extendedSignature_redefinableTemplateSignature" memberEnd="_hFOPpcWCEdqI1bY5Lwi8Hg _hFhKXMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFhKW8WCEdqI1bY5Lwi8Hg" general="_g2eB0MWCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hFhKXMWCEdqI1bY5Lwi8Hg" type="_9keOQGvdEdq4DLWZOhbdEA" association="_hFhKWsWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFhKXcWCEdqI1bY5Lwi8Hg" value="*"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFhKXsWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bbdxmEdqEPrOCkNZ5Vg" name="A_extendedSignature_redefinableTemplateSignature" memberEnd="_M5qqeNxmEdqEPrOCkNZ5Vg _M50bb9xmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bbtxmEdqEPrOCkNZ5Vg" general="_MtmkZtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M50bb9xmEdqEPrOCkNZ5Vg" type="_9keOQGvdEdq4DLWZOhbdEA" association="_M50bbdxmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M50bcNxmEdqEPrOCkNZ5Vg" value="*"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M50bcdxmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFhKX8WCEdqI1bY5Lwi8Hg" name="A_inheritedParameter_redefinableTemplateSignature" memberEnd="_hFOPqcWCEdqI1bY5Lwi8Hg _hFhKYcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFhKYMWCEdqI1bY5Lwi8Hg" general="_hFYAd8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hFhKYcWCEdqI1bY5Lwi8Hg" type="_9keOQGvdEdq4DLWZOhbdEA" redefinedProperty="_hFYAeMWCEdqI1bY5Lwi8Hg" association="_hFhKX8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bctxmEdqEPrOCkNZ5Vg" name="A_inheritedParameter_redefinableTemplateSignature" memberEnd="_M5qqfNxmEdqEPrOCkNZ5Vg _M50bdNxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bc9xmEdqEPrOCkNZ5Vg" general="_M50bQtxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M50bdNxmEdqEPrOCkNZ5Vg" type="_9keOQGvdEdq4DLWZOhbdEA" redefinedProperty="_M50bQ9xmEdqEPrOCkNZ5Vg" association="_M50bctxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFhKYsWCEdqI1bY5Lwi8Hg" name="A_templateParameter_parameteredElement" memberEnd="_hFOPj8WCEdqI1bY5Lwi8Hg _hFOPfcWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFhKY8WCEdqI1bY5Lwi8Hg" general="_hFYAiMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bddxmEdqEPrOCkNZ5Vg" name="A_templateParameter_parameteredElement" memberEnd="_M5qqUNxmEdqEPrOCkNZ5Vg _M5qqYtxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bdtxmEdqEPrOCkNZ5Vg" general="_M50bU9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFhKZMWCEdqI1bY5Lwi8Hg" name="A_nameExpression_namedElement" memberEnd="_hE7UnMWCEdqI1bY5Lwi8Hg _hFhKZsWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFhKZcWCEdqI1bY5Lwi8Hg" general="_g2eBw8WCEdqI1bY5Lwi8Hg"/>
- <ownedEnd xmi:type="uml:Property" xmi:id="_hFhKZsWCEdqI1bY5Lwi8Hg" type="_csVgUGvtEdqG6fBIPwe-mw" association="_hFhKZMWCEdqI1bY5Lwi8Hg">
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hFhKZ8WCEdqI1bY5Lwi8Hg" value="1"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hFhKaMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bd9xmEdqEPrOCkNZ5Vg" name="A_nameExpression_namedElement" memberEnd="_M5XvgtxmEdqEPrOCkNZ5Vg _M50bedxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50beNxmEdqEPrOCkNZ5Vg" general="_MtmkWdxmEdqEPrOCkNZ5Vg"/>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M50bedxmEdqEPrOCkNZ5Vg" type="_csVgUGvtEdqG6fBIPwe-mw" association="_M50bd9xmEdqEPrOCkNZ5Vg">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_M50betxmEdqEPrOCkNZ5Vg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_M50be9xmEdqEPrOCkNZ5Vg"/>
</ownedEnd>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFhKacWCEdqI1bY5Lwi8Hg" name="A_templateParameter_parameteredElement" memberEnd="_hFOPacWCEdqI1bY5Lwi8Hg _hFOPcMWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFhKasWCEdqI1bY5Lwi8Hg" general="_hFYAiMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bfNxmEdqEPrOCkNZ5Vg" name="A_templateParameter_parameteredElement" memberEnd="_M5qqQ9xmEdqEPrOCkNZ5Vg _M5hg0dxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bfdxmEdqEPrOCkNZ5Vg" general="_M50bU9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFhKa8WCEdqI1bY5Lwi8Hg" name="A_templateParameter_parameteredElement" memberEnd="_hFYAasWCEdqI1bY5Lwi8Hg _hFYAccWCEdqI1bY5Lwi8Hg">
- <generalization xmi:type="uml:Generalization" xmi:id="_hFhKbMWCEdqI1bY5Lwi8Hg" general="_hFYAiMWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M50bftxmEdqEPrOCkNZ5Vg" name="A_templateParameter_parameteredElement" memberEnd="_M5qqkdxmEdqEPrOCkNZ5Vg _M5qqitxmEdqEPrOCkNZ5Vg">
+ <generalization xmi:type="uml:Generalization" xmi:id="_M50bf9xmEdqEPrOCkNZ5Vg" general="_M50bU9xmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFhKbcWCEdqI1bY5Lwi8Hg" name="A_defaultClassifier_classifierTemplateParameter" memberEnd="_hFOPk8WCEdqI1bY5Lwi8Hg _hFhKbsWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hFhKbsWCEdqI1bY5Lwi8Hg" type="_hFOPhsWCEdqI1bY5Lwi8Hg" association="_hFhKbcWCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M59lMNxmEdqEPrOCkNZ5Vg" name="A_defaultClassifier_classifierTemplateParameter" memberEnd="_M5qqZtxmEdqEPrOCkNZ5Vg _M59lMdxmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M59lMdxmEdqEPrOCkNZ5Vg" type="_M5qqWdxmEdqEPrOCkNZ5Vg" association="_M59lMNxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_hFhKb8WCEdqI1bY5Lwi8Hg" name="A_constrainingClassifier_classifierTemplateParameter" memberEnd="_hFOPl8WCEdqI1bY5Lwi8Hg _hFhKcMWCEdqI1bY5Lwi8Hg">
- <ownedEnd xmi:type="uml:Property" xmi:id="_hFhKcMWCEdqI1bY5Lwi8Hg" type="_hFOPhsWCEdqI1bY5Lwi8Hg" association="_hFhKb8WCEdqI1bY5Lwi8Hg"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_M59lMtxmEdqEPrOCkNZ5Vg" name="A_constrainingClassifier_classifierTemplateParameter" memberEnd="_M5qqatxmEdqEPrOCkNZ5Vg _M59lM9xmEdqEPrOCkNZ5Vg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_M59lM9xmEdqEPrOCkNZ5Vg" type="_M5qqWdxmEdqEPrOCkNZ5Vg" association="_M59lMtxmEdqEPrOCkNZ5Vg"/>
</packagedElement>
<profileApplication xmi:type="uml:ProfileApplication" xmi:id="_0TBYYGvaEdq4DLWZOhbdEA">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_0TBYYWvaEdq4DLWZOhbdEA" source="http://www.eclipse.org/uml2/2.0.0/UML">
@@ -15504,117 +15172,117 @@ In addition a package can be merged with other packages.
<appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
</profileApplication>
</uml:Model>
- <Ecore:EPackage xmi:id="_T_B1MMWCEdqI1bY5Lwi8Hg" base_Package="_o8I_sGvaEdq4DLWZOhbdEA" packageName="uml" nsPrefix="uml" nsURI="http://www.eclipse.org/uml2/2.0.0/UML" basePackage="org.eclipse.uml2" prefix="UML"/>
- <Ecore:EDataType xmi:id="_T_7NEMWCEdqI1bY5Lwi8Hg" instanceClassName="boolean" base_PrimitiveType="_UdivYGvsEdqG6fBIPwe-mw"/>
- <Ecore:EDataType xmi:id="_T_7NEcWCEdqI1bY5Lwi8Hg" instanceClassName="int" base_PrimitiveType="_XqvEIGvsEdqG6fBIPwe-mw"/>
- <Ecore:EDataType xmi:id="_T_7NEsWCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.String" base_PrimitiveType="_aAyVgGvsEdqG6fBIPwe-mw"/>
- <Ecore:EDataType xmi:id="_T_7NE8WCEdqI1bY5Lwi8Hg" instanceClassName="int" base_PrimitiveType="_dRZxsGvsEdqG6fBIPwe-mw"/>
- <Ecore:EReference xmi:id="_g2eCBcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g0iIAMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2eCBsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g0iIBMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2nysMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g0r5BMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EOperation xmi:id="_g2nyscWCEdqI1bY5Lwi8Hg" base_Operation="_g0r5FcWCEdqI1bY5Lwi8Hg" operationName="getGenerals"/>
- <Ecore:EOperation xmi:id="_g2nyssWCEdqI1bY5Lwi8Hg" base_Operation="_g0r5I8WCEdqI1bY5Lwi8Hg" operationName="getInheritedMembers"/>
- <Ecore:EReference xmi:id="_g2nys8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g01DFMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2nytMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g01DGMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2nytcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g01DI8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2nytsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g01DJ8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2nyt8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g0-z88WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2nyuMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g0-0OMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2nyucWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1H95MWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2nyusWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1H96MWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EOperation xmi:id="_g2nyu8WCEdqI1bY5Lwi8Hg" base_Operation="_g1H978WCEdqI1bY5Lwi8Hg" operationName="getImportedMembers"/>
- <Ecore:EReference xmi:id="_g2nyvMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1H-IsWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2nyvcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1H-JsWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2nyvsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1Ru4MWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2nyv8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1bf4MWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g2nywMWCEdqI1bY5Lwi8Hg" isTransient="true" isUnsettable="true" base_Property="_g1bgIcWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2nywcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1bgPsWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EOperation xmi:id="_g2nywsWCEdqI1bY5Lwi8Hg" base_Operation="_g1kp0MWCEdqI1bY5Lwi8Hg" operationName="getOpposite"/>
- <Ecore:EAttribute xmi:id="_g2nyw8WCEdqI1bY5Lwi8Hg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_g1ua6cWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g2nyxMWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_g1ua7cWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g2nyxcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1ua_MWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g2nyxsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1ua_8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g2nyx8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1ubAsWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g2nyyMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1ubB8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2nyycWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1ubHMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EOperation xmi:id="_g2nyysWCEdqI1bY5Lwi8Hg" base_Operation="_g1ubN8WCEdqI1bY5Lwi8Hg" operationName="lowerBound"/>
- <Ecore:EOperation xmi:id="_g2nyy8WCEdqI1bY5Lwi8Hg" base_Operation="_g1ubPMWCEdqI1bY5Lwi8Hg" operationName="upperBound"/>
- <Ecore:EOperation xmi:id="_g2nyzMWCEdqI1bY5Lwi8Hg" base_Operation="_g1ubQcWCEdqI1bY5Lwi8Hg" operationName="getType"/>
- <Ecore:EAttribute xmi:id="_g2w8oMWCEdqI1bY5Lwi8Hg" isTransient="true" isUnsettable="true" base_Property="_g14L08WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g2w8ocWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_g14L-8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2w8osWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g14MFsWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2w8o8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g2BVwMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2w8pMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g2BVxMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2w8pcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g2BV_sWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g2w8psWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_g2BWE8WCEdqI1bY5Lwi8Hg" isID="true"/>
- <Ecore:EAttribute xmi:id="_g2w8p8WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_g2BWF8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g2w8qMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g2BWG8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g2w8qcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g2BWH8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EOperation xmi:id="_g2w8qsWCEdqI1bY5Lwi8Hg" base_Operation="_g2LGzMWCEdqI1bY5Lwi8Hg" operationName="getQualifiedName"/>
- <Ecore:EAttribute xmi:id="_g2w8q8WCEdqI1bY5Lwi8Hg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_g2LG28WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g7PM8MWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_g3XZwcWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g7PM8cWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g0-0DcWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g7PM8sWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g0-0CMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EOperation xmi:id="_g7PM88WCEdqI1bY5Lwi8Hg" base_Operation="_g3qUnMWCEdqI1bY5Lwi8Hg" operationName="getLower"/>
- <Ecore:EOperation xmi:id="_g7PM9MWCEdqI1bY5Lwi8Hg" base_Operation="_g3qUocWCEdqI1bY5Lwi8Hg" operationName="getUpper"/>
- <Ecore:EReference xmi:id="_g7PM9cWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g0r5AMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g7PM9sWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_g5AYZsWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g7PM98WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1bf-cWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g7Y98MWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g1bgJcWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EOperation xmi:id="_g7Y98cWCEdqI1bY5Lwi8Hg" base_Operation="_g6MrJcWCEdqI1bY5Lwi8Hg" operationName="getEndTypes"/>
- <Ecore:EAttribute xmi:id="_g7Y98sWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_g6pXEcWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g7r46sWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g7Y-EMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g7r468WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g7iH58WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g7r47MWCEdqI1bY5Lwi8Hg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_g7iH-sWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g7r47cWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_g7iH_sWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g71qMcWCEdqI1bY5Lwi8Hg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_g7r48cWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g71qMsWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_g7r49cWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g71qM8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g71p88WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g71qNMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g71p98WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g71qNcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g71p-8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g7-z98WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g7-z08WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g7-z-MWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g7-z28WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g7-z-cWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g7-z38WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g7-z-sWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g7-z7MWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g8Ru7MWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g8Ik6sWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g84L38WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g8ua0sWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g84L4MWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g8ua_cWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g84L4cWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g8ubAcWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g9U3wMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g9LGwsWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g9U3wcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g9LG8cWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g96tjcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g9eB0sWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g96tjsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g9eB7MWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g-0FrsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g-0FecWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g-0Fr8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g-0FgcWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g-92YMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g-0FiMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g_HAV8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g-92acWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g_HAWMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g-92bcWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EOperation xmi:id="_g_HAWcWCEdqI1bY5Lwi8Hg" base_Operation="_g-92hcWCEdqI1bY5Lwi8Hg" operationName="getRequireds"/>
- <Ecore:EOperation xmi:id="_g_HAWsWCEdqI1bY5Lwi8Hg" base_Operation="_g-92i8WCEdqI1bY5Lwi8Hg" operationName="getProvideds"/>
- <Ecore:EAttribute xmi:id="_g_HAW8WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_g-92rMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_g_HAlcWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_g_HAX8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_g_Qxj8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_g_QxXcWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EOperation xmi:id="_g_QxkMWCEdqI1bY5Lwi8Hg" base_Operation="_g_QxYcWCEdqI1bY5Lwi8Hg" operationName="getDeployedElements"/>
- <Ecore:EAttribute xmi:id="_hB8SHMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hA5wJMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_hB8SHcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hA5wJ8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_hB8SHsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hA5wKsWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_hB8SH8WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hA5wLcWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_hB8SIMWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hA5wQMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_hB8SIcWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hBpXIMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_hCGC4MWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hBzIFMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_hCY94sWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hCGC9cWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_hCY948WCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hCGDB8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_hCY95MWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hCGDH8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_hCY95cWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hCGDIsWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EOperation xmi:id="_hCY95sWCEdqI1bY5Lwi8Hg" base_Operation="_hCPM1cWCEdqI1bY5Lwi8Hg" operationName="getMetaclass"/>
- <Ecore:EAttribute xmi:id="_hCY958WCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_hCPM98WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_hCY96MWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_hCPM-8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_hCY96cWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_hCPM_8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_hCY97cWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hCPM68WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_hC1p4MWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_hC1p3MWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_hELtncWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_hD4LlsWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_hEnykcWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_hEnyg8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EAttribute xmi:id="_hEnyksWCEdqI1bY5Lwi8Hg" isUnsettable="true" base_Property="_hEnyh8WCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_hExjlsWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hEnyuMWCEdqI1bY5Lwi8Hg"/>
- <Ecore:EReference xmi:id="_hFhKccWCEdqI1bY5Lwi8Hg" isTransient="true" base_Property="_hFOPqcWCEdqI1bY5Lwi8Hg"/>
+ <Ecore:EPackage xmi:id="_krrUoNxrEdqEPrOCkNZ5Vg" base_Package="_o8I_sGvaEdq4DLWZOhbdEA" packageName="uml" nsPrefix="uml" nsURI="http://www.eclipse.org/uml2/2.0.0/UML" basePackage="org.eclipse.uml2" prefix="UML"/>
+ <Ecore:EDataType xmi:id="_krrUotxrEdqEPrOCkNZ5Vg" instanceClassName="boolean" base_PrimitiveType="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <Ecore:EDataType xmi:id="_krrUodxrEdqEPrOCkNZ5Vg" instanceClassName="int" base_PrimitiveType="_XqvEIGvsEdqG6fBIPwe-mw"/>
+ <Ecore:EDataType xmi:id="_krrUo9xrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.String" base_PrimitiveType="_aAyVgGvsEdqG6fBIPwe-mw"/>
+ <Ecore:EDataType xmi:id="_krrUpNxrEdqEPrOCkNZ5Vg" instanceClassName="int" base_PrimitiveType="_dRZxsGvsEdqG6fBIPwe-mw"/>
+ <Ecore:EReference xmi:id="_ks3ncdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_Mrz0ctxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksudj9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_Mrz0dtxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksudkNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_Mr9lcNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EOperation xmi:id="_ks3nctxrEdqEPrOCkNZ5Vg" base_Operation="_MsGvbdxmEdqEPrOCkNZ5Vg" operationName="getGenerals"/>
+ <Ecore:EOperation xmi:id="_ks3nc9xrEdqEPrOCkNZ5Vg" base_Operation="_MsGve9xmEdqEPrOCkNZ5Vg" operationName="getInheritedMembers"/>
+ <Ecore:EReference xmi:id="_krrUptxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MsGvrdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_krrUp9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MsGvsdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksRxmNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MsQgZ9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksRxmdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MsQga9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_krrUrtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MsQggtxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_kr1FrdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MsaRatxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_kr-2oNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MsaRdtxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_kr1FrNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MsaRetxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EOperation xmi:id="_kr-2odxrEdqEPrOCkNZ5Vg" base_Operation="_MsaRgdxmEdqEPrOCkNZ5Vg" operationName="getImportedMembers"/>
+ <Ecore:EReference xmi:id="_krrUsNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MsjbWdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_krrUr9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MsjbXdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_kr1FotxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_Msjbb9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_kr1FoNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MsjbrtxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksudg9xrEdqEPrOCkNZ5Vg" isTransient="true" isUnsettable="true" base_Property="_MstMg9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksudhdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MstMoNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EOperation xmi:id="_ksudhtxrEdqEPrOCkNZ5Vg" base_Operation="_MstMrNxmEdqEPrOCkNZ5Vg" operationName="getOpposite"/>
+ <Ecore:EAttribute xmi:id="_kr1FpdxrEdqEPrOCkNZ5Vg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_Ms2We9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_kr1FptxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_Ms2Wf9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksudh9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_Ms2WjtxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksudiNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_Ms2WkdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksudidxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_Ms2WlNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksuditxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_Ms2WmdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksudi9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MtAHTNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EOperation xmi:id="_ksudjNxrEdqEPrOCkNZ5Vg" base_Operation="_MtAHZ9xmEdqEPrOCkNZ5Vg" operationName="lowerBound"/>
+ <Ecore:EOperation xmi:id="_ksudjdxrEdqEPrOCkNZ5Vg" base_Operation="_MtAHbNxmEdqEPrOCkNZ5Vg" operationName="upperBound"/>
+ <Ecore:EOperation xmi:id="_ksudjtxrEdqEPrOCkNZ5Vg" base_Operation="_MtAHcdxmEdqEPrOCkNZ5Vg" operationName="getType"/>
+ <Ecore:EAttribute xmi:id="_ksa7gdxrEdqEPrOCkNZ5Vg" isTransient="true" isUnsettable="true" base_Property="_MtAHh9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_krrUqdxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_MtAHr9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ks3nddxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MtJ4U9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ks3ndtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MtJ4V9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ks3nd9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MtJ4W9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_kr1Fo9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MtJ4ldxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_kskskNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_MtTCMdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_kskskdxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_MtTCNdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksudgdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MtTCOdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksudgNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MtTCPdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EOperation xmi:id="_ksudgtxrEdqEPrOCkNZ5Vg" base_Operation="_MtTCVNxmEdqEPrOCkNZ5Vg" operationName="getQualifiedName"/>
+ <Ecore:EAttribute xmi:id="_krrUpdxrEdqEPrOCkNZ5Vg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_MtTCY9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_krrUqNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_Mu8BBdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_krrUqtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MsQgnNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_krrUq9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MsQgl9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EOperation xmi:id="_krrUrNxrEdqEPrOCkNZ5Vg" base_Operation="_MvO76NxmEdqEPrOCkNZ5Vg" operationName="getLower"/>
+ <Ecore:EOperation xmi:id="_krrUrdxrEdqEPrOCkNZ5Vg" base_Operation="_MvO77dxmEdqEPrOCkNZ5Vg" operationName="getUpper"/>
+ <Ecore:EReference xmi:id="_ks3ncNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_Mrz0etxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksRxm9xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_Mvrn5txmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksRxkNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MstMW9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksudhNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MstMh9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EOperation xmi:id="_kr1FodxrEdqEPrOCkNZ5Vg" base_Operation="_Mwk_2NxmEdqEPrOCkNZ5Vg" operationName="getEndTypes"/>
+ <Ecore:EAttribute xmi:id="_kr1FpNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_MxBrpdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksa7h9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MxxSj9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_kr1Fp9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MxxSrdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_kr1FqNxrEdqEPrOCkNZ5Vg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_MxxSwNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_kr1FqdxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_MxxSxNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_kr1FqtxrEdqEPrOCkNZ5Vg" isUnsettable="true" xmlFeatureKind="Element" base_Property="_Mx7DpNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_kr1Fq9xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_Mx7DqNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksa7g9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MyENmtxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksa7hNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MyENntxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksa7hdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MyENotxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksa7i9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MyEN7txmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksa7idxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MyEN9txmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksa7itxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MyEN-txmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksa7htxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MyN-d9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksa7gNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MyN-6dxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_kr-2p9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_Myz0VdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_kr-2otxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_Myz0gNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_kr-2o9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_My9lUNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksa7iNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MzQgVdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksksgNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MzQghNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_kr-2pNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MzaRp9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_kr-2pdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_MzaRwdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksksh9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M1DQN9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksksiNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M1DQP9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_kr-2ptxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M1DQRtxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksksgdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M1MaHdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksksgtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M1MaIdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EOperation xmi:id="_ksksg9xrEdqEPrOCkNZ5Vg" base_Operation="_M1MaOdxmEdqEPrOCkNZ5Vg" operationName="getRequireds"/>
+ <Ecore:EOperation xmi:id="_kskshNxrEdqEPrOCkNZ5Vg" base_Operation="_M1MaP9xmEdqEPrOCkNZ5Vg" operationName="getProvideds"/>
+ <Ecore:EAttribute xmi:id="_kr-2qNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_M1MaYNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksIAktxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_M1WLDNxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksIAkNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M1f799xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EOperation xmi:id="_ksIAkdxrEdqEPrOCkNZ5Vg" base_Operation="_M1f7-9xmEdqEPrOCkNZ5Vg" operationName="getDeployedElements"/>
+ <Ecore:EAttribute xmi:id="_ksksitxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M2sO1NxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksksi9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M2sO19xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksksjNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M2sO2txmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksksjdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M2sO3dxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksksjtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M2sO8NxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksIAk9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M2sPZtxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksksj9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M21ZO9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksIAlNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M3I6y9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksRxkdxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M3I63dxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksRxktxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M3SEp9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksRxk9xrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M3SEqtxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EOperation xmi:id="_ksRxlNxrEdqEPrOCkNZ5Vg" base_Operation="_M3SEt9xmEdqEPrOCkNZ5Vg" operationName="getMetaclass"/>
+ <Ecore:EAttribute xmi:id="_ksRxldxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_M3SE2dxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksRxltxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_M3SE3dxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksRxl9xrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_M3SE4dxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksRxmtxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M3SEzdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksRxnNxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_M34hntxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_ksa7gtxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_M4eXu9xmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_kskshdxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_M5E0qdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EAttribute xmi:id="_kskshtxrEdqEPrOCkNZ5Vg" isUnsettable="true" base_Property="_M5E0rdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ksksidxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M5N-ZdxmEdqEPrOCkNZ5Vg"/>
+ <Ecore:EReference xmi:id="_ks3ndNxrEdqEPrOCkNZ5Vg" isTransient="true" base_Property="_M5qqfNxmEdqEPrOCkNZ5Vg"/>
</xmi:XMI>
diff --git a/plugins/org.eclipse.uml2.uml/model/UML.uml b/plugins/org.eclipse.uml2.uml/model/UML.uml
index 87638808..4e588bab 100644
--- a/plugins/org.eclipse.uml2.uml/model/UML.uml
+++ b/plugins/org.eclipse.uml2.uml/model/UML.uml
@@ -1017,9 +1017,9 @@
<appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
</profileApplication>
</uml:Model>
- <Ecore:EPackage xmi:id="_T_B1MMWCEdqI1bY5Lwi8Hg" base_Package="_o8I_sGvaEdq4DLWZOhbdEA" packageName="uml" nsPrefix="uml" nsURI="http://www.eclipse.org/uml2/2.0.0/UML" basePackage="org.eclipse.uml2" prefix="UML"/>
- <Ecore:EDataType xmi:id="_T_7NEMWCEdqI1bY5Lwi8Hg" instanceClassName="boolean" base_PrimitiveType="_UdivYGvsEdqG6fBIPwe-mw"/>
- <Ecore:EDataType xmi:id="_T_7NEcWCEdqI1bY5Lwi8Hg" instanceClassName="int" base_PrimitiveType="_XqvEIGvsEdqG6fBIPwe-mw"/>
- <Ecore:EDataType xmi:id="_T_7NEsWCEdqI1bY5Lwi8Hg" instanceClassName="java.lang.String" base_PrimitiveType="_aAyVgGvsEdqG6fBIPwe-mw"/>
- <Ecore:EDataType xmi:id="_T_7NE8WCEdqI1bY5Lwi8Hg" instanceClassName="int" base_PrimitiveType="_dRZxsGvsEdqG6fBIPwe-mw"/>
+ <Ecore:EPackage xmi:id="_h43OwNxrEdqEPrOCkNZ5Vg" base_Package="_o8I_sGvaEdq4DLWZOhbdEA" packageName="uml" nsPrefix="uml" nsURI="http://www.eclipse.org/uml2/2.0.0/UML" basePackage="org.eclipse.uml2" prefix="UML"/>
+ <Ecore:EDataType xmi:id="_h5A_wNxrEdqEPrOCkNZ5Vg" instanceClassName="boolean" base_PrimitiveType="_UdivYGvsEdqG6fBIPwe-mw"/>
+ <Ecore:EDataType xmi:id="_h5A_wdxrEdqEPrOCkNZ5Vg" instanceClassName="int" base_PrimitiveType="_XqvEIGvsEdqG6fBIPwe-mw"/>
+ <Ecore:EDataType xmi:id="_h5A_wtxrEdqEPrOCkNZ5Vg" instanceClassName="java.lang.String" base_PrimitiveType="_aAyVgGvsEdqG6fBIPwe-mw"/>
+ <Ecore:EDataType xmi:id="_h5A_w9xrEdqEPrOCkNZ5Vg" instanceClassName="int" base_PrimitiveType="_dRZxsGvsEdqG6fBIPwe-mw"/>
</xmi:XMI>
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Actor.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Actor.java
index f03086bd..1eb55cc1 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Actor.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Actor.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: Actor.java,v 1.2 2006/04/05 13:49:57 khussey Exp $
+ * $Id: Actor.java,v 1.3 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -22,10 +22,10 @@ import org.eclipse.emf.common.util.DiagnosticChain;
* <!-- end-user-doc -->
*
* <!-- begin-model-doc -->
- * An Actor models a type of role played by an entity that interacts with the subject (e.g., by exchanging signals and data), but which is external to the subject (i.e., in the sense that an instance of an actor is not a part of the instance of its corresponding subject). Actors may represent roles played by human users, external hardware, or other subjects. Note that an actor does not necessarily represent a specific physical entity but merely a particular facet (i.e., ?role?) of some entity that is relevant to the specification of its associated use cases. Thus, a single physical instance may play the role of several different actors and, conversely, a given actor may be played by multiple different instances.
+ * An Actor models a type of role played by an entity that interacts with the subject (e.g., by exchanging signals and data), but which is external to the subject (i.e., in the sense that an instance of an actor is not a part of the instance of its corresponding subject). Actors may represent roles played by human users, external hardware, or other subjects.
+ * Note that an actor does not necessarily represent a specific physical entity but merely a particular facet (i.e., role) of some entity that is relevant to the specification of its associated use cases. Thus, a single physical instance may play the role of several different actors and, conversely, a given actor may be played by multiple different instances.
*
* Since an actor is external to the subject, it is typically defined in the same classifier or package that incorporates the subject classifier.
- *
* <!-- end-model-doc -->
*
*
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/AggregationKind.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/AggregationKind.java
index 23ac8898..56d10b5e 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/AggregationKind.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/AggregationKind.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005 IBM Corporation and others.
+ * Copyright (c) 2005, 2006 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: AggregationKind.java,v 1.1 2005/11/14 22:25:56 khussey Exp $
+ * $Id: AggregationKind.java,v 1.2 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -25,11 +25,9 @@ import org.eclipse.emf.common.util.AbstractEnumerator;
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* AggregationKind is an enumeration of the following literal values:
- * ? none Indicates that the property has no aggregation.
- * ? shared Indicates that the property has a shared aggregation.
- * ? composite Indicates that the property is aggregated compositely, i.e., the composite object has
- * responsibility for the existence and storage of the composed objects (parts).
- *
+ * - none = Indicates that the property has no aggregation.
+ * - shared = Indicates that the property has a shared aggregation.
+ * - composite = Indicates that the property is aggregated compositely, i.e., the composite object has responsibility for the existence and storage of the composed objects (parts).
* <!-- end-model-doc -->
* @see org.eclipse.uml2.uml.UMLPackage#getAggregationKind()
* @model
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/CallConcurrencyKind.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/CallConcurrencyKind.java
index d7981a3f..26b34404 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/CallConcurrencyKind.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/CallConcurrencyKind.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: CallConcurrencyKind.java,v 1.2 2006/04/05 13:49:57 khussey Exp $
+ * $Id: CallConcurrencyKind.java,v 1.3 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -25,11 +25,9 @@ import org.eclipse.emf.common.util.AbstractEnumerator;
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* CallConcurrencyKind is an enumeration with the following literals:
- * ? sequential No concurrency management mechanism is associated with the operation and, therefore, concurrency conflicts may occur. Instances that invoke a behavioral feature need to coordinate so that only one invocation to a target on any behavioral feature occurs at once.
- * ? guarded Multiple invocations of a behavioral feature may occur simultaneously to one instance, but only one is allowed to commence. The others are blocked until the performance of the first behavioral feature is complete. It is the responsibility of the system designer to ensure that deadlocks do not occur due to simultaneous blocks.
- * ? concurrent Multiple invocations of a behavioral feature may occur simultaneously to one instance and all of them may proceed concurrently.
- *
- *
+ * - sequential = No concurrency management mechanism is associated with the operation and, therefore, concurrency conflicts may occur. Instances that invoke a behavioral feature need to coordinate so that only one invocation to a target on any behavioral feature occurs at once.
+ * - guarded = Multiple invocations of a behavioral feature may occur simultaneously to one instance, but only one is allowed to commence. The others are blocked until the performance of the first behavioral feature is complete. It is the responsibility of the system designer to ensure that deadlocks do not occur due to simultaneous blocks.
+ * - concurrent = Multiple invocations of a behavioral feature may occur simultaneously to one instance and all of them may proceed concurrently.
* <!-- end-model-doc -->
* @see org.eclipse.uml2.uml.UMLPackage#getCallConcurrencyKind()
* @model
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Component.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Component.java
index e0eb26bc..ac6e52f5 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Component.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Component.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: Component.java,v 1.12 2006/04/05 13:49:57 khussey Exp $
+ * $Id: Component.java,v 1.13 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -52,7 +52,7 @@ public interface Component
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * The kind of instantiation that applies to a Component. If false, the component is instantiated as an addressable object. If true, the Component is defined at design-time, but at runtime (or execution-time) an object specified by the Component does not exist, that is, the component is instantiated indirectly, through the instantiation of its realizing classifiers or parts. Several standard stereotypes use this meta attribute, e.g. «specification, «focus», «subsystem».
+ * The kind of instantiation that applies to a Component. If false, the component is instantiated as an addressable object. If true, the Component is defined at design-time, but at runtime (or execution-time) an object specified by the Component does not exist, that is, the component is instantiated indirectly, through the instantiation of its realizing classifiers or parts. Several standard stereotypes use this meta attribute, e.g. «specification», «focus», «subsystem».
* <!-- end-model-doc -->
* @return the value of the '<em>Is Indirectly Instantiated</em>' attribute.
* @see #setIsIndirectlyInstantiated(boolean)
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ConnectorKind.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ConnectorKind.java
index c36e63e0..b503c227 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ConnectorKind.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ConnectorKind.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005 IBM Corporation and others.
+ * Copyright (c) 2005, 2006 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: ConnectorKind.java,v 1.1 2005/11/14 22:25:59 khussey Exp $
+ * $Id: ConnectorKind.java,v 1.2 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -25,9 +25,8 @@ import org.eclipse.emf.common.util.AbstractEnumerator;
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* ConnectorKind is an enumeration of the following literal values:
- * ? assembly Indicates that the connector is an assembly connector.
- * ? delegation Indicates that the connector is a delegation connector.
- *
+ * - assembly = Indicates that the connector is an assembly connector.
+ * - delegation = Indicates that the connector is a delegation connector.
* <!-- end-model-doc -->
* @see org.eclipse.uml2.uml.UMLPackage#getConnectorKind()
* @model
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/GeneralizationSet.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/GeneralizationSet.java
index 74da3917..04fab097 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/GeneralizationSet.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/GeneralizationSet.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: GeneralizationSet.java,v 1.6 2006/02/22 20:48:15 khussey Exp $
+ * $Id: GeneralizationSet.java,v 1.7 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -50,7 +50,9 @@ public interface GeneralizationSet
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * Indicates (via the associated Generalizations) whether or not the set of specific Classifiers are covering for a particular general classifier. When isCovering is true, every instance of a particular general Classifier is also an instance of at least one of its specific Classifiers for the GeneralizationSet. When isCovering is false, there are one or more instances of the particular general Classifier that are not instances of at least one of its specific Classifiers defined for the GeneralizationSet. For example, Person could have two Generalization relationships each with a different specific Classifier: Male Person and Female Person. This GeneralizationSet would be covering because every instance of Person would be an instance of Male Person or Female Person. In contrast, Person could have a three Generalization relationships involving three specific Classifiers: North American Person, Asian Person, and European Person. This GeneralizationSet would not be covering because there are instances of Person for which these three specific Classifiers do not apply. The first example, then, could be read: any Person would be specialized as either being a Male Person or a Female Person?and nothing else; the second could be read: any Person would be specialized as being North American Person, Asian Person, European Person, or something else.
+ * Indicates (via the associated Generalizations) whether or not the set of specific Classifiers are covering for a particular general classifier. When isCovering is true, every instance of a particular general Classifier is also an instance of at least one of its specific Classifiers for the GeneralizationSet. When isCovering is false, there are one or more instances of the particular general Classifier that are not instances of at least one of its specific Classifiers defined for the GeneralizationSet.
+ *
+ * For example, Person could have two Generalization relationships each with a different specific Classifier: Male Person and Female Person. This GeneralizationSet would be covering because every instance of Person would be an instance of Male Person or Female Person. In contrast, Person could have a three Generalization relationships involving three specific Classifiers: North American Person, Asian Person, and European Person. This GeneralizationSet would not be covering because there are instances of Person for which these three specific Classifiers do not apply. The first example, then, could be read: any Person would be specialized as either being a Male Person or a Female Person and nothing else; the second could be read: any Person would be specialized as being North American Person, Asian Person, European Person, or something else.
* <!-- end-model-doc -->
* @return the value of the '<em>Is Covering</em>' attribute.
* @see #setIsCovering(boolean)
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/MessageKind.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/MessageKind.java
index 1267d581..85341380 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/MessageKind.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/MessageKind.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: MessageKind.java,v 1.2 2006/04/05 13:49:57 khussey Exp $
+ * $Id: MessageKind.java,v 1.3 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -25,10 +25,10 @@ import org.eclipse.emf.common.util.AbstractEnumerator;
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* MessageKind is an enumeration of the following values:
- * - complete = sendEvent and receiveEvent are present
- * - lost = sendEvent present and receiveEvent absent
- * - found = sendEvent absent and receiveEvent present
- * - unknown = sendEvent and receiveEvent absent (should not appear)
+ * - complete = sendEvent and receiveEvent are present
+ * - lost = sendEvent present and receiveEvent absent
+ * - found = sendEvent absent and receiveEvent present
+ * - unknown = sendEvent and receiveEvent absent (should not appear)
* <!-- end-model-doc -->
* @see org.eclipse.uml2.uml.UMLPackage#getMessageKind()
* @model
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/MessageSort.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/MessageSort.java
index a03831c9..398e38e1 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/MessageSort.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/MessageSort.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: MessageSort.java,v 1.3 2006/04/05 13:49:57 khussey Exp $
+ * $Id: MessageSort.java,v 1.4 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -25,12 +25,12 @@ import org.eclipse.emf.common.util.AbstractEnumerator;
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* MessageSort is an enumeration of the following values:
- * - synchCall = the message was generated by a synchronous call to an operation
- * - asynchCall = the message was generated by an asynchronous call to an operation; i.e., a CallAction with isSynchronous= false
- * - asynchSignal = the message was generated by an asynchronous send action
- * - createMessage = the message designating the creation of another lifeline object
- * - deleteMessage = the message designating the termination of anther lifeline
- * - reply = the message is a reply message to an operation call
+ * - synchCall = the message was generated by a synchronous call to an operation
+ * - asynchCall = the message was generated by an asynchronous call to an operation; i.e., a CallAction for which isSynchronous is false
+ * - asynchSignal = the message was generated by an asynchronous send action
+ * - createMessage = the message designating the creation of another lifeline object
+ * - deleteMessage = the message designating the termination of anther lifeline
+ * - reply = the message is a reply message to an operation call
* <!-- end-model-doc -->
* @see org.eclipse.uml2.uml.UMLPackage#getMessageSort()
* @model
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/NamedElement.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/NamedElement.java
index 7df1d447..bb61249a 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/NamedElement.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/NamedElement.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: NamedElement.java,v 1.11 2006/04/05 13:49:57 khussey Exp $
+ * $Id: NamedElement.java,v 1.12 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -62,7 +62,7 @@ public interface NamedElement
* @see #unsetName()
* @see #setName(String)
* @see org.eclipse.uml2.uml.UMLPackage#getNamedElement_Name()
- * @model unsettable="true" id="true" dataType="org.eclipse.uml2.uml.String" ordered="false"
+ * @model unsettable="true" dataType="org.eclipse.uml2.uml.String" ordered="false"
* @generated
*/
String getName();
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ParameterDirectionKind.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ParameterDirectionKind.java
index cc883678..a662781c 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ParameterDirectionKind.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ParameterDirectionKind.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: ParameterDirectionKind.java,v 1.2 2006/04/05 13:49:57 khussey Exp $
+ * $Id: ParameterDirectionKind.java,v 1.3 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -25,17 +25,10 @@ import org.eclipse.emf.common.util.AbstractEnumerator;
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* ParameterDirectionKind is an enumeration of the following literal values:
- * - in Indicates that parameter values are passed into the behavioral element by the caller.
- * - inout Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.
- * - out Indicates that parameter values are passed from a behavioral element out to the caller.
- * - return Indicates that parameter values are passed as return values from a behavioral element back to the caller.
- *
- * ParameterDirectionKind is an enumeration of the following literal values:
- * ? in Indicates that parameter values are passed into the behavioral element by the caller.
- * ? inout Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.
- * ? out Indicates that parameter values are passed from a behavioral element out to the caller.
- * ? return Indicates that parameter values are passed as return values from a behavioral element back to the caller.
- *
+ * - in = Indicates that parameter values are passed into the behavioral element by the caller.
+ * - inout = Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.
+ * - out = Indicates that parameter values are passed from a behavioral element out to the caller.
+ * - return = Indicates that parameter values are passed as return values from a behavioral element back to the caller.
* <!-- end-model-doc -->
* @see org.eclipse.uml2.uml.UMLPackage#getParameterDirectionKind()
* @model
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/PseudostateKind.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/PseudostateKind.java
index c897ec7e..54b920dc 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/PseudostateKind.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/PseudostateKind.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: PseudostateKind.java,v 1.2 2006/04/05 13:49:57 khussey Exp $
+ * $Id: PseudostateKind.java,v 1.3 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -25,17 +25,16 @@ import org.eclipse.emf.common.util.AbstractEnumerator;
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* PseudoStateKind is an enumeration of the following literal values:
- * ? initial
- * ? deepHistory
- * ? shallowHistory
- * ? join
- * ? fork
- * ? junction
- * ? choice
- * ? entryPoint
- * ? exitPoint
- * ? terminate
- *
+ * - initial
+ * - deepHistory
+ * - shallowHistory
+ * - join
+ * - fork
+ * - junction
+ * - choice
+ * - entryPoint
+ * - exitPoint
+ * - terminate
* <!-- end-model-doc -->
* @see org.eclipse.uml2.uml.UMLPackage#getPseudostateKind()
* @model
@@ -120,7 +119,7 @@ public final class PseudostateKind
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * Junction vertices are semantic-free vertices that are used to chain together multiple transitions. They are used to construct compound transition paths between states. For example, a junction can be used to converge multiple incoming transitions into a single outgoing transition representing a shared transition path (this is known as an merge). Conversely, they can be used to split an incoming transition into multiple outgoing transition segments with different guard conditions. This realizes a static conditional branch. (In the latter case, outgoing transitions whose guard conditions evaluate to false are disabled. A predefined guard denoted ?else? may be defined for at most one outgoing transition. This transition is enabled if all the guards labeling the other transitions are false.) Static conditional branches are distinct from dynamic conditional branches that are realized by choice vertices (described below).
+ * Junction vertices are semantic-free vertices that are used to chain together multiple transitions. They are used to construct compound transition paths between states. For example, a junction can be used to converge multiple incoming transitions into a single outgoing transition representing a shared transition path (this is known as an merge). Conversely, they can be used to split an incoming transition into multiple outgoing transition segments with different guard conditions. This realizes a static conditional branch. (In the latter case, outgoing transitions whose guard conditions evaluate to false are disabled. A predefined guard denoted 'else' may be defined for at most one outgoing transition. This transition is enabled if all the guards labeling the other transitions are false.) Static conditional branches are distinct from dynamic conditional branches that are realized by choice vertices (described below).
* <!-- end-model-doc -->
* @see #JUNCTION_LITERAL
* @model name="junction"
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ReadLinkAction.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ReadLinkAction.java
index 88c42025..e96b4280 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ReadLinkAction.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/ReadLinkAction.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: ReadLinkAction.java,v 1.4 2006/04/05 13:49:57 khussey Exp $
+ * $Id: ReadLinkAction.java,v 1.5 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -22,7 +22,7 @@ import org.eclipse.emf.common.util.DiagnosticChain;
* <!-- end-user-doc -->
*
* <!-- begin-model-doc -->
- * This action navigates an association towards one end, which is the end that does not have an input pin to take its object (the ?open? end). The objects put on the result output pin are the ones participating in the association at the open end, conforming to the specified qualifiers, in order if the end is ordered. The semantics is undefined for reading a link that violates the navigability or visibility of the open end.
+ * This action navigates an association towards one end, which is the end that does not have an input pin to take its object (the open end). The objects put on the result output pin are the ones participating in the association at the open end, conforming to the specified qualifiers, in order if the end is ordered. The semantics is undefined for reading a link that violates the navigability or visibility of the open end.
* <!-- end-model-doc -->
*
* <p>
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Transition.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Transition.java
index 5fd5f474..6427ac37 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Transition.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/Transition.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: Transition.java,v 1.10 2006/04/05 13:49:57 khussey Exp $
+ * $Id: Transition.java,v 1.11 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -387,7 +387,7 @@ public interface Transition
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype ?create?.
+ * An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype «create».
* self.source.oclIsKindOf(Pseudostate) implies
* (self.source.oclAsType(Pseudostate).kind = #initial) implies
* (self.source.container = self.stateMachine.top) implies
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/TransitionKind.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/TransitionKind.java
index 31159c0c..0f84682f 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/TransitionKind.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/TransitionKind.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005 IBM Corporation and others.
+ * Copyright (c) 2005, 2006 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: TransitionKind.java,v 1.1 2005/11/14 22:25:56 khussey Exp $
+ * $Id: TransitionKind.java,v 1.2 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml;
@@ -25,10 +25,9 @@ import org.eclipse.emf.common.util.AbstractEnumerator;
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* TransitionKind is an enumeration of the following literal values:
- * ? external
- * ? internal
- * ? local
- *
+ * - external
+ * - internal
+ * - local
* kind=#local implies owner.source.isComposite
* kind=#external implies owner.source.isComposite
* <!-- end-model-doc -->
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/impl/uml.ecore b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/impl/uml.ecore
index f34aeaf2..c0ab6057 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/impl/uml.ecore
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/impl/uml.ecore
@@ -10,7 +10,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="Boolean" instanceClassName="boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Boolean is an instance of PrimitiveType. In the metamodel, Boolean defines an enumeration that denotes a logical condition. Its enumeration literals are:&#xA;&#xA; - true: The Boolean condition is satisfied.&#xA;&#xA; - false: The Boolean condition is not satisfied.&#xA;&#xA;&#xA;&#xA;It is used for Boolean attribute and Boolean expressions in the metamodel, such as OCL expression."/>
+ <details key="documentation" value="Boolean is an instance of PrimitiveType. In the metamodel, Boolean defines an enumeration that denotes a logical condition. Its enumeration literals are:&#xD;&#xA; - true = The Boolean condition is satisfied.&#xD;&#xA; - false = The Boolean condition is not satisfied.&#xD;&#xA;&#xD;&#xA;It is used for Boolean attribute and Boolean expressions in the metamodel, such as OCL expression."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="String" instanceClassName="java.lang.String">
@@ -186,7 +186,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Package" eSuperTypes="#//Namespace #//PackageableElement #//TemplateableElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A package is a namespace for its members, and may contain other packages. Only packageable elements can be owned members of a package. By virtue of being a namespace, a package can import either individual members of other packages, or all the members of other packages. In addition a package can be merged with other packages.&#xD;&#xA;A package is a namespace for its members, and may contain other packages. Only packageable elements can be owned members of a package. By virtue of being a namespace, a package can import either individual members of other packages, or all the members of other packages.&#xA;&#xA;In addition a package can be merged with other packages.&#xA;&#xA;&#xD;&#xA;A Package can have one or more ProfileApplications to indicate which profiles have been applied. Because a profile is a package, it is possible to apply a profile not only to packages, but also to profiles.&#xD;&#xA;Package specializes TemplateableElement and PackageableElement specializes ParameterableElement to specify that a package can be used as a template and a PackageableElement as a template parameter."/>
+ <details key="documentation" value="A package is a namespace for its members, and may contain other packages. Only packageable elements can be owned members of a package. By virtue of being a namespace, a package can import either individual members of other packages, or all the members of other packages. In addition a package can be merged with other packages.&#xD;&#xA;A package is a namespace for its members, and may contain other packages. Only packageable elements can be owned members of a package. By virtue of being a namespace, a package can import either individual members of other packages, or all the members of other packages.&#xD;&#xA;In addition a package can be merged with other packages.&#xD;&#xA;&#xD;&#xA;A Package can have one or more ProfileApplications to indicate which profiles have been applied. Because a profile is a package, it is possible to apply a profile not only to packages, but also to profiles.&#xD;&#xA;Package specializes TemplateableElement and PackageableElement specializes ParameterableElement to specify that a package can be used as a template and a PackageableElement as a template parameter."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="mustBeOwned" ordered="false" lowerBound="1"
@@ -331,7 +331,7 @@
</eAnnotations>
<eOperations name="has_no_qualified_name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If there is no name, or one of the containing namespaces has no name, there is no qualified name.&#xD;&#xA;(self.name->isEmpty() or self.allNamespaces()->select(ns | ns.name->isEmpty())->notEmpty())&#xA;&#xA; implies self.qualifiedName->isEmpty()"/>
+ <details key="documentation" value="If there is no name, or one of the containing namespaces has no name, there is no qualified name.&#xD;&#xA;(self.name->isEmpty() or self.allNamespaces()->select(ns | ns.name->isEmpty())->notEmpty())&#xD;&#xA; implies self.qualifiedName->isEmpty()"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -400,7 +400,7 @@
</eAnnotations>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" eType="#//String"
- unsettable="true" iD="true">
+ unsettable="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The name of the NamedElement."/>
</eAnnotations>
@@ -441,7 +441,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="VisibilityKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="VisibilityKind is an enumeration of the following literal values:&#xA;&#xA; - public&#xA;&#xA; - private&#xA;&#xA; - protected&#xA;&#xA; - package"/>
+ <details key="documentation" value="VisibilityKind is an enumeration of the following literal values:&#xD;&#xA; - public&#xD;&#xA; - private&#xD;&#xA; - protected&#xD;&#xA; - package"/>
</eAnnotations>
<eLiterals name="public">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -522,7 +522,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Namespace" abstract="true" eSuperTypes="#//NamedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A namespace has the ability to import either individial members or all members of a package, thereby making it possible to refer to those named elements without qualification in the importing namespace. In the case of conflicts, it is necessary to use qualified names or aliases to disambiguate the referenced elements.&#xD;&#xA;A namespace is a named element that can own other named elements. Each named element may be owned by at most one namespace. A namespace provides a means for identifying named elements by name. Named elements can be identified by name in a namespace either by being directly owned by the namespace or by being introduced into the namespace by other means e.g. importing or inheriting. Namespace is an abstract metaclass.&#xA;&#xA;&#xA;&#xA;A namespace can own constraints. The constraint does not necessarily apply to the namespace itself, but may also apply to elements in the namespace.&#xA;&#xA;&#xA;&#xA;A namespace has the ability to import either individual members or all members of a package, thereby making it possible to refer to those named elements without qualification in the importing namespace. In the case of conflicts, it is necessary to use qualified names or aliases to disambiguate the referenced elements.&#xA;&#xA;&#xA;&#xA;&#xD;&#xA;A namespace is a named element that can own other named elements. Each named element may be owned by at most one namespace. A namespace provides a means for identifying named elements by name. Named elements can be identified by name in a namespace either by being directly owned by the namespace or by being introduced into the namespace by other means e.g. importing or inheriting. Namespace is an abstract metaclass."/>
+ <details key="documentation" value="A namespace has the ability to import either individial members or all members of a package, thereby making it possible to refer to those named elements without qualification in the importing namespace. In the case of conflicts, it is necessary to use qualified names or aliases to disambiguate the referenced elements.&#xD;&#xA;A namespace is a named element that can own other named elements. Each named element may be owned by at most one namespace. A namespace provides a means for identifying named elements by name. Named elements can be identified by name in a namespace either by being directly owned by the namespace or by being introduced into the namespace by other means e.g. importing or inheriting. Namespace is an abstract metaclass.&#xD;&#xA;&#xD;&#xA;A namespace can own constraints. The constraint does not necessarily apply to the namespace itself, but may also apply to elements in the namespace.&#xD;&#xA;&#xD;&#xA;A namespace has the ability to import either individual members or all members of a package, thereby making it possible to refer to those named elements without qualification in the importing namespace. In the case of conflicts, it is necessary to use qualified names or aliases to disambiguate the referenced elements.&#xD;&#xA;&#xD;&#xA;&#xD;&#xA;A namespace is a named element that can own other named elements. Each named element may be owned by at most one namespace. A namespace provides a means for identifying named elements by name. Named elements can be identified by name in a namespace either by being directly owned by the namespace or by being introduced into the namespace by other means e.g. importing or inheriting. Namespace is an abstract metaclass."/>
</eAnnotations>
<eOperations name="members_distinguishable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -718,7 +718,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Constraint" eSuperTypes="#//PackageableElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.&#xA;&#xA;Constraint is a condition (a Boolean expression) that restricts the extension of the associated element beyond what is imposed by the other language constructs applied to the element. Constraint contains an optional name, although they are commonly unnamed.&#xD;&#xA;Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.&#xA;&#xA;Constraint is a condition (a Boolean expression) that restricts the extension of the associated element beyond what is imposed by the other language constructs applied to that element. Constraint contains an optional name, although they are commonly unnamed."/>
+ <details key="documentation" value="Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.&#xD;&#xA;Constraint is a condition (a Boolean expression) that restricts the extension of the associated element beyond what is imposed by the other language constructs applied to the element. Constraint contains an optional name, although they are commonly unnamed.&#xD;&#xA;Constraint contains a ValueSpecification that specifies additional semantics for one or more elements. Certain kinds of constraints (such as an association &quot;xor&quot; constraint) are predefined in UML, others may be user-defined. A user-defined Constraint is described using a specified language, whose syntax and interpretation is a tool responsibility. One predefined language for writing constraints is OCL. In some situations, a programming language such as Java may be appropriate for expressing a constraint. In other situations natural language may be used.&#xD;&#xA;Constraint is a condition (a Boolean expression) that restricts the extension of the associated element beyond what is imposed by the other language constructs applied to that element. Constraint contains an optional name, although they are commonly unnamed."/>
</eAnnotations>
<eOperations name="not_apply_to_self" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -764,7 +764,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="specification" ordered="false"
lowerBound="1" eType="#//ValueSpecification" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A condition that must be true when evaluated in order for the constraint to be satisfied.&#xA;&#xA;&#xD;&#xA;A condition that must be true when evaluated in order for the constraint to be satisfied."/>
+ <details key="documentation" value="A condition that must be true when evaluated in order for the constraint to be satisfied.&#xD;&#xA;&#xD;&#xA;A condition that must be true when evaluated in order for the constraint to be satisfied."/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Element/ownedElement"/>
</eStructuralFeatures>
@@ -785,7 +785,7 @@
<contents xsi:type="ecore:EOperation" name="isCompatibleWith" ordered="false"
lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for ValueSpecification, the type must be conformant with the type of the specified parameterable element.&#xA;&#xA;&#xD;&#xA;result = p->oclIsKindOf(self.oclType) and self.type.conformsTo(p.oclAsType(TypedElement).type)"/>
+ <details key="documentation" value="The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for ValueSpecification, the type must be conformant with the type of the specified parameterable element.&#xD;&#xA;&#xD;&#xA;result = p->oclIsKindOf(self.oclType) and self.type.conformsTo(p.oclAsType(TypedElement).type)"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -845,7 +845,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TypedElement" abstract="true" eSuperTypes="#//NamedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A typed element is an element that has a type that serves as a constraint on the range of values the element can represent. Typed element is an abstract metaclass.&#xD;&#xA;A typed element is an element that has a type that serves as a constraint on the range of values the element can represent.&#xA;&#xA;Typed element is an abstract metaclass.&#xA;&#xA;"/>
+ <details key="documentation" value="A typed element is an element that has a type that serves as a constraint on the range of values the element can represent. Typed element is an abstract metaclass.&#xD;&#xA;A typed element is an element that has a type that serves as a constraint on the range of values the element can represent.&#xD;&#xA;Typed element is an abstract metaclass.&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="type" ordered="false" eType="#//Type">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -890,7 +890,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Association" eSuperTypes="#//Classifier #//Relationship">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An association specifies a semantic relationship that can occur between typed instances. It has at least two ends represented by properties, each of which is connected to the type of the end. More than one end of an association may have the same type.&#xA;&#xA;&#xA;&#xA;An end property of an association that is owned by an end class or that is a navigable owned end of the association indicates that the association is navigable from the opposite ends, otherwise the association is not navigable from the opposite ends."/>
+ <details key="documentation" value="An association specifies a semantic relationship that can occur between typed instances. It has at least two ends represented by properties, each of which is connected to the type of the end. More than one end of an association may have the same type.&#xD;&#xA;&#xD;&#xA;An end property of an association that is owned by an end class or that is a navigable owned end of the association indicates that the association is navigable from the opposite ends, otherwise the association is not navigable from the opposite ends."/>
</eAnnotations>
<eOperations name="specialized_end_number" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -967,7 +967,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Classifier" abstract="true" eSuperTypes="#//Namespace #//RedefinableElement #//Type #//TemplateableElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A classifier is a type. It can specify a generalization hierarchy by referencing its general classifiers. A classifier is also a namespace whose members can include features. Classifier is an abstract metaclass.&#xD;&#xA;Classifier is extended with the capability to own collaboration uses. These collaboration uses link a collaboration with the classifier to give a description of the workings of the classifier.&#xD;&#xA;Extends a classifier with the capability to own use cases. Although the owning classifier typically represents the subject to which the owned use cases apply, this is not necessarily the case. In principle, the same use case can be applied to multiple subjects, as identified by the subject association role of a UseCase.&#xD;&#xA;A classifier is a namespace whose members can include features. Classifier is an abstract metaclass.&#xA;&#xA;A classifier is a type and can own generalizations, thereby making it possible to define generalization relationships to other classifiers. A classifier can specify a generalization hierarchy by referencing its general classifiers.&#xA;&#xA;A classifier is a redefinable element, meaning that it is possible to redefine nested classifiers.&#xA;&#xA;&#xD;&#xA;A classifier can be parameterized, exposed as a formal template parameter, and specified as an actual parameter in a binding of a template."/>
+ <details key="documentation" value="A classifier is a type. It can specify a generalization hierarchy by referencing its general classifiers. A classifier is also a namespace whose members can include features. Classifier is an abstract metaclass.&#xD;&#xA;Classifier is extended with the capability to own collaboration uses. These collaboration uses link a collaboration with the classifier to give a description of the workings of the classifier.&#xD;&#xA;Extends a classifier with the capability to own use cases. Although the owning classifier typically represents the subject to which the owned use cases apply, this is not necessarily the case. In principle, the same use case can be applied to multiple subjects, as identified by the subject association role of a UseCase.&#xD;&#xA;A classifier is a namespace whose members can include features. Classifier is an abstract metaclass.&#xD;&#xA;A classifier is a type and can own generalizations, thereby making it possible to define generalization relationships to other classifiers. A classifier can specify a generalization hierarchy by referencing its general classifiers.&#xD;&#xA;A classifier is a redefinable element, meaning that it is possible to redefine nested classifiers.&#xD;&#xA;&#xD;&#xA;A classifier can be parameterized, exposed as a formal template parameter, and specified as an actual parameter in a binding of a template."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="isTemplate" ordered="false" lowerBound="1"
@@ -1129,7 +1129,7 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isAbstract" ordered="false"
lowerBound="1" eType="#//Boolean" defaultValueLiteral="false">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If true, the Classifier does not provide a complete declaration and can typically not be instantiated. An abstract classifier is intended to be used by other classifiers e.g. as the target of general metarelationships or generalization relationships.&#xA;&#xA;"/>
+ <details key="documentation" value="If true, the Classifier does not provide a complete declaration and can typically not be instantiated. An abstract classifier is intended to be used by other classifiers e.g. as the target of general metarelationships or generalization relationships.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="generalization" ordered="false"
@@ -1436,7 +1436,7 @@
<eClassifiers xsi:type="ecore:EClass" name="ParameterableElement" abstract="true"
eSuperTypes="#//Element">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A ParameterableElement can be referenced by a TemplateParameter when defining a formal template parameter for a template. A ParameterableElement can be referenced by a TemplateParameterSubstitution when used as an actual parameter in a binding of a template.&#xA;&#xA;ParameterableElement is an abstract metaclass.&#xA;&#xA;"/>
+ <details key="documentation" value="A ParameterableElement can be referenced by a TemplateParameter when defining a formal template parameter for a template. A ParameterableElement can be referenced by a TemplateParameterSubstitution when used as an actual parameter in a binding of a template.&#xD;&#xA;ParameterableElement is an abstract metaclass.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="isCompatibleWith" ordered="false" lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -1509,7 +1509,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Generalization" eSuperTypes="#//DirectedRelationship">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.&#xA;&#xA;A generalization can be designated as being a member of a particular generalization set.&#xA;&#xA;&#xD;&#xA;A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.&#xA;&#xA;&#xA;&#xA;"/>
+ <details key="documentation" value="A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.&#xD;&#xA;A generalization can be designated as being a member of a particular generalization set.&#xD;&#xA;&#xD;&#xA;A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.&#xD;&#xA;&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="generalization_same_classifier" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -1566,7 +1566,7 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isCovering" ordered="false"
lowerBound="1" eType="#//Boolean" defaultValueLiteral="false">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Indicates (via the associated Generalizations) whether or not the set of specific Classifiers are covering for a particular general classifier. When isCovering is true, every instance of a particular general Classifier is also an instance of at least one of its specific Classifiers for the GeneralizationSet. When isCovering is false, there are one or more instances of the particular general Classifier that are not instances of at least one of its specific Classifiers defined for the GeneralizationSet. For example, Person could have two Generalization relationships each with a different specific Classifier: Male Person and Female Person. This GeneralizationSet would be covering because every instance of Person would be an instance of Male Person or Female Person. In contrast, Person could have a three Generalization relationships involving three specific Classifiers: North American Person, Asian Person, and European Person. This GeneralizationSet would not be covering because there are instances of Person for which these three specific Classifiers do not apply. The first example, then, could be read: any Person would be specialized as either being a Male Person or a Female Person—and nothing else; the second could be read: any Person would be specialized as being North American Person, Asian Person, European Person, or something else."/>
+ <details key="documentation" value="Indicates (via the associated Generalizations) whether or not the set of specific Classifiers are covering for a particular general classifier. When isCovering is true, every instance of a particular general Classifier is also an instance of at least one of its specific Classifiers for the GeneralizationSet. When isCovering is false, there are one or more instances of the particular general Classifier that are not instances of at least one of its specific Classifiers defined for the GeneralizationSet.&#xD;&#xA;&#xD;&#xA;For example, Person could have two Generalization relationships each with a different specific Classifier: Male Person and Female Person. This GeneralizationSet would be covering because every instance of Person would be an instance of Male Person or Female Person. In contrast, Person could have a three Generalization relationships involving three specific Classifiers: North American Person, Asian Person, and European Person. This GeneralizationSet would not be covering because there are instances of Person for which these three specific Classifiers do not apply. The first example, then, could be read: any Person would be specialized as either being a Male Person or a Female Person and nothing else; the second could be read: any Person would be specialized as being North American Person, Asian Person, European Person, or something else."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isDisjoint" ordered="false"
@@ -1639,7 +1639,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OpaqueExpression" eSuperTypes="#//ValueSpecification">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An opaque expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xD;&#xA;An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xA;&#xA;One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.&#xA;&#xA;&#xD;&#xA;Provides a mechanism for precisely defining the behavior of an opaque expression. An opaque expression is defined by a behavior restricted to return one result."/>
+ <details key="documentation" value="An opaque expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xD;&#xA;An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xD;&#xA;One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.&#xD;&#xA;&#xD;&#xA;Provides a mechanism for precisely defining the behavior of an opaque expression. An opaque expression is defined by a behavior restricted to return one result."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="stringValue" ordered="false" lowerBound="1"
@@ -1656,14 +1656,14 @@
</eOperations>
<eOperations name="only_return_result_parameters" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The behavior may only have return result parameters.&#xD;&#xA;self.behavior.notEmpty() implies&#xA;&#xA; self.behavior.ownedParameters->select(p | p.direction&lt;>#return)->isEmpty()"/>
+ <details key="documentation" value="The behavior may only have return result parameters.&#xD;&#xA;self.behavior.notEmpty() implies&#xD;&#xA; self.behavior.ownedParameters->select(p | p.direction&lt;>#return)->isEmpty()"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
</eOperations>
<eOperations name="one_return_result_parameter" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The behavior must have exactly one return result parameter.&#xD;&#xA;self.behavior.notEmpty() implies&#xA;&#xA; self.behavior.ownedParameter->select(p | p.direction=#return)->size() = 1"/>
+ <details key="documentation" value="The behavior must have exactly one return result parameter.&#xD;&#xA;self.behavior.notEmpty() implies&#xD;&#xA; self.behavior.ownedParameter->select(p | p.direction=#return)->size() = 1"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -1713,7 +1713,7 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="language" upperBound="-1"
eType="#//String" unsettable="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the language. If languages are unspecified, it might be implicit from the expression body or the context. Languages are matched to body strings by order.&#xD;&#xA;Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the languages. If the languages are unspecified, they might be implicit from the expression body or the context. Languages are matched to body strings by order.&#xA;&#xA;"/>
+ <details key="documentation" value="Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the language. If languages are unspecified, it might be implicit from the expression body or the context. Languages are matched to body strings by order.&#xD;&#xA;Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the languages. If the languages are unspecified, they might be implicit from the expression body or the context. Languages are matched to body strings by order.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="result" ordered="false"
@@ -1986,7 +1986,7 @@
<eClassifiers xsi:type="ecore:EClass" name="ConnectableElement" abstract="true"
eSuperTypes="#//TypedElement #//ParameterableElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A ConnectableElement is an abstract metaclass representing a set of instances that play roles of a classifier. Connectable elements may be joined by attached connectors and specify configurations of linked instances to be created within an instance of the containing classifier.&#xD;&#xA;ConnectableElement is the connectable element of a ConnectableElementTemplateParameter.&#xA;&#xA;The ConnectableElements attached as role to each ConnectorEnd owned by a Connector must be roles of the classifier that owned the Connector, or they must be ports of such roles. &#xA;&#xA;"/>
+ <details key="documentation" value="A ConnectableElement is an abstract metaclass representing a set of instances that play roles of a classifier. Connectable elements may be joined by attached connectors and specify configurations of linked instances to be created within an instance of the containing classifier.&#xD;&#xA;ConnectableElement is the connectable element of a ConnectableElementTemplateParameter.&#xD;&#xA;The ConnectableElements attached as role to each ConnectorEnd owned by a Connector must be roles of the classifier that owned the Connector, or they must be ports of such roles. &#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EReference" name="templateParameter" ordered="false"
@@ -2040,7 +2040,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="definingEnd" ordered="false"
eType="#//Property" changeable="false" volatile="true" transient="true" derived="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A derived association referencing the corresponding association end on the association which types the connector owing this connector end. This association is derived by selecting the association end at the same place in the ordering of association ends as this connector end.&#xA;&#xA;"/>
+ <details key="documentation" value="A derived association referencing the corresponding association end on the association which types the connector owing this connector end. This association is derived by selecting the association end at the same place in the ordering of association ends as this connector end.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="partWithPort" ordered="false"
@@ -2052,13 +2052,13 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="role" ordered="false" lowerBound="1"
eType="#//ConnectableElement" eOpposite="#//ConnectableElement/end">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The connectable element attached at this connector end. When an instance of the containing classifier is created, a link may (depending on the multiplicities) be created to an instance of the classifier that types this connectable element.&#xA;&#xA;"/>
+ <details key="documentation" value="The connectable element attached at this connector end. When an instance of the containing classifier is created, a link may (depending on the multiplicities) be created to an instance of the classifier that types this connectable element.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Property" eSuperTypes="#//StructuralFeature #//ConnectableElement #//DeploymentTarget #//TemplateableElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association.&#xA;&#xA;&#xA;&#xA;Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.&#xD;&#xA;A property is a structural feature.&#xA;&#xA;A property related to a classifier by ownedAttribute represents an attribute, and it may also represent an association end. It relates an instance of the class to a value or collection of values of the type of the attribute.&#xA;&#xA;A property related to an Association by memberEnd or its specializations represents an end of the association. The type of property is the type of the end of the association.&#xA;&#xA;&#xD;&#xA;A property represents a set of instances that are owned by a containing classifier instance.&#xD;&#xA;In the metamodel, Property is a specialization of DeploymentTarget.&#xD;&#xA;Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association. Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.&#xA;&#xA;&#xD;&#xA;Property specializes ParameterableElement to specify that a property can be exposed as a formal template parameter, and provided as an actual parameter in a binding of a template."/>
+ <details key="documentation" value="Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association.&#xD;&#xA;&#xD;&#xA;Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.&#xD;&#xA;A property is a structural feature.&#xD;&#xA;A property related to a classifier by ownedAttribute represents an attribute, and it may also represent an association end. It relates an instance of the class to a value or collection of values of the type of the attribute.&#xD;&#xA;A property related to an Association by memberEnd or its specializations represents an end of the association. The type of property is the type of the end of the association.&#xD;&#xA;&#xD;&#xA;A property represents a set of instances that are owned by a containing classifier instance.&#xD;&#xA;In the metamodel, Property is a specialization of DeploymentTarget.&#xD;&#xA;Property represents a declared state of one or more instances in terms of a named relationship to a value or values. When a property is an attribute of a classifier, the value or values are related to the instance of the classifier by being held in slots of the instance. When a property is an association end, the value or values are related to the instance or instances at the other end(s) of the association. Property is indirectly a subclass of Constructs::TypedElement. The range of valid values represented by the property can be controlled by setting the property's type.&#xD;&#xA;&#xD;&#xA;Property specializes ParameterableElement to specify that a property can be exposed as a formal template parameter, and provided as an actual parameter in a binding of a template."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="isConsistentWith" ordered="false"
@@ -2075,7 +2075,7 @@
<contents xsi:type="ecore:EOperation" name="isCompatibleWith" ordered="false"
lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for properties, the type must be conformant with the type of the specified parameterable element.&#xA;&#xA;&#xD;&#xA;result = p->oclIsKindOf(self.oclType) and self.type.conformsTo(p.oclAsType(TypedElement).type)"/>
+ <details key="documentation" value="The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. In addition, for properties, the type must be conformant with the type of the specified parameterable element.&#xD;&#xA;&#xD;&#xA;result = p->oclIsKindOf(self.oclType) and self.type.conformsTo(p.oclAsType(TypedElement).type)"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -2107,7 +2107,7 @@
</eOperations>
<eOperations name="redefined_property_inherited" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A redefined property must be inherited from a more general classifier containing the redefining property.&#xD;&#xA;if (redefinedProperty->notEmpty()) then&#xA;&#xA; (redefinitionContext->notEmpty() and&#xA;&#xA; redefinedProperty->forAll(rp|&#xA;&#xA; ((redefinitionContext->collect(fc|&#xA;&#xA; fc.allParents()))->asSet())->collect(c| c.allFeatures())->asSet()->includes(rp))"/>
+ <details key="documentation" value="A redefined property must be inherited from a more general classifier containing the redefining property.&#xD;&#xA;if (redefinedProperty->notEmpty()) then&#xD;&#xA; (redefinitionContext->notEmpty() and&#xD;&#xA; redefinedProperty->forAll(rp|&#xD;&#xA; ((redefinitionContext->collect(fc|&#xD;&#xA; fc.allParents()))->asSet())->collect(c| c.allFeatures())->asSet()->includes(rp))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -2156,7 +2156,7 @@
</eOperations>
<eOperations name="binding_to_attribute" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A binding of a property template parameter representing an attribute must be to an attribute.&#xD;&#xA;(isAttribute(self) and (templateParameterSubstitution->notEmpty())&#xA;&#xA; implies (templateParameterSubstitution->forAll(ts | isAttribute(ts.formal)))"/>
+ <details key="documentation" value="A binding of a property template parameter representing an attribute must be to an attribute.&#xD;&#xA;(isAttribute(self) and (templateParameterSubstitution->notEmpty())&#xD;&#xA; implies (templateParameterSubstitution->forAll(ts | isAttribute(ts.formal)))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -2241,7 +2241,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="datatype" ordered="false"
eType="#//DataType" eOpposite="#//DataType/ownedAttribute">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The DataType that owns this Operation.&#xD;&#xA;The DataType that owns this Property.&#xA;&#xA;"/>
+ <details key="documentation" value="The DataType that owns this Operation.&#xD;&#xA;The DataType that owns this Property.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//NamedElement/namespace #//Feature/featuringClassifier"/>
</eStructuralFeatures>
@@ -2394,7 +2394,7 @@
</eAnnotations>
<eOperations name="deployed_elements" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The deployedElements of a DeploymentTarget that are involved in a Deployment that has an associated Deployment-Specification is a kind of Component (i.e. the configured components).&#xD;&#xA;self.deployment->forAll (d | d.location.deployedElements->forAll (de |&#xA;&#xA; de.oclIsKindOf(Component)))"/>
+ <details key="documentation" value="The deployedElements of a DeploymentTarget that are involved in a Deployment that has an associated Deployment-Specification is a kind of Component (i.e. the configured components).&#xD;&#xA;self.deployment->forAll (d | d.location.deployedElements->forAll (de |&#xD;&#xA; de.oclIsKindOf(Component)))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -2450,7 +2450,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="nestedArtifact" ordered="false"
upperBound="-1" eType="#//Artifact" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The Artifacts that are defined (nested) within the Artifact.&#xA;&#xA;The association is a specialization of the ownedMember association from Namespace to NamedElement.&#xA;&#xA;"/>
+ <details key="documentation" value="The Artifacts that are defined (nested) within the Artifact.&#xD;&#xA;The association is a specialization of the ownedMember association from Namespace to NamedElement.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Namespace/ownedMember"/>
</eStructuralFeatures>
@@ -2471,7 +2471,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedAttribute" upperBound="-1"
eType="#//Property" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The attributes or association ends defined for the Artifact.&#xA;&#xA;The association is a specialization of the ownedMember association.&#xA;&#xA;"/>
+ <details key="documentation" value="The attributes or association ends defined for the Artifact.&#xD;&#xA;The association is a specialization of the ownedMember association.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Classifier/attribute #//Namespace/ownedMember"/>
</eStructuralFeatures>
@@ -2490,7 +2490,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Operation" eSuperTypes="#//BehavioralFeature #//ParameterableElement #//TemplateableElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An operation is owned by a class and may be invoked in the context of objects that are instances of that class. It is a typed element and a multiplicity element.&#xD;&#xA;An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xA;&#xA;One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.&#xA;&#xA;&#xD;&#xA;An operation is a behavioral feature of a classifier that specifies the name, type, parameters, and constraints for invoking an associated behavior.&#xD;&#xA;An operation may invoke both the execution of method behaviors as well as other behavioral responses.&#xD;&#xA;Operation specializes TemplateableElement in order to support specification of template operations and bound operations."/>
+ <details key="documentation" value="An operation is owned by a class and may be invoked in the context of objects that are instances of that class. It is a typed element and a multiplicity element.&#xD;&#xA;An expression contains language-specific text strings used to describe a value or values, and an optional specification of the languages.&#xD;&#xA;One predefined language for specifying expressions is OCL. Natural language or programming languages may also be used.&#xD;&#xA;&#xD;&#xA;An operation is a behavioral feature of a classifier that specifies the name, type, parameters, and constraints for invoking an associated behavior.&#xD;&#xA;An operation may invoke both the execution of method behaviors as well as other behavioral responses.&#xD;&#xA;Operation specializes TemplateableElement in order to support specification of template operations and bound operations."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="isConsistentWith" ordered="false"
@@ -2568,7 +2568,7 @@
</eOperations>
<eOperations name="isUnique" ordered="false" lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.&#xD;&#xA;If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.&#xA;&#xA;&#xD;&#xA;result = if returnResult()->notEmpty() then returnResult()->any().isUnique else true endif"/>
+ <details key="documentation" value="If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.&#xD;&#xA;If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.&#xD;&#xA;&#xD;&#xA;result = if returnResult()->notEmpty() then returnResult()->any().isUnique else true endif"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -2576,7 +2576,7 @@
</eOperations>
<eOperations name="lowerBound" ordered="false" lowerBound="1" eType="#//Integer">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.&#xD;&#xA;If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.&#xA;&#xA;&#xD;&#xA;result = if returnResult()->notEmpty() then returnResult()->any().lower else Set{} endif"/>
+ <details key="documentation" value="If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.&#xD;&#xA;If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.&#xD;&#xA;&#xD;&#xA;result = if returnResult()->notEmpty() then returnResult()->any().lower else Set{} endif"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -2584,7 +2584,7 @@
</eOperations>
<eOperations name="upperBound" ordered="false" lowerBound="1" eType="#//UnlimitedNatural">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.&#xD;&#xA;If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.&#xA;&#xA;&#xD;&#xA;result = if returnResult()->notEmpty() then returnResult()->any().upper else Set{} endif"/>
+ <details key="documentation" value="If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.&#xD;&#xA;If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.&#xD;&#xA;&#xD;&#xA;result = if returnResult()->notEmpty() then returnResult()->any().upper else Set{} endif"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -2698,7 +2698,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BehavioralFeature" abstract="true" eSuperTypes="#//Namespace #//Feature">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A behavioral feature is a feature of a classifier that specifies an aspect of the behavior of its instances. BehavioralFeature is an abstract metaclass specializing Feature and Namespace. Kinds of behavioral aspects are modeled by subclasses of BehavioralFeature.&#xD;&#xA;A behavioral feature specifies that an instance of a classifier will respond to a designated request by invoking a behavior.&#xA;&#xA;BehavioralFeature is an abstract metaclass specializing Feature and Namespace. Kinds of behavioral aspects are modeled by subclasses of BehavioralFeature.&#xA;&#xA;&#xD;&#xA;A behavioral feature is implemented (realized) by a behavior. A behavioral feature specifies that a classifier will respond to a designated request by invoking its implementing method.&#xD;&#xA;The concept of BehavioralFeature is extended to own ParameterSets."/>
+ <details key="documentation" value="A behavioral feature is a feature of a classifier that specifies an aspect of the behavior of its instances. BehavioralFeature is an abstract metaclass specializing Feature and Namespace. Kinds of behavioral aspects are modeled by subclasses of BehavioralFeature.&#xD;&#xA;A behavioral feature specifies that an instance of a classifier will respond to a designated request by invoking a behavior.&#xD;&#xA;BehavioralFeature is an abstract metaclass specializing Feature and Namespace. Kinds of behavioral aspects are modeled by subclasses of BehavioralFeature.&#xD;&#xA;&#xD;&#xA;A behavioral feature is implemented (realized) by a behavior. A behavioral feature specifies that a classifier will respond to a designated request by invoking its implementing method.&#xD;&#xA;The concept of BehavioralFeature is extended to own ParameterSets."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="isDistinguishableFrom" ordered="false"
@@ -2759,7 +2759,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Behavior" abstract="true" eSuperTypes="#//Class">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Behavior is a specification of how its context classifier changes state over time. This specification may be either a definition of possible behavior execution or emergent behavior, or a selective illustration of an interesting subset of possible executions. The latter form is typically used for capturing examples, such as a trace of a particular execution.&#xA;&#xA;&#xA;&#xA;A classifier behavior is always a definition of behavior and not an illustration. It describes the sequence of state changes an instance of a classifier may undergo in the course of its lifetime. Its precise semantics depends on the kind of classifier. For example, the classifier behavior of a collaboration represents emergent behavior of all the parts, whereas the classifier behavior of a class is just the behavior of instances of the class separated from the behaviors of any of its parts.&#xA;&#xA;When a behavior is associated as the method of a behavioral feature, it defines the implementation of that feature; i.e., the computation that generates the effects of the behavioral feature.&#xA;&#xA;&#xA;&#xA;As a classifier, a behavior can be specialized. Instantiating a behavior is referred to as &quot;invoking&quot; the behavior, an instantiated behavior is also called a behavior &quot;execution.&quot; A behavior may be invoked directly or its invocation may be the result of invoking the behavioral feature that specifies this behavior. A behavior can also be instantiated as an object in virtue of it being a class. The specification of a behavior can take a number of forms, as described in the subclasses of Behavior. Behavior is an abstract metaclass factoring out the commonalities of these different specification mechanisms.&#xA;&#xA;&#xA;&#xA;When a behavior is invoked, its execution receives a set of input values that are used to affect the course of execution and as a result of its execution it produces a set of output values which are returned, as specified by its parameters. The observable effects of a behavior execution may include changes of values of various objects involved in the execution, the creation and destruction of objects, generation of communications between objects, as well as an explicit set of output values.&#xA;&#xA;&#xD;&#xA;The concept of Behavior is extended to own ParameterSets."/>
+ <details key="documentation" value="Behavior is a specification of how its context classifier changes state over time. This specification may be either a definition of possible behavior execution or emergent behavior, or a selective illustration of an interesting subset of possible executions. The latter form is typically used for capturing examples, such as a trace of a particular execution.&#xD;&#xA;&#xD;&#xA;A classifier behavior is always a definition of behavior and not an illustration. It describes the sequence of state changes an instance of a classifier may undergo in the course of its lifetime. Its precise semantics depends on the kind of classifier. For example, the classifier behavior of a collaboration represents emergent behavior of all the parts, whereas the classifier behavior of a class is just the behavior of instances of the class separated from the behaviors of any of its parts.&#xD;&#xA;When a behavior is associated as the method of a behavioral feature, it defines the implementation of that feature; i.e., the computation that generates the effects of the behavioral feature.&#xD;&#xA;&#xD;&#xA;As a classifier, a behavior can be specialized. Instantiating a behavior is referred to as &quot;invoking&quot; the behavior, an instantiated behavior is also called a behavior &quot;execution.&quot; A behavior may be invoked directly or its invocation may be the result of invoking the behavioral feature that specifies this behavior. A behavior can also be instantiated as an object in virtue of it being a class. The specification of a behavior can take a number of forms, as described in the subclasses of Behavior. Behavior is an abstract metaclass factoring out the commonalities of these different specification mechanisms.&#xD;&#xA;&#xD;&#xA;When a behavior is invoked, its execution receives a set of input values that are used to affect the course of execution and as a result of its execution it produces a set of output values which are returned, as specified by its parameters. The observable effects of a behavior execution may include changes of values of various objects involved in the execution, the creation and destruction of objects, generation of communications between objects, as well as an explicit set of output values.&#xD;&#xA;&#xD;&#xA;The concept of Behavior is extended to own ParameterSets."/>
</eAnnotations>
<eOperations name="parameters_match" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -2806,7 +2806,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedParameter" upperBound="-1"
eType="#//Parameter" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="References a list of parameters to the behavior which describes the order and type of arguments that can be given when the behavior is invoked and of the values which will be returned when the behavior completes its execution.&#xA;&#xA;"/>
+ <details key="documentation" value="References a list of parameters to the behavior which describes the order and type of arguments that can be given when the behavior is invoked and of the values which will be returned when the behavior completes its execution.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Namespace/ownedMember"/>
</eStructuralFeatures>
@@ -2987,7 +2987,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Interface" eSuperTypes="#//Classifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An interface is a kind of classifier that represents a declaration of a set of coherent public features and obligations. An interface specifies a contract; any instance of a classifier that realizes the interface must fulfill that contract. The obligations that may be associated with an interface are in the form of various kinds of constraints (such as pre- and post-conditions) or protocol specifications, which may impose ordering restrictions on interactions through the interface.&#xA;&#xA;Since interfaces are declarations, they are not instantiable. Instead, an interface specification is implemented by an instance of an instantiable classifier, which means that the instantiable classifier presents a public facade that conforms to the interface specification. Note that a given classifier may implement more than one interface and that an interface may be implemented by a number of different classifiers.&#xA;&#xA;&#xD;&#xA;Adds the capability for interfaces to include receptions (in addition to operations).&#xD;&#xA;Since an interface specifies conformance characteristics, it does not own detailed behavior specifications. Instead, interfaces may own a protocol state machine that specifies event sequences and pre/post conditions for the operations and receptions described by the interface."/>
+ <details key="documentation" value="An interface is a kind of classifier that represents a declaration of a set of coherent public features and obligations. An interface specifies a contract; any instance of a classifier that realizes the interface must fulfill that contract. The obligations that may be associated with an interface are in the form of various kinds of constraints (such as pre- and post-conditions) or protocol specifications, which may impose ordering restrictions on interactions through the interface.&#xD;&#xA;Since interfaces are declarations, they are not instantiable. Instead, an interface specification is implemented by an instance of an instantiable classifier, which means that the instantiable classifier presents a public facade that conforms to the interface specification. Note that a given classifier may implement more than one interface and that an interface may be implemented by a number of different classifiers.&#xD;&#xA;&#xD;&#xA;Adds the capability for interfaces to include receptions (in addition to operations).&#xD;&#xA;Since an interface specifies conformance characteristics, it does not own detailed behavior specifications. Instead, interfaces may own a protocol state machine that specifies event sequences and pre/post conditions for the operations and receptions described by the interface."/>
</eAnnotations>
<eOperations name="visibility" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -3139,7 +3139,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="StateMachine" eSuperTypes="#//Behavior">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A state machine owns one or more regions, which in turn own vertices and transitions.&#xA;&#xA;The behaviored classifier context owning a state machine defines which signal and call triggers are defined for the state machine, and which attributes and operations are available in activities of the state machine. Signal triggers and call triggers for the state machine are defined according to the receptions and operations of this classifier.&#xA;&#xA;&#xA;&#xA;As a kind of behavior, a state machine may have an associated behavioral feature (specification) and be the method of this behavioral feature. In this case the state machine specifies the behavior of this behavioral feature. The parameters of the state machine in this case match the parameters of the behavioral feature and provide the means for accessing (within the state machine) the behavioral feature parameters.&#xA;&#xA;&#xA;&#xA;A state machine without a context classifier may use triggers that are independent of receptions or operations of a classifier, i.e. either just signal triggers or call triggers based upon operation template parameters of the (parameterized) statemachine.&#xA;&#xA;"/>
+ <details key="documentation" value="A state machine owns one or more regions, which in turn own vertices and transitions.&#xD;&#xA;The behaviored classifier context owning a state machine defines which signal and call triggers are defined for the state machine, and which attributes and operations are available in activities of the state machine. Signal triggers and call triggers for the state machine are defined according to the receptions and operations of this classifier.&#xD;&#xA;&#xD;&#xA;As a kind of behavior, a state machine may have an associated behavioral feature (specification) and be the method of this behavioral feature. In this case the state machine specifies the behavior of this behavioral feature. The parameters of the state machine in this case match the parameters of the behavioral feature and provide the means for accessing (within the state machine) the behavioral feature parameters.&#xD;&#xA;&#xD;&#xA;A state machine without a context classifier may use triggers that are independent of receptions or operations of a classifier, i.e. either just signal triggers or call triggers based upon operation template parameters of the (parameterized) statemachine.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="isConsistentWith" ordered="false"
@@ -3194,7 +3194,7 @@
</eOperations>
<eOperations name="ancestor" ordered="false" lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The query ancestor(s1, s2) checks whether s2 is an ancestor state of state s1. context StateMachine::ancestor (s1 : State, s2 : State) : Boolean&#xA;&#xA;&#xD;&#xA;result = if (s2 = s1) then&#xA;true&#xA;else if (s1.container->isEmpty) then&#xA;true&#xA;else if (s2.container->isEmpty) then&#xA;false&#xA;else (ancestor (s1, s2.container))"/>
+ <details key="documentation" value="The query ancestor(s1, s2) checks whether s2 is an ancestor state of state s1. context StateMachine::ancestor (s1 : State, s2 : State) : Boolean&#xD;&#xA;&#xD;&#xA;result = if (s2 = s1) then&#xA;true&#xA;else if (s1.container->isEmpty) then&#xA;true&#xA;else if (s2.container->isEmpty) then&#xA;false&#xA;else (ancestor (s1, s2.container))"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -3405,7 +3405,7 @@
<contents xsi:type="ecore:EOperation" name="isConsistentWith" ordered="false"
lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The query isConsistentWith() specifies that a redefining transition is consistent with a redefined transition provided that the redefining transition has the following relation to the redefined transition: A redefining transition redefines all properties of the corresponding redefined transition, except the source state and the trigger.&#xD;&#xA;result = (redefinee.oclIsKindOf(Transition) and&#xA;&#xA; let trans: Transition = redefinee.oclAsType(Transition) in&#xA;&#xA; (source() = trans.source() and trigger() = tran.trigger())&#xD;&#xA;redefinee.isRedefinitionContextValid(self)"/>
+ <details key="documentation" value="The query isConsistentWith() specifies that a redefining transition is consistent with a redefined transition provided that the redefining transition has the following relation to the redefined transition: A redefining transition redefines all properties of the corresponding redefined transition, except the source state and the trigger.&#xD;&#xA;result = (redefinee.oclIsKindOf(Transition) and&#xD;&#xA; let trans: Transition = redefinee.oclAsType(Transition) in&#xD;&#xA; (source() = trans.source() and trigger() = tran.trigger())&#xD;&#xA;redefinee.isRedefinitionContextValid(self)"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -3459,14 +3459,14 @@
</eOperations>
<eOperations name="initial_transition" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype “create”.&#xD;&#xA;self.source.oclIsKindOf(Pseudostate) implies&#xA;(self.source.oclAsType(Pseudostate).kind = #initial) implies&#xA;(self.source.container = self.stateMachine.top) implies&#xA;((self.trigger->isEmpty) or&#xA;(self.trigger.stereotype.name = 'create'))&#xA;"/>
+ <details key="documentation" value="An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype «create».&#xD;&#xA;self.source.oclIsKindOf(Pseudostate) implies&#xA;(self.source.oclAsType(Pseudostate).kind = #initial) implies&#xA;(self.source.container = self.stateMachine.top) implies&#xA;((self.trigger->isEmpty) or&#xA;(self.trigger.stereotype.name = 'create'))&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
</eOperations>
<eOperations name="signatures_compatible" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="In case of more than one trigger, the signatures of these must be compatible in case the parameters of the signal are assigned to local variables/attributes.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="In case of more than one trigger, the signatures of these must be compatible in case the parameters of the signal are assigned to local variables/attributes.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -3542,7 +3542,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="TransitionKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="TransitionKind is an enumeration of the following literal values:&#xA;• external&#xA;• internal&#xA;• local&#xA;&#xD;&#xA;kind=#local implies owner.source.isComposite&#xD;&#xA;kind=#external implies owner.source.isComposite"/>
+ <details key="documentation" value="TransitionKind is an enumeration of the following literal values:&#xD;&#xA; - external&#xD;&#xA; - internal&#xD;&#xA; - local&#xD;&#xA;kind=#local implies owner.source.isComposite&#xD;&#xA;kind=#external implies owner.source.isComposite"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="state_is_local state_is_external"/>
@@ -3587,7 +3587,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Port" eSuperTypes="#//Property">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Ports represent interaction points between a classifier and its environment. The interfaces associated with a port specify the nature of the interactions that may occur over a port. The required interfaces of a port characterize the requests which may be made from the classifier to its environment through this port. The provided interfaces of a port characterize requests to the classifier that its environment may make through this port.&#xA;&#xA;&#xA;&#xA;A port has the ability to specify that any requests arriving at this port are handled by the behavior of the instance of the owning classifier, rather than being forwarded to any contained instances, if any.&#xA;&#xA;&#xD;&#xA;Port is defined as a specialization of the general Port, adding an association to a protocol state machine."/>
+ <details key="documentation" value="Ports represent interaction points between a classifier and its environment. The interfaces associated with a port specify the nature of the interactions that may occur over a port. The required interfaces of a port characterize the requests which may be made from the classifier to its environment through this port. The provided interfaces of a port characterize requests to the classifier that its environment may make through this port.&#xD;&#xA;&#xD;&#xA;A port has the ability to specify that any requests arriving at this port are handled by the behavior of the instance of the owning classifier, rather than being forwarded to any contained instances, if any.&#xD;&#xA;&#xD;&#xA;Port is defined as a specialization of the general Port, adding an association to a protocol state machine."/>
</eAnnotations>
<eOperations name="required_interfaces" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -3649,7 +3649,7 @@
upperBound="-1" eType="#//Interface" changeable="false" volatile="true" transient="true"
derived="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="References the interfaces specifying the set of operations and receptions which the classifier offers to its environment, and which it will handle either directly or by forwarding it to a part of its internal structure. This association is derived from the interfaces realized by the type of the port or by the type of the port, if the port was typed by an interface.&#xA;&#xA;"/>
+ <details key="documentation" value="References the interfaces specifying the set of operations and receptions which the classifier offers to its environment, and which it will handle either directly or by forwarding it to a part of its internal structure. This association is derived from the interfaces realized by the type of the port or by the type of the port, if the port was typed by an interface.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="protocol" ordered="false"
@@ -3661,7 +3661,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="State" eSuperTypes="#//Namespace #//RedefinableElement #//Vertex">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A state models a situation during which some (usually implicit) invariant condition holds. The invariant may represent a static situation such as an object waiting for some external event to occur. However, it can also model dynamic conditions such as the process of performing some behavior (i.e., the model element under consideration enters the state when the behavior commences and leaves it as soon as the behavior is completed). The following kinds of states are distinguished:&#xA;&#xA;o Simple state,&#xA;&#xA;o composite state, and&#xA;&#xA;o submachine state.&#xA;&#xA;A composite state is either a simple composite state (with just one region) or an orthogonal state (with more than one region).&#xA;&#xA;&#xA;&#xA;Simple state&#xA;&#xA;A simple state is a state that does not have substates, i.e. it has no regions and it has no submachine state machine.&#xA;&#xA;&#xA;&#xA;Composite state&#xA;&#xA;A composite state either contains one region or is decomposed into two or more orthogonal regions. Each region has a set of mutually exclusive disjoint subvertices and a set of transitions. A given state may only be decomposed in one of these two ways. &#xA;&#xA;Any state enclosed within a region of a composite state is called a substate of that composite state. It is called a direct substate when it is not contained by any other state; otherwise it is referred to as a indirect substate. &#xA;&#xA;Each region of a composite state may have an initial pseudostate and a final state. A transition to the enclosing state represents a transition to the initial pseudostate in each region. A newly-created object takes it's topmost default transitions, originating from the topmost initial pseudostates of each region.&#xA;&#xA;&#xA;&#xA;A transition to a final state represents the completion of behavior in the enclosing region. Completion of behavior in all orthogonal regions represents completion of behavior by the enclosing state and triggers a completion event on the enclosing state. Completion of the topmost regions of an object corresponds to its termination.&#xA;&#xA;&#xA;&#xA;An entry pseudostate is used to join an external transition terminating on that entry point to an internal transition emanating from that entry point. An exit pseudostate is used to join an internal transition terminating on that exit point to an external transition emanating from that exit point. The main purpose of such entry and exit points is to execute the state entry and exit actions respectively in between the actions that are associated with the joined transitions.&#xA;&#xA;&#xA;&#xA;Semantic variation point (default entry rule)&#xA;&#xA;If a transition terminates on an enclosing state and the enclosed regions do not have an initial pseudostate, the interpretation of this situation is a semantic variation point. In some interpretations, this is considered an ill-formed model. That is, in those cases the initial pseudostate is mandatory. &#xA;&#xA;An alternative interpretation allows this situation and it means that, when such a transition is taken, the state machine stays in the composite state, without entering any of the regions or their substates.&#xA;&#xA;&#xA;&#xA;Submachine state&#xA;&#xA;A submachine state specifies the insertion of the specification of a submachine state machine. The state machine that contains the submachine state is called the containing state machine. The same state machine may be a submachine more than once in the context of a single containing state machine.&#xA;&#xA;&#xA;&#xA;A submachine state is semantically equivalent to a composite state. The regions of the submachine state machine are the regions of the composite state. The entry, exit and behavior actions, and internal transitions, are defined as part of the state. Submachine state is a decomposition mechanism that allows factoring of common behaviors and their reuse.&#xA;&#xA;Transitions in the containing state machine can have entry/exit points of the inserted state machine as targets/sources.&#xA;&#xA;&#xD;&#xA;The states of protocol state machines are exposed to the users of their context classifiers. A protocol state represents an exposed stable situation of its context classifier: when an instance of the classifier is not processing any operation, users of this instance can always know its state configuration."/>
+ <details key="documentation" value="A state models a situation during which some (usually implicit) invariant condition holds. The invariant may represent a static situation such as an object waiting for some external event to occur. However, it can also model dynamic conditions such as the process of performing some behavior (i.e., the model element under consideration enters the state when the behavior commences and leaves it as soon as the behavior is completed). The following kinds of states are distinguished:&#xD;&#xA;o Simple state,&#xD;&#xA;o composite state, and&#xD;&#xA;o submachine state.&#xD;&#xA;A composite state is either a simple composite state (with just one region) or an orthogonal state (with more than one region).&#xD;&#xA;&#xD;&#xA;Simple state&#xD;&#xA;A simple state is a state that does not have substates, i.e. it has no regions and it has no submachine state machine.&#xD;&#xA;&#xD;&#xA;Composite state&#xD;&#xA;A composite state either contains one region or is decomposed into two or more orthogonal regions. Each region has a set of mutually exclusive disjoint subvertices and a set of transitions. A given state may only be decomposed in one of these two ways. &#xD;&#xA;Any state enclosed within a region of a composite state is called a substate of that composite state. It is called a direct substate when it is not contained by any other state; otherwise it is referred to as a indirect substate. &#xD;&#xA;Each region of a composite state may have an initial pseudostate and a final state. A transition to the enclosing state represents a transition to the initial pseudostate in each region. A newly-created object takes it's topmost default transitions, originating from the topmost initial pseudostates of each region.&#xD;&#xA;&#xD;&#xA;A transition to a final state represents the completion of behavior in the enclosing region. Completion of behavior in all orthogonal regions represents completion of behavior by the enclosing state and triggers a completion event on the enclosing state. Completion of the topmost regions of an object corresponds to its termination.&#xD;&#xA;&#xD;&#xA;An entry pseudostate is used to join an external transition terminating on that entry point to an internal transition emanating from that entry point. An exit pseudostate is used to join an internal transition terminating on that exit point to an external transition emanating from that exit point. The main purpose of such entry and exit points is to execute the state entry and exit actions respectively in between the actions that are associated with the joined transitions.&#xD;&#xA;&#xD;&#xA;Semantic variation point (default entry rule)&#xD;&#xA;If a transition terminates on an enclosing state and the enclosed regions do not have an initial pseudostate, the interpretation of this situation is a semantic variation point. In some interpretations, this is considered an ill-formed model. That is, in those cases the initial pseudostate is mandatory. &#xD;&#xA;An alternative interpretation allows this situation and it means that, when such a transition is taken, the state machine stays in the composite state, without entering any of the regions or their substates.&#xD;&#xA;&#xD;&#xA;Submachine state&#xD;&#xA;A submachine state specifies the insertion of the specification of a submachine state machine. The state machine that contains the submachine state is called the containing state machine. The same state machine may be a submachine more than once in the context of a single containing state machine.&#xD;&#xA;&#xD;&#xA;A submachine state is semantically equivalent to a composite state. The regions of the submachine state machine are the regions of the composite state. The entry, exit and behavior actions, and internal transitions, are defined as part of the state. Submachine state is a decomposition mechanism that allows factoring of common behaviors and their reuse.&#xD;&#xA;Transitions in the containing state machine can have entry/exit points of the inserted state machine as targets/sources.&#xD;&#xA;&#xD;&#xA;The states of protocol state machines are exposed to the users of their context classifiers. A protocol state represents an exposed stable situation of its context classifier: when an instance of the classifier is not processing any operation, users of this instance can always know its state configuration."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="isConsistentWith" ordered="false"
@@ -3703,7 +3703,7 @@
</eOperations>
<eOperations name="destinations_or_sources_of_transitions" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The connection point references used as destinations/sources of transitions associated with a submachine state must be defined as entry/exit points in the submachine state machine.&#xD;&#xA;self.isSubmachineState implies (self.connection->forAll (cp |&#xA;&#xA;cp.entry->forAll (p | p.statemachine = self.submachine) and&#xA;&#xA;cp.exit->forAll (p | p.statemachine = self.submachine)))"/>
+ <details key="documentation" value="The connection point references used as destinations/sources of transitions associated with a submachine state must be defined as entry/exit points in the submachine state machine.&#xD;&#xA;self.isSubmachineState implies (self.connection->forAll (cp |&#xD;&#xA;cp.entry->forAll (p | p.statemachine = self.submachine) and&#xD;&#xA;cp.exit->forAll (p | p.statemachine = self.submachine)))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -3838,14 +3838,14 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="stateInvariant" ordered="false"
eType="#//Constraint" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Specifies conditions that are always true when this state is the current state. In protocol state machines, state invariants are additional conditions to the preconditions of the outgoing transitions, and to the postcondition of the incoming transitions.&#xA;&#xA;"/>
+ <details key="documentation" value="Specifies conditions that are always true when this state is the current state. In protocol state machines, state invariants are additional conditions to the preconditions of the outgoing transitions, and to the postcondition of the incoming transitions.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Element/ownedElement"/>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="entry" ordered="false"
eType="#//Behavior" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An optional behavior that is executed whenever this state is entered regardless of the transition taken to reach the state. If defined, entry actions are always executed to completion prior to any internal behavior or transitions performed within the state.&#xA;&#xA;"/>
+ <details key="documentation" value="An optional behavior that is executed whenever this state is entered regardless of the transition taken to reach the state. If defined, entry actions are always executed to completion prior to any internal behavior or transitions performed within the state.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Element/ownedElement"/>
</eStructuralFeatures>
@@ -3866,7 +3866,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="deferrableTrigger" ordered="false"
upperBound="-1" eType="#//Trigger" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A list of triggers that are candidates to be retained by the state machine if they trigger no transitions out of the state (not consumed). A deferred trigger is retained until the state machine reaches a state configuration where it is no longer deferred.&#xA;&#xA;"/>
+ <details key="documentation" value="A list of triggers that are candidates to be retained by the state machine if they trigger no transitions out of the state (not consumed). A deferred trigger is retained until the state machine reaches a state configuration where it is no longer deferred.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="region" ordered="false"
@@ -3977,7 +3977,7 @@
</eOperations>
<eOperations name="outgoing_from_initial" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The outgoing transition from and initial vertex may have a behavior, but not a trigger or a guard.&#xD;&#xA;(self.kind = #initial) implies (self.outgoing.guard->isEmpty()&#xA;&#xA; and self.outgoing.trigger->isEmpty())"/>
+ <details key="documentation" value="The outgoing transition from and initial vertex may have a behavior, but not a trigger or a guard.&#xD;&#xA;(self.kind = #initial) implies (self.outgoing.guard->isEmpty()&#xD;&#xA; and self.outgoing.trigger->isEmpty())"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -4005,7 +4005,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="PseudostateKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="PseudoStateKind is an enumeration of the following literal values:&#xA;• initial&#xA;• deepHistory&#xA;• shallowHistory&#xA;• join&#xA;• fork&#xA;• junction&#xA;• choice&#xA;• entryPoint&#xA;• exitPoint&#xA;• terminate&#xA;"/>
+ <details key="documentation" value="PseudoStateKind is an enumeration of the following literal values:&#xD;&#xA; - initial&#xD;&#xA; - deepHistory&#xD;&#xA; - shallowHistory&#xD;&#xA; - join&#xD;&#xA; - fork&#xD;&#xA; - junction&#xD;&#xA; - choice&#xD;&#xA; - entryPoint&#xD;&#xA; - exitPoint&#xD;&#xA; - terminate"/>
</eAnnotations>
<eLiterals name="initial">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4029,12 +4029,12 @@
</eLiterals>
<eLiterals name="fork" value="4">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Fork vertices serve to split an incoming transition into two or more transitions terminating on orthogonal target vertices&#xA;&#xA;(i.e. vertices in different regions of a composite state). The segments outgoing from a fork vertex must not have guards or triggers."/>
+ <details key="documentation" value="Fork vertices serve to split an incoming transition into two or more transitions terminating on orthogonal target vertices&#xD;&#xA;(i.e. vertices in different regions of a composite state). The segments outgoing from a fork vertex must not have guards or triggers."/>
</eAnnotations>
</eLiterals>
<eLiterals name="junction" value="5">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Junction vertices are semantic-free vertices that are used to chain together multiple transitions. They are used to construct compound transition paths between states. For example, a junction can be used to converge multiple incoming transitions into a single outgoing transition representing a shared transition path (this is known as an merge). Conversely, they can be used to split an incoming transition into multiple outgoing transition segments with different guard conditions. This realizes a static conditional branch. (In the latter case, outgoing transitions whose guard conditions evaluate to false are disabled. A predefined guard denoted “else” may be defined for at most one outgoing transition. This transition is enabled if all the guards labeling the other transitions are false.) Static conditional branches are distinct from dynamic conditional branches that are realized by choice vertices (described below)."/>
+ <details key="documentation" value="Junction vertices are semantic-free vertices that are used to chain together multiple transitions. They are used to construct compound transition paths between states. For example, a junction can be used to converge multiple incoming transitions into a single outgoing transition representing a shared transition path (this is known as an merge). Conversely, they can be used to split an incoming transition into multiple outgoing transition segments with different guard conditions. This realizes a static conditional branch. (In the latter case, outgoing transitions whose guard conditions evaluate to false are disabled. A predefined guard denoted 'else' may be defined for at most one outgoing transition. This transition is enabled if all the guards labeling the other transitions are false.) Static conditional branches are distinct from dynamic conditional branches that are realized by choice vertices (described below)."/>
</eAnnotations>
</eLiterals>
<eLiterals name="choice" value="6">
@@ -4060,7 +4060,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ProtocolConformance" eSuperTypes="#//DirectedRelationship">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Protocol state machines can be redefined into more specific protocol state machines, or into behavioral state machines.&#xA;&#xA;&#xA;&#xA;Protocol conformance declares that the specific protocol state machine specifies a protocol that conforms to the general state machine one, or that the specific behavioral state machine abide by the protocol of the general protocol state machine.&#xA;&#xA;&#xA;&#xA;A protocol state machine is owned by a classifier. The classifiers owning a general state machine and an associated specific state machine are generally also connected by a generalization or a realization link.&#xA;&#xA;"/>
+ <details key="documentation" value="Protocol state machines can be redefined into more specific protocol state machines, or into behavioral state machines.&#xD;&#xA;&#xD;&#xA;Protocol conformance declares that the specific protocol state machine specifies a protocol that conforms to the general state machine one, or that the specific behavioral state machine abide by the protocol of the general protocol state machine.&#xD;&#xA;&#xD;&#xA;A protocol state machine is owned by a classifier. The classifiers owning a general state machine and an associated specific state machine are generally also connected by a generalization or a realization link.&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="generalMachine" ordered="false"
lowerBound="1" eType="#//ProtocolStateMachine">
@@ -4205,7 +4205,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="redefinedConnector" ordered="false"
upperBound="-1" eType="#//Connector">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A connector may be redefined when its containing classifier is specialized. The redefining connector may have a type that specializes the type of the redefined connector.&#xA;&#xA;The types of the connector ends of the redefining connector may specialize the types of the connector ends of the redefined connector. The properties of the connector ends of the redefining connector may be replaced."/>
+ <details key="documentation" value="A connector may be redefined when its containing classifier is specialized. The redefining connector may have a type that specializes the type of the redefined connector.&#xD;&#xA;The types of the connector ends of the redefining connector may specialize the types of the connector ends of the redefined connector. The properties of the connector ends of the redefining connector may be replaced."/>
</eAnnotations>
<eAnnotations source="subsets" references="#//RedefinableElement/redefinedElement"/>
</eStructuralFeatures>
@@ -4231,7 +4231,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="ConnectorKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="ConnectorKind is an enumeration of the following literal values:&#xA;• assembly Indicates that the connector is an assembly connector.&#xA;• delegation Indicates that the connector is a delegation connector.&#xA;"/>
+ <details key="documentation" value="ConnectorKind is an enumeration of the following literal values:&#xD;&#xA; - assembly = Indicates that the connector is an assembly connector.&#xD;&#xA; - delegation = Indicates that the connector is a delegation connector."/>
</eAnnotations>
<eLiterals name="assembly">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4328,7 +4328,7 @@
<contents xsi:type="ecore:EOperation" name="lowerBound" ordered="false" lowerBound="1"
eType="#//Integer">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The query lowerBound() returns the lower bound of the multiplicity as an Integer. This is a redefinition of the default&#xA;&#xA;lower bound, which normally, for MultiplicityElements, evaluates to 1 if empty.&#xD;&#xA;result = lowerBound = if lowerValue->isEmpty() then 0 else lowerValue->IntegerValue() endif"/>
+ <details key="documentation" value="The query lowerBound() returns the lower bound of the multiplicity as an Integer. This is a redefinition of the default&#xD;&#xA;lower bound, which normally, for MultiplicityElements, evaluates to 1 if empty.&#xD;&#xA;result = lowerBound = if lowerValue->isEmpty() then 0 else lowerValue->IntegerValue() endif"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -4428,24 +4428,24 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="format" ordered="false"
eType="#//String" unsettable="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This indicates the format of the content - which is how the string content should be interpreted. The following values are reserved: SVG, GIF, PNG, JPG, WMF, EMF, BMP.&#xA;&#xA;&#xA;&#xA;In addition the prefix 'MIME: ' is also reserved. This option can be used as an alternative to express the reserved values above, for example &quot;SVG&quot; could instead be expressed as &quot;MIME: image/svg+xml&quot;."/>
+ <details key="documentation" value="This indicates the format of the content - which is how the string content should be interpreted. The following values are reserved: SVG, GIF, PNG, JPG, WMF, EMF, BMP.&#xD;&#xA;&#xD;&#xA;In addition the prefix 'MIME: ' is also reserved. This option can be used as an alternative to express the reserved values above, for example &quot;SVG&quot; could instead be expressed as &quot;MIME: image/svg+xml&quot;."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Profile" eSuperTypes="#//Package">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A Profile is a kind of Package that extends a reference metamodel. The primary extension construct is the Stereotype, which are defined as part of Profiles.&#xA;&#xA;&#xA;&#xA;A profile introduces several constraints, or restrictions, on ordinary metamodeling through the use of the metaclasses defined in this package.&#xA;&#xA;&#xA;&#xA;A profile is a restricted form of a metamodel that must always be related to a reference metamodel, such as UML, as described below. A profile cannot be used without its reference metamodel, and defines a limited capability to extendmetaclasses of the reference metamodel. The extensions are defined as stereotypes that apply to existing metaclasses."/>
+ <details key="documentation" value="A Profile is a kind of Package that extends a reference metamodel. The primary extension construct is the Stereotype, which are defined as part of Profiles.&#xD;&#xA;&#xD;&#xA;A profile introduces several constraints, or restrictions, on ordinary metamodeling through the use of the metaclasses defined in this package.&#xD;&#xA;&#xD;&#xA;A profile is a restricted form of a metamodel that must always be related to a reference metamodel, such as UML, as described below. A profile cannot be used without its reference metamodel, and defines a limited capability to extendmetaclasses of the reference metamodel. The extensions are defined as stereotypes that apply to existing metaclasses."/>
</eAnnotations>
<eOperations name="metaclass_reference_not_specialized" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An element imported as a metaclassReference is not specialized or generalized in a Profile.&#xD;&#xA;self.metaclassReference.importedElement->&#xA;&#xA; select(c | c.oclIsKindOf(Classifier) and&#xA;&#xA; (c.generalization.namespace = self or&#xA;&#xA; (c.specialization.namespace = self) )->isEmpty()"/>
+ <details key="documentation" value="An element imported as a metaclassReference is not specialized or generalized in a Profile.&#xD;&#xA;self.metaclassReference.importedElement->&#xD;&#xA; select(c | c.oclIsKindOf(Classifier) and&#xD;&#xA; (c.generalization.namespace = self or&#xD;&#xA; (c.specialization.namespace = self) )->isEmpty()"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
</eOperations>
<eOperations name="references_same_metamodel" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="All elements imported either as metaclassReferences or through metamodelReferences are members of the same base reference metamodel.&#xD;&#xA;self.metamodelReference.importedPackage.elementImport.importedElement.allOwningPackages())->&#xA;&#xA; union(self.metaclassReference.importedElement.allOwningPackages() )->notEmpty()"/>
+ <details key="documentation" value="All elements imported either as metaclassReferences or through metamodelReferences are members of the same base reference metamodel.&#xD;&#xA;self.metamodelReference.importedPackage.elementImport.importedElement.allOwningPackages())->&#xD;&#xA; union(self.metaclassReference.importedElement.allOwningPackages() )->notEmpty()"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -4543,7 +4543,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="CallConcurrencyKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="CallConcurrencyKind is an enumeration with the following literals:&#xA;&#xA;• sequential No concurrency management mechanism is associated with the operation and, therefore, concurrency conflicts may occur. Instances that invoke a behavioral feature need to coordinate so that only one invocation to a target on any behavioral feature occurs at once.&#xA;&#xA;• guarded Multiple invocations of a behavioral feature may occur simultaneously to one instance, but only one is allowed to commence. The others are blocked until the performance of the first behavioral feature is complete. It is the responsibility of the system designer to ensure that deadlocks do not occur due to simultaneous blocks.&#xA;&#xA;• concurrent Multiple invocations of a behavioral feature may occur simultaneously to one instance and all of them may proceed concurrently.&#xA;&#xA;&#xA;&#xA;"/>
+ <details key="documentation" value="CallConcurrencyKind is an enumeration with the following literals:&#xD;&#xA; - sequential = No concurrency management mechanism is associated with the operation and, therefore, concurrency conflicts may occur. Instances that invoke a behavioral feature need to coordinate so that only one invocation to a target on any behavioral feature occurs at once.&#xD;&#xA; - guarded = Multiple invocations of a behavioral feature may occur simultaneously to one instance, but only one is allowed to commence. The others are blocked until the performance of the first behavioral feature is complete. It is the responsibility of the system designer to ensure that deadlocks do not occur due to simultaneous blocks.&#xD;&#xA; - concurrent = Multiple invocations of a behavioral feature may occur simultaneously to one instance and all of them may proceed concurrently."/>
</eAnnotations>
<eLiterals name="sequential">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4563,7 +4563,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DataType" eSuperTypes="#//Classifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.&#xA;&#xA;&#xA;&#xA;A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.&#xD;&#xA;A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.&#xA;&#xA;A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.&#xA;&#xA;"/>
+ <details key="documentation" value="A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.&#xD;&#xA;&#xD;&#xA;A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.&#xD;&#xA;A data type is a type whose instances are identified only by their value. A DataType may contain attributes to support the modeling of structured data types.&#xD;&#xA;A typical use of data types would be to represent programming language primitive types or CORBA basic types. For example, integer and string types are often treated as data types.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="inherit" ordered="false" upperBound="-1"
@@ -4632,7 +4632,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="AggregationKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="AggregationKind is an enumeration of the following literal values:&#xA;• none Indicates that the property has no aggregation.&#xA;• shared Indicates that the property has a shared aggregation.&#xA;• composite Indicates that the property is aggregated compositely, i.e., the composite object has&#xA;responsibility for the existence and storage of the composed objects (parts).&#xA;"/>
+ <details key="documentation" value="AggregationKind is an enumeration of the following literal values:&#xD;&#xA; - none = Indicates that the property has no aggregation.&#xD;&#xA; - shared = Indicates that the property has a shared aggregation.&#xD;&#xA; - composite = Indicates that the property is aggregated compositely, i.e., the composite object has responsibility for the existence and storage of the composed objects (parts)."/>
</eAnnotations>
<eLiterals name="none">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4667,7 +4667,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="ParameterDirectionKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="ParameterDirectionKind is an enumeration of the following literal values:&#xA;&#xA; - in Indicates that parameter values are passed into the behavioral element by the caller.&#xA;&#xA; - inout Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.&#xA;&#xA; - out Indicates that parameter values are passed from a behavioral element out to the caller.&#xA;&#xA; - return Indicates that parameter values are passed as return values from a behavioral element back to the caller.&#xA;&#xA;&#xD;&#xA;ParameterDirectionKind is an enumeration of the following literal values:&#xA;• in Indicates that parameter values are passed into the behavioral element by the caller.&#xA;• inout Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.&#xA;• out Indicates that parameter values are passed from a behavioral element out to the caller.&#xA;• return Indicates that parameter values are passed as return values from a behavioral element back to the caller.&#xA;"/>
+ <details key="documentation" value="ParameterDirectionKind is an enumeration of the following literal values:&#xD;&#xA; - in = Indicates that parameter values are passed into the behavioral element by the caller.&#xD;&#xA; - inout = Indicates that parameter values are passed into a behavioral element by the caller and then back out to the caller from the behavioral element.&#xD;&#xA; - out = Indicates that parameter values are passed from a behavioral element out to the caller.&#xD;&#xA; - return = Indicates that parameter values are passed as return values from a behavioral element back to the caller."/>
</eAnnotations>
<eLiterals name="in">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4701,7 +4701,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CollaborationUse" eSuperTypes="#//NamedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A collaboration use represents one particular use of a collaboration to explain the relationships between the properties of a classifier. A collaboration use shows how the pattern described by a collaboration is applied in a given context, by binding specific entities from that context to the roles of the collaboration. Depending on the context, these entities could be structural features of a classifier, instance specifications, or even roles in some containing collaboration. There may be multiple occurrences of a given collaboration within a classifier, each involving a different set of roles and connectors. A given role or connector may be involved in multiple occurrences of the same or different collaborations.&#xA;&#xA;&#xA;&#xA;Associated dependencies map features of the collaboration type to features in the classifier. These dependencies indicate which role in the classifier plays which role in the collaboration.&#xA;&#xA;"/>
+ <details key="documentation" value="A collaboration use represents one particular use of a collaboration to explain the relationships between the properties of a classifier. A collaboration use shows how the pattern described by a collaboration is applied in a given context, by binding specific entities from that context to the roles of the collaboration. Depending on the context, these entities could be structural features of a classifier, instance specifications, or even roles in some containing collaboration. There may be multiple occurrences of a given collaboration within a classifier, each involving a different set of roles and connectors. A given role or connector may be involved in multiple occurrences of the same or different collaborations.&#xD;&#xA;&#xD;&#xA;Associated dependencies map features of the collaboration type to features in the classifier. These dependencies indicate which role in the classifier plays which role in the collaboration.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="client_elements" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4733,14 +4733,14 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="roleBinding" ordered="false"
upperBound="-1" eType="#//Dependency" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A mapping between features of the collaboration type and features of the classifier or operation. This mapping indicates which connectable element of the classifier or operation plays which role(s) in the collaboration. A connectable element may be bound to multiple roles in the same collaboration use (that is, it may play multiple roles).&#xA;&#xA;"/>
+ <details key="documentation" value="A mapping between features of the collaboration type and features of the classifier or operation. This mapping indicates which connectable element of the classifier or operation plays which role(s) in the collaboration. A connectable element may be bound to multiple roles in the same collaboration use (that is, it may play multiple roles).&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Element/ownedElement"/>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Collaboration" eSuperTypes="#//BehavioredClassifier #//StructuredClassifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A collaboration is represented as a kind of classifier and defines a set of cooperating entities to be played by instances (its roles), as well as a set of connectors that define communication paths between the participating instances. The cooperating entities are the properties of the collaboration.&#xA;&#xA;&#xA;&#xA;A collaboration specifies a view (or projection) of a set of cooperating classifiers. It describes the required links between instances that play the roles of the collaboration, as well as the features required of the classifiers that specify the participating instances. Several collaborations may describe different projections of the same set of classifiers.&#xA;&#xA;"/>
+ <details key="documentation" value="A collaboration is represented as a kind of classifier and defines a set of cooperating entities to be played by instances (its roles), as well as a set of connectors that define communication paths between the participating instances. The cooperating entities are the properties of the collaboration.&#xD;&#xA;&#xD;&#xA;A collaboration specifies a view (or projection) of a set of cooperating classifiers. It describes the required links between instances that play the roles of the collaboration, as well as the features required of the classifiers that specify the participating instances. Several collaborations may describe different projections of the same set of classifiers.&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="collaborationRole" ordered="false"
upperBound="-1" eType="#//ConnectableElement">
@@ -4752,7 +4752,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="UseCase" eSuperTypes="#//BehavioredClassifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A UseCase is a kind of behaviored classifier that represents a declaration of an offered behavior. Each use case specifies some behavior, possibly including variants, that the subject can perform in collaboration with one or more actors. Use cases define the offered behavior of the subject without reference to its internal structure. These behaviors, involving&#xA;&#xA;interactions between the actor and the subject, may result in changes to the state of the subject and communications with its environment. A use case can include possible variations of its basic behavior, including exceptional behavior and error handling.&#xA;&#xA;&#xA;&#xA;The subject of a use case could be a physical system or any other element that may have behavior, such as a component, subsystem or class. Each use case specifies a unit of useful functionality that the subject provides to its users, i.e., a specific way of interacting with the subject. This functionality, which is initiated by an actor, must always be completed for the use case to complete. It is deemed complete if, after its execution, the subject will be in a state in which no further inputs or actions are expected and the use case can be initiated again or in an error state.&#xA;&#xA;&#xA;&#xA;Use cases can be used both for specification of the (external) requirements on a subject and for the specification of the functionality offered by a subject. Moreover, the use cases also state the requirements the specified subject poses on its environment by defining how they should interact with the subject so that it will be able to perform its services.&#xA;&#xA;&#xA;&#xA;The behavior of a use case can be described by a specification that is some kind of Behavior (through its ownedBehavior relationship), such as interactions, activities, and state machines, or by pre-conditions and post-conditions as well as by natural language text where appropriate. It may also be described indirectly through a Collaboration that uses the use case and its actors as the classifiers that type its parts. Which of these techniques to use depends on the nature of the use case behavior as well as on the intended reader. These descriptions can be combined.&#xA;&#xA;"/>
+ <details key="documentation" value="A UseCase is a kind of behaviored classifier that represents a declaration of an offered behavior. Each use case specifies some behavior, possibly including variants, that the subject can perform in collaboration with one or more actors. Use cases define the offered behavior of the subject without reference to its internal structure. These behaviors, involving&#xD;&#xA;interactions between the actor and the subject, may result in changes to the state of the subject and communications with its environment. A use case can include possible variations of its basic behavior, including exceptional behavior and error handling.&#xD;&#xA;&#xD;&#xA;The subject of a use case could be a physical system or any other element that may have behavior, such as a component, subsystem or class. Each use case specifies a unit of useful functionality that the subject provides to its users, i.e., a specific way of interacting with the subject. This functionality, which is initiated by an actor, must always be completed for the use case to complete. It is deemed complete if, after its execution, the subject will be in a state in which no further inputs or actions are expected and the use case can be initiated again or in an error state.&#xD;&#xA;&#xD;&#xA;Use cases can be used both for specification of the (external) requirements on a subject and for the specification of the functionality offered by a subject. Moreover, the use cases also state the requirements the specified subject poses on its environment by defining how they should interact with the subject so that it will be able to perform its services.&#xD;&#xA;&#xD;&#xA;The behavior of a use case can be described by a specification that is some kind of Behavior (through its ownedBehavior relationship), such as interactions, activities, and state machines, or by pre-conditions and post-conditions as well as by natural language text where appropriate. It may also be described indirectly through a Collaboration that uses the use case and its actors as the classifiers that type its parts. Which of these techniques to use depends on the nature of the use case behavior as well as on the intended reader. These descriptions can be combined.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="must_have_name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -4820,12 +4820,12 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Include" eSuperTypes="#//NamedElement #//DirectedRelationship">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Note that the included use case is not optional, and is always required for the including use case to execute correctly.&#xA;&#xA;&#xA;&#xA;"/>
+ <details key="documentation" value="Note that the included use case is not optional, and is always required for the including use case to execute correctly.&#xD;&#xA;&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="addition" ordered="false"
lowerBound="1" eType="#//UseCase">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="References the use case that is to be included.&#xA;&#xA;"/>
+ <details key="documentation" value="References the use case that is to be included.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//DirectedRelationship/target"/>
</eStructuralFeatures>
@@ -4839,11 +4839,11 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Extend" eSuperTypes="#//NamedElement #//DirectedRelationship">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This relationship specifies that the behavior of a use case may be extended by the behavior of another (usually supplementary) use case. The extension takes place at one or more specific extension points defined in the extended use case. Note, however, that the extended use case is defined independently of the extending use case and is meaningful independently of the extending use case. On the other hand, the extending use case typically defines behavior that may not necessarily be meaningful by itself. Instead, the extending use case defines a set of modular behavior increments that augment an execution of the extended use case under specific conditions.&#xA;&#xA;&#xA;&#xA;Note that the same extending use case can extend more than one use case. Furthermore, an extending use case may itself be extended.&#xA;&#xA;&#xA;&#xA;It is a kind of DirectedRelationship, such that the source is the extending use case and the destination is the extended use case. It is also a kind of NamedElement so that it can have a name in the context of its owning use case. The extend relationship itself is owned by the extending use case.&#xA;&#xA;"/>
+ <details key="documentation" value="This relationship specifies that the behavior of a use case may be extended by the behavior of another (usually supplementary) use case. The extension takes place at one or more specific extension points defined in the extended use case. Note, however, that the extended use case is defined independently of the extending use case and is meaningful independently of the extending use case. On the other hand, the extending use case typically defines behavior that may not necessarily be meaningful by itself. Instead, the extending use case defines a set of modular behavior increments that augment an execution of the extended use case under specific conditions.&#xD;&#xA;&#xD;&#xA;Note that the same extending use case can extend more than one use case. Furthermore, an extending use case may itself be extended.&#xD;&#xA;&#xD;&#xA;It is a kind of DirectedRelationship, such that the source is the extending use case and the destination is the extended use case. It is also a kind of NamedElement so that it can have a name in the context of its owning use case. The extend relationship itself is owned by the extending use case.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="extension_points" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The extension points referenced by the extend relationship must belong to the use case that is being extended.&#xA;&#xA;&#xA;&#xA;&#xD;&#xA;extensionLocation->forAll (xp | extendedCase.extensionPoint->includes(xp))"/>
+ <details key="documentation" value="The extension points referenced by the extend relationship must belong to the use case that is being extended.&#xD;&#xA;&#xD;&#xA;&#xD;&#xA;extensionLocation->forAll (xp | extendedCase.extensionPoint->includes(xp))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -4858,14 +4858,14 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="condition" ordered="false"
eType="#//Constraint" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="References the condition that must hold when the first extension point is reached for the extension to take place. If no constraint is associated with the extend relationship, the extension is unconditional.&#xA;&#xA;"/>
+ <details key="documentation" value="References the condition that must hold when the first extension point is reached for the extension to take place. If no constraint is associated with the extend relationship, the extension is unconditional.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Element/ownedElement"/>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="extensionLocation" lowerBound="1"
upperBound="-1" eType="#//ExtensionPoint">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An ordered list of extension points belonging to the extended use case, specifying where the respective behavioral fragments of the extending use case are to be inserted. The first fragment in the extending use case is associated with the first extension point in the list, the second fragment with the second point, and so on. (Note that, in most practical cases, the extending use case has just a single behavior fragment, so that the list of extension points is trivial.)&#xA;&#xA;"/>
+ <details key="documentation" value="An ordered list of extension points belonging to the extended use case, specifying where the respective behavioral fragments of the extending use case are to be inserted. The first fragment in the extending use case is associated with the first extension point in the list, the second fragment with the second point, and so on. (Note that, in most practical cases, the extending use case has just a single behavior fragment, so that the list of extension points is trivial.)&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="extension" ordered="false"
@@ -4989,7 +4989,7 @@
<contents xsi:type="ecore:EOperation" name="stringValue" ordered="false" lowerBound="1"
eType="#//String">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The query stringValue() returns the string that concatenates, in order, all the component string literals of all the subexpressions that are part of the StringExpression.&#xA;&#xA;&#xD;&#xA;result = if subExpression->notEmpty()&#xA;then subExpression->iterate(se; stringValue = ‘| stringValue.concat(se.stringValue()))&#xA;else operand->iterate()(op; stringValue = ‘ | stringValue.concat(op.value))"/>
+ <details key="documentation" value="The query stringValue() returns the string that concatenates, in order, all the component string literals of all the subexpressions that are part of the StringExpression.&#xD;&#xA;&#xD;&#xA;result = if subExpression->notEmpty()&#xA;then subExpression->iterate(se; stringValue = ‘| stringValue.concat(se.stringValue()))&#xA;else operand->iterate()(op; stringValue = ‘ | stringValue.concat(op.value))"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -5046,7 +5046,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PackageMerge" eSuperTypes="#//DirectedRelationship">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both.&#xA;&#xA;&#xA;&#xA;This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.&#xA;&#xA;&#xA;&#xA;Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.&#xD;&#xA;A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both. This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.&#xA;&#xA;&#xA;&#xA;Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.&#xA;&#xA;"/>
+ <details key="documentation" value="A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both.&#xD;&#xA;&#xD;&#xA;This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.&#xD;&#xA;&#xD;&#xA;Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.&#xD;&#xA;A package merge is a directed relationship between two packages, that indicates that the contents of the two packages are to be combined. It is very similar to Generalization in the sense that the source element conceptually adds the characteristics of the target element to its own characteristics resulting in an element that combines the characteristics of both. This mechanism should be used when elements defined in different packages have the same name and are intended to represent the same concept. Most often it is used to provide different definitions of a given concept for different purposes, starting from a common base definition. A given base concept is extended in increments, with each increment defined in a separate merged package. By selecting which increments to merge, it is possible to obtain a custom definition of a concept for a specific end. Package merge is particularly useful in meta-modeling and is extensively used in the definition of the UML metamodel.&#xD;&#xA;&#xD;&#xA;Conceptually, a package merge can be viewed as an operation that takes the contents of two packages and produces a new package that combines the contents of the packages involved in the merge. In terms of model semantics, there is no difference between a model with explicit package merges, and a model in which all the merges have been performed.&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="mergedPackage" ordered="false"
lowerBound="1" eType="#//Package">
@@ -5091,7 +5091,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Enumeration" eSuperTypes="#//DataType">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Enumeration is a kind of data type, whose instances may be any of a number of predefined enumeration literals.&#xA;&#xA;It is possible to extend the set of applicable enumeration literals in other packages or profiles.&#xA;&#xA;&#xD;&#xA;Enumeration is a kind of data type, whose instances may be any of a number of user-defined enumeration literals.&#xA;&#xA;It is possible to extend the set of applicable enumeration literals in other packages or profiles.&#xA;&#xA;"/>
+ <details key="documentation" value="Enumeration is a kind of data type, whose instances may be any of a number of predefined enumeration literals.&#xD;&#xA;It is possible to extend the set of applicable enumeration literals in other packages or profiles.&#xD;&#xA;&#xD;&#xA;Enumeration is a kind of data type, whose instances may be any of a number of user-defined enumeration literals.&#xD;&#xA;It is possible to extend the set of applicable enumeration literals in other packages or profiles.&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedLiteral" upperBound="-1"
eType="#//EnumerationLiteral" containment="true" eOpposite="#//EnumerationLiteral/enumeration">
@@ -5115,7 +5115,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InstanceSpecification" eSuperTypes="#//DeploymentTarget #//PackageableElement #//DeployedArtifact">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An instance specification specifies existence of an entity in a modeled system and completely or partially describes the entity.&#xA;&#xA;The description may include:&#xA;&#xA;&#xA;&#xA;- Classification of the entity by one or more classifiers of which the entity is an instance. If the only classifier specified is abstract, then the instance specification only partially describes the entity.&#xA;&#xA;- The kind of instance, based on its classifier or classifiers -- for example, an instance specification whose classifier is a class describes an object of that class, while an instance specification whose classifier is an association describes a link of that association.&#xA;&#xA;- Specification of values of structural features of the entity. Not all structural features of all classifiers of the instance specification need be represented by slots, in which case the instance specification is a partial description.&#xA;&#xA;- Specification of how to compute, derive or construct the instance (optional).&#xA;&#xA;&#xA;&#xA;InstanceSpecification is a concrete class.&#xA;&#xA;&#xD;&#xA;In the metamodel, InstanceSpecification is a specialization of DeploymentTarget and DeployedArtifact."/>
+ <details key="documentation" value="An instance specification specifies existence of an entity in a modeled system and completely or partially describes the entity.&#xD;&#xA;The description may include:&#xD;&#xA;&#xD;&#xA;- Classification of the entity by one or more classifiers of which the entity is an instance. If the only classifier specified is abstract, then the instance specification only partially describes the entity.&#xD;&#xA;- The kind of instance, based on its classifier or classifiers -- for example, an instance specification whose classifier is a class describes an object of that class, while an instance specification whose classifier is an association describes a link of that association.&#xD;&#xA;- Specification of values of structural features of the entity. Not all structural features of all classifiers of the instance specification need be represented by slots, in which case the instance specification is a partial description.&#xD;&#xA;- Specification of how to compute, derive or construct the instance (optional).&#xD;&#xA;&#xD;&#xA;InstanceSpecification is a concrete class.&#xD;&#xA;&#xD;&#xA;In the metamodel, InstanceSpecification is a specialization of DeploymentTarget and DeployedArtifact."/>
</eAnnotations>
<eOperations name="defining_feature" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -5416,14 +5416,14 @@
</eAnnotations>
<eOperations name="one_output_parameter" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A function behavior has at least one output parameter.&#xD;&#xA;self.ownedParameters->&#xA;&#xA; select(p | p.direction=#out or p.direction=#inout or p.direction=#return)->size() >= 1"/>
+ <details key="documentation" value="A function behavior has at least one output parameter.&#xD;&#xA;self.ownedParameters->&#xD;&#xA; select(p | p.direction=#out or p.direction=#inout or p.direction=#return)->size() >= 1"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
</eOperations>
<eOperations name="types_of_parameters" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The types of parameters are all data types, which may not nest anything but other datatypes.&#xD;&#xA;def: hasAllDataTypeAttributes(d : DataType) : Boolean =&#xA;&#xA; d.ownedAttribute->forAll(a |&#xA;&#xA; a.type.oclIsTypeOf(DataType) and&#xA;&#xA; hasAllDataTypeAttributes(a.type))&#xA;&#xA;self.ownedParameters->forAll(p | p.type.notEmpty() and&#xA;&#xA; p.oclIsTypeOf(DataType) and hasAllDataTypeAttributes(p))"/>
+ <details key="documentation" value="The types of parameters are all data types, which may not nest anything but other datatypes.&#xD;&#xA;def: hasAllDataTypeAttributes(d : DataType) : Boolean =&#xD;&#xA; d.ownedAttribute->forAll(a |&#xD;&#xA; a.type.oclIsTypeOf(DataType) and&#xD;&#xA; hasAllDataTypeAttributes(a.type))&#xD;&#xA;self.ownedParameters->forAll(p | p.type.notEmpty() and&#xD;&#xA; p.oclIsTypeOf(DataType) and hasAllDataTypeAttributes(p))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -5593,7 +5593,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="StructuredActivityNode" eSuperTypes="#//Action #//Namespace #//ActivityGroup">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins when merged with CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.&#xA;&#xA;&#xA;&#xA;Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.&#xA;&#xA;&#xD;&#xA;A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins in CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.&#xA;&#xA;&#xA;&#xA;Because of the concurrent nature of the execution of actions within and across activities, it can be difficult to guarantee the consistent access and modification of object memory. In order to avoid race conditions or other concurrency-related problems, it is sometimes necessary to isolate the effects of a group of actions from the effects of actions outside the group. This may be indicated by setting the mustIsolate attribute to true on a structured activity node. If a structured activity node is &quot;isolated,&quot; then any object used by an action within the node cannot be accessed by any action outside the node until the structured activity node as a whole completes. Any concurrent actions that would result in accessing such objects are required to have their execution deferred until the completion of the node.&#xA;&#xA;&#xA;&#xA;Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.&#xA;&#xA;"/>
+ <details key="documentation" value="A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins when merged with CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.&#xD;&#xA;&#xD;&#xA;Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.&#xD;&#xA;&#xD;&#xA;A structured activity node represents a structured portion of the activity that is not shared with any other structured node, except for nesting. It may have control edges connected to it, and pins in CompleteStructuredActivities. The execution of any embedded actions may not begin until the structured activity node has received its object and control tokens. The availability of output tokens from the structured activity node does not occur until all embedded actions have completed execution.&#xD;&#xA;&#xD;&#xA;Because of the concurrent nature of the execution of actions within and across activities, it can be difficult to guarantee the consistent access and modification of object memory. In order to avoid race conditions or other concurrency-related problems, it is sometimes necessary to isolate the effects of a group of actions from the effects of actions outside the group. This may be indicated by setting the mustIsolate attribute to true on a structured activity node. If a structured activity node is &quot;isolated,&quot; then any object used by an action within the node cannot be accessed by any action outside the node until the structured activity node as a whole completes. Any concurrent actions that would result in accessing such objects are required to have their execution deferred until the completion of the node.&#xD;&#xA;&#xD;&#xA;Note - Any required isolation may be achieved using a locking mechanisms, or it may simply sequentialize execution to avoid concurrency conflicts. Isolation is different from the property of &quot;atomicity&quot;, which is the guarantee that a group of actions either all complete successfully or have no effect at all. Atomicity generally requires a rollback mechanism to prevent committing partial results.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EReference" name="activity" ordered="false" eType="#//Activity"
@@ -5641,7 +5641,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ActivityGroup" abstract="true" eSuperTypes="#//Element">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.&#xA;&#xA;They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.&#xA;&#xA;"/>
+ <details key="documentation" value="Activity groups are a generic grouping construct for nodes and edges. Nodes and edges can belong to more than one group.&#xD;&#xA;They have no inherent semantics and can be used for various purposes. Subclasses of ActivityGroup may add semantics.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="nodes_and_edges" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -5708,7 +5708,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Activity" eSuperTypes="#//Behavior">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked. &#xA;&#xA;&#xA;&#xA;Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:&#xA;&#xA;- occurrences of primitive functions, such as arithmetic functions.&#xA;&#xA;- invocations of behavior, such as activities.&#xA;&#xA;- communication actions, such as sending of signals.&#xA;&#xA;- manipulations of objects, such as reading or writing attributes or associations.&#xA;&#xA;&#xA;&#xA;Actions have no further decomposition in the activity containing them. However, the execution of a single action may induce the execution of many other actions. For example, a call action invokes an operation which is implemented by an activity containing actions that execute before the call action completes."/>
+ <details key="documentation" value="An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur external to the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked. &#xD;&#xA;&#xD;&#xA;Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate from inside the system, such as the finishing of a task, but also from outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. Activities may contain actions of various kinds:&#xD;&#xA;- occurrences of primitive functions, such as arithmetic functions.&#xD;&#xA;- invocations of behavior, such as activities.&#xD;&#xA;- communication actions, such as sending of signals.&#xD;&#xA;- manipulations of objects, such as reading or writing attributes or associations.&#xD;&#xA;&#xD;&#xA;Actions have no further decomposition in the activity containing them. However, the execution of a single action may induce the execution of many other actions. For example, a call action invokes an operation which is implemented by an activity containing actions that execute before the call action completes."/>
</eAnnotations>
<eOperations name="no_supergroups" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -5789,7 +5789,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Variable" eSuperTypes="#//ConnectableElement #//MultiplicityElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A variable specifies data storage shared by the actions within a group. There are actions to write and read variables. These actions are treated as side effecting actions, similar to the actions to write and read object attributes and associations. There are no sequencing constraints among actions that access the same variable. Such actions must be explicitly coordinated by control flows or other constraints.&#xA;&#xA;&#xA;&#xA;Any values contained by a variable must conform to the type of the variable and have cardinalities allowed by the multiplicity of the variable.&#xA;&#xA;&#xD;&#xA;A variable is considered a connectable element."/>
+ <details key="documentation" value="A variable specifies data storage shared by the actions within a group. There are actions to write and read variables. These actions are treated as side effecting actions, similar to the actions to write and read object attributes and associations. There are no sequencing constraints among actions that access the same variable. Such actions must be explicitly coordinated by control flows or other constraints.&#xD;&#xA;&#xD;&#xA;Any values contained by a variable must conform to the type of the variable and have cardinalities allowed by the multiplicity of the variable.&#xD;&#xA;&#xD;&#xA;A variable is considered a connectable element."/>
</eAnnotations>
<eOperations name="owned" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -5800,7 +5800,7 @@
</eOperations>
<eOperations name="isAccessibleBy" ordered="false" lowerBound="1" eType="#//Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The isAccessibleBy() operation is not defined in standard UML. Implementations should define it to specify which actions can access a variable.&#xA;&#xA;&#xD;&#xA;result = true"/>
+ <details key="documentation" value="The isAccessibleBy() operation is not defined in standard UML. Implementations should define it to specify which actions can access a variable.&#xD;&#xA;&#xD;&#xA;result = true"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="spec"/>
@@ -6001,7 +6001,7 @@
</eAnnotations>
<eOperations name="interrupting_edges" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Interrupting edges of a region must have their source node in the region and their target node outside the region in the same activity containing the region.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Interrupting edges of a region must have their source node in the region and their target node outside the region in the same activity containing the region.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -6080,7 +6080,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ObjectNode" abstract="true" eSuperTypes="#//ActivityNode #//TypedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An object node is an activity node that indicates an instance of a particular classifier, possibly in a particular state, may be available at a particular point in the activity. Object nodes can be used in a variety of ways, depending on where objects are flowing from and to, as described in the semantics section.&#xD;&#xA;An object node is an activity node that indicates an instance of a particular classifier, possibly in a particular state, may be available at a particular point in the activity. Object nodes can be used in a variety of ways, depending on where objects are flowing from and to, as described in the semantics section.&#xA;&#xA;Complete object nodes add support for token selection, limitation on the number of tokens, specifying the state required for tokens, and carrying control values.&#xA;&#xA;"/>
+ <details key="documentation" value="An object node is an activity node that indicates an instance of a particular classifier, possibly in a particular state, may be available at a particular point in the activity. Object nodes can be used in a variety of ways, depending on where objects are flowing from and to, as described in the semantics section.&#xD;&#xA;An object node is an activity node that indicates an instance of a particular classifier, possibly in a particular state, may be available at a particular point in the activity. Object nodes can be used in a variety of ways, depending on where objects are flowing from and to, as described in the semantics section.&#xD;&#xA;Complete object nodes add support for token selection, limitation on the number of tokens, specifying the state required for tokens, and carrying control values.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="object_flow_edges" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6225,7 +6225,7 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isSynchronous" ordered="false"
lowerBound="1" eType="#//Boolean" defaultValueLiteral="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If true, the call is synchronous and the caller waits for completion of the invoked behavior.&#xA;&#xA;If false, the call is asynchronous and the caller proceeds immediately and does not expect a return values.&#xA;&#xA;"/>
+ <details key="documentation" value="If true, the call is synchronous and the caller waits for completion of the invoked behavior.&#xD;&#xA;If false, the call is asynchronous and the caller proceeds immediately and does not expect a return values.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="result" upperBound="-1"
@@ -6300,7 +6300,7 @@
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="type_ordering_multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding owned parameter of the operation.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding owned parameter of the operation.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eAnnotations source="redefines" references="#//CallAction/type_ordering_multiplicity"/>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
@@ -6349,7 +6349,7 @@
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EOperation" name="type_ordering_multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding parameter of the behavior.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding parameter of the behavior.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eAnnotations source="redefines" references="#//CallAction/type_ordering_multiplicity"/>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
@@ -6391,7 +6391,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Usage" eSuperTypes="#//Dependency">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A usage is a relationship in which one element requires another element (or set of elements) for its full implementation or operation. In the metamodel, a Usage is a Dependency in which the client requires the presence of the supplier.&#xA;&#xA;"/>
+ <details key="documentation" value="A usage is a relationship in which one element requires another element (or set of elements) for its full implementation or operation. In the metamodel, a Usage is a Dependency in which the client requires the presence of the supplier.&#xD;&#xA;"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ControlNode" abstract="true" eSuperTypes="#//ActivityNode">
@@ -6457,14 +6457,14 @@
</eOperations>
<eOperations name="no_incoming_edges" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Activity parameter object nodes with no incoming edges and one or more outgoing edges must have a parameter with in or inout direction.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Activity parameter object nodes with no incoming edges and one or more outgoing edges must have a parameter with in or inout direction.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
</eOperations>
<eOperations name="no_outgoing_edges" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Activity parameter object nodes with no outgoing edges and one or more incoming edges must have a parameter with out, inout, or return direction.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Activity parameter object nodes with no outgoing edges and one or more incoming edges must have a parameter with out, inout, or return direction.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -6478,7 +6478,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Message" eSuperTypes="#//NamedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A Message is a NamedElement that defines a particular communication between Lifelines of an Interaction. A communication can be e.g. raising a signal, invoking an Operation, creating or destroying an Instance. The Message specifies not only the kind of communication given by the dispatching ExecutionSpecification, but also the sender and the receiver. A Message associates normally two OccurrenceSpecifications - one sending OccurrenceSpecification and one receiving OccurrenceSpecification.&#xA;&#xA;"/>
+ <details key="documentation" value="A Message is a NamedElement that defines a particular communication between Lifelines of an Interaction. A communication can be e.g. raising a signal, invoking an Operation, creating or destroying an Instance. The Message specifies not only the kind of communication given by the dispatching ExecutionSpecification, but also the sender and the receiver. A Message associates normally two OccurrenceSpecifications - one sending OccurrenceSpecification and one receiving OccurrenceSpecification.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="sending_receiving_message_event" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6586,7 +6586,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="MessageKind">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="MessageKind is an enumeration of the following values:&#xA;&#xA;- complete = sendEvent and receiveEvent are present&#xA;&#xA;- lost = sendEvent present and receiveEvent absent&#xA;&#xA;- found = sendEvent absent and receiveEvent present&#xA;&#xA;- unknown = sendEvent and receiveEvent absent (should not appear)"/>
+ <details key="documentation" value="MessageKind is an enumeration of the following values:&#xD;&#xA; - complete = sendEvent and receiveEvent are present&#xD;&#xA; - lost = sendEvent present and receiveEvent absent&#xD;&#xA; - found = sendEvent absent and receiveEvent present&#xD;&#xA; - unknown = sendEvent and receiveEvent absent (should not appear)"/>
</eAnnotations>
<eLiterals name="complete">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6611,7 +6611,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="MessageSort">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="MessageSort is an enumeration of the following values:&#xA;&#xA;- synchCall = the message was generated by a synchronous call to an operation&#xA;&#xA;- asynchCall = the message was generated by an asynchronous call to an operation; i.e., a CallAction with isSynchronous= false&#xA;&#xA;- asynchSignal = the message was generated by an asynchronous send action&#xA;&#xA;- createMessage = the message designating the creation of another lifeline object&#xA;&#xA;- deleteMessage = the message designating the termination of anther lifeline&#xA;&#xA;- reply = the message is a reply message to an operation call"/>
+ <details key="documentation" value="MessageSort is an enumeration of the following values:&#xD;&#xA; - synchCall = the message was generated by a synchronous call to an operation&#xD;&#xA; - asynchCall = the message was generated by an asynchronous call to an operation; i.e., a CallAction for which isSynchronous is false&#xD;&#xA; - asynchSignal = the message was generated by an asynchronous send action&#xD;&#xA; - createMessage = the message designating the creation of another lifeline object&#xD;&#xA; - deleteMessage = the message designating the termination of anther lifeline&#xD;&#xA; - reply = the message is a reply message to an operation call"/>
</eAnnotations>
<eLiterals name="synchCall">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6620,7 +6620,7 @@
</eLiterals>
<eLiterals name="asynchCall" value="1">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The message was generated by an asynchronous call to an operation; i.e., a CallAction with isSynchronous&#xA;&#xA;= false.&#xA;&#xA;"/>
+ <details key="documentation" value="The message was generated by an asynchronous call to an operation; i.e., a CallAction with isSynchronous&#xD;&#xA;= false.&#xD;&#xA;"/>
</eAnnotations>
</eLiterals>
<eLiterals name="asynchSignal" value="2">
@@ -6683,7 +6683,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="formalGate" ordered="false"
upperBound="-1" eType="#//Gate" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Specifies the gates that form the message interface between this Interaction and any InteractionUses which reference it.&#xA;&#xA;"/>
+ <details key="documentation" value="Specifies the gates that form the message interface between this Interaction and any InteractionUses which reference it.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Namespace/ownedMember"/>
</eStructuralFeatures>
@@ -6729,7 +6729,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Lifeline" eSuperTypes="#//NamedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A lifeline represents an individual participant in the Interaction. While Parts and StructuralFeatures may have multiplicity greater than 1, Lifelines represent only one interacting entity. Lifeline is a specialization of NamedElement. If the referenced ConnectableElement is multivalued (i.e. has a multiplicity > 1), then the Lifeline may have an expression (the 'selector') that specifies which particular part is represented by this Lifeline. If the selector is omitted this means that an arbitrary representative of the multivalued ConnectableElement is chosen.&#xD;&#xA;A lifeline represents an individual participant in the Interaction. While Parts and StructuralFeatures may have multiplicity greater than 1, Lifelines represent only one interacting entity. Lifeline is a specialization of NamedElement.&#xA;&#xA;&#xA;&#xA;If the referenced ConnectableElement is multivalued (i.e. has a multiplicity > 1), then the Lifeline may have an expression (the 'selector') that specifies which particular part is represented by this Lifeline.&#xA;&#xA;&#xA;&#xA;If the selector is omitted this means that an arbitrary representative of the multivalued ConnectableElement is chosen.&#xA;&#xA;"/>
+ <details key="documentation" value="A lifeline represents an individual participant in the Interaction. While Parts and StructuralFeatures may have multiplicity greater than 1, Lifelines represent only one interacting entity. Lifeline is a specialization of NamedElement. If the referenced ConnectableElement is multivalued (i.e. has a multiplicity > 1), then the Lifeline may have an expression (the 'selector') that specifies which particular part is represented by this Lifeline. If the selector is omitted this means that an arbitrary representative of the multivalued ConnectableElement is chosen.&#xD;&#xA;A lifeline represents an individual participant in the Interaction. While Parts and StructuralFeatures may have multiplicity greater than 1, Lifelines represent only one interacting entity. Lifeline is a specialization of NamedElement.&#xD;&#xA;&#xD;&#xA;If the referenced ConnectableElement is multivalued (i.e. has a multiplicity > 1), then the Lifeline may have an expression (the 'selector') that specifies which particular part is represented by this Lifeline.&#xD;&#xA;&#xD;&#xA;If the selector is omitted this means that an arbitrary representative of the multivalued ConnectableElement is chosen.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="interaction_uses_share_lifeline" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6787,7 +6787,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PartDecomposition" eSuperTypes="#//InteractionUse">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="PartDecomposition is a description of the internal interactions of one Lifeline relative to an Interaction.&#xA;&#xA;&#xA;&#xA;A Lifeline has a class associated as the type of the ConnectableElement that the Lifeline represents. That class may have an internal structure and the PartDecomposition is an Interaction that describes the behavior of that internal structure relative to the Interaction where the decomposition is referenced.&#xA;&#xA;&#xA;&#xA;A PartDecomposition is a specialization of InteractionUse. It associates with the ConnectableElement that it decomposes.&#xA;&#xA;"/>
+ <details key="documentation" value="PartDecomposition is a description of the internal interactions of one Lifeline relative to an Interaction.&#xD;&#xA;&#xD;&#xA;A Lifeline has a class associated as the type of the ConnectableElement that the Lifeline represents. That class may have an internal structure and the PartDecomposition is an Interaction that describes the behavior of that internal structure relative to the Interaction where the decomposition is referenced.&#xD;&#xA;&#xD;&#xA;A PartDecomposition is a specialization of InteractionUse. It associates with the ConnectableElement that it decomposes.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="parts_of_internal_structures" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6798,14 +6798,14 @@
</eOperations>
<eOperations name="assume" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Within X there is a sequence of constructs along L (such constructs are CombinedFragments, InteractionUse and (plain) OccurrenceSpecifications). Then a corresponding sequence of constructs must appear within D, matched one-to-one in the same order.&#xA;&#xA;&#xA;&#xA;i) CombinedFragment covering L are matched with an extra-global CombinedFragment in D&#xA;&#xA;ii) An InteractionUse covering L are matched with a global (i.e. covering all Lifelines) InteractionUse in D.&#xA;&#xA;iii) A plain OccurrenceSpecification on L is considered an actualGate that must be matched by a formalGate of D&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Within X there is a sequence of constructs along L (such constructs are CombinedFragments, InteractionUse and (plain) OccurrenceSpecifications). Then a corresponding sequence of constructs must appear within D, matched one-to-one in the same order.&#xD;&#xA;&#xD;&#xA;i) CombinedFragment covering L are matched with an extra-global CombinedFragment in D&#xD;&#xA;ii) An InteractionUse covering L are matched with a global (i.e. covering all Lifelines) InteractionUse in D.&#xD;&#xA;iii) A plain OccurrenceSpecification on L is considered an actualGate that must be matched by a formalGate of D&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
</eOperations>
<eOperations name="commutativity_of_decomposition" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Assume also that there is within X an&#xA;&#xA;InteractionUse (say) U that covers L. According to the constraint above U will have a counterpart CU within D. Within the Interaction referenced by U, L should also be decomposed, and the decomposition should reference CU. (This rule is called commutativity of decomposition)&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Assume also that there is within X an&#xD;&#xA;InteractionUse (say) U that covers L. According to the constraint above U will have a counterpart CU within D. Within the Interaction referenced by U, L should also be decomposed, and the decomposition should reference CU. (This rule is called commutativity of decomposition)&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -6813,7 +6813,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InteractionUse" eSuperTypes="#//InteractionFragment">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An InteractionUse refers to an Interaction. The InteractionUse is a shorthand for copying the contents of the referred Interaction where the InteractionUse is. To be accurate the copying must take into account substituting parameters with arguments and connect the formal gates with the actual ones.&#xA;&#xA;&#xA;&#xA;It is common to want to share portions of an interaction between several other interactions. An InteractionUse allows multiple interactions to reference an interaction that represents a common portion of their specification.&#xA;&#xA;"/>
+ <details key="documentation" value="An InteractionUse refers to an Interaction. The InteractionUse is a shorthand for copying the contents of the referred Interaction where the InteractionUse is. To be accurate the copying must take into account substituting parameters with arguments and connect the formal gates with the actual ones.&#xD;&#xA;&#xD;&#xA;It is common to want to share portions of an interaction between several other interactions. An InteractionUse allows multiple interactions to reference an interaction that represents a common portion of their specification.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="gates_match" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -6901,7 +6901,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OccurrenceSpecification" eSuperTypes="#//InteractionFragment">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An OccurrenceSpecification is the basic semantic unit of Interactions. The sequences of occurrences specified by them are the meanings of Interactions.&#xA;&#xA;OccurrenceSpecifications are ordered along a Lifeline.&#xA;&#xA;The namespace of an OccurrenceSpecification is the Interaction in which it is contained.&#xA;&#xA;"/>
+ <details key="documentation" value="An OccurrenceSpecification is the basic semantic unit of Interactions. The sequences of occurrences specified by them are the meanings of Interactions.&#xD;&#xA;OccurrenceSpecifications are ordered along a Lifeline.&#xD;&#xA;The namespace of an OccurrenceSpecification is the Interaction in which it is contained.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EReference" name="covered" ordered="false" upperBound="-1"
@@ -6915,7 +6915,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="toBefore" ordered="false"
upperBound="-1" eType="#//GeneralOrdering" eOpposite="#//GeneralOrdering/after">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="References the GeneralOrderings that specify EventOcurrences that must occur before this OccurrenceSpecification&#xA;&#xA;"/>
+ <details key="documentation" value="References the GeneralOrderings that specify EventOcurrences that must occur before this OccurrenceSpecification&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="event" ordered="false"
@@ -6927,13 +6927,13 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="toAfter" ordered="false"
upperBound="-1" eType="#//GeneralOrdering" eOpposite="#//GeneralOrdering/before">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="References the GeneralOrderings that specify EventOcurrences that must occur after this OccurrenceSpecification&#xA;&#xA;"/>
+ <details key="documentation" value="References the GeneralOrderings that specify EventOcurrences that must occur after this OccurrenceSpecification&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InteractionOperand" eSuperTypes="#//Namespace #//InteractionFragment">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An InteractionOperand is contained in a CombinedFragment. An InteractionOperand represents one operand of the expression given by the enclosing CombinedFragment. &#xA;&#xA;&#xA;&#xA;An InteractionOperand is an InteractionFragment with an optional guard expression. An InteractionOperand may be&#xA;&#xA;guarded by a InteractionConstraint. Only InteractionOperands with a guard that evaluates to true at this point in the interaction will be considered for the production of the traces for the enclosing CombinedFragment.&#xA;&#xA;&#xA;&#xA;InteractionOperand contains an ordered set of InteractionFragments.&#xA;&#xA;&#xA;&#xA;In Sequence Diagrams these InteractionFragments are ordered according to their geometrical position vertically. The geometrical position of the InteractionFragment is given by the topmost vertical coordinate of its contained OccurrenceSpecifications or symbols."/>
+ <details key="documentation" value="An InteractionOperand is contained in a CombinedFragment. An InteractionOperand represents one operand of the expression given by the enclosing CombinedFragment. &#xD;&#xA;&#xD;&#xA;An InteractionOperand is an InteractionFragment with an optional guard expression. An InteractionOperand may be&#xD;&#xA;guarded by a InteractionConstraint. Only InteractionOperands with a guard that evaluates to true at this point in the interaction will be considered for the production of the traces for the enclosing CombinedFragment.&#xD;&#xA;&#xD;&#xA;InteractionOperand contains an ordered set of InteractionFragments.&#xD;&#xA;&#xD;&#xA;In Sequence Diagrams these InteractionFragments are ordered according to their geometrical position vertically. The geometrical position of the InteractionFragment is given by the topmost vertical coordinate of its contained OccurrenceSpecifications or symbols."/>
</eAnnotations>
<eOperations name="guard_directly_prior" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -7205,7 +7205,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Actor" eSuperTypes="#//BehavioredClassifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An Actor models a type of role played by an entity that interacts with the subject (e.g., by exchanging signals and data), but which is external to the subject (i.e., in the sense that an instance of an actor is not a part of the instance of its corresponding subject). Actors may represent roles played by human users, external hardware, or other subjects. Note that an actor does not necessarily represent a specific physical entity but merely a particular facet (i.e., “role”) of some entity that is relevant to the specification of its associated use cases. Thus, a single physical instance may play the role of several different actors and, conversely, a given actor may be played by multiple different instances.&#xA;&#xA;&#xA;&#xA;Since an actor is external to the subject, it is typically defined in the same classifier or package that incorporates the subject classifier.&#xA;&#xA;"/>
+ <details key="documentation" value="An Actor models a type of role played by an entity that interacts with the subject (e.g., by exchanging signals and data), but which is external to the subject (i.e., in the sense that an instance of an actor is not a part of the instance of its corresponding subject). Actors may represent roles played by human users, external hardware, or other subjects. &#xD;&#xA;Note that an actor does not necessarily represent a specific physical entity but merely a particular facet (i.e., role) of some entity that is relevant to the specification of its associated use cases. Thus, a single physical instance may play the role of several different actors and, conversely, a given actor may be played by multiple different instances.&#xD;&#xA;&#xD;&#xA;Since an actor is external to the subject, it is typically defined in the same classifier or package that incorporates the subject classifier."/>
</eAnnotations>
<eOperations name="associations" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -7379,7 +7379,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Component" eSuperTypes="#//Class #//Namespace">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A component is a subtype of Class which provides for a Component having attributes and operations, and being able to participate in Associations and Generalizations. A Component may form the abstraction for a set of realizingClassifiers that realize its behavior. In addition, because a Class itself is a subtype of an EncapsulatedClassifier, a Component may optionally have an internal structure and own a set of Ports that formalize its interaction points.&#xA;&#xA;&#xA;&#xA;A component has a number of provided and required Interfaces, that form the basis for wiring components together, either using Dependencies, or by using Connectors. A provided Interface is one that is either implemented directly by the component or one of its realizingClassifiers, or it is the type of a provided Port of the Component. A required interface is designated by a Usage Dependency from the Component or one of its realizingClassifiers, or it is the type of a required Port.&#xA;&#xA;"/>
+ <details key="documentation" value="A component is a subtype of Class which provides for a Component having attributes and operations, and being able to participate in Associations and Generalizations. A Component may form the abstraction for a set of realizingClassifiers that realize its behavior. In addition, because a Class itself is a subtype of an EncapsulatedClassifier, a Component may optionally have an internal structure and own a set of Ports that formalize its interaction points.&#xD;&#xA;&#xD;&#xA;A component has a number of provided and required Interfaces, that form the basis for wiring components together, either using Dependencies, or by using Connectors. A provided Interface is one that is either implemented directly by the component or one of its realizingClassifiers, or it is the type of a provided Port of the Component. A required interface is designated by a Usage Dependency from the Component or one of its realizingClassifiers, or it is the type of a required Port.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="createOwnedClass" ordered="false" lowerBound="1" eType="#//Class">
<eParameters name="name" ordered="false" lowerBound="1" eType="#//String"/>
@@ -7417,7 +7417,7 @@
<details key="constraints" value="spec"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="result = let usedInterfaces = UsedInterfaces(self) and&#xA;&#xA; let realizingClassifierUsedInterfaces = UsedInterfaces(self.realizingClassifier) and&#xA;&#xA; let typesOfUsedPorts = self.ownedPort.required in&#xA;&#xA; ((usedInterfaces->union(realizingClassifierUsedInterfaces))->&#xA;&#xA; union(typesOfUsedPorts))->asSet()"/>
+ <details key="documentation" value="result = let usedInterfaces = UsedInterfaces(self) and&#xD;&#xA; let realizingClassifierUsedInterfaces = UsedInterfaces(self.realizingClassifier) and&#xD;&#xA; let typesOfUsedPorts = self.ownedPort.required in&#xD;&#xA; ((usedInterfaces->union(realizingClassifierUsedInterfaces))->&#xD;&#xA; union(typesOfUsedPorts))->asSet()"/>
</eAnnotations>
</eOperations>
<eOperations name="getProvideds" ordered="false" upperBound="-1" eType="#//Interface">
@@ -7425,13 +7425,13 @@
<details key="constraints" value="spec"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="result = let implementedInterfaces = self.implementation->collect(impl|impl.contract) and&#xA;&#xA; let realizedInterfaces = RealizedInterfaces(self) and&#xA;&#xA; let realizingClassifierInterfaces = RealizedInterfaces(self.realizingClassifier) and&#xA;&#xA; let typesOfRequiredPorts = self.ownedPort.provided in&#xA;&#xA; (((implementedInterfaces->union(realizedInterfaces)->union(realizingClassifierInterfaces))->&#xA;&#xA; union(typesOfRequiredPorts))->asSet()"/>
+ <details key="documentation" value="result = let implementedInterfaces = self.implementation->collect(impl|impl.contract) and&#xD;&#xA; let realizedInterfaces = RealizedInterfaces(self) and&#xD;&#xA; let realizingClassifierInterfaces = RealizedInterfaces(self.realizingClassifier) and&#xD;&#xA; let typesOfRequiredPorts = self.ownedPort.provided in&#xD;&#xA; (((implementedInterfaces->union(realizedInterfaces)->union(realizingClassifierInterfaces))->&#xD;&#xA; union(typesOfRequiredPorts))->asSet()"/>
</eAnnotations>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isIndirectlyInstantiated"
ordered="false" lowerBound="1" eType="#//Boolean" defaultValueLiteral="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The kind of instantiation that applies to a Component. If false, the component is instantiated as an addressable object. If true, the Component is defined at design-time, but at runtime (or execution-time) an object specified by the Component does not exist, that is, the component is instantiated indirectly, through the instantiation of its realizing classifiers or parts. Several standard stereotypes use this meta attribute, e.g. «specification, «focus», «subsystem»."/>
+ <details key="documentation" value="The kind of instantiation that applies to a Component. If false, the component is instantiated as an addressable object. If true, the Component is defined at design-time, but at runtime (or execution-time) an object specified by the Component does not exist, that is, the component is instantiated indirectly, through the instantiation of its realizing classifiers or parts. Several standard stereotypes use this meta attribute, e.g. «specification», «focus», «subsystem»."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="required" ordered="false"
@@ -7848,7 +7848,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="result" ordered="false"
lowerBound="1" eType="#//OutputPin" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Gives the output pin on which the hosting object is placed.&#xA;&#xA;"/>
+ <details key="documentation" value="Gives the output pin on which the hosting object is placed.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Action/output"/>
</eStructuralFeatures>
@@ -7902,7 +7902,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="object" ordered="false"
lowerBound="1" eType="#//InputPin" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Gives the input pin from which the object whose structural feature is to be read or written is obtained.&#xA;&#xA;"/>
+ <details key="documentation" value="Gives the input pin from which the object whose structural feature is to be read or written is obtained.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Action/input"/>
</eStructuralFeatures>
@@ -7974,11 +7974,11 @@
<eClassifiers xsi:type="ecore:EClass" name="RemoveStructuralFeatureValueAction"
eSuperTypes="#//WriteStructuralFeatureAction">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.&#xA;&#xA;&#xA;&#xA;Structural features are potentially multi-valued and ordered, and may support duplicates, so the action supports specification of removal points for new values. It also supports the removal of all duplicate values.&#xA;&#xA;"/>
+ <details key="documentation" value="The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.&#xD;&#xA;&#xD;&#xA;Structural features are potentially multi-valued and ordered, and may support duplicates, so the action supports specification of removal points for new values. It also supports the removal of all duplicate values.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="non_unique_removal" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Actions removing a value from ordered nonunique structural features must have a single removeAt input pin if isRemoveDuplicates is false. It must be of type Unlimited Natural with multiplicity 1..1. Otherwise, the action has no removeAt input pin.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Actions removing a value from ordered nonunique structural features must have a single removeAt input pin if isRemoveDuplicates is false. It must be of type Unlimited Natural with multiplicity 1..1. Otherwise, the action has no removeAt input pin.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -7999,7 +7999,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="AddStructuralFeatureValueAction" eSuperTypes="#//WriteStructuralFeatureAction">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Structural Features are potentially multi-valued and ordered, so the action supports specification of insertion points for new values. It also supports the removal of existing values of the structural feature before the new value is added.&#xA;&#xA;&#xA;&#xA;The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.&#xA;&#xA;"/>
+ <details key="documentation" value="Structural Features are potentially multi-valued and ordered, so the action supports specification of insertion points for new values. It also supports the removal of existing values of the structural feature before the new value is added.&#xD;&#xA;&#xD;&#xA;The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value's multiplicity is 1..1.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="unlimited_natural_and_multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -8071,7 +8071,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LinkEndData" eSuperTypes="#//Element">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xD;&#xA;LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xA;&#xA;"/>
+ <details key="documentation" value="LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xD;&#xA;LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="property_is_association_end" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -8167,7 +8167,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ReadLinkAction" eSuperTypes="#//LinkAction">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This action navigates an association towards one end, which is the end that does not have an input pin to take its object (the “open” end). The objects put on the result output pin are the ones participating in the association at the open end, conforming to the specified qualifiers, in order if the end is ordered. The semantics is undefined for reading a link that violates the navigability or visibility of the open end."/>
+ <details key="documentation" value="This action navigates an association towards one end, which is the end that does not have an input pin to take its object (the open end). The objects put on the result output pin are the ones participating in the association at the open end, conforming to the specified qualifiers, in order if the end is ordered. The semantics is undefined for reading a link that violates the navigability or visibility of the open end."/>
</eAnnotations>
<eOperations name="one_open_end" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -8207,14 +8207,14 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="result" ordered="false"
lowerBound="1" eType="#//OutputPin" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The pin on which are put the objects participating in the association at the end not specified by the inputs.&#xA;&#xA;"/>
+ <details key="documentation" value="The pin on which are put the objects participating in the association at the end not specified by the inputs.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Action/output"/>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LinkEndCreationData" eSuperTypes="#//LinkEndData">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This class is required when using CreateLinkAction, to specify insertion points for ordered ends and for replacing all links at end. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, as required. This requires more than one piece of data, namely, the statically-specified end in the user model, the object on the end, and the qualifier values for that end. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xA;&#xA;&#xA;&#xA;Qualifier values are used in CompleteActions to identify links to create."/>
+ <details key="documentation" value="This class is required when using CreateLinkAction, to specify insertion points for ordered ends and for replacing all links at end. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, as required. This requires more than one piece of data, namely, the statically-specified end in the user model, the object on the end, and the qualifier values for that end. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.&#xD;&#xA;&#xD;&#xA;Qualifier values are used in CompleteActions to identify links to create."/>
</eAnnotations>
<eOperations name="create_link_action" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -8245,7 +8245,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CreateLinkAction" eSuperTypes="#//WriteLinkAction">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This action can be used to create links and link objects. There is no return value in either case. This is so that no change of the action is required if the association is changed to an association class or vice versa. CreateLinkAction uses a specialization of LinkEndData called LinkEndCreationData, to support ordered associations. The insertion point is specified at runtime by an additional input pin, which is required for ordered association ends and omitted for unordered ends. The insertion point is a positive integer giving the position to insert the link, or unlimited, to insert at the end. Reinserting an existing end at a new position in an ordered unique structural feature moves the end to that position. CreateLinkAction also uses LinkEndCreationData to support the destruction of existing links of the association that connect any of the objects of the new link. When the link is created, this option is available on an end-by-end basis, and causes all links of the association emanating from the &#xA;&#xA;specified ends to be destroyed before the new link is created."/>
+ <details key="documentation" value="This action can be used to create links and link objects. There is no return value in either case. This is so that no change of the action is required if the association is changed to an association class or vice versa. CreateLinkAction uses a specialization of LinkEndData called LinkEndCreationData, to support ordered associations. The insertion point is specified at runtime by an additional input pin, which is required for ordered association ends and omitted for unordered ends. The insertion point is a positive integer giving the position to insert the link, or unlimited, to insert at the end. Reinserting an existing end at a new position in an ordered unique structural feature moves the end to that position. CreateLinkAction also uses LinkEndCreationData to support the destruction of existing links of the association that connect any of the objects of the new link. When the link is created, this option is available on an end-by-end basis, and causes all links of the association emanating from the &#xD;&#xA;specified ends to be destroyed before the new link is created."/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EReference" name="endData" ordered="false" lowerBound="2"
@@ -8278,7 +8278,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DestroyLinkAction" eSuperTypes="#//WriteLinkAction">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This action destroys a link or a link object. Link objects can also be destroyed with DestroyObjectAction. The link is specified in the same way as link creation, even for link objects. This allows actions to remain unchanged when their associations are transformed from ordinary ones to association classes and vice versa.&#xA;&#xA;&#xA;&#xA;DestroyLinkAction uses a specialization of LinkEndData, called LinkEndDestructionData, to support ordered nonunique associations. The position of the link to be destroyed is specified at runtime by an additional input pin, which is required for ordered nonunique association ends and omitted for other kinds of ends. This is a positive integer giving the position of the link to destroy.&#xA;&#xA;&#xA;&#xA;DestroyLinkAction also uses LinkEndDestructionData to support the destruction of duplicate links of the association on ends that are nonunique. This option is available on an end-by-end basis, and causes all duplicate links of the association emanating from the specified ends to be destroyed.&#xA;&#xA;"/>
+ <details key="documentation" value="This action destroys a link or a link object. Link objects can also be destroyed with DestroyObjectAction. The link is specified in the same way as link creation, even for link objects. This allows actions to remain unchanged when their associations are transformed from ordinary ones to association classes and vice versa.&#xD;&#xA;&#xD;&#xA;DestroyLinkAction uses a specialization of LinkEndData, called LinkEndDestructionData, to support ordered nonunique associations. The position of the link to be destroyed is specified at runtime by an additional input pin, which is required for ordered nonunique association ends and omitted for other kinds of ends. This is a positive integer giving the position of the link to destroy.&#xD;&#xA;&#xD;&#xA;DestroyLinkAction also uses LinkEndDestructionData to support the destruction of duplicate links of the association on ends that are nonunique. This option is available on an end-by-end basis, and causes all duplicate links of the association emanating from the specified ends to be destroyed.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="duplicates">
<contents xsi:type="ecore:EReference" name="endData" ordered="false" lowerBound="2"
@@ -8292,7 +8292,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LinkEndDestructionData" eSuperTypes="#//LinkEndData">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="This class is required when using DestroyLinkAction, to specify links to destroy for nonunique ordered ends. A link cannot be passed as a runtime value to or from an action.&#xA;&#xA;&#xA;&#xA;Qualifier values are used in CompleteActions to identify links to destroy."/>
+ <details key="documentation" value="This class is required when using DestroyLinkAction, to specify links to destroy for nonunique ordered ends. A link cannot be passed as a runtime value to or from an action.&#xD;&#xA;&#xD;&#xA;Qualifier values are used in CompleteActions to identify links to destroy."/>
</eAnnotations>
<eOperations name="destroy_link_action" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -8586,7 +8586,7 @@
</eAnnotations>
<eOperations name="first_event_multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The multiplicity of firstEvent must be 2 if the multiplicity of constrainedElement is 2. Otherwise the multiplicity of firstEvent is 0.&#xD;&#xA;if (constrainedElement->size() =2)&#xA;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)"/>
+ <details key="documentation" value="The multiplicity of firstEvent must be 2 if the multiplicity of constrainedElement is 2. Otherwise the multiplicity of firstEvent is 0.&#xD;&#xA;if (constrainedElement->size() =2)&#xD;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -8621,7 +8621,7 @@
</eAnnotations>
<eOperations name="first_event_multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The multiplicity of firstEvent must be 2 if the multiplicity of event is 2. Otherwise the multiplicity of firstEvent is 0.&#xD;&#xA;if (event->size() = 2)&#xA;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)"/>
+ <details key="documentation" value="The multiplicity of firstEvent must be 2 if the multiplicity of event is 2. Otherwise the multiplicity of firstEvent is 0.&#xD;&#xA;if (event->size() = 2)&#xD;&#xA; then (firstEvent->size() = 2) else (firstEvent->size() = 0)"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -8891,11 +8891,11 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InformationItem" eSuperTypes="#//Classifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An information item is an abstraction of all kinds of information that can be exchanged between objects. It is a kind of classifier intended for representing information in a very abstract way, one which cannot be instantiated. One purpose of InformationItems is to be able to define preliminary models, before having made detailed modeling decisions on types or structures. One other purpose of information items and information flows is to abstract complex models by a less precise but more general representation of the information exchanged betwen entities of a system.&#xA;&#xA;"/>
+ <details key="documentation" value="An information item is an abstraction of all kinds of information that can be exchanged between objects. It is a kind of classifier intended for representing information in a very abstract way, one which cannot be instantiated. One purpose of InformationItems is to be able to define preliminary models, before having made detailed modeling decisions on types or structures. One other purpose of information items and information flows is to abstract complex models by a less precise but more general representation of the information exchanged betwen entities of a system.&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="sources_and_targets" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The sources and targets of an information item (its related information flows) must designate subsets of the sources and targets of the representation information item, if any.The Classifiers that can realize an information item can only be of the following kind: Class, Interface, InformationItem, Signal, Component.&#xD;&#xA;(self.represented->select(p | p->oclIsKindOf(InformationItem))->forAll(p |&#xA;&#xA; p.informationFlow.source->forAll(q | self.informationFlow.source->include(q)) and&#xA;&#xA; p.informationFlow.target->forAll(q | self.informationFlow.target->include(q)))) and&#xA;&#xA; (self.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface) or&#xA;&#xA; oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component)))"/>
+ <details key="documentation" value="The sources and targets of an information item (its related information flows) must designate subsets of the sources and targets of the representation information item, if any.The Classifiers that can realize an information item can only be of the following kind: Class, Interface, InformationItem, Signal, Component.&#xD;&#xA;(self.represented->select(p | p->oclIsKindOf(InformationItem))->forAll(p |&#xD;&#xA; p.informationFlow.source->forAll(q | self.informationFlow.source->include(q)) and&#xD;&#xA; p.informationFlow.target->forAll(q | self.informationFlow.target->include(q)))) and&#xD;&#xA; (self.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface) or&#xD;&#xA; oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component)))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -8927,7 +8927,7 @@
</eAnnotations>
<eOperations name="sources_and_targets_kind" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The sources and targets of the information flow can only be one of the following kind: Actor, Node, UseCase, Artifact, Class, Component, Port, Property, Interface, Package, ActivityNode, ActivityPartition and InstanceSpecification except when its classifier is a relationship (i.e. it represents a link).&#xD;&#xA;(self.source->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xA;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xA;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xA;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xA;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification))) and&#xA;&#xA; (self.target->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xA;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xA;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xA;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xA;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification)))"/>
+ <details key="documentation" value="The sources and targets of the information flow can only be one of the following kind: Actor, Node, UseCase, Artifact, Class, Component, Port, Property, Interface, Package, ActivityNode, ActivityPartition and InstanceSpecification except when its classifier is a relationship (i.e. it represents a link).&#xD;&#xA;(self.source->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xD;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xD;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xD;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xD;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification))) and&#xD;&#xA; (self.target->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or&#xD;&#xA; oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or&#xD;&#xA; oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or&#xD;&#xA; oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or&#xD;&#xA; oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification)))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -8941,7 +8941,7 @@
</eOperations>
<eOperations name="convey_classifiers" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An information flow can only convey classifiers that are allowed to represent an information item.&#xA;&#xA;&#xD;&#xA;self.conveyed.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface)&#xA;&#xA; or oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component))"/>
+ <details key="documentation" value="An information flow can only convey classifiers that are allowed to represent an information item.&#xD;&#xA;&#xD;&#xA;self.conveyed.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface)&#xD;&#xA; or oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -9505,7 +9505,7 @@
</eOperations>
<eOperations name="multiplicity_of_result" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The multiplicity of each result output pin must be compatible with the multiplicity of the corresponding structural features of the unmarshall classifier.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="The multiplicity of each result output pin must be compatible with the multiplicity of the corresponding structural features of the unmarshall classifier.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -9610,7 +9610,7 @@
</eOperations>
<eOperations name="incoming_object_flow" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="If a join node has an incoming object flow, it must have an outgoing object flow, otherwise, it must have an outgoing control flow.&#xD;&#xA;(self.incoming.select(e | e.isTypeOf(ObjectFlow)->notEmpty() implies&#xA;&#xA; self.outgoing.isTypeOf(ObjectFlow)) and&#xA;&#xA; (self.incoming.select(e | e.isTypeOf(ObjectFlow)->empty() implies&#xA;&#xA; self.outgoing.isTypeOf(ControlFlow))"/>
+ <details key="documentation" value="If a join node has an incoming object flow, it must have an outgoing object flow, otherwise, it must have an outgoing control flow.&#xD;&#xA;(self.incoming.select(e | e.isTypeOf(ObjectFlow)->notEmpty() implies&#xD;&#xA; self.outgoing.isTypeOf(ObjectFlow)) and&#xD;&#xA; (self.incoming.select(e | e.isTypeOf(ObjectFlow)->empty() implies&#xD;&#xA; self.outgoing.isTypeOf(ControlFlow))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -9647,7 +9647,7 @@
</eOperations>
<eOperations name="compatible_types" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Object nodes connected by an object flow, with optionally intervening control nodes, must have compatible types. In particular, the downstream object node type must be the same or a supertype of the upstream object node type.&#xA;&#xA;&#xD;&#xA;true"/>
+ <details key="documentation" value="Object nodes connected by an object flow, with optionally intervening control nodes, must have compatible types. In particular, the downstream object node type must be the same or a supertype of the upstream object node type.&#xD;&#xA;&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain"/>
<eParameters name="context" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"/>
@@ -9721,7 +9721,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ConditionalNode" eSuperTypes="#//StructuredActivityNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A conditional node consists of one or more clauses. Each clause consists of a test section and a body section. When the conditional node begins execution, the test sections of the clauses are executed. If one or more test sections yield a true value, one of the corresponding body sections will be executed. If more than one test section yields a true value, only one body section will be executed. The choice is nondeterministic unless the test sequence of clauses is specified. If no test section yields a true value, then no body section is executed; this may be a semantic error if output values are expected from the conditional node.&#xA;&#xA;&#xA;&#xA;In general, test section may be executed in any order, including simultaneously (if the underlying execution architecture supports it). The result may therefore be nondeterministic if more than one test section can be true concurrently. To enforce ordering of evaluation, sequencing constraints may be specified among clauses. One frequent case is a total ordering of clauses, in which case the clause execution order is determinate. If it is impossible for more than one test section to evaluate true simultaneously, the result is deterministic and it is unnecessary to order the clauses, as ordering may impose undesirable and unnecessary restrictions on implementation. Note that, although evaluation of test sections may be specified as concurrent, this does not require that the implementation evaluate them in parallel; it merely means that the model does not impose any order on evaluation.&#xA;&#xA;&#xA;&#xA;An &quot;else&quot; clause is a clause that is a successor to all other clauses in the conditional and whose test part always returns true.&#xA;&#xA;&#xA;&#xA;Output values created in the test or body section of a clause are potentially available for use outside the conditional. However, any value used outside the conditional must be created in every clause, otherwise an undefined value would be accessed if a clause not defining the value were executed."/>
+ <details key="documentation" value="A conditional node consists of one or more clauses. Each clause consists of a test section and a body section. When the conditional node begins execution, the test sections of the clauses are executed. If one or more test sections yield a true value, one of the corresponding body sections will be executed. If more than one test section yields a true value, only one body section will be executed. The choice is nondeterministic unless the test sequence of clauses is specified. If no test section yields a true value, then no body section is executed; this may be a semantic error if output values are expected from the conditional node.&#xD;&#xA;&#xD;&#xA;In general, test section may be executed in any order, including simultaneously (if the underlying execution architecture supports it). The result may therefore be nondeterministic if more than one test section can be true concurrently. To enforce ordering of evaluation, sequencing constraints may be specified among clauses. One frequent case is a total ordering of clauses, in which case the clause execution order is determinate. If it is impossible for more than one test section to evaluate true simultaneously, the result is deterministic and it is unnecessary to order the clauses, as ordering may impose undesirable and unnecessary restrictions on implementation. Note that, although evaluation of test sections may be specified as concurrent, this does not require that the implementation evaluate them in parallel; it merely means that the model does not impose any order on evaluation.&#xD;&#xA;&#xD;&#xA;An &quot;else&quot; clause is a clause that is a successor to all other clauses in the conditional and whose test part always returns true.&#xD;&#xA;&#xD;&#xA;Output values created in the test or body section of a clause are potentially available for use outside the conditional. However, any value used outside the conditional must be created in every clause, otherwise an undefined value would be accessed if a clause not defining the value were executed."/>
</eAnnotations>
<eOperations name="result_no_incoming" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -9913,7 +9913,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ExpansionRegion" eSuperTypes="#//StructuredActivityNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="An expansion region is a strictly nested region of an activity with explicit input and outputs (modeled as ExpansionNodes). Each input is a collection of values. If there are multiple inputs, each of them must hold the same kind of collection, although the types of the elements in the different collections may vary. The expansion region is executed once for each element (or position) in the input collection.&#xA;&#xA;&#xA;&#xA;The number of output collections can differ from the number of input collections. On each execution of the region, an output value from the region is inserted into an output collection at the same position as the input elements. If the region execution ends with no output, then nothing is added to the output collection. When this happens the output collection will not have the same number of elements as the input collections, the region acts as a filter. If all the executions provide an output to the collection, then the output collections will have the same number of elements as the input collections.&#xA;&#xA;&#xA;&#xA;The inputs and outputs to an expansion region are modeled as ExpansionNodes. From &quot;outside&quot; of the region, the values on these nodes appear as collections. From &quot;inside&quot; the region the values appear as elements of the collections. Object flow edges connect pins outside the region to input and output expansion nodes as collections. Object flow edges connect pins inside the region to input and output expansion nodes as individual elements. From the inside of the region, these nodes are visible as individual values. If an expansion node has a name, it is the name of the individual element within the region.&#xA;&#xA;&#xA;&#xA;Any object flow edges that cross the boundary of the region, without passing through expansion nodes, provide values that are fixed within the different executions of the region."/>
+ <details key="documentation" value="An expansion region is a strictly nested region of an activity with explicit input and outputs (modeled as ExpansionNodes). Each input is a collection of values. If there are multiple inputs, each of them must hold the same kind of collection, although the types of the elements in the different collections may vary. The expansion region is executed once for each element (or position) in the input collection.&#xD;&#xA;&#xD;&#xA;The number of output collections can differ from the number of input collections. On each execution of the region, an output value from the region is inserted into an output collection at the same position as the input elements. If the region execution ends with no output, then nothing is added to the output collection. When this happens the output collection will not have the same number of elements as the input collections, the region acts as a filter. If all the executions provide an output to the collection, then the output collections will have the same number of elements as the input collections.&#xD;&#xA;&#xD;&#xA;The inputs and outputs to an expansion region are modeled as ExpansionNodes. From &quot;outside&quot; of the region, the values on these nodes appear as collections. From &quot;inside&quot; the region the values appear as elements of the collections. Object flow edges connect pins outside the region to input and output expansion nodes as collections. Object flow edges connect pins inside the region to input and output expansion nodes as individual elements. From the inside of the region, these nodes are visible as individual values. If an expansion node has a name, it is the name of the individual element within the region.&#xD;&#xA;&#xD;&#xA;Any object flow edges that cross the boundary of the region, without passing through expansion nodes, provide values that are fixed within the different executions of the region."/>
</eAnnotations>
<eOperations name="expansion_nodes" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -9925,7 +9925,7 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="mode" ordered="false" lowerBound="1"
eType="#//ExpansionKind" defaultValueLiteral="iterative">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="The way in which the executions interact:&#xA;&#xA;parallel: all interactions are independent&#xA;&#xA;iterative: the interactions occur in order of the elements&#xA;&#xA;stream: a stream of values flows into a single execution&#xA;&#xA;"/>
+ <details key="documentation" value="The way in which the executions interact:&#xD;&#xA;parallel: all interactions are independent&#xD;&#xA;iterative: the interactions occur in order of the elements&#xD;&#xA;stream: a stream of values flows into a single execution&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="inputElement" ordered="false"
@@ -9963,7 +9963,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ProtocolTransition" eSuperTypes="#//Transition">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="A protocol transition (transition as specialized in the ProtocolStateMachines package) specifies a legal transition for an operation. Transitions of protocol state machines have the following information: a pre condition (guard), on trigger, and a post condition. Every protocol transition is associated to zero or one operation (referred BehavioralFeature) that belongs to the context classifier of the protocol state machine.&#xA;&#xA;&#xA;&#xA;The protocol transition specifies that the associated (referred) operation can be called for an instance in the origin state under the initial condition (guard), and that at the end of the transition, the destination state will be reached under the final condition (post).&#xA;&#xA;"/>
+ <details key="documentation" value="A protocol transition (transition as specialized in the ProtocolStateMachines package) specifies a legal transition for an operation. Transitions of protocol state machines have the following information: a pre condition (guard), on trigger, and a post condition. Every protocol transition is associated to zero or one operation (referred BehavioralFeature) that belongs to the context classifier of the protocol state machine.&#xD;&#xA;&#xD;&#xA;The protocol transition specifies that the associated (referred) operation can be called for an instance in the origin state under the initial condition (guard), and that at the end of the transition, the destination state will be reached under the final condition (post).&#xD;&#xA;"/>
</eAnnotations>
<eOperations name="belongs_to_psm" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -9989,7 +9989,7 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="postCondition" ordered="false"
eType="#//Constraint">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Specifies the post condition of the transition which is the condition that should be obtained once the transition is triggered. This post condition is part of the post condition of the operation connected to the transition.&#xA;&#xA;"/>
+ <details key="documentation" value="Specifies the post condition of the transition which is the condition that should be obtained once the transition is triggered. This post condition is part of the post condition of the operation connected to the transition.&#xD;&#xA;"/>
</eAnnotations>
<eAnnotations source="subsets" references="#//Namespace/ownedRule"/>
</eStructuralFeatures>
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/BehaviorOperations.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/BehaviorOperations.java
index 3220a4dd..6cfcba7a 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/BehaviorOperations.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/BehaviorOperations.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: BehaviorOperations.java,v 1.10 2006/04/05 19:26:35 khussey Exp $
+ * $Id: BehaviorOperations.java,v 1.11 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml.internal.operations;
@@ -110,7 +110,6 @@ public class BehaviorOperations
return result;
}
-
/**
* <!-- begin-user-doc -->
@@ -214,7 +213,7 @@ public class BehaviorOperations
}
return true;
}
-
+
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -224,6 +223,5 @@ public class BehaviorOperations
return (BehavioredClassifier) getOwningElement(behavior,
UMLPackage.Literals.BEHAVIORED_CLASSIFIER, false);
}
-
} // BehaviorOperations \ No newline at end of file
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/TransitionOperations.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/TransitionOperations.java
index 399e2862..8dc63e43 100644
--- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/TransitionOperations.java
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/internal/operations/TransitionOperations.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - initial API and implementation
*
- * $Id: TransitionOperations.java,v 1.4 2006/04/05 13:50:02 khussey Exp $
+ * $Id: TransitionOperations.java,v 1.5 2006/05/05 19:36:07 khussey Exp $
*/
package org.eclipse.uml2.uml.internal.operations;
@@ -228,7 +228,7 @@ public class TransitionOperations
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype ?create?.
+ * An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype «create».
* self.source.oclIsKindOf(Pseudostate) implies
* (self.source.oclAsType(Pseudostate).kind = #initial) implies
* (self.source.container = self.stateMachine.top) implies

Back to the top