blob: a2b52e645337e8eb6184145c972d2931d22b00fb [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="20110701" xmlns:xmi="http://www.omg.org/spec/XMI/20110701" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:Ecore="http://www.eclipse.org/uml2/schemas/Ecore/5" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/4.0.0/UML"
xsi:schemaLocation="http://www.eclipse.org/uml2/schemas/Ecore/5 pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA">
<uml:Package xmi:id="_0" name="pivot" URI="http://www.omg.org/spec/UML/20090901">
<packagedElement xmi:type="uml:PrimitiveType" xmi:id="_fs9oUjN8EeOoAatxCmIbzQ" name="Boolean">
<ownedComment xmi:id="_fs9oUzN8EeOoAatxCmIbzQ" annotatedElement="_fs9oUjN8EeOoAatxCmIbzQ">
<body>A Boolean type is used for logical expression, consisting of the predefined values true and false.</body>
</ownedComment>
</packagedElement>
<packagedElement xmi:type="uml:PrimitiveType" xmi:id="_fs9oUDN8EeOoAatxCmIbzQ" name="Integer">
<ownedComment xmi:id="_fs9oUTN8EeOoAatxCmIbzQ" annotatedElement="_fs9oUDN8EeOoAatxCmIbzQ">
<body>An integer is a primitive type representing integer values.</body>
</ownedComment>
</packagedElement>
<packagedElement xmi:type="uml:PrimitiveType" xmi:id="_fwBjYDN8EeOoAatxCmIbzQ" name="LibraryFeature"/>
<packagedElement xmi:type="uml:PrimitiveType" xmi:id="_fwBjYTN8EeOoAatxCmIbzQ" name="Object"/>
<packagedElement xmi:type="uml:PrimitiveType" xmi:id="_fvU_0DN8EeOoAatxCmIbzQ" name="Real"/>
<packagedElement xmi:type="uml:PrimitiveType" xmi:id="_fs2TkDN8EeOoAatxCmIbzQ" name="String">
<ownedComment xmi:id="_fs-PYDN8EeOoAatxCmIbzQ" annotatedElement="_fs2TkDN8EeOoAatxCmIbzQ">
<body>A string is a sequence of characters in some suitable character set used to display information about the model. Character sets may include non-Roman alphabets and characters.</body>
</ownedComment>
</packagedElement>
<packagedElement xmi:type="uml:PrimitiveType" xmi:id="_fwCKcDN8EeOoAatxCmIbzQ" name="Throwable"/>
<packagedElement xmi:type="uml:PrimitiveType" xmi:id="_fs-PYTN8EeOoAatxCmIbzQ" name="UnlimitedNatural">
<ownedComment xmi:id="_fs-PYjN8EeOoAatxCmIbzQ" annotatedElement="_fs-PYTN8EeOoAatxCmIbzQ">
<body>An unlimited natural is a primitive type representing unlimited natural values.</body>
</ownedComment>
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_fwNJkDN8EeOoAatxCmIbzQ" name="AssociativityKind">
<ownedLiteral xmi:id="_fwNJkTN8EeOoAatxCmIbzQ" name="Left"/>
<ownedLiteral xmi:id="_fwNJkjN8EeOoAatxCmIbzQ" name="Right"/>
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_fu4T4DN8EeOoAatxCmIbzQ" name="CollectionKind">
<ownedLiteral xmi:id="_fu4T4TN8EeOoAatxCmIbzQ" name="Collection"/>
<ownedLiteral xmi:id="_fu4T4jN8EeOoAatxCmIbzQ" name="Set"/>
<ownedLiteral xmi:id="_fu4T4zN8EeOoAatxCmIbzQ" name="OrderedSet"/>
<ownedLiteral xmi:id="_fu4T5DN8EeOoAatxCmIbzQ" name="Bag"/>
<ownedLiteral xmi:id="_fu4T5TN8EeOoAatxCmIbzQ" name="Sequence"/>
</packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_ftkFQDN8EeOoAatxCmIbzQ" name="PseudostateKind" visibility="private">
<ownedComment xmi:id="_ftkFQTN8EeOoAatxCmIbzQ" annotatedElement="_ftkFQDN8EeOoAatxCmIbzQ">
<body>PseudostateKind is an enumeration type.</body>
</ownedComment>
<ownedLiteral xmi:id="_ftkFQjN8EeOoAatxCmIbzQ" name="initial">
<ownedComment xmi:id="_ftkFQzN8EeOoAatxCmIbzQ" annotatedElement="_ftkFQjN8EeOoAatxCmIbzQ">
<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:id="_ftkFRDN8EeOoAatxCmIbzQ" name="deepHistory">
<ownedComment xmi:id="_ftkFRTN8EeOoAatxCmIbzQ" annotatedElement="_ftkFRDN8EeOoAatxCmIbzQ">
<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:id="_ftkFRjN8EeOoAatxCmIbzQ" name="shallowHistory">
<ownedComment xmi:id="_ftkFRzN8EeOoAatxCmIbzQ" annotatedElement="_ftkFRjN8EeOoAatxCmIbzQ">
<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:id="_ftkFSDN8EeOoAatxCmIbzQ" name="join">
<ownedComment xmi:id="_ftkFSTN8EeOoAatxCmIbzQ" annotatedElement="_ftkFSDN8EeOoAatxCmIbzQ">
<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:id="_ftkFSjN8EeOoAatxCmIbzQ" name="fork">
<ownedComment xmi:id="_ftkFSzN8EeOoAatxCmIbzQ" annotatedElement="_ftkFSjN8EeOoAatxCmIbzQ">
<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:id="_ftkFTDN8EeOoAatxCmIbzQ" name="junction">
<ownedComment xmi:id="_ftkFTTN8EeOoAatxCmIbzQ" annotatedElement="_ftkFTDN8EeOoAatxCmIbzQ">
<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:id="_ftkFTjN8EeOoAatxCmIbzQ" name="choice">
<ownedComment xmi:id="_ftkFTzN8EeOoAatxCmIbzQ" annotatedElement="_ftkFTjN8EeOoAatxCmIbzQ">
<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:id="_ftkFUDN8EeOoAatxCmIbzQ" name="entryPoint">
<ownedComment xmi:id="_ftkFUTN8EeOoAatxCmIbzQ" annotatedElement="_ftkFUDN8EeOoAatxCmIbzQ">
<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:id="_ftkFUjN8EeOoAatxCmIbzQ" name="exitPoint">
<ownedComment xmi:id="_ftkFUzN8EeOoAatxCmIbzQ" annotatedElement="_ftkFUjN8EeOoAatxCmIbzQ">
<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:id="_ftkFVDN8EeOoAatxCmIbzQ" name="terminate">
<ownedComment xmi:id="_ftkFVTN8EeOoAatxCmIbzQ" annotatedElement="_ftkFVDN8EeOoAatxCmIbzQ">
<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="_ftlTYDN8EeOoAatxCmIbzQ" name="TransitionKind" visibility="private">
<ownedComment xmi:id="_ftlTYTN8EeOoAatxCmIbzQ" annotatedElement="_ftlTYDN8EeOoAatxCmIbzQ">
<body>TransitionKind is an enumeration type.</body>
</ownedComment>
<ownedLiteral xmi:id="_ftlTaDN8EeOoAatxCmIbzQ" name="internal">
<ownedComment xmi:id="_ftlTaTN8EeOoAatxCmIbzQ" annotatedElement="_ftlTaDN8EeOoAatxCmIbzQ">
<body>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:id="_ftlTajN8EeOoAatxCmIbzQ" name="local">
<ownedComment xmi:id="_ftlTazN8EeOoAatxCmIbzQ" annotatedElement="_ftlTajN8EeOoAatxCmIbzQ">
<body>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:id="_ftlTbDN8EeOoAatxCmIbzQ" name="external">
<ownedComment xmi:id="_ftlTbTN8EeOoAatxCmIbzQ" annotatedElement="_ftlTbDN8EeOoAatxCmIbzQ">
<body>Implies that the transition, if triggered, will exit the composite (source) state.</body>
</ownedComment>
</ownedLiteral>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvmsoDN8EeOoAatxCmIbzQ" name="Annotation">
<generalization xmi:id="_fvmsoTN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvmsojN8EeOoAatxCmIbzQ" name="ownedContent" type="_fsXyczN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvmsozN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvmspDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvmspTN8EeOoAatxCmIbzQ" name="ownedDetail" type="_fvnTsDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvmspjN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvmspzN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvmsqDN8EeOoAatxCmIbzQ" name="reference" type="_fsXyczN8EeOoAatxCmIbzQ" isOrdered="true">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvmsqTN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvmsqjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvVm4DN8EeOoAatxCmIbzQ" name="AnyType">
<generalization xmi:id="_fvVm4TN8EeOoAatxCmIbzQ" general="_fsKXEDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fukK0DN8EeOoAatxCmIbzQ" name="AssociationClass">
<generalization xmi:id="_fukK0TN8EeOoAatxCmIbzQ" general="_fsKXEDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fukK0jN8EeOoAatxCmIbzQ" name="unownedAttribute" type="_fsRr0DN8EeOoAatxCmIbzQ" association="_fumAADN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fukK0zN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fukK1DN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvFvQDN8EeOoAatxCmIbzQ" name="AssociationClassCallExp">
<generalization xmi:id="_fvFvQTN8EeOoAatxCmIbzQ" general="_fvFIMDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvFvQjN8EeOoAatxCmIbzQ" name="referredAssociationClass" type="_fukK0DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvFvQzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvWN8DN8EeOoAatxCmIbzQ" name="BagType">
<generalization xmi:id="_fvWN8TN8EeOoAatxCmIbzQ" general="_fvWN8jN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ftvEYDN8EeOoAatxCmIbzQ" name="Behavior" isAbstract="true">
<generalization xmi:id="_ftvEYTN8EeOoAatxCmIbzQ" general="_fsKXEDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu3FwDN8EeOoAatxCmIbzQ" name="BooleanLiteralExp">
<generalization xmi:id="_fu3FwTN8EeOoAatxCmIbzQ" general="_fu-agDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu3FwjN8EeOoAatxCmIbzQ" name="booleanSymbol" type="_fs9oUjN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu3s0DN8EeOoAatxCmIbzQ" name="CallExp" isAbstract="true">
<generalization xmi:id="_fu3s0TN8EeOoAatxCmIbzQ" general="_fu4T5jN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu3s0jN8EeOoAatxCmIbzQ" name="source" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu3s0zN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fu3s1DN8EeOoAatxCmIbzQ" name="implicit" type="_fs9oUjN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu3s1TN8EeOoAatxCmIbzQ"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fu3s1jN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsBNIDN8EeOoAatxCmIbzQ" name="CallOperationAction">
<generalization xmi:id="_fsBNITN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsBNIjN8EeOoAatxCmIbzQ" name="operation" type="_fsGssDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsKXEDN8EeOoAatxCmIbzQ" name="Class">
<ownedComment xmi:id="_fsKXETN8EeOoAatxCmIbzQ" annotatedElement="_fsKXEDN8EeOoAatxCmIbzQ">
<body>A class is a type that has objects as its instances.</body>
</ownedComment>
<generalization xmi:id="_fsKXEjN8EeOoAatxCmIbzQ" general="_fsS58DN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fs4IwDN8EeOoAatxCmIbzQ" general="_fstwsDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsKXEzN8EeOoAatxCmIbzQ" name="isAbstract" type="_fs9oUjN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsKXFDN8EeOoAatxCmIbzQ" annotatedElement="_fsKXEzN8EeOoAatxCmIbzQ">
<body>True when a class is abstract.</body>
</ownedComment>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fsKXFTN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsKXFjN8EeOoAatxCmIbzQ" name="ownedAttribute" type="_fsRr0DN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite"
association="_fsZnpDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsKXFzN8EeOoAatxCmIbzQ" annotatedElement="_fsKXFjN8EeOoAatxCmIbzQ">
<body>The attributes owned by a class. These do not include the inherited attributes. Attributes are represented by instances of Property.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsKXGDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsKXGTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsKXGjN8EeOoAatxCmIbzQ" name="ownedOperation" type="_fsGssDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite"
association="_fsaOtDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsKXGzN8EeOoAatxCmIbzQ" annotatedElement="_fsKXGjN8EeOoAatxCmIbzQ">
<body>The operations owned by a class. These do not include the inherited operations.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsKXHDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsKXHTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsKXHjN8EeOoAatxCmIbzQ" name="superClass" type="_fsKXEDN8EeOoAatxCmIbzQ" association="_fsa1wDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsKXHzN8EeOoAatxCmIbzQ" annotatedElement="_fsKXHjN8EeOoAatxCmIbzQ">
<body>The immediate superclasses of a class, from which the class inherits.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsKXIDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsKXITN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fs4IwTN8EeOoAatxCmIbzQ" name="nestedType" type="_fsKXEDN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fs4v0DN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fs4v0TN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftvEYjN8EeOoAatxCmIbzQ" name="ownedBehavior" type="_ftvEYDN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftvEYzN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftvEZDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fv0vEDN8EeOoAatxCmIbzQ" name="isInterface" type="_fs9oUjN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fv0vETN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwDYkDN8EeOoAatxCmIbzQ" name="instanceClassName" type="_fs2TkDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwDYkTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu_ooDN8EeOoAatxCmIbzQ" name="CollectionItem">
<generalization xmi:id="_fu_ooTN8EeOoAatxCmIbzQ" general="_fu_BljN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu_oojN8EeOoAatxCmIbzQ" name="item" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu_BkDN8EeOoAatxCmIbzQ" name="CollectionLiteralExp">
<generalization xmi:id="_fu_BkTN8EeOoAatxCmIbzQ" general="_fu9zczN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu_BkjN8EeOoAatxCmIbzQ" name="kind" type="_fu4T4DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu_BkzN8EeOoAatxCmIbzQ" name="part" type="_fu_BljN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu_BlDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fu_BlTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu_BljN8EeOoAatxCmIbzQ" name="CollectionLiteralPart" isAbstract="true">
<generalization xmi:id="_fu_BlzN8EeOoAatxCmIbzQ" general="_fsUIEDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu_oozN8EeOoAatxCmIbzQ" name="CollectionRange">
<generalization xmi:id="_fu_opDN8EeOoAatxCmIbzQ" general="_fu_BljN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu_opTN8EeOoAatxCmIbzQ" name="first" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite"/>
<ownedAttribute xmi:id="_fu_opjN8EeOoAatxCmIbzQ" name="last" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvWN8jN8EeOoAatxCmIbzQ" name="CollectionType">
<generalization xmi:id="_fvWN8zN8EeOoAatxCmIbzQ" general="_fsXycDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvWN9DN8EeOoAatxCmIbzQ" name="elementType" type="_fsS58DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvWN9TN8EeOoAatxCmIbzQ" name="lower" type="_fs9oUDN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fvWN9jN8EeOoAatxCmIbzQ" value="0"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvWN9zN8EeOoAatxCmIbzQ" name="upper" type="_fs-PYTN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fvWN-DN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsYZgDN8EeOoAatxCmIbzQ" name="Comment">
<ownedComment xmi:id="_fsYZgTN8EeOoAatxCmIbzQ" annotatedElement="_fsYZgDN8EeOoAatxCmIbzQ">
<body>A comment is a textual annotation that can be attached to a set of elements.</body>
</ownedComment>
<generalization xmi:id="_fsYZgjN8EeOoAatxCmIbzQ" general="_fsXyczN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsYZgzN8EeOoAatxCmIbzQ" name="body" type="_fs2TkDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsYZhDN8EeOoAatxCmIbzQ" annotatedElement="_fsYZgzN8EeOoAatxCmIbzQ">
<body>Specifies a string that is the comment.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsYZhTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsYZhjN8EeOoAatxCmIbzQ" name="annotatedElement" type="_fsXyczN8EeOoAatxCmIbzQ" association="_fscD4DN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsYZhzN8EeOoAatxCmIbzQ" annotatedElement="_fsYZhjN8EeOoAatxCmIbzQ">
<body>References the Element(s) being commented.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsYZiDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsYZiTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ftfz0DN8EeOoAatxCmIbzQ" name="ConnectionPointReference">
<ownedComment xmi:id="_ftfz0TN8EeOoAatxCmIbzQ" annotatedElement="_ftfz0DN8EeOoAatxCmIbzQ">
<body>A connection point reference represents a usage (as part of a submachine state) of an entry/exit point defined in the statemachine reference by the submachine state.</body>
</ownedComment>
<generalization xmi:id="_ftfz2DN8EeOoAatxCmIbzQ" general="_ftbiYDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_ftfz2TN8EeOoAatxCmIbzQ" name="entry" type="_ftcwgDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftfz2jN8EeOoAatxCmIbzQ" annotatedElement="_ftfz2TN8EeOoAatxCmIbzQ">
<body>The entryPoint kind pseudo states corresponding to this connection point.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftfz2zN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftfz3DN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftfz3TN8EeOoAatxCmIbzQ" name="state" type="_ftVbwDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftfz3jN8EeOoAatxCmIbzQ" annotatedElement="_ftfz3TN8EeOoAatxCmIbzQ">
<body>The State in which the connection point refreshens are defined.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftfz3zN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftfz4DN8EeOoAatxCmIbzQ" name="exit" type="_ftcwgDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftfz4TN8EeOoAatxCmIbzQ" annotatedElement="_ftfz4DN8EeOoAatxCmIbzQ">
<body>The exitPoints kind pseudo states corresponding to this connection point.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftfz4jN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftfz4zN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsj_sDN8EeOoAatxCmIbzQ" name="Constraint">
<ownedComment xmi:id="_fsj_sTN8EeOoAatxCmIbzQ" annotatedElement="_fsj_sDN8EeOoAatxCmIbzQ">
<body>A constraint is a condition or restriction expressed in natural language text or in a machine readable language for the purpose of declaring some of the semantics of an element.</body>
</ownedComment>
<generalization xmi:id="_fsj_uDN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsj_uTN8EeOoAatxCmIbzQ" name="constrainedElement" type="_fsXyczN8EeOoAatxCmIbzQ" isOrdered="true">
<ownedComment xmi:id="_fsj_ujN8EeOoAatxCmIbzQ" annotatedElement="_fsj_uTN8EeOoAatxCmIbzQ">
<body>The ordered set of Elements referenced by this Constraint.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsj_uzN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsj_vDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsj_vTN8EeOoAatxCmIbzQ" name="specification" type="_fsr7gDN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_fsj_vjN8EeOoAatxCmIbzQ" annotatedElement="_fsj_vTN8EeOoAatxCmIbzQ">
<body>A condition that must be true when evaluated in order for the constraint to be satisfied.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsj_vzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsj_wDN8EeOoAatxCmIbzQ" name="context" type="_fstwsDN8EeOoAatxCmIbzQ" isDerived="true">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsj_wTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fv-gEDN8EeOoAatxCmIbzQ" name="isCallable" type="_fs9oUjN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fv-gETN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvIykDN8EeOoAatxCmIbzQ" name="ConstructorExp">
<generalization xmi:id="_fvIykTN8EeOoAatxCmIbzQ" general="_fu4T5jN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvIykjN8EeOoAatxCmIbzQ" name="part" type="_fvJZoDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvIykzN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvIylDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvIylTN8EeOoAatxCmIbzQ" name="value" type="_fs2TkDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvIyljN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvJZoDN8EeOoAatxCmIbzQ" name="ConstructorPart">
<generalization xmi:id="_fvJZoTN8EeOoAatxCmIbzQ" general="_fsUIEDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvJZojN8EeOoAatxCmIbzQ" name="referredProperty" type="_fsRr0DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvJZozN8EeOoAatxCmIbzQ" name="initExpression" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsXycDN8EeOoAatxCmIbzQ" name="DataType">
<ownedComment xmi:id="_fsXycTN8EeOoAatxCmIbzQ" annotatedElement="_fsXycDN8EeOoAatxCmIbzQ">
<body>DataType is an abstract class that acts as a common superclass for different kinds of data types.</body>
</ownedComment>
<generalization xmi:id="_fsXycjN8EeOoAatxCmIbzQ" general="_fsS58DN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fun1MDN8EeOoAatxCmIbzQ" general="_fsKXEDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fv19MDN8EeOoAatxCmIbzQ" name="isSerializable" type="_fs9oUjN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fv19MTN8EeOoAatxCmIbzQ" value="true"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fv4ZcDN8EeOoAatxCmIbzQ" name="behavioralType" type="_fsS58DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fv4ZcTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvnTsDN8EeOoAatxCmIbzQ" name="Detail">
<generalization xmi:id="_fvnTsTN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvnTsjN8EeOoAatxCmIbzQ" name="value" type="_fs2TkDN8EeOoAatxCmIbzQ">
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvnTszN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvvPgDN8EeOoAatxCmIbzQ" name="DynamicElement">
<generalization xmi:id="_fvvPgTN8EeOoAatxCmIbzQ" general="_fsXyczN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvvPgjN8EeOoAatxCmIbzQ" name="metaType" type="_fsS58DN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvvPgzN8EeOoAatxCmIbzQ" name="DynamicProperty">
<generalization xmi:id="_fvvPhDN8EeOoAatxCmIbzQ" general="_fsXyczN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvvPhTN8EeOoAatxCmIbzQ" name="referredProperty" type="_fsRr0DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvv2kDN8EeOoAatxCmIbzQ" name="default" type="_fs2TkDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvv2kTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvwdoDN8EeOoAatxCmIbzQ" name="DynamicType">
<generalization xmi:id="_fvwdoTN8EeOoAatxCmIbzQ" general="_fvvPgDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fvwdojN8EeOoAatxCmIbzQ" general="_fsS58DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvwdozN8EeOoAatxCmIbzQ" name="metaType" type="_fsS58DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvwdpDN8EeOoAatxCmIbzQ" name="ownedProperty" type="_fvvPgzN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvwdpTN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvwdpjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsXyczN8EeOoAatxCmIbzQ" clientDependency="_fwsRwDN8EeOoAatxCmIbzQ" name="Element" isAbstract="true">
<ownedComment xmi:id="_fsXydDN8EeOoAatxCmIbzQ" annotatedElement="_fsXyczN8EeOoAatxCmIbzQ">
<body>An element is a constituent of a model.</body>
</ownedComment>
<ownedAttribute xmi:id="_fsXydTN8EeOoAatxCmIbzQ" name="ownedComment" type="_fsYZgDN8EeOoAatxCmIbzQ" aggregation="composite" association="_fscD5DN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsXydjN8EeOoAatxCmIbzQ" annotatedElement="_fsXydTN8EeOoAatxCmIbzQ">
<body>The Comments owned by this element.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsXydzN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsXyeDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwju4DN8EeOoAatxCmIbzQ" name="extension" type="_fwkV8DN8EeOoAatxCmIbzQ" aggregation="composite" association="_fwonYDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwju4TN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fwju4jN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<interfaceRealization xmi:id="_fwsRwDN8EeOoAatxCmIbzQ" client="_fsXyczN8EeOoAatxCmIbzQ" supplier="_fws40DN8EeOoAatxCmIbzQ" contract="_fws40DN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fwkV8DN8EeOoAatxCmIbzQ" name="ElementExtension">
<generalization xmi:id="_fwkV8TN8EeOoAatxCmIbzQ" general="_fsS58DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fwkV8jN8EeOoAatxCmIbzQ" name="base" type="_fsXyczN8EeOoAatxCmIbzQ" association="_fwonYDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fwkV8zN8EeOoAatxCmIbzQ" name="stereotype" type="_fsS58DN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu468zN8EeOoAatxCmIbzQ" name="EnumLiteralExp">
<generalization xmi:id="_fu469DN8EeOoAatxCmIbzQ" general="_fu9zczN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu469TN8EeOoAatxCmIbzQ" name="referredEnumLiteral" type="_fsV9QDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu469jN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsVWMDN8EeOoAatxCmIbzQ" name="Enumeration">
<ownedComment xmi:id="_fsVWMTN8EeOoAatxCmIbzQ" annotatedElement="_fsVWMDN8EeOoAatxCmIbzQ">
<body>An enumeration defines a set of literals that can be used as its values.</body>
</ownedComment>
<generalization xmi:id="_fsVWMjN8EeOoAatxCmIbzQ" general="_fsXycDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsVWMzN8EeOoAatxCmIbzQ" name="ownedLiteral" type="_fsV9QDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite"
association="_fsbc0DN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsVWNDN8EeOoAatxCmIbzQ" annotatedElement="_fsVWMzN8EeOoAatxCmIbzQ">
<body>The ordered set of literals for this Enumeration.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsVWNTN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsVWNjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsV9QDN8EeOoAatxCmIbzQ" name="EnumerationLiteral">
<ownedComment xmi:id="_fsV9QTN8EeOoAatxCmIbzQ" annotatedElement="_fsV9QDN8EeOoAatxCmIbzQ">
<body>An enumeration literal is a value of an enumeration.</body>
</ownedComment>
<generalization xmi:id="_fsV9QjN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsV9QzN8EeOoAatxCmIbzQ" name="enumeration" type="_fsVWMDN8EeOoAatxCmIbzQ" association="_fsbc0DN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsV9RDN8EeOoAatxCmIbzQ" annotatedElement="_fsV9QzN8EeOoAatxCmIbzQ">
<body>The Enumeration that this EnumerationLiteral is a member of.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsV9RTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fv5AgDN8EeOoAatxCmIbzQ" name="value" type="_fs9oUDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fv5AgTN8EeOoAatxCmIbzQ"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fv5AgjN8EeOoAatxCmIbzQ" value="0"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu1QkDN8EeOoAatxCmIbzQ" name="ExpressionInOCL">
<generalization xmi:id="_fvCE4DN8EeOoAatxCmIbzQ" general="_fsr7gDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvCE4TN8EeOoAatxCmIbzQ" name="bodyExpression" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite"/>
<ownedAttribute xmi:id="_fvCE4jN8EeOoAatxCmIbzQ" name="contextVariable" type="_fu6JFDN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvCE4zN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvCE5DN8EeOoAatxCmIbzQ" name="resultVariable" type="_fu6JFDN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvCE5TN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvCr8DN8EeOoAatxCmIbzQ" name="parameterVariable" type="_fu6JFDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvCr8TN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvCr8jN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvpv8DN8EeOoAatxCmIbzQ" name="messageExpression" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvpv8TN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fuCmYDN8EeOoAatxCmIbzQ" name="Feature" isAbstract="true">
<generalization xmi:id="_fuCmYTN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fwp1gDN8EeOoAatxCmIbzQ" general="_fwrqsDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fuCmYjN8EeOoAatxCmIbzQ" name="isStatic" type="_fs9oUjN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fwA8UDN8EeOoAatxCmIbzQ" name="implementationClass" type="_fs2TkDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwA8UTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwA8UjN8EeOoAatxCmIbzQ" name="implementation" type="_fwBjYDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwA8UzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvD6EjN8EeOoAatxCmIbzQ" name="FeatureCallExp" isAbstract="true">
<generalization xmi:id="_fvEhIDN8EeOoAatxCmIbzQ" general="_fu3s0DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvEhITN8EeOoAatxCmIbzQ" name="isPre" type="_fs9oUjN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fvEhIjN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ftelsDN8EeOoAatxCmIbzQ" name="FinalState">
<ownedComment xmi:id="_ftelsTN8EeOoAatxCmIbzQ" annotatedElement="_ftelsDN8EeOoAatxCmIbzQ">
<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>
<generalization xmi:id="_ftelxDN8EeOoAatxCmIbzQ" general="_ftVbwDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu5iADN8EeOoAatxCmIbzQ" name="IfExp">
<generalization xmi:id="_fu5iATN8EeOoAatxCmIbzQ" general="_fu4T5jN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu5iAjN8EeOoAatxCmIbzQ" name="condition" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite"/>
<ownedAttribute xmi:id="_fu5iAzN8EeOoAatxCmIbzQ" name="thenExpression" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite"/>
<ownedAttribute xmi:id="_fu5iBDN8EeOoAatxCmIbzQ" name="elseExpression" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsypMDN8EeOoAatxCmIbzQ" name="Import">
<generalization xmi:id="_fsypMTN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsypMjN8EeOoAatxCmIbzQ" name="importedNamespace" type="_fstwsDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu8lUzN8EeOoAatxCmIbzQ" name="IntegerLiteralExp">
<generalization xmi:id="_fu8lVDN8EeOoAatxCmIbzQ" general="_fu-agjN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu8lVTN8EeOoAatxCmIbzQ" name="integerSymbol" type="_fs9oUDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvD6EDN8EeOoAatxCmIbzQ" name="InvalidLiteralExp">
<generalization xmi:id="_fvD6ETN8EeOoAatxCmIbzQ" general="_fu9zczN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvW1ADN8EeOoAatxCmIbzQ" name="InvalidType">
<generalization xmi:id="_fvW1ATN8EeOoAatxCmIbzQ" general="_fsKXEDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvHkcTN8EeOoAatxCmIbzQ" clientDependency="_fwe2YDN8EeOoAatxCmIbzQ" name="IterateExp">
<generalization xmi:id="_fvHkcjN8EeOoAatxCmIbzQ" general="_fu7-QDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvHkczN8EeOoAatxCmIbzQ" name="result" type="_fu6JFDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvHkdDN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<interfaceRealization xmi:id="_fwe2YDN8EeOoAatxCmIbzQ" client="_fvHkcTN8EeOoAatxCmIbzQ" supplier="_fwgrkTN8EeOoAatxCmIbzQ" contract="_fwgrkTN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvRVcDN8EeOoAatxCmIbzQ" name="Iteration">
<generalization xmi:id="_fvRVcTN8EeOoAatxCmIbzQ" general="_fsGssDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvRVcjN8EeOoAatxCmIbzQ" name="ownedIterator" type="_fsP2oDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvRVczN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvRVdDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvRVdTN8EeOoAatxCmIbzQ" name="ownedAccumulator" type="_fsP2oDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvRVdjN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvRVdzN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvILgDN8EeOoAatxCmIbzQ" clientDependency="_fwfdcDN8EeOoAatxCmIbzQ" name="IteratorExp">
<generalization xmi:id="_fvILgTN8EeOoAatxCmIbzQ" general="_fu7-QDN8EeOoAatxCmIbzQ"/>
<interfaceRealization xmi:id="_fwfdcDN8EeOoAatxCmIbzQ" client="_fvILgDN8EeOoAatxCmIbzQ" supplier="_fwgrkTN8EeOoAatxCmIbzQ" contract="_fwgrkTN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvafYDN8EeOoAatxCmIbzQ" name="LambdaType">
<generalization xmi:id="_fvafYTN8EeOoAatxCmIbzQ" general="_fsXycDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvafYjN8EeOoAatxCmIbzQ" name="contextType" type="_fsS58DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvafYzN8EeOoAatxCmIbzQ" name="parameterType" type="_fsS58DN8EeOoAatxCmIbzQ" isOrdered="true" isUnique="false">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvafZDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvafZTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvafZjN8EeOoAatxCmIbzQ" name="resultType" type="_fsS58DN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu6JEDN8EeOoAatxCmIbzQ" name="LetExp">
<generalization xmi:id="_fu6JETN8EeOoAatxCmIbzQ" general="_fu4T5jN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu6JEjN8EeOoAatxCmIbzQ" name="in" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite"/>
<ownedAttribute xmi:id="_fu6JEzN8EeOoAatxCmIbzQ" name="variable" type="_fu6JFDN8EeOoAatxCmIbzQ" aggregation="composite"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvR8gDN8EeOoAatxCmIbzQ" name="Library">
<generalization xmi:id="_fvR8gTN8EeOoAatxCmIbzQ" general="_fsWkUDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fwQM4DN8EeOoAatxCmIbzQ" name="ownedPrecedence" type="_fwQz8DN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwQM4TN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fwQM4jN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu9zczN8EeOoAatxCmIbzQ" name="LiteralExp" isAbstract="true">
<generalization xmi:id="_fu9zdDN8EeOoAatxCmIbzQ" general="_fu4T5jN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu7-QDN8EeOoAatxCmIbzQ" name="LoopExp" isAbstract="true">
<generalization xmi:id="_fu7-QTN8EeOoAatxCmIbzQ" general="_fu3s0DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu7-QjN8EeOoAatxCmIbzQ" name="body" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite"/>
<ownedAttribute xmi:id="_fu7-QzN8EeOoAatxCmIbzQ" name="iterator" type="_fu6JFDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu7-RDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fu7-RTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fu7-RjN8EeOoAatxCmIbzQ" name="referredIteration" type="_fvRVcDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu7-RzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvGWUDN8EeOoAatxCmIbzQ" name="MessageExp">
<generalization xmi:id="_fvGWUTN8EeOoAatxCmIbzQ" general="_fu4T5jN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvGWUjN8EeOoAatxCmIbzQ" name="target" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite"/>
<ownedAttribute xmi:id="_fvGWUzN8EeOoAatxCmIbzQ" name="argument" type="_fu4T5jN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvGWVDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvGWVTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvGWVjN8EeOoAatxCmIbzQ" name="calledOperation" type="_fsBNIDN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvGWVzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvGWWDN8EeOoAatxCmIbzQ" name="sentSignal" type="_fsGssTN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvGWWTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvbGcDN8EeOoAatxCmIbzQ" name="MessageType">
<generalization xmi:id="_fvbGcTN8EeOoAatxCmIbzQ" general="_fsS58DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvbGcjN8EeOoAatxCmIbzQ" name="referredSignal" type="_fsHTwDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvbGczN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvbGdDN8EeOoAatxCmIbzQ" name="referredOperation" type="_fsGssDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvbGdTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvbtgDN8EeOoAatxCmIbzQ" name="Metaclass">
<ownedTemplateSignature xmi:type="uml:RedefinableTemplateSignature" xmi:id="_fvbtgTN8EeOoAatxCmIbzQ" parameter="_fvbtgjN8EeOoAatxCmIbzQ">
<ownedParameter xmi:type="uml:ClassifierTemplateParameter" xmi:id="_fvbtgjN8EeOoAatxCmIbzQ" parameteredElement="_fvbtgzN8EeOoAatxCmIbzQ">
<ownedParameteredElement xmi:type="uml:Class" xmi:id="_fvbtgzN8EeOoAatxCmIbzQ" name="T" templateParameter="_fvbtgjN8EeOoAatxCmIbzQ"/>
</ownedParameter>
</ownedTemplateSignature>
<generalization xmi:id="_fvbthDN8EeOoAatxCmIbzQ" general="_fsKXEDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvbthTN8EeOoAatxCmIbzQ" name="instanceType" type="_fsS58DN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsGFoDN8EeOoAatxCmIbzQ" clientDependency="_fwHC8TN8EeOoAatxCmIbzQ" name="NamedElement"
isAbstract="true">
<ownedComment xmi:id="_fsS59jN8EeOoAatxCmIbzQ" annotatedElement="_fsGFoDN8EeOoAatxCmIbzQ">
<body>A named element represents an element with a name.</body>
</ownedComment>
<generalization xmi:id="_fsThADN8EeOoAatxCmIbzQ" general="_fsXyczN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsThATN8EeOoAatxCmIbzQ" name="name" type="_fs2TkDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsThAjN8EeOoAatxCmIbzQ" annotatedElement="_fsThATN8EeOoAatxCmIbzQ">
<body>The name of the NamedElement.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsThAzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuDNcDN8EeOoAatxCmIbzQ" name="isStatic" type="_fs9oUjN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvoh0DN8EeOoAatxCmIbzQ" name="ownedAnnotation" type="_fvmsoDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvoh0TN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvoh0jN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<interfaceRealization xmi:id="_fwHC8TN8EeOoAatxCmIbzQ" name="" client="_fsGFoDN8EeOoAatxCmIbzQ" supplier="_fwHC8DN8EeOoAatxCmIbzQ"
contract="_fwHC8DN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fstwsDN8EeOoAatxCmIbzQ" name="Namespace" isAbstract="true">
<generalization xmi:id="_fs6lADN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fstwsTN8EeOoAatxCmIbzQ" name="ownedRule" type="_fsj_sDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fstwsjN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fstwszN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvFIMDN8EeOoAatxCmIbzQ" name="NavigationCallExp" isAbstract="true">
<generalization xmi:id="_fvFIMTN8EeOoAatxCmIbzQ" general="_fvD6EjN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvFIMjN8EeOoAatxCmIbzQ" name="qualifier" type="_fu4T5jN8EeOoAatxCmIbzQ" isOrdered="true">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvFIMzN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvFINDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvFINTN8EeOoAatxCmIbzQ" name="navigationSource" type="_fsRr0DN8EeOoAatxCmIbzQ" isOrdered="true">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvFINjN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvBd0DN8EeOoAatxCmIbzQ" name="NullLiteralExp">
<generalization xmi:id="_fvBd0TN8EeOoAatxCmIbzQ" general="_fu-agDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu-agjN8EeOoAatxCmIbzQ" name="NumericLiteralExp" isAbstract="true">
<generalization xmi:id="_fu-agzN8EeOoAatxCmIbzQ" general="_fu-agDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu4T5jN8EeOoAatxCmIbzQ" name="OCLExpression" isAbstract="true">
<generalization xmi:id="_fu4T5zN8EeOoAatxCmIbzQ" general="_fsUIEDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsr7gDN8EeOoAatxCmIbzQ" name="OpaqueExpression">
<ownedComment xmi:id="_fsr7gTN8EeOoAatxCmIbzQ" annotatedElement="_fsr7gDN8EeOoAatxCmIbzQ">
<body>An opaque expression is an uninterpreted textual statement that denotes a (possibly empty) set of values when evaluated in a context.</body>
</ownedComment>
<generalization xmi:id="_fsr7hTN8EeOoAatxCmIbzQ" general="_fsoRIDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsr7hjN8EeOoAatxCmIbzQ" name="body" type="_fs2TkDN8EeOoAatxCmIbzQ" isOrdered="true" isUnique="false" aggregation="composite">
<ownedComment xmi:id="_fsr7hzN8EeOoAatxCmIbzQ" annotatedElement="_fsr7hjN8EeOoAatxCmIbzQ">
<body>The text of the expression, possibly in multiple languages.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsr7iDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsr7iTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsr7ijN8EeOoAatxCmIbzQ" name="language" type="_fs2TkDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<ownedComment xmi:id="_fsr7izN8EeOoAatxCmIbzQ" annotatedElement="_fsr7ijN8EeOoAatxCmIbzQ">
<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>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsr7jDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsr7jTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvq-EDN8EeOoAatxCmIbzQ" name="message" type="_fs2TkDN8EeOoAatxCmIbzQ" isOrdered="true" isUnique="false">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvq-ETN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvq-EjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsGssDN8EeOoAatxCmIbzQ" name="Operation">
<ownedComment xmi:id="_fsLlMDN8EeOoAatxCmIbzQ" annotatedElement="_fsGssDN8EeOoAatxCmIbzQ">
<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:id="_fuUTMDN8EeOoAatxCmIbzQ" annotatedElement="_fsGssDN8EeOoAatxCmIbzQ">
<body>Operation specializes TemplateableElement in order to support specification of template operations and bound operations. Operation specializes ParameterableElement to specify that an operation can be exposed as a formal template parameter, and provided as an actual parameter in a binding of a template.</body>
</ownedComment>
<generalization xmi:id="_fsMMQDN8EeOoAatxCmIbzQ" general="_fsUIEDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fs7MEDN8EeOoAatxCmIbzQ" general="_fstwsDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fuD0gDN8EeOoAatxCmIbzQ" general="_fuCmYDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fuUTMTN8EeOoAatxCmIbzQ" general="_fuQo0DN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fuUTMjN8EeOoAatxCmIbzQ" general="_fuOzoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsMzUDN8EeOoAatxCmIbzQ" name="raisedException" type="_fsS58DN8EeOoAatxCmIbzQ" association="_fsZnoDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsMzUTN8EeOoAatxCmIbzQ" annotatedElement="_fsMzUDN8EeOoAatxCmIbzQ">
<body>The exceptions that are declared as possible during an invocation of the operation.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsMzUjN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsMzUzN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsNaYDN8EeOoAatxCmIbzQ" name="ownedParameter" type="_fsP2oDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite"
association="_fsaOszN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsNaYTN8EeOoAatxCmIbzQ" annotatedElement="_fsNaYDN8EeOoAatxCmIbzQ">
<body>The parameters to the operation.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsNaYjN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsNaYzN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsOogDN8EeOoAatxCmIbzQ" name="class" type="_fsKXEDN8EeOoAatxCmIbzQ" association="_fsaOtDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsOogTN8EeOoAatxCmIbzQ" annotatedElement="_fsOogDN8EeOoAatxCmIbzQ">
<body>The class that owns the operation.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsOogjN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuUTMzN8EeOoAatxCmIbzQ" name="templateParameter" type="_fuWIYDN8EeOoAatxCmIbzQ" redefinedProperty="_fuQo0zN8EeOoAatxCmIbzQ"
association="_fuc2FDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuUTNDN8EeOoAatxCmIbzQ" annotatedElement="_fuUTMzN8EeOoAatxCmIbzQ">
<body>The template parameter that exposes this element as a formal parameter.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuUTNTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fun1MTN8EeOoAatxCmIbzQ" name="owningType" type="_fsS58DN8EeOoAatxCmIbzQ" association="_fustsTN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fun1MjN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuui4DN8EeOoAatxCmIbzQ" name="precondition" type="_fsj_sDN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuui4TN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuui4jN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuw_IDN8EeOoAatxCmIbzQ" name="postcondition" type="_fsj_sDN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuw_ITN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuw_IjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuw_IzN8EeOoAatxCmIbzQ" name="bodyExpression" type="_fsr7gDN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuw_JDN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwOXsDN8EeOoAatxCmIbzQ" name="isInvalidating" type="_fs9oUjN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fwOXsTN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwOXsjN8EeOoAatxCmIbzQ" name="isValidating" type="_fs9oUjN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fwOXszN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwO-wDN8EeOoAatxCmIbzQ" name="precedence" type="_fwQz8DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwO-wTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwZ94TN8EeOoAatxCmIbzQ" name="redefinedOperation" type="_fsGssDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwZ94jN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fwZ94zN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu9MYDN8EeOoAatxCmIbzQ" clientDependency="_fwgEgDN8EeOoAatxCmIbzQ" name="OperationCallExp">
<generalization xmi:id="_fu9MYTN8EeOoAatxCmIbzQ" general="_fvD6EjN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu9MYjN8EeOoAatxCmIbzQ" name="argument" type="_fu4T5jN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu9MYzN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fu9MZDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fu9MZTN8EeOoAatxCmIbzQ" name="referredOperation" type="_fsGssDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu9MZjN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<interfaceRealization xmi:id="_fwgEgDN8EeOoAatxCmIbzQ" client="_fu9MYDN8EeOoAatxCmIbzQ" supplier="_fwgrkTN8EeOoAatxCmIbzQ" contract="_fwgrkTN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fuWIYDN8EeOoAatxCmIbzQ" name="OperationTemplateParameter">
<ownedComment xmi:id="_fuWIYTN8EeOoAatxCmIbzQ" annotatedElement="_fuWIYDN8EeOoAatxCmIbzQ">
<body>An operation template parameter exposes an operation as a formal parameter for a template.</body>
</ownedComment>
<generalization xmi:id="_fuWIYjN8EeOoAatxCmIbzQ" general="_fuJ7IDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fuWIYzN8EeOoAatxCmIbzQ" name="parameteredElement" type="_fsGssDN8EeOoAatxCmIbzQ" redefinedProperty="_fuJ7KDN8EeOoAatxCmIbzQ"
association="_fuc2FDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuWIZDN8EeOoAatxCmIbzQ" annotatedElement="_fuWIYzN8EeOoAatxCmIbzQ">
<body>The operation for this template parameter.</body>
</ownedComment>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvKAsDN8EeOoAatxCmIbzQ" name="OppositePropertyCallExp">
<generalization xmi:id="_fvKAsTN8EeOoAatxCmIbzQ" general="_fvFIMDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvKAsjN8EeOoAatxCmIbzQ" name="referredProperty" type="_fsRr0DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvKAszN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvcUkDN8EeOoAatxCmIbzQ" name="OrderedSetType">
<generalization xmi:id="_fvcUkTN8EeOoAatxCmIbzQ" general="_fvWN8jN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsWkUDN8EeOoAatxCmIbzQ" name="Package">
<ownedComment xmi:id="_fsWkUTN8EeOoAatxCmIbzQ" annotatedElement="_fsWkUDN8EeOoAatxCmIbzQ">
<body>A package is a container for types and other packages.</body>
</ownedComment>
<ownedComment xmi:id="_fuZLsDN8EeOoAatxCmIbzQ" annotatedElement="_fsWkUDN8EeOoAatxCmIbzQ">
<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>
<generalization xmi:id="_fsWkUjN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fs7zIDN8EeOoAatxCmIbzQ" general="_fstwsDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fuZLsTN8EeOoAatxCmIbzQ" general="_fuOzoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsWkUzN8EeOoAatxCmIbzQ" name="nestedPackage" type="_fsWkUDN8EeOoAatxCmIbzQ" aggregation="composite" association="_fsbc0TN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsWkVDN8EeOoAatxCmIbzQ" annotatedElement="_fsWkUzN8EeOoAatxCmIbzQ">
<body>The set of contained packages.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsWkVTN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsWkVjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsWkVzN8EeOoAatxCmIbzQ" name="nestingPackage" type="_fsWkUDN8EeOoAatxCmIbzQ" association="_fsbc0TN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsWkWDN8EeOoAatxCmIbzQ" annotatedElement="_fsWkVzN8EeOoAatxCmIbzQ">
<body>The containing package.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsWkWTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsWkWjN8EeOoAatxCmIbzQ" name="ownedType" type="_fsS58DN8EeOoAatxCmIbzQ" aggregation="composite" association="_fsbc0jN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsWkWzN8EeOoAatxCmIbzQ" annotatedElement="_fsWkWjN8EeOoAatxCmIbzQ">
<body>The set of contained types.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsWkXDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsWkXTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwIREDN8EeOoAatxCmIbzQ" name="nsPrefix" type="_fs2TkDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwIRETN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwIREjN8EeOoAatxCmIbzQ" name="nsURI" type="_fs2TkDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwIREzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwI4IDN8EeOoAatxCmIbzQ" name="importedPackage" type="_fsWkUDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwI4ITN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fwI4IjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fuWvcDN8EeOoAatxCmIbzQ" name="PackageableElement" isAbstract="true">
<ownedComment xmi:id="_fuWvcTN8EeOoAatxCmIbzQ" annotatedElement="_fuWvcDN8EeOoAatxCmIbzQ">
<body>Packageable elements are able to serve as a template parameter.</body>
</ownedComment>
<generalization xmi:id="_fuWvcjN8EeOoAatxCmIbzQ" general="_fuQo0DN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsP2oDN8EeOoAatxCmIbzQ" name="Parameter">
<ownedComment xmi:id="_fsP2oTN8EeOoAatxCmIbzQ" annotatedElement="_fsP2oDN8EeOoAatxCmIbzQ">
<body>A parameter is a typed element that represents a parameter of an operation.</body>
</ownedComment>
<generalization xmi:id="_fsP2ojN8EeOoAatxCmIbzQ" general="_fsUIEDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fvjCQDN8EeOoAatxCmIbzQ" general="_fvHkcDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fwqckDN8EeOoAatxCmIbzQ" general="_fwrqsDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsP2ozN8EeOoAatxCmIbzQ" name="operation" type="_fsGssDN8EeOoAatxCmIbzQ" association="_fsaOszN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsP2pDN8EeOoAatxCmIbzQ" annotatedElement="_fsP2ozN8EeOoAatxCmIbzQ">
<body>The operation that owns the parameter.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsP2pTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fuQo0DN8EeOoAatxCmIbzQ" name="ParameterableElement" isAbstract="true">
<ownedComment xmi:id="_fuQo0TN8EeOoAatxCmIbzQ" annotatedElement="_fuQo0DN8EeOoAatxCmIbzQ">
<body>A parameterable element is an element that can be exposed as a formal template parameter for a template, or specified as an actual parameter in a binding of a template.</body>
</ownedComment>
<generalization xmi:id="_fuQo0jN8EeOoAatxCmIbzQ" general="_fsXyczN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fuQo0zN8EeOoAatxCmIbzQ" name="templateParameter" type="_fuJ7IDN8EeOoAatxCmIbzQ" association="_fubn9DN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuQo1DN8EeOoAatxCmIbzQ" annotatedElement="_fuQo0zN8EeOoAatxCmIbzQ">
<body>The template parameter that exposes this element as a formal parameter.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuQo1TN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuQo1jN8EeOoAatxCmIbzQ" name="owningTemplateParameter" type="_fuJ7IDN8EeOoAatxCmIbzQ" subsettedProperty="_fuQo0zN8EeOoAatxCmIbzQ"
association="_fubn9jN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuQo1zN8EeOoAatxCmIbzQ" annotatedElement="_fuQo1jN8EeOoAatxCmIbzQ">
<body>The formal template parameter that owns this element.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuQo2DN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedOperation xmi:id="_fuQo2TN8EeOoAatxCmIbzQ" name="isTemplateParameter" isQuery="true">
<ownedComment xmi:id="_fuQo2jN8EeOoAatxCmIbzQ" annotatedElement="_fuQo2TN8EeOoAatxCmIbzQ">
<body>The query isTemplateParameter() determines if this parameterable element is exposed as a formal template parameter.</body>
</ownedComment>
<ownedParameter xmi:id="_fuQo3TN8EeOoAatxCmIbzQ" type="_fs9oUjN8EeOoAatxCmIbzQ" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fwQz8DN8EeOoAatxCmIbzQ" name="Precedence">
<generalization xmi:id="_fwQz8TN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fwQz8jN8EeOoAatxCmIbzQ" name="associativity" type="_fwNJkDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwQz8zN8EeOoAatxCmIbzQ"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fwQz9DN8EeOoAatxCmIbzQ" value="Left"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwQz9TN8EeOoAatxCmIbzQ" name="order" type="_fs9oUDN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fwQz9jN8EeOoAatxCmIbzQ" value="0"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu-agDN8EeOoAatxCmIbzQ" name="PrimitiveLiteralExp" isAbstract="true">
<generalization xmi:id="_fu-agTN8EeOoAatxCmIbzQ" general="_fu9zczN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsV9RjN8EeOoAatxCmIbzQ" name="PrimitiveType">
<ownedComment xmi:id="_fsV9RzN8EeOoAatxCmIbzQ" annotatedElement="_fsV9RjN8EeOoAatxCmIbzQ">
<body>A primitive type is a data type implemented by the underlying infrastructure and made available for modeling.</body>
</ownedComment>
<generalization xmi:id="_fsV9SDN8EeOoAatxCmIbzQ" general="_fsXycDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ftBSsDN8EeOoAatxCmIbzQ" name="Profile">
<generalization xmi:id="_ftBSsTN8EeOoAatxCmIbzQ" general="_fsWkUDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsRr0DN8EeOoAatxCmIbzQ" name="Property">
<ownedComment xmi:id="_fsRr0TN8EeOoAatxCmIbzQ" annotatedElement="_fsRr0DN8EeOoAatxCmIbzQ">
<body>A property is a typed element that represents an attribute of a class.</body>
</ownedComment>
<ownedComment xmi:id="_fuRP4DN8EeOoAatxCmIbzQ" annotatedElement="_fsRr0DN8EeOoAatxCmIbzQ">
<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>
<generalization xmi:id="_fsRr0jN8EeOoAatxCmIbzQ" general="_fsUIEDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fuEbkDN8EeOoAatxCmIbzQ" general="_fuCmYDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fuRP4TN8EeOoAatxCmIbzQ" general="_fuQo0DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsRr0zN8EeOoAatxCmIbzQ" name="isReadOnly" type="_fs9oUjN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsRr1DN8EeOoAatxCmIbzQ" annotatedElement="_fsRr0zN8EeOoAatxCmIbzQ">
<body>If isReadOnly is true, the attribute may not be written to after initialization.</body>
</ownedComment>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fsRr1TN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsRr1jN8EeOoAatxCmIbzQ" name="default" type="_fs2TkDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsRr1zN8EeOoAatxCmIbzQ" annotatedElement="_fsRr1jN8EeOoAatxCmIbzQ">
<body>A string that is evaluated to give a default value for the attribute when an object of the owning class is instantiated.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsRr2DN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsRr2TN8EeOoAatxCmIbzQ" name="isComposite" type="_fs9oUjN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsRr2jN8EeOoAatxCmIbzQ" annotatedElement="_fsRr2TN8EeOoAatxCmIbzQ">
<body>If isComposite is true, the object containing the attribute is a container for the object or value contained in the attribute.</body>
</ownedComment>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fsRr2zN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsRr3DN8EeOoAatxCmIbzQ" name="isDerived" type="_fs9oUjN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsRr3TN8EeOoAatxCmIbzQ" annotatedElement="_fsRr3DN8EeOoAatxCmIbzQ">
<body>If isDerived is true, the value of the attribute is derived from information elsewhere.</body>
</ownedComment>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fsRr3jN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsRr3zN8EeOoAatxCmIbzQ" name="class" type="_fsKXEDN8EeOoAatxCmIbzQ" association="_fsZnpDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsRr4DN8EeOoAatxCmIbzQ" annotatedElement="_fsRr3zN8EeOoAatxCmIbzQ">
<body>The class that owns the property, and of which the property is an attribute.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsRr4TN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fsRr4jN8EeOoAatxCmIbzQ" name="opposite" type="_fsRr0DN8EeOoAatxCmIbzQ" association="_fsaOsDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsRr4zN8EeOoAatxCmIbzQ" annotatedElement="_fsRr4jN8EeOoAatxCmIbzQ">
<body>Two attributes attr1 and attr2 of two objects o1 and o2 (which may be the same object) may be paired with each other so that o1.attr1 refers to o2 if and only if o2.attr2 refers to o1. In such a case attr1 is the opposite of attr2 and attr2 is the opposite of attr1.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsRr5DN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fukx4DN8EeOoAatxCmIbzQ" name="association" type="_fukK0DN8EeOoAatxCmIbzQ" association="_fumAADN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fukx4TN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fukx4jN8EeOoAatxCmIbzQ" name="implicit" type="_fs9oUjN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fukx4zN8EeOoAatxCmIbzQ"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fukx5DN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fupqYDN8EeOoAatxCmIbzQ" name="owningType" type="_fsS58DN8EeOoAatxCmIbzQ" association="_fustsDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fupqYTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuzbYDN8EeOoAatxCmIbzQ" name="defaultExpression" type="_fsr7gDN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu0CcDN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fv5nkDN8EeOoAatxCmIbzQ" name="isID" type="_fs9oUjN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fv5nkTN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fv5nkjN8EeOoAatxCmIbzQ" name="keys" type="_fsRr0DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fv5nkzN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fv5nlDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fv6OoDN8EeOoAatxCmIbzQ" name="isResolveProxies" type="_fs9oUjN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fv6OoTN8EeOoAatxCmIbzQ" value="true"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fv6OojN8EeOoAatxCmIbzQ" name="isTransient" type="_fs9oUjN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fv6OozN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fv6OpDN8EeOoAatxCmIbzQ" name="isUnsettable" type="_fs9oUjN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fv6OpTN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fv61sDN8EeOoAatxCmIbzQ" name="isVolatile" type="_fs9oUjN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fv61sTN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwbzEDN8EeOoAatxCmIbzQ" name="redefinedProperty" type="_fsRr0DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwbzETN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fwbzEjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwcaIDN8EeOoAatxCmIbzQ" name="subsettedProperty" type="_fsRr0DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwcaITN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fwcaIjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwk9ADN8EeOoAatxCmIbzQ" name="referredProperty" type="_fsRr0DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fwk9ATN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu6wIDN8EeOoAatxCmIbzQ" clientDependency="_fwgrkDN8EeOoAatxCmIbzQ" name="PropertyCallExp">
<generalization xmi:id="_fu6wITN8EeOoAatxCmIbzQ" general="_fvFIMDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu6wIjN8EeOoAatxCmIbzQ" name="referredProperty" type="_fsRr0DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu6wIzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<interfaceRealization xmi:id="_fwgrkDN8EeOoAatxCmIbzQ" client="_fu6wIDN8EeOoAatxCmIbzQ" supplier="_fwgrkTN8EeOoAatxCmIbzQ" contract="_fwgrkTN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ftcwgDN8EeOoAatxCmIbzQ" name="Pseudostate">
<ownedComment xmi:id="_ftdXkDN8EeOoAatxCmIbzQ" annotatedElement="_ftcwgDN8EeOoAatxCmIbzQ">
<body>A pseudostate is an abstraction that encompasses different types of transient vertices in the state machine graph.</body>
</ownedComment>
<generalization xmi:id="_ftdXrDN8EeOoAatxCmIbzQ" general="_ftbiYDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_ftdXrTN8EeOoAatxCmIbzQ" name="kind" type="_ftkFQDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftdXrjN8EeOoAatxCmIbzQ" annotatedElement="_ftdXrTN8EeOoAatxCmIbzQ">
<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:LiteralString" xmi:id="_ftdXrzN8EeOoAatxCmIbzQ" value="initial"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftdXsDN8EeOoAatxCmIbzQ" name="stateMachine" type="_ftLDsDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftdXsTN8EeOoAatxCmIbzQ" annotatedElement="_ftdXsDN8EeOoAatxCmIbzQ">
<body>The StateMachine in which this Pseudostate is defined. This only applies to Pseudostates of the kind entryPoint or exitPoint.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftdXsjN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftdXszN8EeOoAatxCmIbzQ" name="state" type="_ftVbwDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftdXtDN8EeOoAatxCmIbzQ" annotatedElement="_ftdXszN8EeOoAatxCmIbzQ">
<body>The State that owns this pseudostate and in which it appears.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftdXtTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu9zcDN8EeOoAatxCmIbzQ" name="RealLiteralExp">
<generalization xmi:id="_fu9zcTN8EeOoAatxCmIbzQ" general="_fu-agjN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu9zcjN8EeOoAatxCmIbzQ" name="realSymbol" type="_fvU_0DN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fthpADN8EeOoAatxCmIbzQ" name="Region">
<ownedComment xmi:id="_fthpATN8EeOoAatxCmIbzQ" annotatedElement="_fthpADN8EeOoAatxCmIbzQ">
<body>A region is an orthogonal part of either a composite state or a state machine. It contains states and transitions.</body>
</ownedComment>
<generalization xmi:id="_fthpDjN8EeOoAatxCmIbzQ" general="_fstwsDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fthpDzN8EeOoAatxCmIbzQ" name="subvertex" type="_ftbiYDN8EeOoAatxCmIbzQ" aggregation="composite" association="_ftl6cDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fthpEDN8EeOoAatxCmIbzQ" annotatedElement="_fthpDzN8EeOoAatxCmIbzQ">
<body>The set of vertices that are owned by this region.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fthpETN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fthpEjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fthpEzN8EeOoAatxCmIbzQ" name="transition" type="_ftZGIDN8EeOoAatxCmIbzQ" aggregation="composite" association="_ftmhgDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fthpFDN8EeOoAatxCmIbzQ" annotatedElement="_fthpEzN8EeOoAatxCmIbzQ">
<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>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fthpFTN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fthpFjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fthpFzN8EeOoAatxCmIbzQ" name="stateMachine" type="_ftLDsDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fthpGDN8EeOoAatxCmIbzQ" annotatedElement="_fthpFzN8EeOoAatxCmIbzQ">
<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>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fthpGTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fthpGjN8EeOoAatxCmIbzQ" name="state" type="_ftVbwDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fthpGzN8EeOoAatxCmIbzQ" annotatedElement="_fthpGjN8EeOoAatxCmIbzQ">
<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>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fthpHDN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fthpHTN8EeOoAatxCmIbzQ" name="extendedRegion" type="_fthpADN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fthpHjN8EeOoAatxCmIbzQ" annotatedElement="_fthpHTN8EeOoAatxCmIbzQ">
<body>The region of which this region is an extension.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fthpHzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fs1FcDN8EeOoAatxCmIbzQ" name="Root">
<generalization xmi:id="_fs1FcTN8EeOoAatxCmIbzQ" general="_fstwsDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fs1FcjN8EeOoAatxCmIbzQ" name="nestedPackage" type="_fsWkUDN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fs1FczN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fs1FdDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fs1FdTN8EeOoAatxCmIbzQ" name="externalURI" type="_fs2TkDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fs1FdjN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fs1FdzN8EeOoAatxCmIbzQ" name="imports" type="_fsypMDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fs1FeDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fs1FeTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvcUkjN8EeOoAatxCmIbzQ" name="SelfType">
<generalization xmi:id="_fvcUkzN8EeOoAatxCmIbzQ" general="_fsKXEDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsGssTN8EeOoAatxCmIbzQ" name="SendSignalAction">
<generalization xmi:id="_fsGssjN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsGsszN8EeOoAatxCmIbzQ" name="signal" type="_fsHTwDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvcUlDN8EeOoAatxCmIbzQ" name="SequenceType">
<generalization xmi:id="_fvcUlTN8EeOoAatxCmIbzQ" general="_fvWN8jN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvc7oDN8EeOoAatxCmIbzQ" name="SetType">
<generalization xmi:id="_fvc7oTN8EeOoAatxCmIbzQ" general="_fvWN8jN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsHTwDN8EeOoAatxCmIbzQ" name="Signal">
<generalization xmi:id="_fvc7ojN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ftVbwDN8EeOoAatxCmIbzQ" name="State">
<ownedComment xmi:id="_ftVbwTN8EeOoAatxCmIbzQ" annotatedElement="_ftVbwDN8EeOoAatxCmIbzQ">
<body>A state models a situation during which some (usually implicit) invariant condition holds.</body>
</ownedComment>
<generalization xmi:id="_ftVb0TN8EeOoAatxCmIbzQ" general="_ftbiYDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_ftVb0jN8EeOoAatxCmIbzQ" general="_fstwsDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fvc7ozN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_ftVb0zN8EeOoAatxCmIbzQ" name="isComposite" type="_fs9oUjN8EeOoAatxCmIbzQ" isDerived="true">
<ownedComment xmi:id="_ftVb1DN8EeOoAatxCmIbzQ" annotatedElement="_ftVb0zN8EeOoAatxCmIbzQ">
<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:LiteralString" xmi:id="_ftVb1TN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftVb1jN8EeOoAatxCmIbzQ" name="isOrthogonal" type="_fs9oUjN8EeOoAatxCmIbzQ" isDerived="true">
<ownedComment xmi:id="_ftVb1zN8EeOoAatxCmIbzQ" annotatedElement="_ftVb1jN8EeOoAatxCmIbzQ">
<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:LiteralString" xmi:id="_ftVb2DN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftVb2TN8EeOoAatxCmIbzQ" name="isSimple" type="_fs9oUjN8EeOoAatxCmIbzQ" isDerived="true">
<ownedComment xmi:id="_ftVb2jN8EeOoAatxCmIbzQ" annotatedElement="_ftVb2TN8EeOoAatxCmIbzQ">
<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:LiteralString" xmi:id="_ftVb2zN8EeOoAatxCmIbzQ" value="true"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftVb3DN8EeOoAatxCmIbzQ" name="isSubmachineState" type="_fs9oUjN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftVb3TN8EeOoAatxCmIbzQ" annotatedElement="_ftVb3DN8EeOoAatxCmIbzQ">
<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:LiteralString" xmi:id="_ftVb3jN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftVb3zN8EeOoAatxCmIbzQ" name="submachine" type="_ftLDsDN8EeOoAatxCmIbzQ" association="_ftmhgzN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftVb4DN8EeOoAatxCmIbzQ" annotatedElement="_ftVb3zN8EeOoAatxCmIbzQ">
<body>The state machine that is to be inserted in place of the (submachine) state.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftVb4TN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftVb4jN8EeOoAatxCmIbzQ" name="connection" type="_ftfz0DN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_ftVb4zN8EeOoAatxCmIbzQ" annotatedElement="_ftVb4jN8EeOoAatxCmIbzQ">
<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>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftVb5DN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftVb5TN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftVb5jN8EeOoAatxCmIbzQ" name="redefinedState" type="_ftVbwDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftVb5zN8EeOoAatxCmIbzQ" annotatedElement="_ftVb5jN8EeOoAatxCmIbzQ">
<body>The state of which this state is a redefinition.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftVb6DN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftVb6TN8EeOoAatxCmIbzQ" name="region" type="_fthpADN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_ftVb6jN8EeOoAatxCmIbzQ" annotatedElement="_ftVb6TN8EeOoAatxCmIbzQ">
<body>The regions owned directly by the state.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftVb6zN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftVb7DN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftVb7TN8EeOoAatxCmIbzQ" name="stateInvariant" type="_fsj_sDN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_ftVb7jN8EeOoAatxCmIbzQ" annotatedElement="_ftVb7TN8EeOoAatxCmIbzQ">
<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>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftVb7zN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftVb8DN8EeOoAatxCmIbzQ" name="entry" type="_ftvEYDN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_ftVb8TN8EeOoAatxCmIbzQ" annotatedElement="_ftVb8DN8EeOoAatxCmIbzQ">
<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>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftVb8jN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftVb8zN8EeOoAatxCmIbzQ" name="exit" type="_ftvEYDN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_ftVb9DN8EeOoAatxCmIbzQ" annotatedElement="_ftVb8zN8EeOoAatxCmIbzQ">
<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>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftVb9TN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftVb9jN8EeOoAatxCmIbzQ" name="doActivity" type="_ftvEYDN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_ftVb9zN8EeOoAatxCmIbzQ" annotatedElement="_ftVb9jN8EeOoAatxCmIbzQ">
<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>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftVb-DN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftVb-TN8EeOoAatxCmIbzQ" name="connectionPoint" type="_ftcwgDN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_ftVb-jN8EeOoAatxCmIbzQ" annotatedElement="_ftVb-TN8EeOoAatxCmIbzQ">
<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>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftVb-zN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftVb_DN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftVb_TN8EeOoAatxCmIbzQ" name="deferrableTrigger" type="_ftxgoDN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_ftVb_jN8EeOoAatxCmIbzQ" annotatedElement="_ftVb_TN8EeOoAatxCmIbzQ">
<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>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftVb_zN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftVcADN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvG9YDN8EeOoAatxCmIbzQ" name="StateExp">
<generalization xmi:id="_fvG9YTN8EeOoAatxCmIbzQ" general="_fu4T5jN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvG9YjN8EeOoAatxCmIbzQ" name="referredState" type="_ftVbwDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvG9YzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ftLDsDN8EeOoAatxCmIbzQ" name="StateMachine">
<ownedComment xmi:id="_ftLDsTN8EeOoAatxCmIbzQ" annotatedElement="_ftLDsDN8EeOoAatxCmIbzQ">
<body>State machines can be used to express the behavior of part of a system. Behavior is modeled as a traversal of a graph of state nodes interconnected by one or more joined transition arcs that are triggered by the dispatching of series of (event) occurrences. During this traversal, the state machine executes a series of activities associated with various elements of the state machine.</body>
</ownedComment>
<generalization xmi:id="_ftLDvjN8EeOoAatxCmIbzQ" general="_ftvEYDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_ftLDvzN8EeOoAatxCmIbzQ" name="region" type="_fthpADN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_ftLDwDN8EeOoAatxCmIbzQ" annotatedElement="_ftLDvzN8EeOoAatxCmIbzQ">
<body>The regions owned directly by the state machine.</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftLDwTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftLDwjN8EeOoAatxCmIbzQ" name="connectionPoint" type="_ftcwgDN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_ftLDwzN8EeOoAatxCmIbzQ" annotatedElement="_ftLDwjN8EeOoAatxCmIbzQ">
<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>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftLDxDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftLDxTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftLDxjN8EeOoAatxCmIbzQ" name="extendedStateMachine" type="_ftLDsDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftLDxzN8EeOoAatxCmIbzQ" annotatedElement="_ftLDxjN8EeOoAatxCmIbzQ">
<body>The state machines of which this is an extension.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftLDyDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftLDyTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftLDyjN8EeOoAatxCmIbzQ" name="submachineState" type="_ftVbwDN8EeOoAatxCmIbzQ" association="_ftmhgzN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftLDyzN8EeOoAatxCmIbzQ" annotatedElement="_ftLDyjN8EeOoAatxCmIbzQ">
<body>References the submachine(s) in case of a submachine state. Multiple machines are referenced in case of a concurrent state.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftLDzDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftLDzTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ftGyQDN8EeOoAatxCmIbzQ" name="Stereotype">
<generalization xmi:id="_ftGyQTN8EeOoAatxCmIbzQ" general="_fsKXEDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu8lUDN8EeOoAatxCmIbzQ" name="StringLiteralExp">
<generalization xmi:id="_fu8lUTN8EeOoAatxCmIbzQ" general="_fu-agDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu8lUjN8EeOoAatxCmIbzQ" name="stringSymbol" type="_fs2TkDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fuLJQDN8EeOoAatxCmIbzQ" name="TemplateBinding">
<ownedComment xmi:id="_fuLJQTN8EeOoAatxCmIbzQ" annotatedElement="_fuLJQDN8EeOoAatxCmIbzQ">
<body>A template binding represents a relationship between a templateable element and a template. A template binding specifies the substitutions of actual parameters for the formal parameters of the template.</body>
</ownedComment>
<generalization xmi:id="_fuLJSDN8EeOoAatxCmIbzQ" general="_fsXyczN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fuLJSTN8EeOoAatxCmIbzQ" name="boundElement" type="_fuOzoDN8EeOoAatxCmIbzQ" association="_fuaZ1TN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuLJSjN8EeOoAatxCmIbzQ" annotatedElement="_fuLJSTN8EeOoAatxCmIbzQ">
<body>The element that is bound by this binding.</body>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:id="_fuLJSzN8EeOoAatxCmIbzQ" name="signature" type="_fuItADN8EeOoAatxCmIbzQ" association="_fubA4DN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuLJTDN8EeOoAatxCmIbzQ" annotatedElement="_fuLJSzN8EeOoAatxCmIbzQ">
<body>The template signature for the template that is the target of the binding.</body>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:id="_fuLJTTN8EeOoAatxCmIbzQ" name="parameterSubstitution" type="_fuMXYDN8EeOoAatxCmIbzQ" aggregation="composite"
association="_fubA5DN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuLJTjN8EeOoAatxCmIbzQ" annotatedElement="_fuLJTTN8EeOoAatxCmIbzQ">
<body>The parameter substitutions owned by this template binding.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuLJTzN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuLJUDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fuJ7IDN8EeOoAatxCmIbzQ" name="TemplateParameter">
<ownedComment xmi:id="_fuJ7ITN8EeOoAatxCmIbzQ" annotatedElement="_fuJ7IDN8EeOoAatxCmIbzQ">
<body>A template parameter exposes a parameterable element as a formal template parameter of a template.</body>
</ownedComment>
<generalization xmi:id="_fuJ7JTN8EeOoAatxCmIbzQ" general="_fsXyczN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fuJ7JjN8EeOoAatxCmIbzQ" name="signature" type="_fuItADN8EeOoAatxCmIbzQ" association="_fuaZ1DN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuJ7JzN8EeOoAatxCmIbzQ" annotatedElement="_fuJ7JjN8EeOoAatxCmIbzQ">
<body>The template signature that owns this template parameter.</body>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:id="_fuJ7KDN8EeOoAatxCmIbzQ" name="parameteredElement" type="_fuQo0DN8EeOoAatxCmIbzQ" association="_fubn9DN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuJ7KTN8EeOoAatxCmIbzQ" annotatedElement="_fuJ7KDN8EeOoAatxCmIbzQ">
<body>The element exposed by this template parameter.</body>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:id="_fuJ7KjN8EeOoAatxCmIbzQ" name="ownedParameteredElement" type="_fuQo0DN8EeOoAatxCmIbzQ" aggregation="composite"
subsettedProperty="_fuJ7KDN8EeOoAatxCmIbzQ" association="_fubn9jN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuJ7KzN8EeOoAatxCmIbzQ" annotatedElement="_fuJ7KjN8EeOoAatxCmIbzQ">
<body>The element that is owned by this template parameter.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuJ7LDN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuJ7LTN8EeOoAatxCmIbzQ" name="default" type="_fuQo0DN8EeOoAatxCmIbzQ" association="_fucPADN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuJ7LjN8EeOoAatxCmIbzQ" annotatedElement="_fuJ7LTN8EeOoAatxCmIbzQ">
<body>The element that is the default for this formal template parameter.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuJ7LzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuJ7MDN8EeOoAatxCmIbzQ" name="ownedDefault" type="_fuQo0DN8EeOoAatxCmIbzQ" aggregation="composite" subsettedProperty="_fuJ7LTN8EeOoAatxCmIbzQ"
association="_fucPBDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuJ7MTN8EeOoAatxCmIbzQ" annotatedElement="_fuJ7MDN8EeOoAatxCmIbzQ">
<body>The element that is owned by this template parameter for the purpose of providing a default.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuJ7MjN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fuMXYDN8EeOoAatxCmIbzQ" name="TemplateParameterSubstitution">
<ownedComment xmi:id="_fuMXYTN8EeOoAatxCmIbzQ" annotatedElement="_fuMXYDN8EeOoAatxCmIbzQ">
<body>A template parameter substitution relates the actual parameter to a formal template parameter as part of a template binding.</body>
</ownedComment>
<generalization xmi:id="_fuMXZTN8EeOoAatxCmIbzQ" general="_fsXyczN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fuMXZjN8EeOoAatxCmIbzQ" name="formal" type="_fuJ7IDN8EeOoAatxCmIbzQ" association="_fuaZ1jN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuMXZzN8EeOoAatxCmIbzQ" annotatedElement="_fuMXZjN8EeOoAatxCmIbzQ">
<body>The formal template parameter that is associated with this substitution.</body>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:id="_fuMXaDN8EeOoAatxCmIbzQ" name="templateBinding" type="_fuLJQDN8EeOoAatxCmIbzQ" association="_fubA5DN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuMXaTN8EeOoAatxCmIbzQ" annotatedElement="_fuMXaDN8EeOoAatxCmIbzQ">
<body>The optional bindings from this element to templates.</body>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:id="_fuMXajN8EeOoAatxCmIbzQ" name="actual" type="_fuQo0DN8EeOoAatxCmIbzQ" association="_fubn8DN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuMXazN8EeOoAatxCmIbzQ" annotatedElement="_fuMXajN8EeOoAatxCmIbzQ">
<body>The element that is the actual parameter for this substitution.</body>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:id="_fuMXbDN8EeOoAatxCmIbzQ" name="ownedActual" type="_fuQo0DN8EeOoAatxCmIbzQ" aggregation="composite" subsettedProperty="_fuMXajN8EeOoAatxCmIbzQ"
association="_fuc2EDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuMXbTN8EeOoAatxCmIbzQ" annotatedElement="_fuMXbDN8EeOoAatxCmIbzQ">
<body>The actual parameter that is owned by this substitution.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuMXbjN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvf-8DN8EeOoAatxCmIbzQ" name="TemplateParameterType">
<generalization xmi:id="_fvf-8TN8EeOoAatxCmIbzQ" general="_fsS58DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvf-8jN8EeOoAatxCmIbzQ" name="specification" type="_fs2TkDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvf-8zN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fuItADN8EeOoAatxCmIbzQ" name="TemplateSignature">
<ownedComment xmi:id="_fuItATN8EeOoAatxCmIbzQ" annotatedElement="_fuItADN8EeOoAatxCmIbzQ">
<body>A template signature bundles the set of formal template parameters for a templated element.</body>
</ownedComment>
<generalization xmi:id="_fuItBTN8EeOoAatxCmIbzQ" general="_fsXyczN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fuItBjN8EeOoAatxCmIbzQ" name="parameter" type="_fuJ7IDN8EeOoAatxCmIbzQ" isOrdered="true" association="_fuaZ0DN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuItBzN8EeOoAatxCmIbzQ" annotatedElement="_fuItBjN8EeOoAatxCmIbzQ">
<body>The ordered set of all formal template parameters for this template signature.</body>
</ownedComment>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuItCDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuItCTN8EeOoAatxCmIbzQ" name="ownedParameter" type="_fuJ7IDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite"
subsettedProperty="_fuItBjN8EeOoAatxCmIbzQ" association="_fuaZ1DN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuItCjN8EeOoAatxCmIbzQ" annotatedElement="_fuItCTN8EeOoAatxCmIbzQ">
<body>The formal template parameters that are owned by this template signature.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuItCzN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuItDDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuItDTN8EeOoAatxCmIbzQ" name="template" type="_fuOzoDN8EeOoAatxCmIbzQ" association="_fubn9TN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuItDjN8EeOoAatxCmIbzQ" annotatedElement="_fuItDTN8EeOoAatxCmIbzQ">
<body>The element that owns this template signature.</body>
</ownedComment>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fuOzoDN8EeOoAatxCmIbzQ" name="TemplateableElement" isAbstract="true">
<ownedComment xmi:id="_fuOzoTN8EeOoAatxCmIbzQ" annotatedElement="_fuOzoDN8EeOoAatxCmIbzQ">
<body>A templateable element is an element that can optionally be defined as a template and bound to other templates.</body>
</ownedComment>
<generalization xmi:id="_fuOzojN8EeOoAatxCmIbzQ" general="_fsXyczN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fuOzozN8EeOoAatxCmIbzQ" name="templateBinding" type="_fuLJQDN8EeOoAatxCmIbzQ" aggregation="composite" association="_fuaZ1TN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuOzpDN8EeOoAatxCmIbzQ" annotatedElement="_fuOzozN8EeOoAatxCmIbzQ">
<body>The optional bindings from this element to templates.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuOzpTN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuOzpjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuOzpzN8EeOoAatxCmIbzQ" name="ownedTemplateSignature" type="_fuItADN8EeOoAatxCmIbzQ" aggregation="composite"
association="_fubn9TN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuOzqDN8EeOoAatxCmIbzQ" annotatedElement="_fuOzpzN8EeOoAatxCmIbzQ">
<body>The optional template signature specifying the formal template parameters.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuOzqTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvsMMDN8EeOoAatxCmIbzQ" name="unspecializedElement" type="_fuOzoDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvsMMTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedOperation xmi:id="_fuOzqjN8EeOoAatxCmIbzQ" name="parameterableElements" isQuery="true">
<ownedComment xmi:id="_fuOzqzN8EeOoAatxCmIbzQ" annotatedElement="_fuOzqjN8EeOoAatxCmIbzQ">
<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>
<ownedParameter xmi:id="_fuOzrjN8EeOoAatxCmIbzQ" type="_fuQo0DN8EeOoAatxCmIbzQ" direction="return">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuOzrzN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuOzsDN8EeOoAatxCmIbzQ" value="*"/>
</ownedParameter>
</ownedOperation>
<ownedOperation xmi:id="_fuOzsTN8EeOoAatxCmIbzQ" name="isTemplate" isQuery="true">
<ownedComment xmi:id="_fuOzsjN8EeOoAatxCmIbzQ" annotatedElement="_fuOzsTN8EeOoAatxCmIbzQ">
<body>The query isTemplate() returns whether this templateable element is actually a template.</body>
</ownedComment>
<ownedParameter xmi:id="_fuOztTN8EeOoAatxCmIbzQ" type="_fs9oUjN8EeOoAatxCmIbzQ" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ftZGIDN8EeOoAatxCmIbzQ" name="Transition">
<ownedComment xmi:id="_ftZGITN8EeOoAatxCmIbzQ" annotatedElement="_ftZGIDN8EeOoAatxCmIbzQ">
<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>
<generalization xmi:id="_ftZGNzN8EeOoAatxCmIbzQ" general="_fstwsDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_ftZGODN8EeOoAatxCmIbzQ" name="kind" type="_ftlTYDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftZGOTN8EeOoAatxCmIbzQ" annotatedElement="_ftZGODN8EeOoAatxCmIbzQ">
<body>Indicates the precise type of the transition.</body>
</ownedComment>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_ftZGOjN8EeOoAatxCmIbzQ" value="external"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftZGOzN8EeOoAatxCmIbzQ" name="container" type="_fthpADN8EeOoAatxCmIbzQ" association="_ftmhgDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftZGPDN8EeOoAatxCmIbzQ" annotatedElement="_ftZGOzN8EeOoAatxCmIbzQ">
<body>Designates the region that owns this transition.</body>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:id="_ftZGPTN8EeOoAatxCmIbzQ" name="source" type="_ftbiYDN8EeOoAatxCmIbzQ" association="_ftmhgTN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftZGPjN8EeOoAatxCmIbzQ" annotatedElement="_ftZGPTN8EeOoAatxCmIbzQ">
<body>Designates the originating vertex (state or pseudostate) of the transition.</body>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:id="_ftZGPzN8EeOoAatxCmIbzQ" name="target" type="_ftbiYDN8EeOoAatxCmIbzQ" association="_ftmhgjN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftZGQDN8EeOoAatxCmIbzQ" annotatedElement="_ftZGPzN8EeOoAatxCmIbzQ">
<body>Designates the target vertex that is reached when the transition is taken.</body>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:id="_ftZGQTN8EeOoAatxCmIbzQ" name="guard" type="_fsj_sDN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_ftZGQjN8EeOoAatxCmIbzQ" annotatedElement="_ftZGQTN8EeOoAatxCmIbzQ">
<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>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftZGQzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftZGRDN8EeOoAatxCmIbzQ" name="effect" type="_ftvEYDN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_ftZGRTN8EeOoAatxCmIbzQ" annotatedElement="_ftZGRDN8EeOoAatxCmIbzQ">
<body>Specifies an optional behavior to be performed when the transition fires.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftZGRjN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftZGRzN8EeOoAatxCmIbzQ" name="trigger" type="_ftxgoDN8EeOoAatxCmIbzQ" aggregation="composite">
<ownedComment xmi:id="_ftZGSDN8EeOoAatxCmIbzQ" annotatedElement="_ftZGRzN8EeOoAatxCmIbzQ">
<body>Specifies the triggers that may fire the transition.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftZGSTN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftZGSjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ftxgoDN8EeOoAatxCmIbzQ" name="Trigger">
<generalization xmi:id="_ftxgoTN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvAPsDN8EeOoAatxCmIbzQ" name="TupleLiteralExp">
<generalization xmi:id="_fvAPsTN8EeOoAatxCmIbzQ" general="_fu9zczN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvAPsjN8EeOoAatxCmIbzQ" name="part" type="_fvEhIzN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvAPszN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fvAPtDN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvEhIzN8EeOoAatxCmIbzQ" name="TupleLiteralPart">
<generalization xmi:id="_fvEhJDN8EeOoAatxCmIbzQ" general="_fsUIEDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fvjCQTN8EeOoAatxCmIbzQ" general="_fvHkcDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fvEhJTN8EeOoAatxCmIbzQ" name="initExpression" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvEhJjN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvf-9DN8EeOoAatxCmIbzQ" name="TupleType">
<generalization xmi:id="_fvf-9TN8EeOoAatxCmIbzQ" general="_fsXycDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsS58DN8EeOoAatxCmIbzQ" name="Type">
<ownedComment xmi:id="_fsS58TN8EeOoAatxCmIbzQ" annotatedElement="_fsS58DN8EeOoAatxCmIbzQ">
<body>A type is a named element that is used as the type for a typed element. A type can be contained in a package.</body>
</ownedComment>
<ownedComment xmi:id="_fuWvczN8EeOoAatxCmIbzQ" annotatedElement="_fsS58DN8EeOoAatxCmIbzQ">
<body>Type is defined to be a kind of templateable element so that a type can be parameterized. It is also defined to be a kind of parameterable element so that a type can be a formal template parameter.</body>
</ownedComment>
<generalization xmi:id="_fsS58jN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fuWvdDN8EeOoAatxCmIbzQ" general="_fuOzoDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fuWvdTN8EeOoAatxCmIbzQ" general="_fuQo0DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsS58zN8EeOoAatxCmIbzQ" name="package" type="_fsWkUDN8EeOoAatxCmIbzQ" association="_fsbc0jN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsS59DN8EeOoAatxCmIbzQ" annotatedElement="_fsS58zN8EeOoAatxCmIbzQ">
<body>Specifies the owning package of this classifier, if any.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsS59TN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuXWgDN8EeOoAatxCmIbzQ" name="templateParameter" type="_fuYkoDN8EeOoAatxCmIbzQ" redefinedProperty="_fuQo0zN8EeOoAatxCmIbzQ"
association="_fuc2EzN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuXWgTN8EeOoAatxCmIbzQ" annotatedElement="_fuXWgDN8EeOoAatxCmIbzQ">
<body>The template parameter that exposes this element as a formal parameter.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuXWgjN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuq4gDN8EeOoAatxCmIbzQ" name="ownedAttribute" type="_fsRr0DN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite"
association="_fustsDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuq4gTN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuq4gjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuq4gzN8EeOoAatxCmIbzQ" name="ownedOperation" type="_fsGssDN8EeOoAatxCmIbzQ" isOrdered="true" aggregation="composite"
association="_fustsTN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuq4hDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuq4hTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_furfkDN8EeOoAatxCmIbzQ" name="superClass" type="_fsS58DN8EeOoAatxCmIbzQ" isOrdered="true">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_furfkTN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_furfkjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuyNQDN8EeOoAatxCmIbzQ" name="ownedInvariant" type="_fsj_sDN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuyNQTN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuyNQjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fv8q4DN8EeOoAatxCmIbzQ" name="instanceClassName" type="_fs2TkDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fv8q4TN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedOperation xmi:id="_fuXWgzN8EeOoAatxCmIbzQ" name="isTemplate" isQuery="true" redefinedOperation="_fuOzsTN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuXWhDN8EeOoAatxCmIbzQ" annotatedElement="_fuXWgzN8EeOoAatxCmIbzQ">
<body>The query isTemplate() returns whether this templateable element is actually a template.</body>
</ownedComment>
<ownedParameter xmi:id="_fuXWhzN8EeOoAatxCmIbzQ" type="_fs9oUjN8EeOoAatxCmIbzQ" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu7XNDN8EeOoAatxCmIbzQ" clientDependency="_fwhSoDN8EeOoAatxCmIbzQ" name="TypeExp">
<generalization xmi:id="_fu7XNTN8EeOoAatxCmIbzQ" general="_fu4T5jN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu7XNjN8EeOoAatxCmIbzQ" name="referredType" type="_fsS58DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu7XNzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<interfaceRealization xmi:id="_fwhSoDN8EeOoAatxCmIbzQ" client="_fu7XNDN8EeOoAatxCmIbzQ" supplier="_fwgrkTN8EeOoAatxCmIbzQ" contract="_fwgrkTN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fuYkoDN8EeOoAatxCmIbzQ" name="TypeTemplateParameter">
<ownedComment xmi:id="_fuYkoTN8EeOoAatxCmIbzQ" annotatedElement="_fuYkoDN8EeOoAatxCmIbzQ">
<body>A type template parameter exposes a type as a formal template parameter.</body>
</ownedComment>
<generalization xmi:id="_fuYkpTN8EeOoAatxCmIbzQ" general="_fuJ7IDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fuYkpjN8EeOoAatxCmIbzQ" name="allowSubstitutable" type="_fs9oUjN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuYkpzN8EeOoAatxCmIbzQ" annotatedElement="_fuYkpjN8EeOoAatxCmIbzQ">
<body>Constrains the required relationship between an actual parameter and the parameteredElement for this formal parameter.</body>
</ownedComment>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fuYkqDN8EeOoAatxCmIbzQ" value="true"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fuYkqTN8EeOoAatxCmIbzQ" name="parameteredElement" type="_fsS58DN8EeOoAatxCmIbzQ" redefinedProperty="_fuJ7KDN8EeOoAatxCmIbzQ"
association="_fuc2EzN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuYkqjN8EeOoAatxCmIbzQ" annotatedElement="_fuYkqTN8EeOoAatxCmIbzQ">
<body>The parameterable classifier for this template parameter.</body>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:id="_fuYkqzN8EeOoAatxCmIbzQ" name="constrainingType" type="_fsS58DN8EeOoAatxCmIbzQ" association="_fuddIDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fuYkrDN8EeOoAatxCmIbzQ" annotatedElement="_fuYkqzN8EeOoAatxCmIbzQ">
<body>The classifiers that constrain 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>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuYkrTN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuYkrjN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsUIEDN8EeOoAatxCmIbzQ" name="TypedElement" isAbstract="true">
<ownedComment xmi:id="_fsUIETN8EeOoAatxCmIbzQ" annotatedElement="_fsUIEDN8EeOoAatxCmIbzQ">
<body>A typed element is a kind of named element that represents an element with a type.</body>
</ownedComment>
<generalization xmi:id="_fsUIEjN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fsUIEzN8EeOoAatxCmIbzQ" name="type" type="_fsS58DN8EeOoAatxCmIbzQ" association="_fsa1xDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_fsUIFDN8EeOoAatxCmIbzQ" annotatedElement="_fsUIEzN8EeOoAatxCmIbzQ">
<body>The type of the TypedElement.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsUIFTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fwrDoDN8EeOoAatxCmIbzQ" name="isRequired" type="_fs9oUjN8EeOoAatxCmIbzQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fwrDoTN8EeOoAatxCmIbzQ" value="true"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fwrqsDN8EeOoAatxCmIbzQ" name="TypedMultiplicityElement" isAbstract="true">
<generalization xmi:id="_fwrqsTN8EeOoAatxCmIbzQ" general="_fsUIEDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu468DN8EeOoAatxCmIbzQ" name="UnlimitedNaturalLiteralExp">
<generalization xmi:id="_fu468TN8EeOoAatxCmIbzQ" general="_fu-agjN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu468jN8EeOoAatxCmIbzQ" name="unlimitedNaturalSymbol" type="_fs-PYTN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fwLUYDN8EeOoAatxCmIbzQ" name="UnspecifiedType">
<generalization xmi:id="_fwLUYTN8EeOoAatxCmIbzQ" general="_fsKXEDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fwLUYjN8EeOoAatxCmIbzQ" name="lowerBound" type="_fsS58DN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fwLUYzN8EeOoAatxCmIbzQ" name="upperBound" type="_fsS58DN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvGWWjN8EeOoAatxCmIbzQ" name="UnspecifiedValueExp">
<generalization xmi:id="_fvGWWzN8EeOoAatxCmIbzQ" general="_fu4T5jN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fsoRIDN8EeOoAatxCmIbzQ" name="ValueSpecification" isAbstract="true">
<ownedComment xmi:id="_fsoRITN8EeOoAatxCmIbzQ" annotatedElement="_fsoRIDN8EeOoAatxCmIbzQ">
<body>A value specification is the specification of a (possibly empty) set of instances, including both objects and data values.</body>
</ownedComment>
<ownedComment xmi:id="_fuSeADN8EeOoAatxCmIbzQ" annotatedElement="_fsoRIDN8EeOoAatxCmIbzQ">
<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:id="_fsoRIjN8EeOoAatxCmIbzQ" general="_fsUIEDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fuSeATN8EeOoAatxCmIbzQ" general="_fuQo0DN8EeOoAatxCmIbzQ"/>
<ownedOperation xmi:id="_fsoRIzN8EeOoAatxCmIbzQ" name="isComputable" isQuery="true">
<ownedComment xmi:id="_fsoRJDN8EeOoAatxCmIbzQ" annotatedElement="_fsoRIzN8EeOoAatxCmIbzQ">
<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>
<ownedParameter xmi:id="_fsoRJzN8EeOoAatxCmIbzQ" type="_fs9oUjN8EeOoAatxCmIbzQ" direction="return"/>
</ownedOperation>
<ownedOperation xmi:id="_fsoRKDN8EeOoAatxCmIbzQ" name="integerValue" isQuery="true">
<ownedComment xmi:id="_fsoRKTN8EeOoAatxCmIbzQ" annotatedElement="_fsoRKDN8EeOoAatxCmIbzQ">
<body>The query integerValue() gives a single Integer value when one can be computed.</body>
</ownedComment>
<ownedParameter xmi:id="_fsoRLDN8EeOoAatxCmIbzQ" type="_fs9oUDN8EeOoAatxCmIbzQ" direction="return"/>
</ownedOperation>
<ownedOperation xmi:id="_fsoRLTN8EeOoAatxCmIbzQ" name="booleanValue" isQuery="true">
<ownedComment xmi:id="_fsoRLjN8EeOoAatxCmIbzQ" annotatedElement="_fsoRLTN8EeOoAatxCmIbzQ">
<body>The query booleanValue() gives a single Boolean value when one can be computed.</body>
</ownedComment>
<ownedParameter xmi:id="_fsoRMTN8EeOoAatxCmIbzQ" type="_fs9oUjN8EeOoAatxCmIbzQ" direction="return"/>
</ownedOperation>
<ownedOperation xmi:id="_fsoRMjN8EeOoAatxCmIbzQ" name="stringValue" isQuery="true">
<ownedComment xmi:id="_fsoRMzN8EeOoAatxCmIbzQ" annotatedElement="_fsoRMjN8EeOoAatxCmIbzQ">
<body>The query stringValue() gives a single String value when one can be computed.</body>
</ownedComment>
<ownedParameter xmi:id="_fsoRNjN8EeOoAatxCmIbzQ" type="_fs2TkDN8EeOoAatxCmIbzQ" direction="return"/>
</ownedOperation>
<ownedOperation xmi:id="_fsoRNzN8EeOoAatxCmIbzQ" name="unlimitedValue" isQuery="true">
<ownedComment xmi:id="_fsoRODN8EeOoAatxCmIbzQ" annotatedElement="_fsoRNzN8EeOoAatxCmIbzQ">
<body>The query unlimitedValue() gives a single UnlimitedNatural value when one can be computed.</body>
</ownedComment>
<ownedParameter xmi:id="_fsoROzN8EeOoAatxCmIbzQ" type="_fs-PYTN8EeOoAatxCmIbzQ" direction="return"/>
</ownedOperation>
<ownedOperation xmi:id="_fsoRPDN8EeOoAatxCmIbzQ" name="isNull" isQuery="true">
<ownedComment xmi:id="_fsoRPTN8EeOoAatxCmIbzQ" annotatedElement="_fsoRPDN8EeOoAatxCmIbzQ">
<body>The query isNull() returns true when it can be computed that the value is null.</body>
</ownedComment>
<ownedParameter xmi:id="_fsoRQDN8EeOoAatxCmIbzQ" type="_fs9oUjN8EeOoAatxCmIbzQ" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu6JFDN8EeOoAatxCmIbzQ" name="Variable">
<generalization xmi:id="_fu6JFTN8EeOoAatxCmIbzQ" general="_fsUIEDN8EeOoAatxCmIbzQ"/>
<generalization xmi:id="_fvkQYDN8EeOoAatxCmIbzQ" general="_fvHkcDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu6JFjN8EeOoAatxCmIbzQ" name="initExpression" type="_fu4T5jN8EeOoAatxCmIbzQ" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu6JFzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fu6JGDN8EeOoAatxCmIbzQ" name="representedParameter" type="_fsP2oDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu6JGTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvkQYTN8EeOoAatxCmIbzQ" name="implicit" type="_fs9oUjN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvkQYjN8EeOoAatxCmIbzQ"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fvkQYzN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvHkcDN8EeOoAatxCmIbzQ" name="VariableDeclaration" isAbstract="true">
<generalization xmi:id="_fvjpUDN8EeOoAatxCmIbzQ" general="_fsUIEDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fu7XMDN8EeOoAatxCmIbzQ" clientDependency="_fwigwDN8EeOoAatxCmIbzQ" name="VariableExp">
<generalization xmi:id="_fu7XMTN8EeOoAatxCmIbzQ" general="_fu4T5jN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_fu7XMjN8EeOoAatxCmIbzQ" name="referredVariable" type="_fvHkcDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fu7XMzN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_fvk3cDN8EeOoAatxCmIbzQ" name="implicit" type="_fs9oUjN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fvk3cTN8EeOoAatxCmIbzQ"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_fvk3cjN8EeOoAatxCmIbzQ" value="false"/>
</ownedAttribute>
<interfaceRealization xmi:id="_fwigwDN8EeOoAatxCmIbzQ" client="_fu7XMDN8EeOoAatxCmIbzQ" supplier="_fwgrkTN8EeOoAatxCmIbzQ" contract="_fwgrkTN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ftbiYDN8EeOoAatxCmIbzQ" name="Vertex" isAbstract="true">
<ownedComment xmi:id="_ftbiYTN8EeOoAatxCmIbzQ" annotatedElement="_ftbiYDN8EeOoAatxCmIbzQ">
<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:id="_ftbiYjN8EeOoAatxCmIbzQ" general="_fsGFoDN8EeOoAatxCmIbzQ"/>
<ownedAttribute xmi:id="_ftbiYzN8EeOoAatxCmIbzQ" name="container" type="_fthpADN8EeOoAatxCmIbzQ" association="_ftl6cDN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftbiZDN8EeOoAatxCmIbzQ" annotatedElement="_ftbiYzN8EeOoAatxCmIbzQ">
<body>The region that contains this vertex.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftbiZTN8EeOoAatxCmIbzQ"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftbiZjN8EeOoAatxCmIbzQ" name="outgoing" type="_ftZGIDN8EeOoAatxCmIbzQ" association="_ftmhgTN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftbiZzN8EeOoAatxCmIbzQ" annotatedElement="_ftbiZjN8EeOoAatxCmIbzQ">
<body>Specifies the transitions departing from this vertex.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftbiaDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftbiaTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:id="_ftbiajN8EeOoAatxCmIbzQ" name="incoming" type="_ftZGIDN8EeOoAatxCmIbzQ" association="_ftmhgjN8EeOoAatxCmIbzQ">
<ownedComment xmi:id="_ftbiazN8EeOoAatxCmIbzQ" annotatedElement="_ftbiajN8EeOoAatxCmIbzQ">
<body>Specifies the transitions entering this vertex.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftbibDN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftbibTN8EeOoAatxCmIbzQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_fvgmADN8EeOoAatxCmIbzQ" name="VoidType">
<generalization xmi:id="_fvgmATN8EeOoAatxCmIbzQ" general="_fsKXEDN8EeOoAatxCmIbzQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_fubn8DN8EeOoAatxCmIbzQ" name="A_actual_templateParameterSubstitution" memberEnd="_fuMXajN8EeOoAatxCmIbzQ _fubn8TN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fubn8TN8EeOoAatxCmIbzQ" name="templateParameterSubstitution" type="_fuMXYDN8EeOoAatxCmIbzQ" association="_fubn8DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fubn8jN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fubn8zN8EeOoAatxCmIbzQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_fscD4DN8EeOoAatxCmIbzQ" name="A_annotatedElement_comment" memberEnd="_fsYZhjN8EeOoAatxCmIbzQ _fscD4TN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fscD4TN8EeOoAatxCmIbzQ" name="comment" type="_fsYZgDN8EeOoAatxCmIbzQ" association="_fscD4DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fscD4jN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fscD4zN8EeOoAatxCmIbzQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_fumAADN8EeOoAatxCmIbzQ" name="A_associationClass_property" memberEnd="_fukK0jN8EeOoAatxCmIbzQ _fukx4DN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fwonYDN8EeOoAatxCmIbzQ" name="A_base_extension" memberEnd="_fwju4DN8EeOoAatxCmIbzQ _fwkV8jN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_ftt2QzN8EeOoAatxCmIbzQ" name="A_connectionPoint_state"/>
<packagedElement xmi:type="uml:Association" xmi:id="_ftqL4DN8EeOoAatxCmIbzQ" name="A_connectionPoint_stateMachine"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fuddIDN8EeOoAatxCmIbzQ" name="A_constrainingType_typeTemplateParameter" memberEnd="_fuYkqzN8EeOoAatxCmIbzQ _fuddITN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fuddITN8EeOoAatxCmIbzQ" name="typeTemplateParameter" type="_fuYkoDN8EeOoAatxCmIbzQ" association="_fuddIDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuddIjN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuddIzN8EeOoAatxCmIbzQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftl6cDN8EeOoAatxCmIbzQ" name="A_container_subvertex" memberEnd="_ftbiYzN8EeOoAatxCmIbzQ _fthpDzN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_ftmhgDN8EeOoAatxCmIbzQ" name="A_container_transition" memberEnd="_ftZGOzN8EeOoAatxCmIbzQ _fthpEzN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fucPADN8EeOoAatxCmIbzQ" name="A_default_templateParameter" memberEnd="_fuJ7LTN8EeOoAatxCmIbzQ _fucPATN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fucPATN8EeOoAatxCmIbzQ" name="templateParameter" type="_fuJ7IDN8EeOoAatxCmIbzQ" association="_fucPADN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fucPAjN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fucPAzN8EeOoAatxCmIbzQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftudUDN8EeOoAatxCmIbzQ" name="A_deferrableTrigger_state" memberEnd="_ftudUTN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftudUTN8EeOoAatxCmIbzQ" type="_ftVbwDN8EeOoAatxCmIbzQ" association="_ftudUDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftudUjN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftt2QDN8EeOoAatxCmIbzQ" name="A_doActivity_state" memberEnd="_ftt2QTN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftt2QTN8EeOoAatxCmIbzQ" type="_ftVbwDN8EeOoAatxCmIbzQ" association="_ftt2QDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftt2QjN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftsoIzN8EeOoAatxCmIbzQ" name="A_effect_transition" memberEnd="_ftsoJDN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftsoJDN8EeOoAatxCmIbzQ" type="_ftZGIDN8EeOoAatxCmIbzQ" association="_ftsoIzN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftsoJTN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftnvoDN8EeOoAatxCmIbzQ" name="A_entry_connectionPointReference" memberEnd="_ftnvoTN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftnvoTN8EeOoAatxCmIbzQ" name="" type="_ftfz0DN8EeOoAatxCmIbzQ" association="_ftnvoDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftnvojN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_fttPMDN8EeOoAatxCmIbzQ" name="A_entry_state" memberEnd="_fttPMTN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fttPMTN8EeOoAatxCmIbzQ" type="_ftVbwDN8EeOoAatxCmIbzQ" association="_fttPMDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fttPMjN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftpk0DN8EeOoAatxCmIbzQ" name="A_exit_connectionPointReference" memberEnd="_ftpk0TN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftpk0TN8EeOoAatxCmIbzQ" type="_ftfz0DN8EeOoAatxCmIbzQ" association="_ftpk0DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftpk0jN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_fttPMzN8EeOoAatxCmIbzQ" name="A_exit_state" memberEnd="_fttPNDN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fttPNDN8EeOoAatxCmIbzQ" type="_ftVbwDN8EeOoAatxCmIbzQ" association="_fttPMzN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fttPNTN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_fuaZ1jN8EeOoAatxCmIbzQ" name="A_formal_templateParameterSubstitution" memberEnd="_fuMXZjN8EeOoAatxCmIbzQ _fuaZ1zN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fuaZ1zN8EeOoAatxCmIbzQ" name="templateParameterSubstitution" type="_fuMXYDN8EeOoAatxCmIbzQ" association="_fuaZ1jN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuaZ2DN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuaZ2TN8EeOoAatxCmIbzQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftqy8zN8EeOoAatxCmIbzQ" name="A_guard_transition" memberEnd="_ftqy9DN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftqy9DN8EeOoAatxCmIbzQ" type="_ftZGIDN8EeOoAatxCmIbzQ" association="_ftqy8zN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftqy9TN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftmhgjN8EeOoAatxCmIbzQ" name="A_incoming_target" memberEnd="_ftbiajN8EeOoAatxCmIbzQ _ftZGPzN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fsbc0TN8EeOoAatxCmIbzQ" name="A_nestedPackage_nestingPackage" memberEnd="_fsWkUzN8EeOoAatxCmIbzQ _fsWkVzN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fuc2FDN8EeOoAatxCmIbzQ" name="A_operation_templateParameter_parameteredElement"
memberEnd="_fuUTMzN8EeOoAatxCmIbzQ _fuWIYzN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fsaOsDN8EeOoAatxCmIbzQ" name="A_opposite_property" memberEnd="_fsRr4jN8EeOoAatxCmIbzQ _fsaOsTN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fsaOsTN8EeOoAatxCmIbzQ" name="property" type="_fsRr0DN8EeOoAatxCmIbzQ" association="_fsaOsDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsaOsjN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftmhgTN8EeOoAatxCmIbzQ" name="A_outgoing_source" memberEnd="_ftbiZjN8EeOoAatxCmIbzQ _ftZGPTN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fuc2EDN8EeOoAatxCmIbzQ" name="A_ownedActual_templateParameterSubstitution" memberEnd="_fuMXbDN8EeOoAatxCmIbzQ _fuc2ETN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fuc2ETN8EeOoAatxCmIbzQ" name="templateParameterSubstitution" type="_fuMXYDN8EeOoAatxCmIbzQ" association="_fuc2EDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuc2EjN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_fsZnpDN8EeOoAatxCmIbzQ" name="A_ownedAttribute_class" memberEnd="_fsKXFjN8EeOoAatxCmIbzQ _fsRr3zN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fustsDN8EeOoAatxCmIbzQ" name="A_ownedAttribute_owningType" memberEnd="_fuq4gDN8EeOoAatxCmIbzQ _fupqYDN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fscD5DN8EeOoAatxCmIbzQ" name="A_ownedComment_owningElement" memberEnd="_fsXydTN8EeOoAatxCmIbzQ _fscD5TN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fscD5TN8EeOoAatxCmIbzQ" name="owningElement" type="_fsXyczN8EeOoAatxCmIbzQ" association="_fscD5DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fscD5jN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_fucPBDN8EeOoAatxCmIbzQ" name="A_ownedDefault_templateParameter" memberEnd="_fuJ7MDN8EeOoAatxCmIbzQ _fucPBTN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fucPBTN8EeOoAatxCmIbzQ" name="templateParameter" type="_fuJ7IDN8EeOoAatxCmIbzQ" association="_fucPBDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fucPBjN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_fsbc0DN8EeOoAatxCmIbzQ" name="A_ownedLiteral_enumeration" memberEnd="_fsVWMzN8EeOoAatxCmIbzQ _fsV9QzN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fsaOtDN8EeOoAatxCmIbzQ" name="A_ownedOperation_class" memberEnd="_fsKXGjN8EeOoAatxCmIbzQ _fsOogDN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fustsTN8EeOoAatxCmIbzQ" name="A_ownedOperation_owningType" memberEnd="_fuq4gzN8EeOoAatxCmIbzQ _fun1MTN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fsaOszN8EeOoAatxCmIbzQ" name="A_ownedParameter_operation" memberEnd="_fsNaYDN8EeOoAatxCmIbzQ _fsP2ozN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fuaZ1DN8EeOoAatxCmIbzQ" name="A_ownedParameter_signature" memberEnd="_fuItCTN8EeOoAatxCmIbzQ _fuJ7JjN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fubn9jN8EeOoAatxCmIbzQ" name="A_ownedParameteredElement_owningTemplateParameter"
memberEnd="_fuJ7KjN8EeOoAatxCmIbzQ _fuQo1jN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fubn9TN8EeOoAatxCmIbzQ" name="A_ownedTemplateSignature_template" memberEnd="_fuOzpzN8EeOoAatxCmIbzQ _fuItDTN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fsbc0jN8EeOoAatxCmIbzQ" name="A_ownedType_package" memberEnd="_fsWkWjN8EeOoAatxCmIbzQ _fsS58zN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fubA5DN8EeOoAatxCmIbzQ" name="A_parameterSubstitution_templateBinding" memberEnd="_fuLJTTN8EeOoAatxCmIbzQ _fuMXaDN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fuaZ0DN8EeOoAatxCmIbzQ" name="A_parameter_templateSignature" memberEnd="_fuItBjN8EeOoAatxCmIbzQ _fuaZ0TN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fuaZ0TN8EeOoAatxCmIbzQ" name="templateSignature" type="_fuItADN8EeOoAatxCmIbzQ" association="_fuaZ0DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fuaZ0jN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fuaZ0zN8EeOoAatxCmIbzQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_fubn9DN8EeOoAatxCmIbzQ" name="A_parameteredElement_templateParameter" memberEnd="_fuJ7KDN8EeOoAatxCmIbzQ _fuQo0zN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fsZnoDN8EeOoAatxCmIbzQ" name="A_raisedException_operation" memberEnd="_fsMzUDN8EeOoAatxCmIbzQ _fsZnoTN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fsZnoTN8EeOoAatxCmIbzQ" name="operation" type="_fsGssDN8EeOoAatxCmIbzQ" association="_fsZnoDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsZnojN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsZnozN8EeOoAatxCmIbzQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftoWsDN8EeOoAatxCmIbzQ" name="A_redefinedState_state" memberEnd="_ftoWsTN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftoWsTN8EeOoAatxCmIbzQ" type="_ftVbwDN8EeOoAatxCmIbzQ" association="_ftoWsDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftoWsjN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftoWszN8EeOoAatxCmIbzQ" name="A_redefinedTransition_transition" memberEnd="_ftoWtDN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftoWtDN8EeOoAatxCmIbzQ" type="_ftZGIDN8EeOoAatxCmIbzQ" association="_ftoWszN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftoWtTN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftraADN8EeOoAatxCmIbzQ" name="A_redefinitionContext_region" memberEnd="_ftraATN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftraATN8EeOoAatxCmIbzQ" type="_fthpADN8EeOoAatxCmIbzQ" association="_ftraADN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftraAjN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftraAzN8EeOoAatxCmIbzQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftqL4jN8EeOoAatxCmIbzQ" name="A_region_extendedRegion" memberEnd="_ftqL4zN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftqL4zN8EeOoAatxCmIbzQ" type="_fthpADN8EeOoAatxCmIbzQ" association="_ftqL4jN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftqL5DN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftqL4TN8EeOoAatxCmIbzQ" name="A_region_state"/>
<packagedElement xmi:type="uml:Association" xmi:id="_ftpk0zN8EeOoAatxCmIbzQ" name="A_region_stateMachine"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fubA4DN8EeOoAatxCmIbzQ" name="A_signature_templateBinding" memberEnd="_fuLJSzN8EeOoAatxCmIbzQ _fubA4TN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fubA4TN8EeOoAatxCmIbzQ" name="templateBinding" type="_fuLJQDN8EeOoAatxCmIbzQ" association="_fubA4DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fubA4jN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fubA4zN8EeOoAatxCmIbzQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftsoIDN8EeOoAatxCmIbzQ" name="A_stateInvariant_owningState" memberEnd="_ftsoITN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftsoITN8EeOoAatxCmIbzQ" name="owningState" type="_ftVbwDN8EeOoAatxCmIbzQ" association="_ftsoIDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftsoIjN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftqy8DN8EeOoAatxCmIbzQ" name="A_stateMachine_extendedStateMachine" memberEnd="_ftqy8TN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftqy8TN8EeOoAatxCmIbzQ" type="_ftLDsDN8EeOoAatxCmIbzQ" association="_ftqy8DN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftqy8jN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftnvozN8EeOoAatxCmIbzQ" name="A_state_connection"/>
<packagedElement xmi:type="uml:Association" xmi:id="_ftraBDN8EeOoAatxCmIbzQ" name="A_state_redefinitionContext" isDerived="true" memberEnd="_ftraBTN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftraBTN8EeOoAatxCmIbzQ" type="_ftVbwDN8EeOoAatxCmIbzQ" association="_ftraBDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftraBjN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftraBzN8EeOoAatxCmIbzQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftmhgzN8EeOoAatxCmIbzQ" name="A_submachineState_submachine" memberEnd="_ftLDyjN8EeOoAatxCmIbzQ _ftVb3zN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fsa1wDN8EeOoAatxCmIbzQ" name="A_superClass_class" memberEnd="_fsKXHjN8EeOoAatxCmIbzQ _fsa1wTN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fsa1wTN8EeOoAatxCmIbzQ" name="class" type="_fsKXEDN8EeOoAatxCmIbzQ" association="_fsa1wDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsa1wjN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsa1wzN8EeOoAatxCmIbzQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_fuaZ1TN8EeOoAatxCmIbzQ" name="A_templateBinding_boundElement" memberEnd="_fuOzozN8EeOoAatxCmIbzQ _fuLJSTN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_ftsBEDN8EeOoAatxCmIbzQ" name="A_transition_redefinitionContext" memberEnd="_ftsBETN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftsBETN8EeOoAatxCmIbzQ" type="_ftZGIDN8EeOoAatxCmIbzQ" association="_ftsBEDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftsBEjN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ftsBEzN8EeOoAatxCmIbzQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ftt2RDN8EeOoAatxCmIbzQ" name="A_trigger_transition" memberEnd="_ftt2RTN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_ftt2RTN8EeOoAatxCmIbzQ" type="_ftZGIDN8EeOoAatxCmIbzQ" association="_ftt2RDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ftt2RjN8EeOoAatxCmIbzQ"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_fuc2EzN8EeOoAatxCmIbzQ" name="A_type_templateParameter_parameteredElement" memberEnd="_fuXWgDN8EeOoAatxCmIbzQ _fuYkqTN8EeOoAatxCmIbzQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_fsa1xDN8EeOoAatxCmIbzQ" name="A_type_typedElement" memberEnd="_fsUIEzN8EeOoAatxCmIbzQ _fsa1xTN8EeOoAatxCmIbzQ">
<ownedEnd xmi:id="_fsa1xTN8EeOoAatxCmIbzQ" name="typedElement" type="_fsUIEDN8EeOoAatxCmIbzQ" association="_fsa1xDN8EeOoAatxCmIbzQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fsa1xjN8EeOoAatxCmIbzQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fsa1xzN8EeOoAatxCmIbzQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_fwGb4DN8EeOoAatxCmIbzQ" name="MorePivotable" isAbstract="true"/>
<packagedElement xmi:type="uml:Interface" xmi:id="_fwHC8DN8EeOoAatxCmIbzQ" name="Nameable" isAbstract="true"/>
<packagedElement xmi:type="uml:Interface" xmi:id="_fwJfMDN8EeOoAatxCmIbzQ" name="Pivotable" isAbstract="true"/>
<packagedElement xmi:type="uml:Interface" xmi:id="_fwgrkTN8EeOoAatxCmIbzQ" name="ReferringElement">
<ownedOperation xmi:id="_fwgrkjN8EeOoAatxCmIbzQ" name="getReferredElement">
<ownedParameter xmi:id="_fwgrkzN8EeOoAatxCmIbzQ" type="_fsXyczN8EeOoAatxCmIbzQ" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_fws40DN8EeOoAatxCmIbzQ" name="Visitable" isAbstract="true"/>
<packagedElement xmi:type="uml:Interface" xmi:id="_fws40TN8EeOoAatxCmIbzQ" name="Visitor" isAbstract="true">
<ownedTemplateSignature xmi:type="uml:RedefinableTemplateSignature" xmi:id="_fws40jN8EeOoAatxCmIbzQ" parameter="_fws40zN8EeOoAatxCmIbzQ">
<ownedParameter xmi:type="uml:ClassifierTemplateParameter" xmi:id="_fws40zN8EeOoAatxCmIbzQ" parameteredElement="_fws41DN8EeOoAatxCmIbzQ">
<ownedParameteredElement xmi:type="uml:Class" xmi:id="_fws41DN8EeOoAatxCmIbzQ" name="R" templateParameter="_fws40zN8EeOoAatxCmIbzQ"/>
</ownedParameter>
</ownedTemplateSignature>
</packagedElement>
<profileApplication xmi:id="_mwJtgIenEd-N4tjuug6Vsw">
<eAnnotations xmi:id="_mwJtgYenEd-N4tjuug6Vsw" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA"/>
</eAnnotations>
<appliedProfile href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
</profileApplication>
</uml:Package>
<Ecore:EPackage xmi:id="_5mpFcIdyEd-N4tjuug6Vsw" base_Package="_0" nsPrefix="pivot" nsURI="http://www.eclipse.org/ocl/3.1.0/Pivot" basePackage=""/>
<Ecore:EPackage xmi:id="_TPVhdod0Ed-N4tjuug6Vsw" base_Package="_0" nsPrefix="uml" nsURI="http://www.omg.org/spec/UML/20090901"/>
<Ecore:EPackage xmi:id="_U-GB8Id3Ed-N4tjuug6Vsw" base_Package="_0" nsPrefix="pivot" nsURI="http://org.eclipse.ocl/Pivot/20100704"/>
<Ecore:EPackage xmi:id="_q3AqoIemEd-N4tjuug6Vsw" nsPrefix="oclpivot" nsURI="http://org.eclipse.ocl/OCL/20100704/Pivot"/>
<Ecore:EPackage xmi:id="_sWEpoIemEd-N4tjuug6Vsw" nsPrefix="oclexp" nsURI="http://org.eclipse.ocl/OCL/20100704/Expression"/>
<Ecore:EPackage xmi:id="_n_43EIenEd-N4tjuug6Vsw" nsPrefix="ocltyp" nsURI="http://org.eclipse.ocl/OCL/20100704/Types"/>
<Ecore:EPackage xmi:id="_m7YDwIkgEd-C9fe6N-G3qw" nsPrefix="oclprim" nsURI="http://org.eclipse.ocl/OCL/20100704/Primitives"/>
<Ecore:EAttribute xmi:id="_2pU6sJv1Ed-z3OwhWUwlQQ" isTransient="true"/>
<Ecore:EClass xmi:id="_E-3sIJ0jEd-JkelcPbiG5Q" instanceClassName="org.eclipse.ocl.examples.pivot.utilities.INameableElement" className="INameableElement"/>
<Ecore:EClass xmi:id="_MO684J0kEd-JkelcPbiG5Q" instanceClassName="org.eclipse.ocl.examples.pivot.utilities.INameableElement" className="INameableElement"/>
<Ecore:EClass xmi:id="_LkkGYJ0mEd-JkelcPbiG5Q" instanceClassName="org.eclipse.ocl.examples.pivot.utilities.INameableElement"/>
<Ecore:EDataType xmi:id="_leEVYKd2Ed-p0fyBXlv83w" instanceClassName="java.lang.Class"/>
<Ecore:EReference xmi:id="_U0BTwKeTEd-p0fyBXlv83w" isTransient="true" isResolveProxies="false"/>
<Ecore:EReference xmi:id="_kot7kKeTEd-p0fyBXlv83w" isResolveProxies="false"/>
<Ecore:EDataType xmi:id="_mHEcALjCEd-IDaWL0FHlwg" instanceClassName="java.lang.Class&lt;?>"/>
<Ecore:EAttribute xmi:id="_yqM3UL2iEd-nQufuYygZtQ" isTransient="true"/>
<Ecore:EPackage xmi:id="_hn2o4sinEd-sJIf4tYBt-g" base_Package="_0" nsPrefix="pivot" nsURI="http://www.eclipse.org/ocl/3.1.0/Pivot"/>
<Ecore:EPackage xmi:id="_6wkKcMknEd-bx742yyafXQ" base_Package="_0" nsPrefix="pivot" nsURI="http://www.eclipse.org/ocl/3.1.0/Pivot"/>
<Ecore:EReference xmi:id="_fvuocDN8EeOoAatxCmIbzQ" isTransient="true" base_Property="_fvsMMDN8EeOoAatxCmIbzQ" isResolveProxies="false"/>
<Ecore:EAttribute xmi:id="_fwCKcTN8EeOoAatxCmIbzQ" isTransient="true" base_Property="_fwA8UjN8EeOoAatxCmIbzQ"/>
<Ecore:EDataType xmi:id="_fwCxgDN8EeOoAatxCmIbzQ" instanceClassName="org.eclipse.ocl.examples.domain.library.LibraryFeature" base_PrimitiveType="_fwBjYDN8EeOoAatxCmIbzQ"/>
<Ecore:EDataType xmi:id="_fwCxgTN8EeOoAatxCmIbzQ" instanceClassName="java.lang.Object" base_PrimitiveType="_fwBjYTN8EeOoAatxCmIbzQ"/>
<Ecore:EDataType xmi:id="_fwCxgjN8EeOoAatxCmIbzQ" instanceClassName="java.lang.Throwable" base_PrimitiveType="_fwCKcDN8EeOoAatxCmIbzQ"/>
<Ecore:EClass xmi:id="_fwL7cDN8EeOoAatxCmIbzQ" instanceClassName="org.eclipse.ocl.examples.pivot.util.MorePivotable" base_Interface="_fwGb4DN8EeOoAatxCmIbzQ"
className="MorePivotable"/>
<Ecore:EClass xmi:id="_fwL7cTN8EeOoAatxCmIbzQ" instanceClassName="org.eclipse.ocl.examples.domain.elements.Nameable" base_Interface="_fwHC8DN8EeOoAatxCmIbzQ"
className="Nameable"/>
<Ecore:EClass xmi:id="_fwMigDN8EeOoAatxCmIbzQ" instanceClassName="org.eclipse.ocl.examples.pivot.util.Pivotable" base_Interface="_fwJfMDN8EeOoAatxCmIbzQ"
className="Pivotable"/>
<Ecore:EAttribute xmi:id="_fwSCEDN8EeOoAatxCmIbzQ" base_Property="_fwQz9TN8EeOoAatxCmIbzQ"/>
<Ecore:EDataType xmi:id="_fwYvwDN8EeOoAatxCmIbzQ" instanceClassName="boolean" base_PrimitiveType="_fs9oUjN8EeOoAatxCmIbzQ"/>
<Ecore:EDataType xmi:id="_fwZW0DN8EeOoAatxCmIbzQ" instanceClassName="java.lang.Number" base_PrimitiveType="_fs9oUDN8EeOoAatxCmIbzQ"/>
<Ecore:EDataType xmi:id="_fwZW0TN8EeOoAatxCmIbzQ" instanceClassName="java.lang.Number" base_PrimitiveType="_fvU_0DN8EeOoAatxCmIbzQ"/>
<Ecore:EDataType xmi:id="_fwZW0jN8EeOoAatxCmIbzQ" instanceClassName="java.lang.String" base_PrimitiveType="_fs2TkDN8EeOoAatxCmIbzQ"/>
<Ecore:EDataType xmi:id="_fwZW0zN8EeOoAatxCmIbzQ" instanceClassName="java.lang.Number" base_PrimitiveType="_fs-PYTN8EeOoAatxCmIbzQ"/>
<Ecore:EAttribute xmi:id="_fwZ94DN8EeOoAatxCmIbzQ" isUnsettable="true" base_Property="_fu3FwjN8EeOoAatxCmIbzQ"/>
<Ecore:EClass xmi:id="_fwjH0DN8EeOoAatxCmIbzQ" base_Interface="_fwgrkTN8EeOoAatxCmIbzQ"/>
<Ecore:EClass xmi:id="_fwtf4DN8EeOoAatxCmIbzQ" instanceClassName="org.eclipse.ocl.examples.pivot.util.Visitable" base_Interface="_fws40DN8EeOoAatxCmIbzQ"
className="Visitable"/>
<Ecore:EClass xmi:id="_fwtf4TN8EeOoAatxCmIbzQ" instanceClassName="org.eclipse.ocl.examples.pivot.util.Visitor" base_Interface="_fws40TN8EeOoAatxCmIbzQ"/>
</xmi:XMI>