<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI is the top-level XML element for XMI transfer text          -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI (XMI.header, XMI.content?, XMI.difference*,
               XMI.extensions*) >
<!ATTLIST XMI
            xmi.version CDATA #FIXED "1.0"
            timestamp CDATA #IMPLIED
            verified (true | false) #IMPLIED
>

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI.header contains documentation and identifies the model,     -->
<!-- metamodel, and metametamodel                                    -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.header (XMI.documentation?, XMI.model*, XMI.metamodel*,
                      XMI.metametamodel*) >

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- documentation for transfer data                                 -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.documentation (#PCDATA | XMI.owner | XMI.contact |
                             XMI.longDescription | XMI.shortDescription |
                             XMI.exporter | XMI.exporterVersion |
                             XMI.notice)* >

<!ELEMENT XMI.owner ANY >

<!ELEMENT XMI.contact ANY >

<!ELEMENT XMI.longDescription ANY >

<!ELEMENT XMI.shortDescription ANY >

<!ELEMENT XMI.exporter ANY >

<!ELEMENT XMI.exporterVersion ANY >

<!ELEMENT XMI.exporterID ANY >

<!ELEMENT XMI.notice ANY >

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI.element.att defines the attributes that each XML element    -->
<!-- that corresponds to a metamodel class must have to conform to   -->
<!-- the XMI specification.                                          -->
<!-- _______________________________________________________________ -->

<!ENTITY % XMI.element.att
               'xmi.id ID #IMPLIED xmi.label CDATA #IMPLIED xmi.uuid
                CDATA #IMPLIED ' >

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI.link.att defines the attributes that each XML element that  -->
<!-- corresponds to a metamodel class must have to enable it to      -->
<!-- function as a simple XLink as well as refer to model            -->
<!-- constructs within the same XMI file.                            -->
<!-- _______________________________________________________________ -->

<!ENTITY % XMI.link.att
               'xml:link CDATA #IMPLIED inline (true | false) #IMPLIED
                actuate (show | user) #IMPLIED href CDATA #IMPLIED role
                CDATA #IMPLIED title CDATA #IMPLIED show (embed | replace
                | new) #IMPLIED behavior CDATA #IMPLIED xmi.idref IDREF
                #IMPLIED xmi.uuidref CDATA #IMPLIED' >

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI.model identifies the model(s) being transferred             -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.model ANY >
<!ATTLIST XMI.model
            %XMI.link.att;
            xmi.name     CDATA #REQUIRED
            xmi.version  CDATA #IMPLIED
>

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI.metamodel identifies the metamodel(s) for the transferred   -->
<!-- data                                                            -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.metamodel ANY >
<!ATTLIST XMI.metamodel
            %XMI.link.att;
            xmi.name     CDATA #REQUIRED
            xmi.version  CDATA #IMPLIED
>

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI.metametamodel identifies the metametamodel(s) for the       -->
<!-- transferred data                                                -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.metametamodel ANY >
<!ATTLIST XMI.metametamodel
            %XMI.link.att;
            xmi.name     CDATA #REQUIRED
            xmi.version  CDATA #IMPLIED
>

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI.content is the actual data being transferred                -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.content ANY >

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI.extensions contains data to transfer that does not conform  -->
<!-- to the metamodel(s) in the header                               -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.extensions ANY >
<!ATTLIST XMI.extensions
            xmi.extender CDATA #REQUIRED
>

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- extension contains information related to a specific model      -->
<!-- construct that is not defined in the metamodel(s) in the header -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.extension ANY >
<!ATTLIST XMI.extension
            %XMI.element.att;
            %XMI.link.att;
            xmi.extender   CDATA #REQUIRED
            xmi.extenderID CDATA #IMPLIED
>

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI.difference holds XML elements representing differences to a -->
<!-- base model                                                      -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.difference (XMI.difference | XMI.delete | XMI.add |
                          XMI.replace)* >
<!ATTLIST XMI.difference
            %XMI.element.att;
            %XMI.link.att;
>

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI.delete represents a deletion from a base model              -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.delete EMPTY >
<!ATTLIST XMI.delete
            %XMI.element.att;
            %XMI.link.att;
>

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI.add represents an addition to a base model                  -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.add ANY >
<!ATTLIST XMI.add
            %XMI.element.att;
            %XMI.link.att;
            xmi.position CDATA "-1"
>

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI.replace represents the replacement of a model construct     -->
<!-- with another model construct in a base model                    -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.replace ANY >
<!ATTLIST XMI.replace
            %XMI.element.att;
            %XMI.link.att;
            xmi.position CDATA "-1"
>

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- XMI.reference may be used to refer to data types not defined in -->
<!-- the metamodel                                                   -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.reference ANY >
<!ATTLIST XMI.reference
            %XMI.link.att;
>

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- This section contains the declaration of XML elements           -->
<!-- representing data types                                         -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.TypeDefinitions ANY >

<!ELEMENT XMI.field ANY >

<!ELEMENT XMI.seqItem ANY >

<!ELEMENT XMI.octetStream (#PCDATA) >

<!ELEMENT XMI.unionDiscrim ANY >

<!ELEMENT XMI.enum EMPTY >
<!ATTLIST XMI.enum
            xmi.value CDATA #REQUIRED
>

<!ELEMENT XMI.any ANY >
<!ATTLIST XMI.any
            %XMI.link.att;
            xmi.type CDATA #IMPLIED
            xmi.name CDATA #IMPLIED
>

<!ELEMENT XMI.CorbaTypeCode (XMI.CorbaTcAlias | XMI.CorbaTcStruct |
                             XMI.CorbaTcSequence | XMI.CorbaTcArray |
                             XMI.CorbaTcEnum | XMI.CorbaTcUnion |
                             XMI.CorbaTcExcept | XMI.CorbaTcString |
                             XMI.CorbaTcWstring | XMI.CorbaTcShort |
                             XMI.CorbaTcLong | XMI.CorbaTcUshort |
                             XMI.CorbaTcUlong | XMI.CorbaTcFloat |
                             XMI.CorbaTcDouble | XMI.CorbaTcBoolean |
                             XMI.CorbaTcChar | XMI.CorbaTcWchar |
                             XMI.CorbaTcOctet | XMI.CorbaTcAny |
                             XMI.CorbaTcTypeCode | XMI.CorbaTcPrincipal |
                             XMI.CorbaTcNull | XMI.CorbaTcVoid |
                             XMI.CorbaTcLongLong |
                             XMI.CorbaTcObjRef |
                             XMI.CorbaTcLongDouble) >
<!ATTLIST XMI.CorbaTypeCode
            %XMI.element.att;
>

<!ELEMENT XMI.CorbaTcAlias (XMI.CorbaTypeCode) >
<!ATTLIST XMI.CorbaTcAlias
            xmi.tcName CDATA #REQUIRED
            xmi.tcId   CDATA #IMPLIED
>

<!ELEMENT XMI.CorbaTcStruct (XMI.CorbaTcField)* >
<!ATTLIST XMI.CorbaTcStruct
            xmi.tcName CDATA #REQUIRED
            xmi.tcId   CDATA #IMPLIED
>

<!ELEMENT XMI.CorbaTcField (XMI.CorbaTypeCode) >
<!ATTLIST XMI.CorbaTcField
            xmi.tcName CDATA #REQUIRED
>

<!ELEMENT XMI.CorbaTcSequence (XMI.CorbaTypeCode |
                               XMI.CorbaRecursiveType) >
<!ATTLIST XMI.CorbaTcSequence
            xmi.tcLength CDATA #REQUIRED
>

<!ELEMENT XMI.CorbaRecursiveType EMPTY >
<!ATTLIST XMI.CorbaRecursiveType
            xmi.offset CDATA #REQUIRED
>

<!ELEMENT XMI.CorbaTcArray (XMI.CorbaTypeCode) >
<!ATTLIST XMI.CorbaTcArray
            xmi.tcLength CDATA #REQUIRED
>

<!ELEMENT XMI.CorbaTcObjRef EMPTY >
<!ATTLIST XMI.CorbaTcObjRef
            xmi.tcName CDATA #REQUIRED
            xmi.tcId   CDATA #IMPLIED
>

<!ELEMENT XMI.CorbaTcEnum (XMI.CorbaTcEnumLabel)* >
<!ATTLIST XMI.CorbaTcEnum
            xmi.tcName CDATA #REQUIRED
            xmi.tcId   CDATA #IMPLIED
>

<!ELEMENT XMI.CorbaTcEnumLabel EMPTY >
<!ATTLIST XMI.CorbaTcEnumLabel
            xmi.tcName CDATA #REQUIRED
>

<!ELEMENT XMI.CorbaTcUnionMbr (XMI.CorbaTypeCode, XMI.any) >
<!ATTLIST XMI.CorbaTcUnionMbr
            xmi.tcName CDATA #REQUIRED
>

<!ELEMENT XMI.CorbaTcUnion (XMI.CorbaTypeCode, XMI.CorbaTcUnionMbr*) >
<!ATTLIST XMI.CorbaTcUnion
            xmi.tcName CDATA #REQUIRED
            xmi.tcId   CDATA #IMPLIED
>

<!ELEMENT XMI.CorbaTcExcept (XMI.CorbaTcField)* >
<!ATTLIST XMI.CorbaTcExcept
            xmi.tcName CDATA #REQUIRED
            xmi.tcId   CDATA #IMPLIED
>

<!ELEMENT XMI.CorbaTcString EMPTY >
<!ATTLIST XMI.CorbaTcString
            xmi.tcLength CDATA #REQUIRED
>

<!ELEMENT XMI.CorbaTcWstring EMPTY >
<!ATTLIST XMI.CorbaTcWstring
            xmi.tcLength CDATA #REQUIRED
>

<!ELEMENT XMI.CorbaTcFixed EMPTY >
<!ATTLIST XMI.CorbaTcFixed
            xmi.tcDigits CDATA #REQUIRED
            xmi.tcScale  CDATA #REQUIRED
>

<!ELEMENT XMI.CorbaTcShort EMPTY >

<!ELEMENT XMI.CorbaTcLong EMPTY >

<!ELEMENT XMI.CorbaTcUshort EMPTY >

<!ELEMENT XMI.CorbaTcUlong EMPTY >

<!ELEMENT XMI.CorbaTcFloat EMPTY >

<!ELEMENT XMI.CorbaTcDouble EMPTY >

<!ELEMENT XMI.CorbaTcBoolean EMPTY >

<!ELEMENT XMI.CorbaTcChar EMPTY >

<!ELEMENT XMI.CorbaTcWchar EMPTY >

<!ELEMENT XMI.CorbaTcOctet EMPTY >

<!ELEMENT XMI.CorbaTcAny EMPTY >

<!ELEMENT XMI.CorbaTcTypeCode EMPTY >

<!ELEMENT XMI.CorbaTcPrincipal EMPTY >

<!ELEMENT XMI.CorbaTcNull EMPTY >

<!ELEMENT XMI.CorbaTcVoid EMPTY >

<!ELEMENT XMI.CorbaTcLongLong EMPTY >

<!ELEMENT XMI.CorbaTcLongDouble EMPTY >


<!-- PACKAGE: Foundation -->

<!ENTITY % Foundation.Data_Types.AggregationKind
           ' xmi.value (  none| aggregate| composite ) #REQUIRED'>

<!ENTITY % Foundation.Data_Types.ChangeableKind
           ' xmi.value (  changeable| frozen| addOnly ) #REQUIRED'>

<!ENTITY % Foundation.Data_Types.ParameterDirectionKind
           ' xmi.value (  in| inout| out| return ) #REQUIRED'>

<!ENTITY % Foundation.Data_Types.MessageDirectionKind
           ' xmi.value (  activation| return ) #REQUIRED'>

<!ENTITY % Foundation.Data_Types.ScopeKind
           ' xmi.value (  instance| classifier ) #REQUIRED'>

<!ENTITY % Foundation.Data_Types.VisibilityKind
           ' xmi.value (  public| protected| private ) #REQUIRED'>

<!ENTITY % Foundation.Data_Types.PseudostateKind
           ' xmi.value (  initial| deepHistory| shallowHistory| join| fork| branch| junction| final ) #REQUIRED'>

<!ENTITY % Foundation.Data_Types.CallConcurrencyKind
           ' xmi.value (  sequential| guarded| concurrent ) #REQUIRED'>

<!ENTITY % Foundation.Data_Types.OrderingKind
           ' xmi.value (  unordered| ordered| sorted ) #REQUIRED'>


<!-- PACKAGE: Foundation.Data_Types -->


<!-- *****    Foundation.Data_Types.A_multiplicity_range   *******  -->

<!ELEMENT Foundation.Data_Types.Multiplicity.range ( Foundation.Data_Types.MultiplicityRange)+ >


<!-- CLASS: Foundation.Data_Types.Multiplicity -->

<!ENTITY % Foundation.Data_Types.MultiplicityCompositions '(Foundation.Data_Types.Multiplicity.range+)' > 

<!ELEMENT Foundation.Data_Types.Multiplicity ((XMI.extension* )
       , %Foundation.Data_Types.MultiplicityCompositions; )?>

<!ATTLIST Foundation.Data_Types.Multiplicity %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Data_Types.Expression -->

<!ELEMENT Foundation.Data_Types.Expression.language (#PCDATA|XMI.reference)*>

<!ELEMENT Foundation.Data_Types.Expression.body (#PCDATA|XMI.reference)*>

<!ENTITY % Foundation.Data_Types.ExpressionProperties '(Foundation.Data_Types.Expression.language 
       ,Foundation.Data_Types.Expression.body )' > 

<!ELEMENT Foundation.Data_Types.Expression ( %Foundation.Data_Types.ExpressionProperties;
       ,(XMI.extension* ) )?>

<!ATTLIST Foundation.Data_Types.Expression %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Data_Types.ObjectSetExpression -->

<!ENTITY % Foundation.Data_Types.ObjectSetExpressionProperties '(%Foundation.Data_Types.ExpressionProperties;)' > 

<!ELEMENT Foundation.Data_Types.ObjectSetExpression ( %Foundation.Data_Types.ObjectSetExpressionProperties;
       ,(XMI.extension* ) )?>

<!ATTLIST Foundation.Data_Types.ObjectSetExpression %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Data_Types.TimeExpression -->

<!ENTITY % Foundation.Data_Types.TimeExpressionProperties '(%Foundation.Data_Types.ExpressionProperties;)' > 

<!ELEMENT Foundation.Data_Types.TimeExpression ( %Foundation.Data_Types.TimeExpressionProperties;
       ,(XMI.extension* ) )?>

<!ATTLIST Foundation.Data_Types.TimeExpression %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Data_Types.BooleanExpression -->

<!ENTITY % Foundation.Data_Types.BooleanExpressionProperties '(%Foundation.Data_Types.ExpressionProperties;)' > 

<!ELEMENT Foundation.Data_Types.BooleanExpression ( %Foundation.Data_Types.BooleanExpressionProperties;
       ,(XMI.extension* ) )?>

<!ATTLIST Foundation.Data_Types.BooleanExpression %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Data_Types.ActionExpression -->

<!ENTITY % Foundation.Data_Types.ActionExpressionProperties '(%Foundation.Data_Types.ExpressionProperties;)' > 

<!ELEMENT Foundation.Data_Types.ActionExpression ( %Foundation.Data_Types.ActionExpressionProperties;
       ,(XMI.extension* ) )?>

<!ATTLIST Foundation.Data_Types.ActionExpression %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Data_Types.MultiplicityRange -->

<!ELEMENT Foundation.Data_Types.MultiplicityRange.lower (#PCDATA|XMI.reference)*>

<!ELEMENT Foundation.Data_Types.MultiplicityRange.upper (#PCDATA|XMI.reference)*>

<!ELEMENT Foundation.Data_Types.MultiplicityRange.multiplicity (Foundation.Data_Types.Multiplicity) >

<!ENTITY % Foundation.Data_Types.MultiplicityRangeProperties '(Foundation.Data_Types.MultiplicityRange.lower 
       ,Foundation.Data_Types.MultiplicityRange.upper )' > 

<!ENTITY % Foundation.Data_Types.MultiplicityRangeAssociations '(Foundation.Data_Types.MultiplicityRange.multiplicity?)' > 

<!ELEMENT Foundation.Data_Types.MultiplicityRange ( %Foundation.Data_Types.MultiplicityRangeProperties;
       ,(XMI.extension* ,  %Foundation.Data_Types.MultiplicityRangeAssociations; ) )?>

<!ATTLIST Foundation.Data_Types.MultiplicityRange %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Data_Types.IterationExpression -->

<!ENTITY % Foundation.Data_Types.IterationExpressionProperties '(%Foundation.Data_Types.ExpressionProperties;)' > 

<!ELEMENT Foundation.Data_Types.IterationExpression ( %Foundation.Data_Types.IterationExpressionProperties;
       ,(XMI.extension* ) )?>

<!ATTLIST Foundation.Data_Types.IterationExpression %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Data_Types.TypeExpression -->

<!ENTITY % Foundation.Data_Types.TypeExpressionProperties '(%Foundation.Data_Types.ExpressionProperties;)' > 

<!ELEMENT Foundation.Data_Types.TypeExpression ( %Foundation.Data_Types.TypeExpressionProperties;
       ,(XMI.extension* ) )?>

<!ATTLIST Foundation.Data_Types.TypeExpression %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Data_Types.ArgListsExpression -->

<!ENTITY % Foundation.Data_Types.ArgListsExpressionProperties '(%Foundation.Data_Types.ExpressionProperties;)' > 

<!ELEMENT Foundation.Data_Types.ArgListsExpression ( %Foundation.Data_Types.ArgListsExpressionProperties;
       ,(XMI.extension* ) )?>

<!ATTLIST Foundation.Data_Types.ArgListsExpression %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Data_Types.MappingExpression -->

<!ENTITY % Foundation.Data_Types.MappingExpressionProperties '(%Foundation.Data_Types.ExpressionProperties;)' > 

<!ELEMENT Foundation.Data_Types.MappingExpression ( %Foundation.Data_Types.MappingExpressionProperties;
       ,(XMI.extension* ) )?>

<!ATTLIST Foundation.Data_Types.MappingExpression %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Data_Types.ProcedureExpression -->

<!ENTITY % Foundation.Data_Types.ProcedureExpressionProperties '(%Foundation.Data_Types.ExpressionProperties;)' > 

<!ELEMENT Foundation.Data_Types.ProcedureExpression ( %Foundation.Data_Types.ProcedureExpressionProperties;
       ,(XMI.extension* ) )?>

<!ATTLIST Foundation.Data_Types.ProcedureExpression %XMI.element.att; %XMI.link.att; >



<!-- PACKAGE: Foundation.Core -->


<!-- *****    Foundation.Core.A_association_connection   *******  -->

<!ELEMENT Foundation.Core.Association.connection ( Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole)* >


<!-- *****    Foundation.Core.A_owner_feature   *******  -->

<!ELEMENT Foundation.Core.Classifier.feature ( Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception)* >


<!-- *****    Foundation.Core.A_namespace_ownedElement   *******  -->

<!ELEMENT Foundation.Core.Namespace.ownedElement ( Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)* >


<!-- *****    Foundation.Core.A_behavioralFeature_parameter   *******  -->

<!ELEMENT Foundation.Core.BehavioralFeature.parameter ( Foundation.Core.Parameter)* >


<!-- *****    Foundation.Core.A_qualifier_associationEnd   *******  -->

<!ELEMENT Foundation.Core.AssociationEnd.qualifier ( Foundation.Core.Attribute)* >


<!-- *****    Foundation.Core.A_implementationLocation_residentElement   *******  -->

<!ELEMENT Foundation.Core.Component.residentElement ( Foundation.Core.ElementResidence)* >


<!-- *****    Foundation.Core.A_modelElement_templateParameter   *******  -->

<!ELEMENT Foundation.Core.ModelElement.templateParameter ( Foundation.Core.TemplateParameter)* >


<!-- CLASS: Foundation.Core.Element -->

<!ELEMENT Foundation.Core.Element ((XMI.extension* ) )?>

<!ATTLIST Foundation.Core.Element %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.ModelElement -->

<!ELEMENT Foundation.Core.ModelElement.name (#PCDATA|XMI.reference)*>

<!ELEMENT Foundation.Core.ModelElement.visibility EMPTY>
<!ATTLIST Foundation.Core.ModelElement.visibility %Foundation.Data_Types.VisibilityKind;>

<!ELEMENT Foundation.Core.ModelElement.isSpecification EMPTY>
<!ATTLIST Foundation.Core.ModelElement.isSpecification
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Foundation.Core.ModelElement.namespace (Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model)?>

<!ELEMENT Foundation.Core.ModelElement.clientDependency (Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission)*>

<!ELEMENT Foundation.Core.ModelElement.constraint (Foundation.Core.Constraint)*>

<!ELEMENT Foundation.Core.ModelElement.supplierDependency (Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission)*>

<!ELEMENT Foundation.Core.ModelElement.presentation (Foundation.Core.PresentationElement
  |Diagramming.Diagram
  |Diagramming.DiagramElement)*>

<!ELEMENT Foundation.Core.ModelElement.targetFlow (Foundation.Core.Flow)*>

<!ELEMENT Foundation.Core.ModelElement.sourceFlow (Foundation.Core.Flow)*>

<!ELEMENT Foundation.Core.ModelElement.templateParameter3 (Foundation.Core.TemplateParameter)*>

<!ELEMENT Foundation.Core.ModelElement.binding (Foundation.Core.Binding)?>

<!ELEMENT Foundation.Core.ModelElement.comment (Foundation.Core.Comment)*>

<!ELEMENT Foundation.Core.ModelElement.elementResidence (Foundation.Core.ElementResidence)*>

<!ELEMENT Foundation.Core.ModelElement.templateParameter2 (Foundation.Core.TemplateParameter)*>

<!ENTITY % Foundation.Core.ModelElementProperties '(Foundation.Core.ModelElement.name 
       ,Foundation.Core.ModelElement.visibility 
       ,Foundation.Core.ModelElement.isSpecification )' > 

<!ENTITY % Foundation.Core.ModelElementAssociations '(Foundation.Core.ModelElement.namespace?
       ,Foundation.Core.ModelElement.clientDependency*
       ,Foundation.Core.ModelElement.constraint*
       ,Foundation.Core.ModelElement.supplierDependency*
       ,Foundation.Core.ModelElement.presentation*
       ,Foundation.Core.ModelElement.targetFlow*
       ,Foundation.Core.ModelElement.sourceFlow*
       ,Foundation.Core.ModelElement.templateParameter3*
       ,Foundation.Core.ModelElement.binding?
       ,Foundation.Core.ModelElement.comment*
       ,Foundation.Core.ModelElement.elementResidence*
       ,Foundation.Core.ModelElement.templateParameter2*)' > 

<!ENTITY % Foundation.Core.ModelElementCompositions '(Foundation.Core.ModelElement.templateParameter*)' > 

<!ELEMENT Foundation.Core.ModelElement ( %Foundation.Core.ModelElementProperties;
       ,(XMI.extension* ,  %Foundation.Core.ModelElementAssociations; )
       , %Foundation.Core.ModelElementCompositions; )?>

<!ATTLIST Foundation.Core.ModelElement %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.GeneralizableElement -->

<!ELEMENT Foundation.Core.GeneralizableElement.isRoot EMPTY>
<!ATTLIST Foundation.Core.GeneralizableElement.isRoot
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Foundation.Core.GeneralizableElement.isLeaf EMPTY>
<!ATTLIST Foundation.Core.GeneralizableElement.isLeaf
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Foundation.Core.GeneralizableElement.isAbstract EMPTY>
<!ATTLIST Foundation.Core.GeneralizableElement.isAbstract
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Foundation.Core.GeneralizableElement.generalization (Foundation.Core.Generalization)*>

<!ELEMENT Foundation.Core.GeneralizableElement.specialization (Foundation.Core.Generalization)*>

<!ENTITY % Foundation.Core.GeneralizableElementProperties '(%Foundation.Core.ModelElementProperties;
       ,Foundation.Core.GeneralizableElement.isRoot 
       ,Foundation.Core.GeneralizableElement.isLeaf 
       ,Foundation.Core.GeneralizableElement.isAbstract )' > 

<!ENTITY % Foundation.Core.GeneralizableElementAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Foundation.Core.GeneralizableElement.generalization*
       ,Foundation.Core.GeneralizableElement.specialization*)' > 

<!ENTITY % Foundation.Core.GeneralizableElementCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Foundation.Core.GeneralizableElement ( %Foundation.Core.GeneralizableElementProperties;
       ,(XMI.extension* ,  %Foundation.Core.GeneralizableElementAssociations; )
       , %Foundation.Core.GeneralizableElementCompositions; )?>

<!ATTLIST Foundation.Core.GeneralizableElement %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Namespace -->

<!ENTITY % Foundation.Core.NamespaceProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Foundation.Core.NamespaceAssociations '(%Foundation.Core.ModelElementAssociations;)' > 

<!ENTITY % Foundation.Core.NamespaceCompositions '(%Foundation.Core.ModelElementCompositions;
       ,Foundation.Core.Namespace.ownedElement*)' > 

<!ELEMENT Foundation.Core.Namespace ( %Foundation.Core.NamespaceProperties;
       ,(XMI.extension* ,  %Foundation.Core.NamespaceAssociations; )
       , %Foundation.Core.NamespaceCompositions; )?>

<!ATTLIST Foundation.Core.Namespace %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Classifier -->

<!ELEMENT Foundation.Core.Classifier.participant (Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole)*>

<!ELEMENT Foundation.Core.Classifier.powertypeRange (Foundation.Core.Generalization)*>

<!ENTITY % Foundation.Core.ClassifierProperties '(%Foundation.Core.GeneralizableElementProperties;)' > 

<!ENTITY % Foundation.Core.ClassifierAssociations '(%Foundation.Core.GeneralizableElementAssociations;
       ,Foundation.Core.Classifier.participant*
       ,Foundation.Core.Classifier.powertypeRange*)' > 

<!ENTITY % Foundation.Core.ClassifierCompositions '(%Foundation.Core.GeneralizableElementCompositions;
       ,Foundation.Core.Namespace.ownedElement*
       ,Foundation.Core.Classifier.feature*)' > 

<!ELEMENT Foundation.Core.Classifier ( %Foundation.Core.ClassifierProperties;
       ,(XMI.extension* ,  %Foundation.Core.ClassifierAssociations; )
       , %Foundation.Core.ClassifierCompositions; )?>

<!ATTLIST Foundation.Core.Classifier %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Class -->

<!ELEMENT Foundation.Core.Class.isActive EMPTY>
<!ATTLIST Foundation.Core.Class.isActive
        xmi.value ( true | false ) #REQUIRED>

<!ENTITY % Foundation.Core.ClassProperties '(%Foundation.Core.ClassifierProperties;
       ,Foundation.Core.Class.isActive )' > 

<!ENTITY % Foundation.Core.ClassAssociations '(%Foundation.Core.ClassifierAssociations;)' > 

<!ENTITY % Foundation.Core.ClassCompositions '(%Foundation.Core.ClassifierCompositions;)' > 

<!ELEMENT Foundation.Core.Class ( %Foundation.Core.ClassProperties;
       ,(XMI.extension* ,  %Foundation.Core.ClassAssociations; )
       , %Foundation.Core.ClassCompositions; )?>

<!ATTLIST Foundation.Core.Class %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.DataType -->

<!ENTITY % Foundation.Core.DataTypeProperties '(%Foundation.Core.ClassifierProperties;)' > 

<!ENTITY % Foundation.Core.DataTypeAssociations '(%Foundation.Core.ClassifierAssociations;)' > 

<!ENTITY % Foundation.Core.DataTypeCompositions '(%Foundation.Core.ClassifierCompositions;)' > 

<!ELEMENT Foundation.Core.DataType ( %Foundation.Core.DataTypeProperties;
       ,(XMI.extension* ,  %Foundation.Core.DataTypeAssociations; )
       , %Foundation.Core.DataTypeCompositions; )?>

<!ATTLIST Foundation.Core.DataType %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Feature -->

<!ELEMENT Foundation.Core.Feature.ownerScope EMPTY>
<!ATTLIST Foundation.Core.Feature.ownerScope %Foundation.Data_Types.ScopeKind;>

<!ELEMENT Foundation.Core.Feature.owner (Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem)?>

<!ENTITY % Foundation.Core.FeatureProperties '(%Foundation.Core.ModelElementProperties;
       ,Foundation.Core.Feature.ownerScope )' > 

<!ENTITY % Foundation.Core.FeatureAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Foundation.Core.Feature.owner?)' > 

<!ENTITY % Foundation.Core.FeatureCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Foundation.Core.Feature ( %Foundation.Core.FeatureProperties;
       ,(XMI.extension* ,  %Foundation.Core.FeatureAssociations; )
       , %Foundation.Core.FeatureCompositions; )?>

<!ATTLIST Foundation.Core.Feature %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.StructuralFeature -->

<!ELEMENT Foundation.Core.StructuralFeature.multiplicity (Foundation.Data_Types.Multiplicity)>

<!ELEMENT Foundation.Core.StructuralFeature.changeability EMPTY>
<!ATTLIST Foundation.Core.StructuralFeature.changeability %Foundation.Data_Types.ChangeableKind;>

<!ELEMENT Foundation.Core.StructuralFeature.targetScope EMPTY>
<!ATTLIST Foundation.Core.StructuralFeature.targetScope %Foundation.Data_Types.ScopeKind;>

<!ELEMENT Foundation.Core.StructuralFeature.type (Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem) >

<!ENTITY % Foundation.Core.StructuralFeatureProperties '(%Foundation.Core.FeatureProperties;
       ,Foundation.Core.StructuralFeature.multiplicity 
       ,Foundation.Core.StructuralFeature.changeability 
       ,Foundation.Core.StructuralFeature.targetScope )' > 

<!ENTITY % Foundation.Core.StructuralFeatureAssociations '(%Foundation.Core.FeatureAssociations;
       ,Foundation.Core.StructuralFeature.type )' > 

<!ENTITY % Foundation.Core.StructuralFeatureCompositions '(%Foundation.Core.FeatureCompositions;)' > 

<!ELEMENT Foundation.Core.StructuralFeature ( %Foundation.Core.StructuralFeatureProperties;
       ,(XMI.extension* ,  %Foundation.Core.StructuralFeatureAssociations; )
       , %Foundation.Core.StructuralFeatureCompositions; )?>

<!ATTLIST Foundation.Core.StructuralFeature %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.AssociationEnd -->

<!ELEMENT Foundation.Core.AssociationEnd.isNavigable EMPTY>
<!ATTLIST Foundation.Core.AssociationEnd.isNavigable
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Foundation.Core.AssociationEnd.ordering EMPTY>
<!ATTLIST Foundation.Core.AssociationEnd.ordering %Foundation.Data_Types.OrderingKind;>

<!ELEMENT Foundation.Core.AssociationEnd.aggregation EMPTY>
<!ATTLIST Foundation.Core.AssociationEnd.aggregation %Foundation.Data_Types.AggregationKind;>

<!ELEMENT Foundation.Core.AssociationEnd.targetScope EMPTY>
<!ATTLIST Foundation.Core.AssociationEnd.targetScope %Foundation.Data_Types.ScopeKind;>

<!ELEMENT Foundation.Core.AssociationEnd.multiplicity (Foundation.Data_Types.Multiplicity)>

<!ELEMENT Foundation.Core.AssociationEnd.changeability EMPTY>
<!ATTLIST Foundation.Core.AssociationEnd.changeability %Foundation.Data_Types.ChangeableKind;>

<!ELEMENT Foundation.Core.AssociationEnd.association (Foundation.Core.Association
  |Foundation.Core.AssociationClass
  |Behavioral_Elements.Collaborations.AssociationRole) >

<!ELEMENT Foundation.Core.AssociationEnd.type (Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem) >

<!ELEMENT Foundation.Core.AssociationEnd.specification (Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem)*>

<!ENTITY % Foundation.Core.AssociationEndProperties '(%Foundation.Core.ModelElementProperties;
       ,Foundation.Core.AssociationEnd.isNavigable 
       ,Foundation.Core.AssociationEnd.ordering 
       ,Foundation.Core.AssociationEnd.aggregation 
       ,Foundation.Core.AssociationEnd.targetScope 
       ,Foundation.Core.AssociationEnd.multiplicity 
       ,Foundation.Core.AssociationEnd.changeability )' > 

<!ENTITY % Foundation.Core.AssociationEndAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Foundation.Core.AssociationEnd.association?
       ,Foundation.Core.AssociationEnd.type 
       ,Foundation.Core.AssociationEnd.specification*)' > 

<!ENTITY % Foundation.Core.AssociationEndCompositions '(%Foundation.Core.ModelElementCompositions;
       ,Foundation.Core.AssociationEnd.qualifier*)' > 

<!ELEMENT Foundation.Core.AssociationEnd ( %Foundation.Core.AssociationEndProperties;
       ,(XMI.extension* ,  %Foundation.Core.AssociationEndAssociations; )
       , %Foundation.Core.AssociationEndCompositions; )?>

<!ATTLIST Foundation.Core.AssociationEnd %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Interface -->

<!ENTITY % Foundation.Core.InterfaceProperties '(%Foundation.Core.ClassifierProperties;)' > 

<!ENTITY % Foundation.Core.InterfaceAssociations '(%Foundation.Core.ClassifierAssociations;)' > 

<!ENTITY % Foundation.Core.InterfaceCompositions '(%Foundation.Core.ClassifierCompositions;)' > 

<!ELEMENT Foundation.Core.Interface ( %Foundation.Core.InterfaceProperties;
       ,(XMI.extension* ,  %Foundation.Core.InterfaceAssociations; )
       , %Foundation.Core.InterfaceCompositions; )?>

<!ATTLIST Foundation.Core.Interface %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Constraint -->

<!ELEMENT Foundation.Core.Constraint.body (Foundation.Data_Types.BooleanExpression)>

<!ELEMENT Foundation.Core.Constraint.constrainedElement (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)*>

<!ENTITY % Foundation.Core.ConstraintProperties '(%Foundation.Core.ModelElementProperties;
       ,Foundation.Core.Constraint.body )' > 

<!ENTITY % Foundation.Core.ConstraintAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Foundation.Core.Constraint.constrainedElement*)' > 

<!ENTITY % Foundation.Core.ConstraintCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Foundation.Core.Constraint ( %Foundation.Core.ConstraintProperties;
       ,(XMI.extension* ,  %Foundation.Core.ConstraintAssociations; )
       , %Foundation.Core.ConstraintCompositions; )?>

<!ATTLIST Foundation.Core.Constraint %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Relationship -->

<!ENTITY % Foundation.Core.RelationshipProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Foundation.Core.RelationshipAssociations '(%Foundation.Core.ModelElementAssociations;)' > 

<!ENTITY % Foundation.Core.RelationshipCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Foundation.Core.Relationship ( %Foundation.Core.RelationshipProperties;
       ,(XMI.extension* ,  %Foundation.Core.RelationshipAssociations; )
       , %Foundation.Core.RelationshipCompositions; )?>

<!ATTLIST Foundation.Core.Relationship %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Association -->

<!ENTITY % Foundation.Core.AssociationProperties '(%Foundation.Core.GeneralizableElementProperties;)' > 

<!ENTITY % Foundation.Core.AssociationAssociations '(%Foundation.Core.GeneralizableElementAssociations;)' > 

<!ENTITY % Foundation.Core.AssociationCompositions '(%Foundation.Core.GeneralizableElementCompositions;
       ,Foundation.Core.Association.connection*)' > 

<!ELEMENT Foundation.Core.Association ( %Foundation.Core.AssociationProperties;
       ,(XMI.extension* ,  %Foundation.Core.AssociationAssociations; )
       , %Foundation.Core.AssociationCompositions; )?>

<!ATTLIST Foundation.Core.Association %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Attribute -->

<!ELEMENT Foundation.Core.Attribute.initialValue (Foundation.Data_Types.Expression
  |Foundation.Data_Types.ObjectSetExpression
  |Foundation.Data_Types.TimeExpression
  |Foundation.Data_Types.BooleanExpression
  |Foundation.Data_Types.ActionExpression
  |Foundation.Data_Types.IterationExpression
  |Foundation.Data_Types.TypeExpression
  |Foundation.Data_Types.ArgListsExpression
  |Foundation.Data_Types.MappingExpression
  |Foundation.Data_Types.ProcedureExpression)>

<!ELEMENT Foundation.Core.Attribute.associationEnd (Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole)?>

<!ENTITY % Foundation.Core.AttributeProperties '(%Foundation.Core.StructuralFeatureProperties;
       ,(Foundation.Core.Attribute.initialValue)?)' > 

<!ENTITY % Foundation.Core.AttributeAssociations '(%Foundation.Core.StructuralFeatureAssociations;
       ,Foundation.Core.Attribute.associationEnd?)' > 

<!ENTITY % Foundation.Core.AttributeCompositions '(%Foundation.Core.StructuralFeatureCompositions;)' > 

<!ELEMENT Foundation.Core.Attribute ( %Foundation.Core.AttributeProperties;
       ,(XMI.extension* ,  %Foundation.Core.AttributeAssociations; )
       , %Foundation.Core.AttributeCompositions; )?>

<!ATTLIST Foundation.Core.Attribute %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.BehavioralFeature -->

<!ELEMENT Foundation.Core.BehavioralFeature.isQuery EMPTY>
<!ATTLIST Foundation.Core.BehavioralFeature.isQuery
        xmi.value ( true | false ) #REQUIRED>

<!ENTITY % Foundation.Core.BehavioralFeatureProperties '(%Foundation.Core.FeatureProperties;
       ,Foundation.Core.BehavioralFeature.isQuery )' > 

<!ENTITY % Foundation.Core.BehavioralFeatureAssociations '(%Foundation.Core.FeatureAssociations;)' > 

<!ENTITY % Foundation.Core.BehavioralFeatureCompositions '(%Foundation.Core.FeatureCompositions;
       ,Foundation.Core.BehavioralFeature.parameter*)' > 

<!ELEMENT Foundation.Core.BehavioralFeature ( %Foundation.Core.BehavioralFeatureProperties;
       ,(XMI.extension* ,  %Foundation.Core.BehavioralFeatureAssociations; )
       , %Foundation.Core.BehavioralFeatureCompositions; )?>

<!ATTLIST Foundation.Core.BehavioralFeature %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Operation -->

<!ELEMENT Foundation.Core.Operation.concurrency EMPTY>
<!ATTLIST Foundation.Core.Operation.concurrency %Foundation.Data_Types.CallConcurrencyKind;>

<!ELEMENT Foundation.Core.Operation.isRoot EMPTY>
<!ATTLIST Foundation.Core.Operation.isRoot
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Foundation.Core.Operation.isLeaf EMPTY>
<!ATTLIST Foundation.Core.Operation.isLeaf
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Foundation.Core.Operation.isAbstract EMPTY>
<!ATTLIST Foundation.Core.Operation.isAbstract
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Foundation.Core.Operation.specification (#PCDATA|XMI.reference)*>

<!ELEMENT Foundation.Core.Operation.method (Foundation.Core.Method)*>

<!ENTITY % Foundation.Core.OperationProperties '(%Foundation.Core.BehavioralFeatureProperties;
       ,Foundation.Core.Operation.concurrency 
       ,Foundation.Core.Operation.isRoot 
       ,Foundation.Core.Operation.isLeaf 
       ,Foundation.Core.Operation.isAbstract 
       ,Foundation.Core.Operation.specification )' > 

<!ENTITY % Foundation.Core.OperationAssociations '(%Foundation.Core.BehavioralFeatureAssociations;
       ,Foundation.Core.Operation.method*)' > 

<!ENTITY % Foundation.Core.OperationCompositions '(%Foundation.Core.BehavioralFeatureCompositions;)' > 

<!ELEMENT Foundation.Core.Operation ( %Foundation.Core.OperationProperties;
       ,(XMI.extension* ,  %Foundation.Core.OperationAssociations; )
       , %Foundation.Core.OperationCompositions; )?>

<!ATTLIST Foundation.Core.Operation %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Parameter -->

<!ELEMENT Foundation.Core.Parameter.defaultValue (Foundation.Data_Types.Expression
  |Foundation.Data_Types.ObjectSetExpression
  |Foundation.Data_Types.TimeExpression
  |Foundation.Data_Types.BooleanExpression
  |Foundation.Data_Types.ActionExpression
  |Foundation.Data_Types.IterationExpression
  |Foundation.Data_Types.TypeExpression
  |Foundation.Data_Types.ArgListsExpression
  |Foundation.Data_Types.MappingExpression
  |Foundation.Data_Types.ProcedureExpression)>

<!ELEMENT Foundation.Core.Parameter.kind EMPTY>
<!ATTLIST Foundation.Core.Parameter.kind %Foundation.Data_Types.ParameterDirectionKind;>

<!ELEMENT Foundation.Core.Parameter.behavioralFeature (Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception)?>

<!ELEMENT Foundation.Core.Parameter.type (Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem) >

<!ENTITY % Foundation.Core.ParameterProperties '(%Foundation.Core.ModelElementProperties;
       ,(Foundation.Core.Parameter.defaultValue)?
       ,Foundation.Core.Parameter.kind )' > 

<!ENTITY % Foundation.Core.ParameterAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Foundation.Core.Parameter.behavioralFeature?
       ,Foundation.Core.Parameter.type )' > 

<!ENTITY % Foundation.Core.ParameterCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Foundation.Core.Parameter ( %Foundation.Core.ParameterProperties;
       ,(XMI.extension* ,  %Foundation.Core.ParameterAssociations; )
       , %Foundation.Core.ParameterCompositions; )?>

<!ATTLIST Foundation.Core.Parameter %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Method -->

<!ELEMENT Foundation.Core.Method.body (Foundation.Data_Types.ProcedureExpression)>

<!ELEMENT Foundation.Core.Method.specification (Foundation.Core.Operation) >

<!ENTITY % Foundation.Core.MethodProperties '(%Foundation.Core.BehavioralFeatureProperties;
       ,Foundation.Core.Method.body )' > 

<!ENTITY % Foundation.Core.MethodAssociations '(%Foundation.Core.BehavioralFeatureAssociations;
       ,Foundation.Core.Method.specification )' > 

<!ENTITY % Foundation.Core.MethodCompositions '(%Foundation.Core.BehavioralFeatureCompositions;)' > 

<!ELEMENT Foundation.Core.Method ( %Foundation.Core.MethodProperties;
       ,(XMI.extension* ,  %Foundation.Core.MethodAssociations; )
       , %Foundation.Core.MethodCompositions; )?>

<!ATTLIST Foundation.Core.Method %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Generalization -->

<!ELEMENT Foundation.Core.Generalization.discriminator (#PCDATA|XMI.reference)*>

<!ELEMENT Foundation.Core.Generalization.child (Foundation.Core.GeneralizableElement
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model) >

<!ELEMENT Foundation.Core.Generalization.parent (Foundation.Core.GeneralizableElement
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model) >

<!ELEMENT Foundation.Core.Generalization.powertype (Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem)?>

<!ENTITY % Foundation.Core.GeneralizationProperties '(%Foundation.Core.RelationshipProperties;
       ,Foundation.Core.Generalization.discriminator )' > 

<!ENTITY % Foundation.Core.GeneralizationAssociations '(%Foundation.Core.RelationshipAssociations;
       ,Foundation.Core.Generalization.child 
       ,Foundation.Core.Generalization.parent 
       ,Foundation.Core.Generalization.powertype?)' > 

<!ENTITY % Foundation.Core.GeneralizationCompositions '(%Foundation.Core.RelationshipCompositions;)' > 

<!ELEMENT Foundation.Core.Generalization ( %Foundation.Core.GeneralizationProperties;
       ,(XMI.extension* ,  %Foundation.Core.GeneralizationAssociations; )
       , %Foundation.Core.GeneralizationCompositions; )?>

<!ATTLIST Foundation.Core.Generalization %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.AssociationClass -->

<!ENTITY % Foundation.Core.AssociationClassProperties '(%Foundation.Core.AssociationProperties;
       ,Foundation.Core.Class.isActive )' > 

<!ENTITY % Foundation.Core.AssociationClassAssociations '(%Foundation.Core.AssociationAssociations;
       ,Foundation.Core.Classifier.participant*
       ,Foundation.Core.Classifier.powertypeRange*)' > 

<!ENTITY % Foundation.Core.AssociationClassCompositions '(%Foundation.Core.AssociationCompositions;
       ,Foundation.Core.Classifier.feature*
       ,Foundation.Core.Namespace.ownedElement*)' > 

<!ELEMENT Foundation.Core.AssociationClass ( %Foundation.Core.AssociationClassProperties;
       ,(XMI.extension* ,  %Foundation.Core.AssociationClassAssociations; )
       , %Foundation.Core.AssociationClassCompositions; )?>

<!ATTLIST Foundation.Core.AssociationClass %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Dependency -->

<!ELEMENT Foundation.Core.Dependency.client (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)+>

<!ELEMENT Foundation.Core.Dependency.supplier (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)+>

<!ENTITY % Foundation.Core.DependencyProperties '(%Foundation.Core.RelationshipProperties;)' > 

<!ENTITY % Foundation.Core.DependencyAssociations '(%Foundation.Core.RelationshipAssociations;
       ,Foundation.Core.Dependency.client+
       ,Foundation.Core.Dependency.supplier+)' > 

<!ENTITY % Foundation.Core.DependencyCompositions '(%Foundation.Core.RelationshipCompositions;)' > 

<!ELEMENT Foundation.Core.Dependency ( %Foundation.Core.DependencyProperties;
       ,(XMI.extension* ,  %Foundation.Core.DependencyAssociations; )
       , %Foundation.Core.DependencyCompositions; )?>

<!ATTLIST Foundation.Core.Dependency %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Abstraction -->

<!ELEMENT Foundation.Core.Abstraction.mapping (Foundation.Data_Types.MappingExpression)>

<!ENTITY % Foundation.Core.AbstractionProperties '(%Foundation.Core.DependencyProperties;
       ,Foundation.Core.Abstraction.mapping )' > 

<!ENTITY % Foundation.Core.AbstractionAssociations '(%Foundation.Core.DependencyAssociations;)' > 

<!ENTITY % Foundation.Core.AbstractionCompositions '(%Foundation.Core.DependencyCompositions;)' > 

<!ELEMENT Foundation.Core.Abstraction ( %Foundation.Core.AbstractionProperties;
       ,(XMI.extension* ,  %Foundation.Core.AbstractionAssociations; )
       , %Foundation.Core.AbstractionCompositions; )?>

<!ATTLIST Foundation.Core.Abstraction %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.PresentationElement -->

<!ELEMENT Foundation.Core.PresentationElement.subject (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)*>

<!ENTITY % Foundation.Core.PresentationElementAssociations '(Foundation.Core.PresentationElement.subject*)' > 

<!ELEMENT Foundation.Core.PresentationElement ((XMI.extension* ,  %Foundation.Core.PresentationElementAssociations; ) )?>

<!ATTLIST Foundation.Core.PresentationElement %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Usage -->

<!ENTITY % Foundation.Core.UsageProperties '(%Foundation.Core.DependencyProperties;)' > 

<!ENTITY % Foundation.Core.UsageAssociations '(%Foundation.Core.DependencyAssociations;)' > 

<!ENTITY % Foundation.Core.UsageCompositions '(%Foundation.Core.DependencyCompositions;)' > 

<!ELEMENT Foundation.Core.Usage ( %Foundation.Core.UsageProperties;
       ,(XMI.extension* ,  %Foundation.Core.UsageAssociations; )
       , %Foundation.Core.UsageCompositions; )?>

<!ATTLIST Foundation.Core.Usage %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Binding -->

<!ELEMENT Foundation.Core.Binding.argument (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)+>

<!ENTITY % Foundation.Core.BindingProperties '(%Foundation.Core.DependencyProperties;)' > 

<!ENTITY % Foundation.Core.BindingAssociations '(%Foundation.Core.DependencyAssociations;
       ,Foundation.Core.Binding.argument+)' > 

<!ENTITY % Foundation.Core.BindingCompositions '(%Foundation.Core.DependencyCompositions;)' > 

<!ELEMENT Foundation.Core.Binding ( %Foundation.Core.BindingProperties;
       ,(XMI.extension* ,  %Foundation.Core.BindingAssociations; )
       , %Foundation.Core.BindingCompositions; )?>

<!ATTLIST Foundation.Core.Binding %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Component -->

<!ELEMENT Foundation.Core.Component.deploymentLocation (Foundation.Core.Node)*>

<!ENTITY % Foundation.Core.ComponentProperties '(%Foundation.Core.ClassifierProperties;)' > 

<!ENTITY % Foundation.Core.ComponentAssociations '(%Foundation.Core.ClassifierAssociations;
       ,Foundation.Core.Component.deploymentLocation*)' > 

<!ENTITY % Foundation.Core.ComponentCompositions '(%Foundation.Core.ClassifierCompositions;
       ,Foundation.Core.Component.residentElement*)' > 

<!ELEMENT Foundation.Core.Component ( %Foundation.Core.ComponentProperties;
       ,(XMI.extension* ,  %Foundation.Core.ComponentAssociations; )
       , %Foundation.Core.ComponentCompositions; )?>

<!ATTLIST Foundation.Core.Component %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Node -->

<!ELEMENT Foundation.Core.Node.resident (Foundation.Core.Component)*>

<!ENTITY % Foundation.Core.NodeProperties '(%Foundation.Core.ClassifierProperties;)' > 

<!ENTITY % Foundation.Core.NodeAssociations '(%Foundation.Core.ClassifierAssociations;
       ,Foundation.Core.Node.resident*)' > 

<!ENTITY % Foundation.Core.NodeCompositions '(%Foundation.Core.ClassifierCompositions;)' > 

<!ELEMENT Foundation.Core.Node ( %Foundation.Core.NodeProperties;
       ,(XMI.extension* ,  %Foundation.Core.NodeAssociations; )
       , %Foundation.Core.NodeCompositions; )?>

<!ATTLIST Foundation.Core.Node %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Permission -->

<!ENTITY % Foundation.Core.PermissionProperties '(%Foundation.Core.DependencyProperties;)' > 

<!ENTITY % Foundation.Core.PermissionAssociations '(%Foundation.Core.DependencyAssociations;)' > 

<!ENTITY % Foundation.Core.PermissionCompositions '(%Foundation.Core.DependencyCompositions;)' > 

<!ELEMENT Foundation.Core.Permission ( %Foundation.Core.PermissionProperties;
       ,(XMI.extension* ,  %Foundation.Core.PermissionAssociations; )
       , %Foundation.Core.PermissionCompositions; )?>

<!ATTLIST Foundation.Core.Permission %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Comment -->

<!ELEMENT Foundation.Core.Comment.annotatedElement (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)*>

<!ENTITY % Foundation.Core.CommentProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Foundation.Core.CommentAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Foundation.Core.Comment.annotatedElement*)' > 

<!ENTITY % Foundation.Core.CommentCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Foundation.Core.Comment ( %Foundation.Core.CommentProperties;
       ,(XMI.extension* ,  %Foundation.Core.CommentAssociations; )
       , %Foundation.Core.CommentCompositions; )?>

<!ATTLIST Foundation.Core.Comment %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.Flow -->

<!ELEMENT Foundation.Core.Flow.target (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)*>

<!ELEMENT Foundation.Core.Flow.source (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)*>

<!ENTITY % Foundation.Core.FlowProperties '(%Foundation.Core.RelationshipProperties;)' > 

<!ENTITY % Foundation.Core.FlowAssociations '(%Foundation.Core.RelationshipAssociations;
       ,Foundation.Core.Flow.target*
       ,Foundation.Core.Flow.source*)' > 

<!ENTITY % Foundation.Core.FlowCompositions '(%Foundation.Core.RelationshipCompositions;)' > 

<!ELEMENT Foundation.Core.Flow ( %Foundation.Core.FlowProperties;
       ,(XMI.extension* ,  %Foundation.Core.FlowAssociations; )
       , %Foundation.Core.FlowCompositions; )?>

<!ATTLIST Foundation.Core.Flow %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.ElementResidence -->

<!ELEMENT Foundation.Core.ElementResidence.visibility EMPTY>
<!ATTLIST Foundation.Core.ElementResidence.visibility %Foundation.Data_Types.VisibilityKind;>

<!ELEMENT Foundation.Core.ElementResidence.resident (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition) >

<!ELEMENT Foundation.Core.ElementResidence.implementationLocation (Foundation.Core.Component) >

<!ENTITY % Foundation.Core.ElementResidenceProperties '(Foundation.Core.ElementResidence.visibility )' > 

<!ENTITY % Foundation.Core.ElementResidenceAssociations '(Foundation.Core.ElementResidence.resident 
       ,Foundation.Core.ElementResidence.implementationLocation?)' > 

<!ELEMENT Foundation.Core.ElementResidence ( %Foundation.Core.ElementResidenceProperties;
       ,(XMI.extension* ,  %Foundation.Core.ElementResidenceAssociations; ) )?>

<!ATTLIST Foundation.Core.ElementResidence %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Core.TemplateParameter -->

<!ELEMENT Foundation.Core.TemplateParameter.defaultElement (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)?>

<!ELEMENT Foundation.Core.TemplateParameter.modelElement (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)?>

<!ELEMENT Foundation.Core.TemplateParameter.modelElement2 (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition) >

<!ENTITY % Foundation.Core.TemplateParameterAssociations '(Foundation.Core.TemplateParameter.defaultElement?
       ,Foundation.Core.TemplateParameter.modelElement?
       ,Foundation.Core.TemplateParameter.modelElement2 )' > 

<!ELEMENT Foundation.Core.TemplateParameter ((XMI.extension* ,  %Foundation.Core.TemplateParameterAssociations; ) )?>

<!ATTLIST Foundation.Core.TemplateParameter %XMI.element.att; %XMI.link.att; >



<!-- PACKAGE: Foundation.Extension_Mechanisms -->


<!-- *****    Foundation.Extension_Mechanisms.A_requiredTag_stereotype   *******  -->

<!ELEMENT Foundation.Extension_Mechanisms.Stereotype.requiredTag ( Foundation.Extension_Mechanisms.TaggedValue)* >


<!-- *****    Foundation.Extension_Mechanisms.A_constrainedElement2_stereotypeConstraint   *******  -->

<!ELEMENT Foundation.Extension_Mechanisms.Stereotype.stereotypeConstraint ( Foundation.Core.Constraint)* >


<!-- *****    Foundation.Extension_Mechanisms.A_modelElement_taggedValue   *******  -->

<!ELEMENT Foundation.Extension_Mechanisms.A_modelElement_taggedValue.taggedValue (Foundation.Extension_Mechanisms.TaggedValue)* >


<!-- CLASS: Foundation.Extension_Mechanisms.Stereotype -->

<!ELEMENT Foundation.Extension_Mechanisms.Stereotype.icon (#PCDATA|XMI.reference)*>

<!ELEMENT Foundation.Extension_Mechanisms.Stereotype.baseClass (#PCDATA|XMI.reference)*>

<!ELEMENT Foundation.Extension_Mechanisms.Stereotype.extendedElement (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)*>

<!ENTITY % Foundation.Extension_Mechanisms.StereotypeProperties '(%Foundation.Core.GeneralizableElementProperties;
       ,Foundation.Extension_Mechanisms.Stereotype.icon 
       ,Foundation.Extension_Mechanisms.Stereotype.baseClass )' > 

<!ENTITY % Foundation.Extension_Mechanisms.StereotypeAssociations '(%Foundation.Core.GeneralizableElementAssociations;
       ,Foundation.Extension_Mechanisms.Stereotype.extendedElement*)' > 

<!ENTITY % Foundation.Extension_Mechanisms.StereotypeCompositions '(%Foundation.Core.GeneralizableElementCompositions;
       ,Foundation.Extension_Mechanisms.Stereotype.requiredTag*
       ,Foundation.Extension_Mechanisms.Stereotype.stereotypeConstraint*)' > 

<!ELEMENT Foundation.Extension_Mechanisms.Stereotype ( %Foundation.Extension_Mechanisms.StereotypeProperties;
       ,(XMI.extension* ,  %Foundation.Extension_Mechanisms.StereotypeAssociations; )
       , %Foundation.Extension_Mechanisms.StereotypeCompositions; )?>

<!ATTLIST Foundation.Extension_Mechanisms.Stereotype %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Foundation.Extension_Mechanisms.TaggedValue -->

<!ELEMENT Foundation.Extension_Mechanisms.TaggedValue.tag (#PCDATA|XMI.reference)*>

<!ELEMENT Foundation.Extension_Mechanisms.TaggedValue.value (#PCDATA|XMI.reference)*>

<!ELEMENT Foundation.Extension_Mechanisms.TaggedValue.stereotype (Foundation.Extension_Mechanisms.Stereotype)?>

<!ELEMENT Foundation.Extension_Mechanisms.TaggedValue.modelElement (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)?>

<!ENTITY % Foundation.Extension_Mechanisms.TaggedValueProperties '(Foundation.Extension_Mechanisms.TaggedValue.tag 
       ,Foundation.Extension_Mechanisms.TaggedValue.value )' > 

<!ENTITY % Foundation.Extension_Mechanisms.TaggedValueAssociations '(Foundation.Extension_Mechanisms.TaggedValue.stereotype?
       ,Foundation.Extension_Mechanisms.TaggedValue.modelElement?)' > 

<!ELEMENT Foundation.Extension_Mechanisms.TaggedValue ( %Foundation.Extension_Mechanisms.TaggedValueProperties;
       ,(XMI.extension* ,  %Foundation.Extension_Mechanisms.TaggedValueAssociations; ) )?>

<!ATTLIST Foundation.Extension_Mechanisms.TaggedValue %XMI.element.att; %XMI.link.att; >




<!-- PACKAGE: Behavioral_Elements -->


<!-- PACKAGE: Behavioral_Elements.Common_Behavior -->


<!-- *****    Behavioral_Elements.Common_Behavior.A_actualArgument_action   *******  -->

<!ELEMENT Behavioral_Elements.Common_Behavior.Action.actualArgument ( Behavioral_Elements.Common_Behavior.Argument)* >


<!-- *****    Behavioral_Elements.Common_Behavior.A_slot_instance   *******  -->

<!ELEMENT Behavioral_Elements.Common_Behavior.Instance.slot ( Behavioral_Elements.Common_Behavior.AttributeLink)* >


<!-- *****    Behavioral_Elements.Common_Behavior.A_link_connection   *******  -->

<!ELEMENT Behavioral_Elements.Common_Behavior.Link.connection ( Behavioral_Elements.Common_Behavior.LinkEnd)* >


<!-- *****    Behavioral_Elements.Common_Behavior.A_actionSequence_action   *******  -->

<!ELEMENT Behavioral_Elements.Common_Behavior.ActionSequence.action ( Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction)* >


<!-- *****    Behavioral_Elements.Common_Behavior.A_linkEnd_qualifiedValue   *******  -->

<!ELEMENT Behavioral_Elements.Common_Behavior.LinkEnd.qualifiedValue ( Behavioral_Elements.Common_Behavior.AttributeLink)* >


<!-- CLASS: Behavioral_Elements.Common_Behavior.Instance -->

<!ELEMENT Behavioral_Elements.Common_Behavior.Instance.classifier (Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem)+>

<!ELEMENT Behavioral_Elements.Common_Behavior.Instance.attributeLink (Behavioral_Elements.Common_Behavior.AttributeLink)*>

<!ELEMENT Behavioral_Elements.Common_Behavior.Instance.linkEnd (Behavioral_Elements.Common_Behavior.LinkEnd)*>

<!ELEMENT Behavioral_Elements.Common_Behavior.Instance.stimulus1 (Behavioral_Elements.Common_Behavior.Stimulus)*>

<!ELEMENT Behavioral_Elements.Common_Behavior.Instance.stimulus3 (Behavioral_Elements.Common_Behavior.Stimulus)*>

<!ELEMENT Behavioral_Elements.Common_Behavior.Instance.componentInstance (Behavioral_Elements.Common_Behavior.ComponentInstance)?>

<!ELEMENT Behavioral_Elements.Common_Behavior.Instance.stimulus2 (Behavioral_Elements.Common_Behavior.Stimulus)*>

<!ENTITY % Behavioral_Elements.Common_Behavior.InstanceProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.InstanceAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.Common_Behavior.Instance.classifier+
       ,Behavioral_Elements.Common_Behavior.Instance.attributeLink*
       ,Behavioral_Elements.Common_Behavior.Instance.linkEnd*
       ,Behavioral_Elements.Common_Behavior.Instance.stimulus1*
       ,Behavioral_Elements.Common_Behavior.Instance.stimulus3*
       ,Behavioral_Elements.Common_Behavior.Instance.componentInstance?
       ,Behavioral_Elements.Common_Behavior.Instance.stimulus2*)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.InstanceCompositions '(%Foundation.Core.ModelElementCompositions;
       ,Behavioral_Elements.Common_Behavior.Instance.slot*)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.Instance ( %Behavioral_Elements.Common_Behavior.InstanceProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.InstanceAssociations; )
       , %Behavioral_Elements.Common_Behavior.InstanceCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.Instance %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.Signal -->

<!ELEMENT Behavioral_Elements.Common_Behavior.Signal.reception (Behavioral_Elements.Common_Behavior.Reception)*>

<!ELEMENT Behavioral_Elements.Common_Behavior.Signal.context (Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception)*>

<!ELEMENT Behavioral_Elements.Common_Behavior.Signal.sendAction (Behavioral_Elements.Common_Behavior.SendAction)*>

<!ENTITY % Behavioral_Elements.Common_Behavior.SignalProperties '(%Foundation.Core.ClassifierProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.SignalAssociations '(%Foundation.Core.ClassifierAssociations;
       ,Behavioral_Elements.Common_Behavior.Signal.reception*
       ,Behavioral_Elements.Common_Behavior.Signal.context*
       ,Behavioral_Elements.Common_Behavior.Signal.sendAction*)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.SignalCompositions '(%Foundation.Core.ClassifierCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.Signal ( %Behavioral_Elements.Common_Behavior.SignalProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.SignalAssociations; )
       , %Behavioral_Elements.Common_Behavior.SignalCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.Signal %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.Action -->

<!ELEMENT Behavioral_Elements.Common_Behavior.Action.recurrence (Foundation.Data_Types.IterationExpression)>

<!ELEMENT Behavioral_Elements.Common_Behavior.Action.target (Foundation.Data_Types.ObjectSetExpression)>

<!ELEMENT Behavioral_Elements.Common_Behavior.Action.isAsynchronous EMPTY>
<!ATTLIST Behavioral_Elements.Common_Behavior.Action.isAsynchronous
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Behavioral_Elements.Common_Behavior.Action.script (Foundation.Data_Types.ActionExpression)>

<!ELEMENT Behavioral_Elements.Common_Behavior.Action.actionSequence (Behavioral_Elements.Common_Behavior.ActionSequence)?>

<!ELEMENT Behavioral_Elements.Common_Behavior.Action.stimulus (Behavioral_Elements.Common_Behavior.Stimulus)*>

<!ENTITY % Behavioral_Elements.Common_Behavior.ActionProperties '(%Foundation.Core.ModelElementProperties;
       ,Behavioral_Elements.Common_Behavior.Action.recurrence 
       ,Behavioral_Elements.Common_Behavior.Action.target 
       ,Behavioral_Elements.Common_Behavior.Action.isAsynchronous 
       ,Behavioral_Elements.Common_Behavior.Action.script )' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ActionAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.Common_Behavior.Action.actionSequence?
       ,Behavioral_Elements.Common_Behavior.Action.stimulus*)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ActionCompositions '(%Foundation.Core.ModelElementCompositions;
       ,Behavioral_Elements.Common_Behavior.Action.actualArgument*)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.Action ( %Behavioral_Elements.Common_Behavior.ActionProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.ActionAssociations; )
       , %Behavioral_Elements.Common_Behavior.ActionCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.Action %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.CreateAction -->

<!ELEMENT Behavioral_Elements.Common_Behavior.CreateAction.instantiation (Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem) >

<!ENTITY % Behavioral_Elements.Common_Behavior.CreateActionProperties '(%Behavioral_Elements.Common_Behavior.ActionProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.CreateActionAssociations '(%Behavioral_Elements.Common_Behavior.ActionAssociations;
       ,Behavioral_Elements.Common_Behavior.CreateAction.instantiation )' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.CreateActionCompositions '(%Behavioral_Elements.Common_Behavior.ActionCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.CreateAction ( %Behavioral_Elements.Common_Behavior.CreateActionProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.CreateActionAssociations; )
       , %Behavioral_Elements.Common_Behavior.CreateActionCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.CreateAction %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.DestroyAction -->

<!ENTITY % Behavioral_Elements.Common_Behavior.DestroyActionProperties '(%Behavioral_Elements.Common_Behavior.ActionProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.DestroyActionAssociations '(%Behavioral_Elements.Common_Behavior.ActionAssociations;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.DestroyActionCompositions '(%Behavioral_Elements.Common_Behavior.ActionCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.DestroyAction ( %Behavioral_Elements.Common_Behavior.DestroyActionProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.DestroyActionAssociations; )
       , %Behavioral_Elements.Common_Behavior.DestroyActionCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.DestroyAction %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.UninterpretedAction -->

<!ENTITY % Behavioral_Elements.Common_Behavior.UninterpretedActionProperties '(%Behavioral_Elements.Common_Behavior.ActionProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.UninterpretedActionAssociations '(%Behavioral_Elements.Common_Behavior.ActionAssociations;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.UninterpretedActionCompositions '(%Behavioral_Elements.Common_Behavior.ActionCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.UninterpretedAction ( %Behavioral_Elements.Common_Behavior.UninterpretedActionProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.UninterpretedActionAssociations; )
       , %Behavioral_Elements.Common_Behavior.UninterpretedActionCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.UninterpretedAction %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.AttributeLink -->

<!ELEMENT Behavioral_Elements.Common_Behavior.AttributeLink.attribute (Foundation.Core.Attribute) >

<!ELEMENT Behavioral_Elements.Common_Behavior.AttributeLink.value (Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance) >

<!ELEMENT Behavioral_Elements.Common_Behavior.AttributeLink.instance (Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance) >

<!ELEMENT Behavioral_Elements.Common_Behavior.AttributeLink.linkEnd (Behavioral_Elements.Common_Behavior.LinkEnd)?>

<!ENTITY % Behavioral_Elements.Common_Behavior.AttributeLinkProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.AttributeLinkAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.Common_Behavior.AttributeLink.attribute 
       ,Behavioral_Elements.Common_Behavior.AttributeLink.value 
       ,Behavioral_Elements.Common_Behavior.AttributeLink.instance?
       ,Behavioral_Elements.Common_Behavior.AttributeLink.linkEnd?)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.AttributeLinkCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.AttributeLink ( %Behavioral_Elements.Common_Behavior.AttributeLinkProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.AttributeLinkAssociations; )
       , %Behavioral_Elements.Common_Behavior.AttributeLinkCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.AttributeLink %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.Object -->

<!ENTITY % Behavioral_Elements.Common_Behavior.ObjectProperties '(%Behavioral_Elements.Common_Behavior.InstanceProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ObjectAssociations '(%Behavioral_Elements.Common_Behavior.InstanceAssociations;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ObjectCompositions '(%Behavioral_Elements.Common_Behavior.InstanceCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.Object ( %Behavioral_Elements.Common_Behavior.ObjectProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.ObjectAssociations; )
       , %Behavioral_Elements.Common_Behavior.ObjectCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.Object %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.Link -->

<!ELEMENT Behavioral_Elements.Common_Behavior.Link.association (Foundation.Core.Association
  |Foundation.Core.AssociationClass
  |Behavioral_Elements.Collaborations.AssociationRole) >

<!ELEMENT Behavioral_Elements.Common_Behavior.Link.stimulus (Behavioral_Elements.Common_Behavior.Stimulus)*>

<!ENTITY % Behavioral_Elements.Common_Behavior.LinkProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.LinkAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.Common_Behavior.Link.association 
       ,Behavioral_Elements.Common_Behavior.Link.stimulus*)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.LinkCompositions '(%Foundation.Core.ModelElementCompositions;
       ,Behavioral_Elements.Common_Behavior.Link.connection*)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.Link ( %Behavioral_Elements.Common_Behavior.LinkProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.LinkAssociations; )
       , %Behavioral_Elements.Common_Behavior.LinkCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.Link %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.LinkObject -->

<!ENTITY % Behavioral_Elements.Common_Behavior.LinkObjectProperties '(%Behavioral_Elements.Common_Behavior.ObjectProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.LinkObjectAssociations '(%Behavioral_Elements.Common_Behavior.ObjectAssociations;
       ,Behavioral_Elements.Common_Behavior.Link.association 
       ,Behavioral_Elements.Common_Behavior.Link.stimulus*)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.LinkObjectCompositions '(%Behavioral_Elements.Common_Behavior.ObjectCompositions;
       ,Behavioral_Elements.Common_Behavior.Link.connection*)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.LinkObject ( %Behavioral_Elements.Common_Behavior.LinkObjectProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.LinkObjectAssociations; )
       , %Behavioral_Elements.Common_Behavior.LinkObjectCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.LinkObject %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.DataValue -->

<!ENTITY % Behavioral_Elements.Common_Behavior.DataValueProperties '(%Behavioral_Elements.Common_Behavior.InstanceProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.DataValueAssociations '(%Behavioral_Elements.Common_Behavior.InstanceAssociations;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.DataValueCompositions '(%Behavioral_Elements.Common_Behavior.InstanceCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.DataValue ( %Behavioral_Elements.Common_Behavior.DataValueProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.DataValueAssociations; )
       , %Behavioral_Elements.Common_Behavior.DataValueCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.DataValue %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.CallAction -->

<!ELEMENT Behavioral_Elements.Common_Behavior.CallAction.operation (Foundation.Core.Operation) >

<!ENTITY % Behavioral_Elements.Common_Behavior.CallActionProperties '(%Behavioral_Elements.Common_Behavior.ActionProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.CallActionAssociations '(%Behavioral_Elements.Common_Behavior.ActionAssociations;
       ,Behavioral_Elements.Common_Behavior.CallAction.operation )' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.CallActionCompositions '(%Behavioral_Elements.Common_Behavior.ActionCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.CallAction ( %Behavioral_Elements.Common_Behavior.CallActionProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.CallActionAssociations; )
       , %Behavioral_Elements.Common_Behavior.CallActionCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.CallAction %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.SendAction -->

<!ELEMENT Behavioral_Elements.Common_Behavior.SendAction.signal (Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception) >

<!ENTITY % Behavioral_Elements.Common_Behavior.SendActionProperties '(%Behavioral_Elements.Common_Behavior.ActionProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.SendActionAssociations '(%Behavioral_Elements.Common_Behavior.ActionAssociations;
       ,Behavioral_Elements.Common_Behavior.SendAction.signal )' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.SendActionCompositions '(%Behavioral_Elements.Common_Behavior.ActionCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.SendAction ( %Behavioral_Elements.Common_Behavior.SendActionProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.SendActionAssociations; )
       , %Behavioral_Elements.Common_Behavior.SendActionCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.SendAction %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.ActionSequence -->

<!ENTITY % Behavioral_Elements.Common_Behavior.ActionSequenceProperties '(%Behavioral_Elements.Common_Behavior.ActionProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ActionSequenceAssociations '(%Behavioral_Elements.Common_Behavior.ActionAssociations;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ActionSequenceCompositions '(%Behavioral_Elements.Common_Behavior.ActionCompositions;
       ,Behavioral_Elements.Common_Behavior.ActionSequence.action*)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.ActionSequence ( %Behavioral_Elements.Common_Behavior.ActionSequenceProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.ActionSequenceAssociations; )
       , %Behavioral_Elements.Common_Behavior.ActionSequenceCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.ActionSequence %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.Argument -->

<!ELEMENT Behavioral_Elements.Common_Behavior.Argument.value (Foundation.Data_Types.Expression
  |Foundation.Data_Types.ObjectSetExpression
  |Foundation.Data_Types.TimeExpression
  |Foundation.Data_Types.BooleanExpression
  |Foundation.Data_Types.ActionExpression
  |Foundation.Data_Types.IterationExpression
  |Foundation.Data_Types.TypeExpression
  |Foundation.Data_Types.ArgListsExpression
  |Foundation.Data_Types.MappingExpression
  |Foundation.Data_Types.ProcedureExpression)>

<!ELEMENT Behavioral_Elements.Common_Behavior.Argument.action (Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction)?>

<!ENTITY % Behavioral_Elements.Common_Behavior.ArgumentProperties '(%Foundation.Core.ModelElementProperties;
       ,Behavioral_Elements.Common_Behavior.Argument.value )' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ArgumentAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.Common_Behavior.Argument.action?)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ArgumentCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.Argument ( %Behavioral_Elements.Common_Behavior.ArgumentProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.ArgumentAssociations; )
       , %Behavioral_Elements.Common_Behavior.ArgumentCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.Argument %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.Reception -->

<!ELEMENT Behavioral_Elements.Common_Behavior.Reception.specification (#PCDATA|XMI.reference)*>

<!ELEMENT Behavioral_Elements.Common_Behavior.Reception.isRoot EMPTY>
<!ATTLIST Behavioral_Elements.Common_Behavior.Reception.isRoot
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Behavioral_Elements.Common_Behavior.Reception.isLeaf EMPTY>
<!ATTLIST Behavioral_Elements.Common_Behavior.Reception.isLeaf
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Behavioral_Elements.Common_Behavior.Reception.isAbstract EMPTY>
<!ATTLIST Behavioral_Elements.Common_Behavior.Reception.isAbstract
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Behavioral_Elements.Common_Behavior.Reception.signal (Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception) >

<!ENTITY % Behavioral_Elements.Common_Behavior.ReceptionProperties '(%Foundation.Core.BehavioralFeatureProperties;
       ,Behavioral_Elements.Common_Behavior.Reception.specification 
       ,Behavioral_Elements.Common_Behavior.Reception.isRoot 
       ,Behavioral_Elements.Common_Behavior.Reception.isLeaf 
       ,Behavioral_Elements.Common_Behavior.Reception.isAbstract )' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ReceptionAssociations '(%Foundation.Core.BehavioralFeatureAssociations;
       ,Behavioral_Elements.Common_Behavior.Reception.signal )' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ReceptionCompositions '(%Foundation.Core.BehavioralFeatureCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.Reception ( %Behavioral_Elements.Common_Behavior.ReceptionProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.ReceptionAssociations; )
       , %Behavioral_Elements.Common_Behavior.ReceptionCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.Reception %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.LinkEnd -->

<!ELEMENT Behavioral_Elements.Common_Behavior.LinkEnd.instance (Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance) >

<!ELEMENT Behavioral_Elements.Common_Behavior.LinkEnd.link (Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkObject) >

<!ELEMENT Behavioral_Elements.Common_Behavior.LinkEnd.associationEnd (Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole) >

<!ENTITY % Behavioral_Elements.Common_Behavior.LinkEndProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.LinkEndAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.Common_Behavior.LinkEnd.instance 
       ,Behavioral_Elements.Common_Behavior.LinkEnd.link?
       ,Behavioral_Elements.Common_Behavior.LinkEnd.associationEnd )' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.LinkEndCompositions '(%Foundation.Core.ModelElementCompositions;
       ,Behavioral_Elements.Common_Behavior.LinkEnd.qualifiedValue*)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.LinkEnd ( %Behavioral_Elements.Common_Behavior.LinkEndProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.LinkEndAssociations; )
       , %Behavioral_Elements.Common_Behavior.LinkEndCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.LinkEnd %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.ReturnAction -->

<!ENTITY % Behavioral_Elements.Common_Behavior.ReturnActionProperties '(%Behavioral_Elements.Common_Behavior.ActionProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ReturnActionAssociations '(%Behavioral_Elements.Common_Behavior.ActionAssociations;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ReturnActionCompositions '(%Behavioral_Elements.Common_Behavior.ActionCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.ReturnAction ( %Behavioral_Elements.Common_Behavior.ReturnActionProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.ReturnActionAssociations; )
       , %Behavioral_Elements.Common_Behavior.ReturnActionCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.ReturnAction %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.TerminateAction -->

<!ENTITY % Behavioral_Elements.Common_Behavior.TerminateActionProperties '(%Behavioral_Elements.Common_Behavior.ActionProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.TerminateActionAssociations '(%Behavioral_Elements.Common_Behavior.ActionAssociations;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.TerminateActionCompositions '(%Behavioral_Elements.Common_Behavior.ActionCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.TerminateAction ( %Behavioral_Elements.Common_Behavior.TerminateActionProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.TerminateActionAssociations; )
       , %Behavioral_Elements.Common_Behavior.TerminateActionCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.TerminateAction %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.Stimulus -->

<!ELEMENT Behavioral_Elements.Common_Behavior.Stimulus.argument (Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance)*>

<!ELEMENT Behavioral_Elements.Common_Behavior.Stimulus.sender (Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance) >

<!ELEMENT Behavioral_Elements.Common_Behavior.Stimulus.receiver (Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance) >

<!ELEMENT Behavioral_Elements.Common_Behavior.Stimulus.communicationLink (Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkObject)?>

<!ELEMENT Behavioral_Elements.Common_Behavior.Stimulus.dispatchAction (Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction) >

<!ENTITY % Behavioral_Elements.Common_Behavior.StimulusProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.StimulusAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.Common_Behavior.Stimulus.argument*
       ,Behavioral_Elements.Common_Behavior.Stimulus.sender 
       ,Behavioral_Elements.Common_Behavior.Stimulus.receiver 
       ,Behavioral_Elements.Common_Behavior.Stimulus.communicationLink?
       ,Behavioral_Elements.Common_Behavior.Stimulus.dispatchAction )' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.StimulusCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.Stimulus ( %Behavioral_Elements.Common_Behavior.StimulusProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.StimulusAssociations; )
       , %Behavioral_Elements.Common_Behavior.StimulusCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.Stimulus %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.Exception -->

<!ENTITY % Behavioral_Elements.Common_Behavior.ExceptionProperties '(%Behavioral_Elements.Common_Behavior.SignalProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ExceptionAssociations '(%Behavioral_Elements.Common_Behavior.SignalAssociations;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ExceptionCompositions '(%Behavioral_Elements.Common_Behavior.SignalCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.Exception ( %Behavioral_Elements.Common_Behavior.ExceptionProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.ExceptionAssociations; )
       , %Behavioral_Elements.Common_Behavior.ExceptionCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.Exception %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.ComponentInstance -->

<!ELEMENT Behavioral_Elements.Common_Behavior.ComponentInstance.nodeInstance (Behavioral_Elements.Common_Behavior.NodeInstance)?>

<!ELEMENT Behavioral_Elements.Common_Behavior.ComponentInstance.resident (Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance)*>

<!ENTITY % Behavioral_Elements.Common_Behavior.ComponentInstanceProperties '(%Behavioral_Elements.Common_Behavior.InstanceProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ComponentInstanceAssociations '(%Behavioral_Elements.Common_Behavior.InstanceAssociations;
       ,Behavioral_Elements.Common_Behavior.ComponentInstance.nodeInstance?
       ,Behavioral_Elements.Common_Behavior.ComponentInstance.resident*)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.ComponentInstanceCompositions '(%Behavioral_Elements.Common_Behavior.InstanceCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.ComponentInstance ( %Behavioral_Elements.Common_Behavior.ComponentInstanceProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.ComponentInstanceAssociations; )
       , %Behavioral_Elements.Common_Behavior.ComponentInstanceCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.ComponentInstance %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Common_Behavior.NodeInstance -->

<!ELEMENT Behavioral_Elements.Common_Behavior.NodeInstance.resident (Behavioral_Elements.Common_Behavior.ComponentInstance)*>

<!ENTITY % Behavioral_Elements.Common_Behavior.NodeInstanceProperties '(%Behavioral_Elements.Common_Behavior.InstanceProperties;)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.NodeInstanceAssociations '(%Behavioral_Elements.Common_Behavior.InstanceAssociations;
       ,Behavioral_Elements.Common_Behavior.NodeInstance.resident*)' > 

<!ENTITY % Behavioral_Elements.Common_Behavior.NodeInstanceCompositions '(%Behavioral_Elements.Common_Behavior.InstanceCompositions;)' > 

<!ELEMENT Behavioral_Elements.Common_Behavior.NodeInstance ( %Behavioral_Elements.Common_Behavior.NodeInstanceProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Common_Behavior.NodeInstanceAssociations; )
       , %Behavioral_Elements.Common_Behavior.NodeInstanceCompositions; )?>

<!ATTLIST Behavioral_Elements.Common_Behavior.NodeInstance %XMI.element.att; %XMI.link.att; >



<!-- PACKAGE: Behavioral_Elements.Use_Cases -->


<!-- CLASS: Behavioral_Elements.Use_Cases.UseCase -->

<!ELEMENT Behavioral_Elements.Use_Cases.UseCase.extend2 (Behavioral_Elements.Use_Cases.Extend)*>

<!ELEMENT Behavioral_Elements.Use_Cases.UseCase.extend (Behavioral_Elements.Use_Cases.Extend)*>

<!ELEMENT Behavioral_Elements.Use_Cases.UseCase.include (Behavioral_Elements.Use_Cases.Include)*>

<!ELEMENT Behavioral_Elements.Use_Cases.UseCase.include2 (Behavioral_Elements.Use_Cases.Include)*>

<!ELEMENT Behavioral_Elements.Use_Cases.UseCase.extensionPoint (Behavioral_Elements.Use_Cases.ExtensionPoint)*>

<!ENTITY % Behavioral_Elements.Use_Cases.UseCaseProperties '(%Foundation.Core.ClassifierProperties;)' > 

<!ENTITY % Behavioral_Elements.Use_Cases.UseCaseAssociations '(%Foundation.Core.ClassifierAssociations;
       ,Behavioral_Elements.Use_Cases.UseCase.extend2*
       ,Behavioral_Elements.Use_Cases.UseCase.extend*
       ,Behavioral_Elements.Use_Cases.UseCase.include*
       ,Behavioral_Elements.Use_Cases.UseCase.include2*
       ,Behavioral_Elements.Use_Cases.UseCase.extensionPoint*)' > 

<!ENTITY % Behavioral_Elements.Use_Cases.UseCaseCompositions '(%Foundation.Core.ClassifierCompositions;)' > 

<!ELEMENT Behavioral_Elements.Use_Cases.UseCase ( %Behavioral_Elements.Use_Cases.UseCaseProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Use_Cases.UseCaseAssociations; )
       , %Behavioral_Elements.Use_Cases.UseCaseCompositions; )?>

<!ATTLIST Behavioral_Elements.Use_Cases.UseCase %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Use_Cases.Actor -->

<!ENTITY % Behavioral_Elements.Use_Cases.ActorProperties '(%Foundation.Core.ClassifierProperties;)' > 

<!ENTITY % Behavioral_Elements.Use_Cases.ActorAssociations '(%Foundation.Core.ClassifierAssociations;)' > 

<!ENTITY % Behavioral_Elements.Use_Cases.ActorCompositions '(%Foundation.Core.ClassifierCompositions;)' > 

<!ELEMENT Behavioral_Elements.Use_Cases.Actor ( %Behavioral_Elements.Use_Cases.ActorProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Use_Cases.ActorAssociations; )
       , %Behavioral_Elements.Use_Cases.ActorCompositions; )?>

<!ATTLIST Behavioral_Elements.Use_Cases.Actor %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Use_Cases.UseCaseInstance -->

<!ENTITY % Behavioral_Elements.Use_Cases.UseCaseInstanceProperties '(%Behavioral_Elements.Common_Behavior.InstanceProperties;)' > 

<!ENTITY % Behavioral_Elements.Use_Cases.UseCaseInstanceAssociations '(%Behavioral_Elements.Common_Behavior.InstanceAssociations;)' > 

<!ENTITY % Behavioral_Elements.Use_Cases.UseCaseInstanceCompositions '(%Behavioral_Elements.Common_Behavior.InstanceCompositions;)' > 

<!ELEMENT Behavioral_Elements.Use_Cases.UseCaseInstance ( %Behavioral_Elements.Use_Cases.UseCaseInstanceProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Use_Cases.UseCaseInstanceAssociations; )
       , %Behavioral_Elements.Use_Cases.UseCaseInstanceCompositions; )?>

<!ATTLIST Behavioral_Elements.Use_Cases.UseCaseInstance %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Use_Cases.Extend -->

<!ELEMENT Behavioral_Elements.Use_Cases.Extend.condition (Foundation.Data_Types.BooleanExpression)>

<!ELEMENT Behavioral_Elements.Use_Cases.Extend.base (Behavioral_Elements.Use_Cases.UseCase) >

<!ELEMENT Behavioral_Elements.Use_Cases.Extend.extension (Behavioral_Elements.Use_Cases.UseCase) >

<!ELEMENT Behavioral_Elements.Use_Cases.Extend.extensionPoint (Behavioral_Elements.Use_Cases.ExtensionPoint)+>

<!ENTITY % Behavioral_Elements.Use_Cases.ExtendProperties '(%Foundation.Core.RelationshipProperties;
       ,Behavioral_Elements.Use_Cases.Extend.condition )' > 

<!ENTITY % Behavioral_Elements.Use_Cases.ExtendAssociations '(%Foundation.Core.RelationshipAssociations;
       ,Behavioral_Elements.Use_Cases.Extend.base 
       ,Behavioral_Elements.Use_Cases.Extend.extension 
       ,Behavioral_Elements.Use_Cases.Extend.extensionPoint+)' > 

<!ENTITY % Behavioral_Elements.Use_Cases.ExtendCompositions '(%Foundation.Core.RelationshipCompositions;)' > 

<!ELEMENT Behavioral_Elements.Use_Cases.Extend ( %Behavioral_Elements.Use_Cases.ExtendProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Use_Cases.ExtendAssociations; )
       , %Behavioral_Elements.Use_Cases.ExtendCompositions; )?>

<!ATTLIST Behavioral_Elements.Use_Cases.Extend %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Use_Cases.Include -->

<!ELEMENT Behavioral_Elements.Use_Cases.Include.addition (Behavioral_Elements.Use_Cases.UseCase) >

<!ELEMENT Behavioral_Elements.Use_Cases.Include.base (Behavioral_Elements.Use_Cases.UseCase) >

<!ENTITY % Behavioral_Elements.Use_Cases.IncludeProperties '(%Foundation.Core.RelationshipProperties;)' > 

<!ENTITY % Behavioral_Elements.Use_Cases.IncludeAssociations '(%Foundation.Core.RelationshipAssociations;
       ,Behavioral_Elements.Use_Cases.Include.addition 
       ,Behavioral_Elements.Use_Cases.Include.base )' > 

<!ENTITY % Behavioral_Elements.Use_Cases.IncludeCompositions '(%Foundation.Core.RelationshipCompositions;)' > 

<!ELEMENT Behavioral_Elements.Use_Cases.Include ( %Behavioral_Elements.Use_Cases.IncludeProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Use_Cases.IncludeAssociations; )
       , %Behavioral_Elements.Use_Cases.IncludeCompositions; )?>

<!ATTLIST Behavioral_Elements.Use_Cases.Include %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Use_Cases.ExtensionPoint -->

<!ELEMENT Behavioral_Elements.Use_Cases.ExtensionPoint.location (#PCDATA|XMI.reference)*>

<!ELEMENT Behavioral_Elements.Use_Cases.ExtensionPoint.useCase (Behavioral_Elements.Use_Cases.UseCase) >

<!ELEMENT Behavioral_Elements.Use_Cases.ExtensionPoint.extend (Behavioral_Elements.Use_Cases.Extend)*>

<!ENTITY % Behavioral_Elements.Use_Cases.ExtensionPointProperties '(%Foundation.Core.ModelElementProperties;
       ,Behavioral_Elements.Use_Cases.ExtensionPoint.location )' > 

<!ENTITY % Behavioral_Elements.Use_Cases.ExtensionPointAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.Use_Cases.ExtensionPoint.useCase 
       ,Behavioral_Elements.Use_Cases.ExtensionPoint.extend*)' > 

<!ENTITY % Behavioral_Elements.Use_Cases.ExtensionPointCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Behavioral_Elements.Use_Cases.ExtensionPoint ( %Behavioral_Elements.Use_Cases.ExtensionPointProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Use_Cases.ExtensionPointAssociations; )
       , %Behavioral_Elements.Use_Cases.ExtensionPointCompositions; )?>

<!ATTLIST Behavioral_Elements.Use_Cases.ExtensionPoint %XMI.element.att; %XMI.link.att; >



<!-- PACKAGE: Behavioral_Elements.State_Machines -->


<!-- *****    Behavioral_Elements.State_Machines.A_state1_entry   *******  -->

<!ELEMENT Behavioral_Elements.State_Machines.State.entry ( Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction)? >


<!-- *****    Behavioral_Elements.State_Machines.A_state2_exit   *******  -->

<!ELEMENT Behavioral_Elements.State_Machines.State.exit ( Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction)? >


<!-- *****    Behavioral_Elements.State_Machines.A_event_parameter   *******  -->

<!ELEMENT Behavioral_Elements.State_Machines.Event.parameter ( Foundation.Core.Parameter)* >


<!-- *****    Behavioral_Elements.State_Machines.A_guard_transition   *******  -->

<!ELEMENT Behavioral_Elements.State_Machines.Transition.guard ( Behavioral_Elements.State_Machines.Guard)? >


<!-- *****    Behavioral_Elements.State_Machines.A_top_stateMachine   *******  -->

<!ELEMENT Behavioral_Elements.State_Machines.StateMachine.top ( Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState)  >


<!-- *****    Behavioral_Elements.State_Machines.A_container_subvertex   *******  -->

<!ELEMENT Behavioral_Elements.State_Machines.CompositeState.subvertex ( Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState)* >


<!-- *****    Behavioral_Elements.State_Machines.A_transition_effect   *******  -->

<!ELEMENT Behavioral_Elements.State_Machines.Transition.effect ( Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction)? >


<!-- *****    Behavioral_Elements.State_Machines.A_state_internalTransition   *******  -->

<!ELEMENT Behavioral_Elements.State_Machines.State.internalTransition ( Behavioral_Elements.State_Machines.Transition)* >


<!-- *****    Behavioral_Elements.State_Machines.A_stateMachine_transitions   *******  -->

<!ELEMENT Behavioral_Elements.State_Machines.StateMachine.transitions ( Behavioral_Elements.State_Machines.Transition)* >


<!-- *****    Behavioral_Elements.State_Machines.A_state3_doActivity   *******  -->

<!ELEMENT Behavioral_Elements.State_Machines.State.doActivity ( Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction)? >


<!-- CLASS: Behavioral_Elements.State_Machines.StateMachine -->

<!ELEMENT Behavioral_Elements.State_Machines.StateMachine.context (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)?>

<!ELEMENT Behavioral_Elements.State_Machines.StateMachine.subMachineState (Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState)*>

<!ENTITY % Behavioral_Elements.State_Machines.StateMachineProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.StateMachineAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.State_Machines.StateMachine.context?
       ,Behavioral_Elements.State_Machines.StateMachine.subMachineState*)' > 

<!ENTITY % Behavioral_Elements.State_Machines.StateMachineCompositions '(%Foundation.Core.ModelElementCompositions;
       ,Behavioral_Elements.State_Machines.StateMachine.top 
       ,Behavioral_Elements.State_Machines.StateMachine.transitions*)' > 

<!ELEMENT Behavioral_Elements.State_Machines.StateMachine ( %Behavioral_Elements.State_Machines.StateMachineProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.StateMachineAssociations; )
       , %Behavioral_Elements.State_Machines.StateMachineCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.StateMachine %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.Event -->

<!ELEMENT Behavioral_Elements.State_Machines.Event.state (Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState)*>

<!ELEMENT Behavioral_Elements.State_Machines.Event.transition (Behavioral_Elements.State_Machines.Transition)*>

<!ENTITY % Behavioral_Elements.State_Machines.EventProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.EventAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.State_Machines.Event.state*
       ,Behavioral_Elements.State_Machines.Event.transition*)' > 

<!ENTITY % Behavioral_Elements.State_Machines.EventCompositions '(%Foundation.Core.ModelElementCompositions;
       ,Behavioral_Elements.State_Machines.Event.parameter*)' > 

<!ELEMENT Behavioral_Elements.State_Machines.Event ( %Behavioral_Elements.State_Machines.EventProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.EventAssociations; )
       , %Behavioral_Elements.State_Machines.EventCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.Event %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.StateVertex -->

<!ELEMENT Behavioral_Elements.State_Machines.StateVertex.container (Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState)?>

<!ELEMENT Behavioral_Elements.State_Machines.StateVertex.outgoing (Behavioral_Elements.State_Machines.Transition)*>

<!ELEMENT Behavioral_Elements.State_Machines.StateVertex.incoming (Behavioral_Elements.State_Machines.Transition)*>

<!ENTITY % Behavioral_Elements.State_Machines.StateVertexProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.StateVertexAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.State_Machines.StateVertex.container?
       ,Behavioral_Elements.State_Machines.StateVertex.outgoing*
       ,Behavioral_Elements.State_Machines.StateVertex.incoming*)' > 

<!ENTITY % Behavioral_Elements.State_Machines.StateVertexCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Behavioral_Elements.State_Machines.StateVertex ( %Behavioral_Elements.State_Machines.StateVertexProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.StateVertexAssociations; )
       , %Behavioral_Elements.State_Machines.StateVertexCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.StateVertex %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.State -->

<!ELEMENT Behavioral_Elements.State_Machines.State.stateMachine (Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph)?>

<!ELEMENT Behavioral_Elements.State_Machines.State.deferrableEvent (Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent)*>

<!ENTITY % Behavioral_Elements.State_Machines.StateProperties '(%Behavioral_Elements.State_Machines.StateVertexProperties;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.StateAssociations '(%Behavioral_Elements.State_Machines.StateVertexAssociations;
       ,Behavioral_Elements.State_Machines.State.stateMachine?
       ,Behavioral_Elements.State_Machines.State.deferrableEvent*)' > 

<!ENTITY % Behavioral_Elements.State_Machines.StateCompositions '(%Behavioral_Elements.State_Machines.StateVertexCompositions;
       ,Behavioral_Elements.State_Machines.State.entry?
       ,Behavioral_Elements.State_Machines.State.exit?
       ,Behavioral_Elements.State_Machines.State.internalTransition*
       ,Behavioral_Elements.State_Machines.State.doActivity?)' > 

<!ELEMENT Behavioral_Elements.State_Machines.State ( %Behavioral_Elements.State_Machines.StateProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.StateAssociations; )
       , %Behavioral_Elements.State_Machines.StateCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.State %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.TimeEvent -->

<!ELEMENT Behavioral_Elements.State_Machines.TimeEvent.when (Foundation.Data_Types.TimeExpression)>

<!ENTITY % Behavioral_Elements.State_Machines.TimeEventProperties '(%Behavioral_Elements.State_Machines.EventProperties;
       ,Behavioral_Elements.State_Machines.TimeEvent.when )' > 

<!ENTITY % Behavioral_Elements.State_Machines.TimeEventAssociations '(%Behavioral_Elements.State_Machines.EventAssociations;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.TimeEventCompositions '(%Behavioral_Elements.State_Machines.EventCompositions;)' > 

<!ELEMENT Behavioral_Elements.State_Machines.TimeEvent ( %Behavioral_Elements.State_Machines.TimeEventProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.TimeEventAssociations; )
       , %Behavioral_Elements.State_Machines.TimeEventCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.TimeEvent %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.CallEvent -->

<!ELEMENT Behavioral_Elements.State_Machines.CallEvent.operation (Foundation.Core.Operation) >

<!ENTITY % Behavioral_Elements.State_Machines.CallEventProperties '(%Behavioral_Elements.State_Machines.EventProperties;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.CallEventAssociations '(%Behavioral_Elements.State_Machines.EventAssociations;
       ,Behavioral_Elements.State_Machines.CallEvent.operation )' > 

<!ENTITY % Behavioral_Elements.State_Machines.CallEventCompositions '(%Behavioral_Elements.State_Machines.EventCompositions;)' > 

<!ELEMENT Behavioral_Elements.State_Machines.CallEvent ( %Behavioral_Elements.State_Machines.CallEventProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.CallEventAssociations; )
       , %Behavioral_Elements.State_Machines.CallEventCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.CallEvent %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.SignalEvent -->

<!ELEMENT Behavioral_Elements.State_Machines.SignalEvent.signal (Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception) >

<!ENTITY % Behavioral_Elements.State_Machines.SignalEventProperties '(%Behavioral_Elements.State_Machines.EventProperties;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.SignalEventAssociations '(%Behavioral_Elements.State_Machines.EventAssociations;
       ,Behavioral_Elements.State_Machines.SignalEvent.signal )' > 

<!ENTITY % Behavioral_Elements.State_Machines.SignalEventCompositions '(%Behavioral_Elements.State_Machines.EventCompositions;)' > 

<!ELEMENT Behavioral_Elements.State_Machines.SignalEvent ( %Behavioral_Elements.State_Machines.SignalEventProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.SignalEventAssociations; )
       , %Behavioral_Elements.State_Machines.SignalEventCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.SignalEvent %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.Transition -->

<!ELEMENT Behavioral_Elements.State_Machines.Transition.state (Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState)?>

<!ELEMENT Behavioral_Elements.State_Machines.Transition.trigger (Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent)?>

<!ELEMENT Behavioral_Elements.State_Machines.Transition.stateMachine (Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph)?>

<!ELEMENT Behavioral_Elements.State_Machines.Transition.source (Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState) >

<!ELEMENT Behavioral_Elements.State_Machines.Transition.target (Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState) >

<!ENTITY % Behavioral_Elements.State_Machines.TransitionProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.TransitionAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.State_Machines.Transition.state?
       ,Behavioral_Elements.State_Machines.Transition.trigger?
       ,Behavioral_Elements.State_Machines.Transition.stateMachine?
       ,Behavioral_Elements.State_Machines.Transition.source 
       ,Behavioral_Elements.State_Machines.Transition.target )' > 

<!ENTITY % Behavioral_Elements.State_Machines.TransitionCompositions '(%Foundation.Core.ModelElementCompositions;
       ,Behavioral_Elements.State_Machines.Transition.guard?
       ,Behavioral_Elements.State_Machines.Transition.effect?)' > 

<!ELEMENT Behavioral_Elements.State_Machines.Transition ( %Behavioral_Elements.State_Machines.TransitionProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.TransitionAssociations; )
       , %Behavioral_Elements.State_Machines.TransitionCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.Transition %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.CompositeState -->

<!ELEMENT Behavioral_Elements.State_Machines.CompositeState.isConcurrent EMPTY>
<!ATTLIST Behavioral_Elements.State_Machines.CompositeState.isConcurrent
        xmi.value ( true | false ) #REQUIRED>

<!ENTITY % Behavioral_Elements.State_Machines.CompositeStateProperties '(%Behavioral_Elements.State_Machines.StateProperties;
       ,Behavioral_Elements.State_Machines.CompositeState.isConcurrent )' > 

<!ENTITY % Behavioral_Elements.State_Machines.CompositeStateAssociations '(%Behavioral_Elements.State_Machines.StateAssociations;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.CompositeStateCompositions '(%Behavioral_Elements.State_Machines.StateCompositions;
       ,Behavioral_Elements.State_Machines.CompositeState.subvertex*)' > 

<!ELEMENT Behavioral_Elements.State_Machines.CompositeState ( %Behavioral_Elements.State_Machines.CompositeStateProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.CompositeStateAssociations; )
       , %Behavioral_Elements.State_Machines.CompositeStateCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.CompositeState %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.ChangeEvent -->

<!ELEMENT Behavioral_Elements.State_Machines.ChangeEvent.changeExpression (Foundation.Data_Types.BooleanExpression)>

<!ENTITY % Behavioral_Elements.State_Machines.ChangeEventProperties '(%Behavioral_Elements.State_Machines.EventProperties;
       ,Behavioral_Elements.State_Machines.ChangeEvent.changeExpression )' > 

<!ENTITY % Behavioral_Elements.State_Machines.ChangeEventAssociations '(%Behavioral_Elements.State_Machines.EventAssociations;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.ChangeEventCompositions '(%Behavioral_Elements.State_Machines.EventCompositions;)' > 

<!ELEMENT Behavioral_Elements.State_Machines.ChangeEvent ( %Behavioral_Elements.State_Machines.ChangeEventProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.ChangeEventAssociations; )
       , %Behavioral_Elements.State_Machines.ChangeEventCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.ChangeEvent %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.Guard -->

<!ELEMENT Behavioral_Elements.State_Machines.Guard.expression (Foundation.Data_Types.BooleanExpression)>

<!ELEMENT Behavioral_Elements.State_Machines.Guard.transition (Behavioral_Elements.State_Machines.Transition) >

<!ENTITY % Behavioral_Elements.State_Machines.GuardProperties '(%Foundation.Core.ModelElementProperties;
       ,Behavioral_Elements.State_Machines.Guard.expression )' > 

<!ENTITY % Behavioral_Elements.State_Machines.GuardAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.State_Machines.Guard.transition?)' > 

<!ENTITY % Behavioral_Elements.State_Machines.GuardCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Behavioral_Elements.State_Machines.Guard ( %Behavioral_Elements.State_Machines.GuardProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.GuardAssociations; )
       , %Behavioral_Elements.State_Machines.GuardCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.Guard %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.Pseudostate -->

<!ELEMENT Behavioral_Elements.State_Machines.Pseudostate.kind EMPTY>
<!ATTLIST Behavioral_Elements.State_Machines.Pseudostate.kind %Foundation.Data_Types.PseudostateKind;>

<!ENTITY % Behavioral_Elements.State_Machines.PseudostateProperties '(%Behavioral_Elements.State_Machines.StateVertexProperties;
       ,Behavioral_Elements.State_Machines.Pseudostate.kind )' > 

<!ENTITY % Behavioral_Elements.State_Machines.PseudostateAssociations '(%Behavioral_Elements.State_Machines.StateVertexAssociations;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.PseudostateCompositions '(%Behavioral_Elements.State_Machines.StateVertexCompositions;)' > 

<!ELEMENT Behavioral_Elements.State_Machines.Pseudostate ( %Behavioral_Elements.State_Machines.PseudostateProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.PseudostateAssociations; )
       , %Behavioral_Elements.State_Machines.PseudostateCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.Pseudostate %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.SimpleState -->

<!ENTITY % Behavioral_Elements.State_Machines.SimpleStateProperties '(%Behavioral_Elements.State_Machines.StateProperties;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.SimpleStateAssociations '(%Behavioral_Elements.State_Machines.StateAssociations;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.SimpleStateCompositions '(%Behavioral_Elements.State_Machines.StateCompositions;)' > 

<!ELEMENT Behavioral_Elements.State_Machines.SimpleState ( %Behavioral_Elements.State_Machines.SimpleStateProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.SimpleStateAssociations; )
       , %Behavioral_Elements.State_Machines.SimpleStateCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.SimpleState %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.SubmachineState -->

<!ELEMENT Behavioral_Elements.State_Machines.SubmachineState.submachine (Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph) >

<!ENTITY % Behavioral_Elements.State_Machines.SubmachineStateProperties '(%Behavioral_Elements.State_Machines.CompositeStateProperties;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.SubmachineStateAssociations '(%Behavioral_Elements.State_Machines.CompositeStateAssociations;
       ,Behavioral_Elements.State_Machines.SubmachineState.submachine )' > 

<!ENTITY % Behavioral_Elements.State_Machines.SubmachineStateCompositions '(%Behavioral_Elements.State_Machines.CompositeStateCompositions;)' > 

<!ELEMENT Behavioral_Elements.State_Machines.SubmachineState ( %Behavioral_Elements.State_Machines.SubmachineStateProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.SubmachineStateAssociations; )
       , %Behavioral_Elements.State_Machines.SubmachineStateCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.SubmachineState %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.SynchState -->

<!ELEMENT Behavioral_Elements.State_Machines.SynchState.bound (#PCDATA|XMI.reference)*>

<!ENTITY % Behavioral_Elements.State_Machines.SynchStateProperties '(%Behavioral_Elements.State_Machines.StateVertexProperties;
       ,Behavioral_Elements.State_Machines.SynchState.bound )' > 

<!ENTITY % Behavioral_Elements.State_Machines.SynchStateAssociations '(%Behavioral_Elements.State_Machines.StateVertexAssociations;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.SynchStateCompositions '(%Behavioral_Elements.State_Machines.StateVertexCompositions;)' > 

<!ELEMENT Behavioral_Elements.State_Machines.SynchState ( %Behavioral_Elements.State_Machines.SynchStateProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.SynchStateAssociations; )
       , %Behavioral_Elements.State_Machines.SynchStateCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.SynchState %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.StubState -->

<!ELEMENT Behavioral_Elements.State_Machines.StubState.referenceState (#PCDATA|XMI.reference)*>

<!ENTITY % Behavioral_Elements.State_Machines.StubStateProperties '(%Behavioral_Elements.State_Machines.StateVertexProperties;
       ,Behavioral_Elements.State_Machines.StubState.referenceState )' > 

<!ENTITY % Behavioral_Elements.State_Machines.StubStateAssociations '(%Behavioral_Elements.State_Machines.StateVertexAssociations;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.StubStateCompositions '(%Behavioral_Elements.State_Machines.StateVertexCompositions;)' > 

<!ELEMENT Behavioral_Elements.State_Machines.StubState ( %Behavioral_Elements.State_Machines.StubStateProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.StubStateAssociations; )
       , %Behavioral_Elements.State_Machines.StubStateCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.StubState %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.State_Machines.FinalState -->

<!ENTITY % Behavioral_Elements.State_Machines.FinalStateProperties '(%Behavioral_Elements.State_Machines.StateProperties;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.FinalStateAssociations '(%Behavioral_Elements.State_Machines.StateAssociations;)' > 

<!ENTITY % Behavioral_Elements.State_Machines.FinalStateCompositions '(%Behavioral_Elements.State_Machines.StateCompositions;)' > 

<!ELEMENT Behavioral_Elements.State_Machines.FinalState ( %Behavioral_Elements.State_Machines.FinalStateProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.State_Machines.FinalStateAssociations; )
       , %Behavioral_Elements.State_Machines.FinalStateCompositions; )?>

<!ATTLIST Behavioral_Elements.State_Machines.FinalState %XMI.element.att; %XMI.link.att; >



<!-- PACKAGE: Behavioral_Elements.Collaborations -->


<!-- *****    Behavioral_Elements.Collaborations.A_interaction_message   *******  -->

<!ELEMENT Behavioral_Elements.Collaborations.Interaction.message ( Behavioral_Elements.Collaborations.Message)+ >


<!-- *****    Behavioral_Elements.Collaborations.A_context_interaction   *******  -->

<!ELEMENT Behavioral_Elements.Collaborations.Collaboration.interaction ( Behavioral_Elements.Collaborations.Interaction)* >


<!-- CLASS: Behavioral_Elements.Collaborations.Collaboration -->

<!ELEMENT Behavioral_Elements.Collaborations.Collaboration.representedClassifier (Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem)?>

<!ELEMENT Behavioral_Elements.Collaborations.Collaboration.representedOperation (Foundation.Core.Operation)?>

<!ELEMENT Behavioral_Elements.Collaborations.Collaboration.constrainingElement (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)*>

<!ENTITY % Behavioral_Elements.Collaborations.CollaborationProperties '(%Foundation.Core.GeneralizableElementProperties;)' > 

<!ENTITY % Behavioral_Elements.Collaborations.CollaborationAssociations '(%Foundation.Core.GeneralizableElementAssociations;
       ,Behavioral_Elements.Collaborations.Collaboration.representedClassifier?
       ,Behavioral_Elements.Collaborations.Collaboration.representedOperation?
       ,Behavioral_Elements.Collaborations.Collaboration.constrainingElement*)' > 

<!ENTITY % Behavioral_Elements.Collaborations.CollaborationCompositions '(%Foundation.Core.GeneralizableElementCompositions;
       ,Foundation.Core.Namespace.ownedElement*
       ,Behavioral_Elements.Collaborations.Collaboration.interaction*)' > 

<!ELEMENT Behavioral_Elements.Collaborations.Collaboration ( %Behavioral_Elements.Collaborations.CollaborationProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Collaborations.CollaborationAssociations; )
       , %Behavioral_Elements.Collaborations.CollaborationCompositions; )?>

<!ATTLIST Behavioral_Elements.Collaborations.Collaboration %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Collaborations.ClassifierRole -->

<!ELEMENT Behavioral_Elements.Collaborations.ClassifierRole.multiplicity (Foundation.Data_Types.Multiplicity)>

<!ELEMENT Behavioral_Elements.Collaborations.ClassifierRole.base (Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem)+>

<!ELEMENT Behavioral_Elements.Collaborations.ClassifierRole.availableFeature (Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception)*>

<!ELEMENT Behavioral_Elements.Collaborations.ClassifierRole.message2 (Behavioral_Elements.Collaborations.Message)*>

<!ELEMENT Behavioral_Elements.Collaborations.ClassifierRole.message1 (Behavioral_Elements.Collaborations.Message)*>

<!ELEMENT Behavioral_Elements.Collaborations.ClassifierRole.availableContents (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)*>

<!ENTITY % Behavioral_Elements.Collaborations.ClassifierRoleProperties '(%Foundation.Core.ClassifierProperties;
       ,Behavioral_Elements.Collaborations.ClassifierRole.multiplicity )' > 

<!ENTITY % Behavioral_Elements.Collaborations.ClassifierRoleAssociations '(%Foundation.Core.ClassifierAssociations;
       ,Behavioral_Elements.Collaborations.ClassifierRole.base+
       ,Behavioral_Elements.Collaborations.ClassifierRole.availableFeature*
       ,Behavioral_Elements.Collaborations.ClassifierRole.message2*
       ,Behavioral_Elements.Collaborations.ClassifierRole.message1*
       ,Behavioral_Elements.Collaborations.ClassifierRole.availableContents*)' > 

<!ENTITY % Behavioral_Elements.Collaborations.ClassifierRoleCompositions '(%Foundation.Core.ClassifierCompositions;)' > 

<!ELEMENT Behavioral_Elements.Collaborations.ClassifierRole ( %Behavioral_Elements.Collaborations.ClassifierRoleProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Collaborations.ClassifierRoleAssociations; )
       , %Behavioral_Elements.Collaborations.ClassifierRoleCompositions; )?>

<!ATTLIST Behavioral_Elements.Collaborations.ClassifierRole %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Collaborations.AssociationRole -->

<!ELEMENT Behavioral_Elements.Collaborations.AssociationRole.multiplicity (Foundation.Data_Types.Multiplicity)>

<!ELEMENT Behavioral_Elements.Collaborations.AssociationRole.base (Foundation.Core.Association
  |Foundation.Core.AssociationClass
  |Behavioral_Elements.Collaborations.AssociationRole)?>

<!ELEMENT Behavioral_Elements.Collaborations.AssociationRole.message (Behavioral_Elements.Collaborations.Message)*>

<!ENTITY % Behavioral_Elements.Collaborations.AssociationRoleProperties '(%Foundation.Core.AssociationProperties;
       ,Behavioral_Elements.Collaborations.AssociationRole.multiplicity )' > 

<!ENTITY % Behavioral_Elements.Collaborations.AssociationRoleAssociations '(%Foundation.Core.AssociationAssociations;
       ,Behavioral_Elements.Collaborations.AssociationRole.base?
       ,Behavioral_Elements.Collaborations.AssociationRole.message*)' > 

<!ENTITY % Behavioral_Elements.Collaborations.AssociationRoleCompositions '(%Foundation.Core.AssociationCompositions;)' > 

<!ELEMENT Behavioral_Elements.Collaborations.AssociationRole ( %Behavioral_Elements.Collaborations.AssociationRoleProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Collaborations.AssociationRoleAssociations; )
       , %Behavioral_Elements.Collaborations.AssociationRoleCompositions; )?>

<!ATTLIST Behavioral_Elements.Collaborations.AssociationRole %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Collaborations.AssociationEndRole -->

<!ELEMENT Behavioral_Elements.Collaborations.AssociationEndRole.collaborationMultiplicity (Foundation.Data_Types.Multiplicity)>

<!ELEMENT Behavioral_Elements.Collaborations.AssociationEndRole.base (Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole)?>

<!ELEMENT Behavioral_Elements.Collaborations.AssociationEndRole.availableQualifier (Foundation.Core.Attribute)*>

<!ENTITY % Behavioral_Elements.Collaborations.AssociationEndRoleProperties '(%Foundation.Core.AssociationEndProperties;
       ,Behavioral_Elements.Collaborations.AssociationEndRole.collaborationMultiplicity )' > 

<!ENTITY % Behavioral_Elements.Collaborations.AssociationEndRoleAssociations '(%Foundation.Core.AssociationEndAssociations;
       ,Behavioral_Elements.Collaborations.AssociationEndRole.base?
       ,Behavioral_Elements.Collaborations.AssociationEndRole.availableQualifier*)' > 

<!ENTITY % Behavioral_Elements.Collaborations.AssociationEndRoleCompositions '(%Foundation.Core.AssociationEndCompositions;)' > 

<!ELEMENT Behavioral_Elements.Collaborations.AssociationEndRole ( %Behavioral_Elements.Collaborations.AssociationEndRoleProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Collaborations.AssociationEndRoleAssociations; )
       , %Behavioral_Elements.Collaborations.AssociationEndRoleCompositions; )?>

<!ATTLIST Behavioral_Elements.Collaborations.AssociationEndRole %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Collaborations.Message -->

<!ELEMENT Behavioral_Elements.Collaborations.Message.interaction (Behavioral_Elements.Collaborations.Interaction) >

<!ELEMENT Behavioral_Elements.Collaborations.Message.activator (Behavioral_Elements.Collaborations.Message)?>

<!ELEMENT Behavioral_Elements.Collaborations.Message.message4 (Behavioral_Elements.Collaborations.Message)*>

<!ELEMENT Behavioral_Elements.Collaborations.Message.sender (Behavioral_Elements.Collaborations.ClassifierRole) >

<!ELEMENT Behavioral_Elements.Collaborations.Message.receiver (Behavioral_Elements.Collaborations.ClassifierRole) >

<!ELEMENT Behavioral_Elements.Collaborations.Message.message3 (Behavioral_Elements.Collaborations.Message)*>

<!ELEMENT Behavioral_Elements.Collaborations.Message.predecessor (Behavioral_Elements.Collaborations.Message)*>

<!ELEMENT Behavioral_Elements.Collaborations.Message.communicationConnection (Behavioral_Elements.Collaborations.AssociationRole)?>

<!ELEMENT Behavioral_Elements.Collaborations.Message.action (Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction) >

<!ENTITY % Behavioral_Elements.Collaborations.MessageProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Behavioral_Elements.Collaborations.MessageAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.Collaborations.Message.interaction?
       ,Behavioral_Elements.Collaborations.Message.activator?
       ,Behavioral_Elements.Collaborations.Message.message4*
       ,Behavioral_Elements.Collaborations.Message.sender 
       ,Behavioral_Elements.Collaborations.Message.receiver 
       ,Behavioral_Elements.Collaborations.Message.message3*
       ,Behavioral_Elements.Collaborations.Message.predecessor*
       ,Behavioral_Elements.Collaborations.Message.communicationConnection?
       ,Behavioral_Elements.Collaborations.Message.action )' > 

<!ENTITY % Behavioral_Elements.Collaborations.MessageCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Behavioral_Elements.Collaborations.Message ( %Behavioral_Elements.Collaborations.MessageProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Collaborations.MessageAssociations; )
       , %Behavioral_Elements.Collaborations.MessageCompositions; )?>

<!ATTLIST Behavioral_Elements.Collaborations.Message %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Collaborations.Interaction -->

<!ELEMENT Behavioral_Elements.Collaborations.Interaction.context (Behavioral_Elements.Collaborations.Collaboration) >

<!ENTITY % Behavioral_Elements.Collaborations.InteractionProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Behavioral_Elements.Collaborations.InteractionAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.Collaborations.Interaction.context?)' > 

<!ENTITY % Behavioral_Elements.Collaborations.InteractionCompositions '(%Foundation.Core.ModelElementCompositions;
       ,Behavioral_Elements.Collaborations.Interaction.message+)' > 

<!ELEMENT Behavioral_Elements.Collaborations.Interaction ( %Behavioral_Elements.Collaborations.InteractionProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Collaborations.InteractionAssociations; )
       , %Behavioral_Elements.Collaborations.InteractionCompositions; )?>

<!ATTLIST Behavioral_Elements.Collaborations.Interaction %XMI.element.att; %XMI.link.att; >



<!-- PACKAGE: Behavioral_Elements.Activity_Graphs -->


<!-- *****    Behavioral_Elements.Activity_Graphs.A_activityGraph_partition   *******  -->

<!ELEMENT Behavioral_Elements.Activity_Graphs.ActivityGraph.partition ( Behavioral_Elements.Activity_Graphs.Partition)* >


<!-- CLASS: Behavioral_Elements.Activity_Graphs.ActivityGraph -->

<!ENTITY % Behavioral_Elements.Activity_Graphs.ActivityGraphProperties '(%Behavioral_Elements.State_Machines.StateMachineProperties;)' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.ActivityGraphAssociations '(%Behavioral_Elements.State_Machines.StateMachineAssociations;)' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.ActivityGraphCompositions '(%Behavioral_Elements.State_Machines.StateMachineCompositions;
       ,Behavioral_Elements.Activity_Graphs.ActivityGraph.partition*)' > 

<!ELEMENT Behavioral_Elements.Activity_Graphs.ActivityGraph ( %Behavioral_Elements.Activity_Graphs.ActivityGraphProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Activity_Graphs.ActivityGraphAssociations; )
       , %Behavioral_Elements.Activity_Graphs.ActivityGraphCompositions; )?>

<!ATTLIST Behavioral_Elements.Activity_Graphs.ActivityGraph %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Activity_Graphs.Partition -->

<!ELEMENT Behavioral_Elements.Activity_Graphs.Partition.contents (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)*>

<!ELEMENT Behavioral_Elements.Activity_Graphs.Partition.activityGraph (Behavioral_Elements.Activity_Graphs.ActivityGraph) >

<!ENTITY % Behavioral_Elements.Activity_Graphs.PartitionProperties '(%Foundation.Core.ModelElementProperties;)' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.PartitionAssociations '(%Foundation.Core.ModelElementAssociations;
       ,Behavioral_Elements.Activity_Graphs.Partition.contents*
       ,Behavioral_Elements.Activity_Graphs.Partition.activityGraph?)' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.PartitionCompositions '(%Foundation.Core.ModelElementCompositions;)' > 

<!ELEMENT Behavioral_Elements.Activity_Graphs.Partition ( %Behavioral_Elements.Activity_Graphs.PartitionProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Activity_Graphs.PartitionAssociations; )
       , %Behavioral_Elements.Activity_Graphs.PartitionCompositions; )?>

<!ATTLIST Behavioral_Elements.Activity_Graphs.Partition %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Activity_Graphs.SubactivityState -->

<!ELEMENT Behavioral_Elements.Activity_Graphs.SubactivityState.isDynamic EMPTY>
<!ATTLIST Behavioral_Elements.Activity_Graphs.SubactivityState.isDynamic
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Behavioral_Elements.Activity_Graphs.SubactivityState.dynamicArguments (Foundation.Data_Types.ArgListsExpression)>

<!ELEMENT Behavioral_Elements.Activity_Graphs.SubactivityState.dynamicMultiplicity (Foundation.Data_Types.Multiplicity)>

<!ENTITY % Behavioral_Elements.Activity_Graphs.SubactivityStateProperties '(%Behavioral_Elements.State_Machines.SubmachineStateProperties;
       ,Behavioral_Elements.Activity_Graphs.SubactivityState.isDynamic 
       ,Behavioral_Elements.Activity_Graphs.SubactivityState.dynamicArguments 
       ,Behavioral_Elements.Activity_Graphs.SubactivityState.dynamicMultiplicity )' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.SubactivityStateAssociations '(%Behavioral_Elements.State_Machines.SubmachineStateAssociations;)' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.SubactivityStateCompositions '(%Behavioral_Elements.State_Machines.SubmachineStateCompositions;)' > 

<!ELEMENT Behavioral_Elements.Activity_Graphs.SubactivityState ( %Behavioral_Elements.Activity_Graphs.SubactivityStateProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Activity_Graphs.SubactivityStateAssociations; )
       , %Behavioral_Elements.Activity_Graphs.SubactivityStateCompositions; )?>

<!ATTLIST Behavioral_Elements.Activity_Graphs.SubactivityState %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Activity_Graphs.ActionState -->

<!ELEMENT Behavioral_Elements.Activity_Graphs.ActionState.isDynamic EMPTY>
<!ATTLIST Behavioral_Elements.Activity_Graphs.ActionState.isDynamic
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Behavioral_Elements.Activity_Graphs.ActionState.dynamicArguments (Foundation.Data_Types.ArgListsExpression)>

<!ELEMENT Behavioral_Elements.Activity_Graphs.ActionState.dynamicMultiplicity (Foundation.Data_Types.Multiplicity)>

<!ENTITY % Behavioral_Elements.Activity_Graphs.ActionStateProperties '(%Behavioral_Elements.State_Machines.SimpleStateProperties;
       ,Behavioral_Elements.Activity_Graphs.ActionState.isDynamic 
       ,Behavioral_Elements.Activity_Graphs.ActionState.dynamicArguments 
       ,Behavioral_Elements.Activity_Graphs.ActionState.dynamicMultiplicity )' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.ActionStateAssociations '(%Behavioral_Elements.State_Machines.SimpleStateAssociations;)' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.ActionStateCompositions '(%Behavioral_Elements.State_Machines.SimpleStateCompositions;)' > 

<!ELEMENT Behavioral_Elements.Activity_Graphs.ActionState ( %Behavioral_Elements.Activity_Graphs.ActionStateProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Activity_Graphs.ActionStateAssociations; )
       , %Behavioral_Elements.Activity_Graphs.ActionStateCompositions; )?>

<!ATTLIST Behavioral_Elements.Activity_Graphs.ActionState %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Activity_Graphs.CallState -->

<!ENTITY % Behavioral_Elements.Activity_Graphs.CallStateProperties '(%Behavioral_Elements.Activity_Graphs.ActionStateProperties;)' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.CallStateAssociations '(%Behavioral_Elements.Activity_Graphs.ActionStateAssociations;)' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.CallStateCompositions '(%Behavioral_Elements.Activity_Graphs.ActionStateCompositions;)' > 

<!ELEMENT Behavioral_Elements.Activity_Graphs.CallState ( %Behavioral_Elements.Activity_Graphs.CallStateProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Activity_Graphs.CallStateAssociations; )
       , %Behavioral_Elements.Activity_Graphs.CallStateCompositions; )?>

<!ATTLIST Behavioral_Elements.Activity_Graphs.CallState %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Activity_Graphs.ObjectFlowState -->

<!ELEMENT Behavioral_Elements.Activity_Graphs.ObjectFlowState.isSynch EMPTY>
<!ATTLIST Behavioral_Elements.Activity_Graphs.ObjectFlowState.isSynch
        xmi.value ( true | false ) #REQUIRED>

<!ELEMENT Behavioral_Elements.Activity_Graphs.ObjectFlowState.parameter (Foundation.Core.Parameter)*>

<!ELEMENT Behavioral_Elements.Activity_Graphs.ObjectFlowState.type (Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem) >

<!ENTITY % Behavioral_Elements.Activity_Graphs.ObjectFlowStateProperties '(%Behavioral_Elements.State_Machines.SimpleStateProperties;
       ,Behavioral_Elements.Activity_Graphs.ObjectFlowState.isSynch )' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.ObjectFlowStateAssociations '(%Behavioral_Elements.State_Machines.SimpleStateAssociations;
       ,Behavioral_Elements.Activity_Graphs.ObjectFlowState.parameter*
       ,Behavioral_Elements.Activity_Graphs.ObjectFlowState.type )' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.ObjectFlowStateCompositions '(%Behavioral_Elements.State_Machines.SimpleStateCompositions;)' > 

<!ELEMENT Behavioral_Elements.Activity_Graphs.ObjectFlowState ( %Behavioral_Elements.Activity_Graphs.ObjectFlowStateProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Activity_Graphs.ObjectFlowStateAssociations; )
       , %Behavioral_Elements.Activity_Graphs.ObjectFlowStateCompositions; )?>

<!ATTLIST Behavioral_Elements.Activity_Graphs.ObjectFlowState %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Behavioral_Elements.Activity_Graphs.ClassifierInState -->

<!ELEMENT Behavioral_Elements.Activity_Graphs.ClassifierInState.type (Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem) >

<!ELEMENT Behavioral_Elements.Activity_Graphs.ClassifierInState.inState (Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState)+>

<!ENTITY % Behavioral_Elements.Activity_Graphs.ClassifierInStateProperties '(%Foundation.Core.ClassifierProperties;)' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.ClassifierInStateAssociations '(%Foundation.Core.ClassifierAssociations;
       ,Behavioral_Elements.Activity_Graphs.ClassifierInState.type 
       ,Behavioral_Elements.Activity_Graphs.ClassifierInState.inState+)' > 

<!ENTITY % Behavioral_Elements.Activity_Graphs.ClassifierInStateCompositions '(%Foundation.Core.ClassifierCompositions;)' > 

<!ELEMENT Behavioral_Elements.Activity_Graphs.ClassifierInState ( %Behavioral_Elements.Activity_Graphs.ClassifierInStateProperties;
       ,(XMI.extension* ,  %Behavioral_Elements.Activity_Graphs.ClassifierInStateAssociations; )
       , %Behavioral_Elements.Activity_Graphs.ClassifierInStateCompositions; )?>

<!ATTLIST Behavioral_Elements.Activity_Graphs.ClassifierInState %XMI.element.att; %XMI.link.att; >




<!-- PACKAGE: Model_Management -->


<!-- *****    Model_Management.A_package_elementImport   *******  -->

<!ELEMENT Model_Management.Package.elementImport ( Model_Management.ElementImport)* >


<!-- CLASS: Model_Management.Package -->

<!ENTITY % Model_Management.PackageProperties '(%Foundation.Core.GeneralizableElementProperties;)' > 

<!ENTITY % Model_Management.PackageAssociations '(%Foundation.Core.GeneralizableElementAssociations;)' > 

<!ENTITY % Model_Management.PackageCompositions '(%Foundation.Core.GeneralizableElementCompositions;
       ,Foundation.Core.Namespace.ownedElement*
       ,Model_Management.Package.elementImport*)' > 

<!ELEMENT Model_Management.Package ( %Model_Management.PackageProperties;
       ,(XMI.extension* ,  %Model_Management.PackageAssociations; )
       , %Model_Management.PackageCompositions; )?>

<!ATTLIST Model_Management.Package %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Model_Management.Model -->

<!ENTITY % Model_Management.ModelProperties '(%Model_Management.PackageProperties;)' > 

<!ENTITY % Model_Management.ModelAssociations '(%Model_Management.PackageAssociations;)' > 

<!ENTITY % Model_Management.ModelCompositions '(%Model_Management.PackageCompositions;)' > 

<!ELEMENT Model_Management.Model ( %Model_Management.ModelProperties;
       ,(XMI.extension* ,  %Model_Management.ModelAssociations; )
       , %Model_Management.ModelCompositions; )?>

<!ATTLIST Model_Management.Model %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Model_Management.Subsystem -->

<!ELEMENT Model_Management.Subsystem.isInstantiable EMPTY>
<!ATTLIST Model_Management.Subsystem.isInstantiable
        xmi.value ( true | false ) #REQUIRED>

<!ENTITY % Model_Management.SubsystemProperties '(%Model_Management.PackageProperties;
       ,Model_Management.Subsystem.isInstantiable )' > 

<!ENTITY % Model_Management.SubsystemAssociations '(%Model_Management.PackageAssociations;
       ,Foundation.Core.Classifier.participant*
       ,Foundation.Core.Classifier.powertypeRange*)' > 

<!ENTITY % Model_Management.SubsystemCompositions '(%Model_Management.PackageCompositions;
       ,Foundation.Core.Classifier.feature*)' > 

<!ELEMENT Model_Management.Subsystem ( %Model_Management.SubsystemProperties;
       ,(XMI.extension* ,  %Model_Management.SubsystemAssociations; )
       , %Model_Management.SubsystemCompositions; )?>

<!ATTLIST Model_Management.Subsystem %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Model_Management.ElementImport -->

<!ELEMENT Model_Management.ElementImport.visibility EMPTY>
<!ATTLIST Model_Management.ElementImport.visibility %Foundation.Data_Types.VisibilityKind;>

<!ELEMENT Model_Management.ElementImport.alias (#PCDATA|XMI.reference)*>

<!ELEMENT Model_Management.ElementImport.package (Model_Management.Package
  |Model_Management.Model
  |Model_Management.Subsystem) >

<!ELEMENT Model_Management.ElementImport.modelElement (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition) >

<!ENTITY % Model_Management.ElementImportProperties '(Model_Management.ElementImport.visibility 
       ,Model_Management.ElementImport.alias )' > 

<!ENTITY % Model_Management.ElementImportAssociations '(Model_Management.ElementImport.package?
       ,Model_Management.ElementImport.modelElement )' > 

<!ELEMENT Model_Management.ElementImport ( %Model_Management.ElementImportProperties;
       ,(XMI.extension* ,  %Model_Management.ElementImportAssociations; ) )?>

<!ATTLIST Model_Management.ElementImport %XMI.element.att; %XMI.link.att; >



<!-- PACKAGE: Diagramming -->


<!-- *****    Diagramming.ModelElementOwnsDiagram   *******  -->

<!ELEMENT Diagramming.ModelElementOwnsDiagram.ownedDiagram (Diagramming.Diagram)* >


<!-- *****    Diagramming.DiagramOwnsPresentation   *******  -->

<!ELEMENT Diagramming.Diagram.element ( Diagramming.DiagramElement)* >


<!-- CLASS: Diagramming.Diagram -->

<!ELEMENT Diagramming.Diagram.name (#PCDATA|XMI.reference)*>

<!ELEMENT Diagramming.Diagram.toolName (#PCDATA|XMI.reference)*>

<!ELEMENT Diagramming.Diagram.diagramType (#PCDATA|XMI.reference)*>

<!ELEMENT Diagramming.Diagram.style (#PCDATA|XMI.reference)*>

<!ELEMENT Diagramming.Diagram.owner (Foundation.Core.ModelElement
  |Foundation.Core.Namespace
  |Foundation.Core.Classifier
  |Foundation.Core.Class
  |Foundation.Core.AssociationClass
  |Foundation.Core.DataType
  |Foundation.Core.Interface
  |Foundation.Core.Component
  |Foundation.Core.Node
  |Behavioral_Elements.Common_Behavior.Signal
  |Behavioral_Elements.Common_Behavior.Exception
  |Behavioral_Elements.Use_Cases.UseCase
  |Behavioral_Elements.Use_Cases.Actor
  |Behavioral_Elements.Collaborations.ClassifierRole
  |Behavioral_Elements.Activity_Graphs.ClassifierInState
  |Model_Management.Subsystem
  |Behavioral_Elements.Collaborations.Collaboration
  |Model_Management.Package
  |Model_Management.Model
  |Foundation.Core.AssociationEnd
  |Behavioral_Elements.Collaborations.AssociationEndRole
  |Foundation.Core.Constraint
  |Foundation.Core.GeneralizableElement
  |Foundation.Core.Association
  |Behavioral_Elements.Collaborations.AssociationRole
  |Foundation.Extension_Mechanisms.Stereotype
  |Foundation.Core.Parameter
  |Foundation.Core.Feature
  |Foundation.Core.StructuralFeature
  |Foundation.Core.Attribute
  |Foundation.Core.BehavioralFeature
  |Foundation.Core.Operation
  |Foundation.Core.Method
  |Behavioral_Elements.Common_Behavior.Reception
  |Foundation.Core.Comment
  |Foundation.Core.Relationship
  |Foundation.Core.Generalization
  |Foundation.Core.Dependency
  |Foundation.Core.Abstraction
  |Foundation.Core.Usage
  |Foundation.Core.Binding
  |Foundation.Core.Permission
  |Foundation.Core.Flow
  |Behavioral_Elements.Use_Cases.Extend
  |Behavioral_Elements.Use_Cases.Include
  |Behavioral_Elements.Common_Behavior.Instance
  |Behavioral_Elements.Common_Behavior.Object
  |Behavioral_Elements.Common_Behavior.LinkObject
  |Behavioral_Elements.Common_Behavior.DataValue
  |Behavioral_Elements.Common_Behavior.ComponentInstance
  |Behavioral_Elements.Common_Behavior.NodeInstance
  |Behavioral_Elements.Use_Cases.UseCaseInstance
  |Behavioral_Elements.Common_Behavior.Action
  |Behavioral_Elements.Common_Behavior.CreateAction
  |Behavioral_Elements.Common_Behavior.DestroyAction
  |Behavioral_Elements.Common_Behavior.UninterpretedAction
  |Behavioral_Elements.Common_Behavior.CallAction
  |Behavioral_Elements.Common_Behavior.SendAction
  |Behavioral_Elements.Common_Behavior.ActionSequence
  |Behavioral_Elements.Common_Behavior.ReturnAction
  |Behavioral_Elements.Common_Behavior.TerminateAction
  |Behavioral_Elements.Common_Behavior.AttributeLink
  |Behavioral_Elements.Common_Behavior.Argument
  |Behavioral_Elements.Common_Behavior.Link
  |Behavioral_Elements.Common_Behavior.LinkEnd
  |Behavioral_Elements.Common_Behavior.Stimulus
  |Behavioral_Elements.Use_Cases.ExtensionPoint
  |Behavioral_Elements.State_Machines.StateMachine
  |Behavioral_Elements.Activity_Graphs.ActivityGraph
  |Behavioral_Elements.State_Machines.Event
  |Behavioral_Elements.State_Machines.TimeEvent
  |Behavioral_Elements.State_Machines.CallEvent
  |Behavioral_Elements.State_Machines.SignalEvent
  |Behavioral_Elements.State_Machines.ChangeEvent
  |Behavioral_Elements.State_Machines.Transition
  |Behavioral_Elements.State_Machines.StateVertex
  |Behavioral_Elements.State_Machines.State
  |Behavioral_Elements.State_Machines.CompositeState
  |Behavioral_Elements.State_Machines.SubmachineState
  |Behavioral_Elements.Activity_Graphs.SubactivityState
  |Behavioral_Elements.State_Machines.SimpleState
  |Behavioral_Elements.Activity_Graphs.ObjectFlowState
  |Behavioral_Elements.Activity_Graphs.ActionState
  |Behavioral_Elements.Activity_Graphs.CallState
  |Behavioral_Elements.State_Machines.FinalState
  |Behavioral_Elements.State_Machines.Pseudostate
  |Behavioral_Elements.State_Machines.SynchState
  |Behavioral_Elements.State_Machines.StubState
  |Behavioral_Elements.State_Machines.Guard
  |Behavioral_Elements.Collaborations.Message
  |Behavioral_Elements.Collaborations.Interaction
  |Behavioral_Elements.Activity_Graphs.Partition)?>

<!ENTITY % Diagramming.DiagramProperties '((Diagramming.Diagram.name)?
       ,Diagramming.Diagram.toolName 
       ,Diagramming.Diagram.diagramType 
       ,(Diagramming.Diagram.style)?)' > 

<!ENTITY % Diagramming.DiagramAssociations '(%Foundation.Core.PresentationElementAssociations;
       ,Diagramming.Diagram.owner?)' > 

<!ENTITY % Diagramming.DiagramCompositions '(Diagramming.Diagram.element*)' > 

<!ELEMENT Diagramming.Diagram ( %Diagramming.DiagramProperties;
       ,(XMI.extension* ,  %Diagramming.DiagramAssociations; )
       , %Diagramming.DiagramCompositions; )?>

<!ATTLIST Diagramming.Diagram %XMI.element.att; %XMI.link.att; >


<!-- CLASS: Diagramming.DiagramElement -->

<!ELEMENT Diagramming.DiagramElement.geometry (#PCDATA|XMI.reference)*>

<!ELEMENT Diagramming.DiagramElement.style (#PCDATA|XMI.reference)*>

<!ELEMENT Diagramming.DiagramElement.diagram (Diagramming.Diagram) >

<!ENTITY % Diagramming.DiagramElementProperties '(Diagramming.DiagramElement.geometry 
       ,(Diagramming.DiagramElement.style)?)' > 

<!ENTITY % Diagramming.DiagramElementAssociations '(%Foundation.Core.PresentationElementAssociations;
       ,Diagramming.DiagramElement.diagram?)' > 

<!ELEMENT Diagramming.DiagramElement ( %Diagramming.DiagramElementProperties;
       ,(XMI.extension* ,  %Diagramming.DiagramElementAssociations; ) )?>

<!ATTLIST Diagramming.DiagramElement %XMI.element.att; %XMI.link.att; >


