<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- 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.2"
            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*, XMI.import*) >

<!-- _______________________________________________________________ -->
<!--                                                                 -->
<!-- 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
               'href CDATA #IMPLIED 
		xmi.idref IDREF #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.import identifies imported metamodel(s)                     -->
<!--                                                                 -->
<!-- _______________________________________________________________ -->

<!ELEMENT XMI.import ANY >
<!ATTLIST XMI.import
            %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.field ANY >

<!-- End of fixed declarations -->

<!ATTLIST XMI
   xmlns:UML CDATA #IMPLIED>


<!ELEMENT UML:ProcedureExpression (UML:Expression.language | 
    UML:Expression.body | XMI.extension)* >
<!ATTLIST UML:ProcedureExpression
   language CDATA #IMPLIED
   body CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ArgListsExpression (UML:Expression.language | 
    UML:Expression.body | XMI.extension)* >
<!ATTLIST UML:ArgListsExpression
   language CDATA #IMPLIED
   body CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Expression.language (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Expression.body (#PCDATA | XMI.reference)* >

<!-- included for compatibility with Poseidon 3.1 -->
<!ELEMENT UML:Action.script (UML:ActionExpression)>

<!-- included for compatibility with Poseidon 3.1 -->
<!ELEMENT UML:ActionExpression (UML:Expression.language | 
    UML:Expression.body | XMI.extension)* >
<!ATTLIST UML:ActionExpression
   language CDATA #IMPLIED
   body CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Expression (UML:Expression.language | 
    UML:Expression.body | XMI.extension)* >
<!ATTLIST UML:Expression
   language CDATA #IMPLIED
   body CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:TypeExpression (UML:Expression.language | 
    UML:Expression.body | XMI.extension)* >
<!ATTLIST UML:TypeExpression
   language CDATA #IMPLIED
   body CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:TimeExpression (UML:Expression.language | 
    UML:Expression.body | XMI.extension)* >
<!ATTLIST UML:TimeExpression
   language CDATA #IMPLIED
   body CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:MultiplicityRange.lower (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:MultiplicityRange.upper (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:MultiplicityRange.multiplicity (
    UML:Multiplicity)* >

<!ELEMENT UML:MultiplicityRange (UML:MultiplicityRange.lower | 
    UML:MultiplicityRange.upper | UML:MultiplicityRange.multiplicity | XMI.extension)* >
<!ATTLIST UML:MultiplicityRange
   multiplicity IDREFS #IMPLIED
   lower CDATA #IMPLIED
   upper CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:MappingExpression (UML:Expression.language | 
    UML:Expression.body | XMI.extension)* >
<!ATTLIST UML:MappingExpression
   language CDATA #IMPLIED
   body CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Multiplicity.range (UML:MultiplicityRange)* >

<!ELEMENT UML:Multiplicity (UML:Multiplicity.range | 
    XMI.extension)* >
<!ATTLIST UML:Multiplicity
   range IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:BooleanExpression (UML:Expression.language | 
    UML:Expression.body | XMI.extension)* >
<!ATTLIST UML:BooleanExpression
   language CDATA #IMPLIED
   body CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Data_Types (UML:MultiplicityRange | 
    UML:TimeExpression | UML:TypeExpression | UML:Expression | 
    UML:Multiplicity | UML:ProcedureExpression | UML:MappingExpression | 
    UML:BooleanExpression | UML15OCL.Expressions.ExpressionInOcl | 
    UML:ArgListsExpression | XMI.extension)* >
<!ATTLIST UML:Data_Types
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:DataType (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML:DataType
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Comment.body (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Comment.annotatedElement (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:Comment (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | UML:Comment.body | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Comment.annotatedElement | XMI.extension)* >
<!ATTLIST UML:Comment
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   annotatedElement IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   body CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Class.isActive (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Class (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:Class.isActive | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML:Class
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   isActive CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Relationship (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML:Relationship
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Flow.target (UML15OCL.Types.BagType | 
    UML:SubmachineState | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML15OCL.Types.OrderedSetType | UML:Model | 
    UML:Stimulus | UML:AssociationEnd | UML:LinkAction | UML:Interface | 
    UML15OCL.Expressions.OclExpression | UML:Class | UML:Subsystem | UML:StubState | 
    UML15OCL.Types.SetType | UML:Operation | UML15OCL.Types.CollectionType | 
    UML:Reception | UML:Parameter | UML:Package | UML:ActivityGraph | 
    UML:Guard | UML:Variable | UML:BroadcastSignalAction | 
    UML:JumpAction | UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:Flow.source (UML15OCL.Types.BagType | 
    UML:SubmachineState | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML15OCL.Types.OrderedSetType | UML:Model | 
    UML:Stimulus | UML:AssociationEnd | UML:LinkAction | UML:Interface | 
    UML15OCL.Expressions.OclExpression | UML:Class | UML:Subsystem | UML:StubState | 
    UML15OCL.Types.SetType | UML:Operation | UML15OCL.Types.CollectionType | 
    UML:Reception | UML:Parameter | UML:Package | UML:ActivityGraph | 
    UML:Guard | UML:Variable | UML:BroadcastSignalAction | 
    UML:JumpAction | UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:Flow (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Flow.target | UML:Flow.source | XMI.extension)* >
<!ATTLIST UML:Flow
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   target IDREFS #IMPLIED
   source IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Component.deploymentLocation (UML:Node)* >

<!ELEMENT UML:Component.residentElement (
    UML:ElementResidence)* >

<!ELEMENT UML:Component.implementation (UML:Artifact)* >

<!ELEMENT UML:Component (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | UML:Component.deploymentLocation | 
    UML:Component.residentElement | UML:Component.implementation | XMI.extension)* >
<!ATTLIST UML:Component
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   deploymentLocation IDREFS #IMPLIED
   residentElement IDREFS #IMPLIED
   implementation IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:EnumerationLiteral.enumeration (
    UML:Enumeration)* >

<!ELEMENT UML:EnumerationLiteral (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:EnumerationLiteral.enumeration | XMI.extension)* >
<!ATTLIST UML:EnumerationLiteral
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   enumeration IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:AssociationEnd.isNavigable (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:AssociationEnd.ordering EMPTY>
<!ATTLIST UML:AssociationEnd.ordering
   xmi.value (unordered|ordered) #REQUIRED>

<!ELEMENT UML:AssociationEnd.aggregation EMPTY>
<!ATTLIST UML:AssociationEnd.aggregation
   xmi.value (none|aggregate|composite) #REQUIRED>

<!ELEMENT UML:AssociationEnd.targetScope EMPTY>
<!ATTLIST UML:AssociationEnd.targetScope
   xmi.value (instance|classifier) #REQUIRED>

<!ELEMENT UML:AssociationEnd.multiplicity (UML:Multiplicity)* >

<!ELEMENT UML:AssociationEnd.changeability EMPTY>
<!ATTLIST UML:AssociationEnd.changeability
   xmi.value (changeable|frozen|addOnly) #REQUIRED>

<!ELEMENT UML:AssociationEnd.association (
    UML:AssociationRole | UML:AssociationClass | UML:Association)* >

<!ELEMENT UML:AssociationEnd.qualifier (UML:Attribute)* >

<!ELEMENT UML:AssociationEnd.participant (
    UML15OCL.Types.BagType | UML:Classifier | UML:Artifact | 
    UML15OCL.Types.TupleType | UML:ClassifierRole | UML:Actor | 
    UML15OCL.Types.OrderedSetType | UML:UseCase | UML15OCL.Types.OclMessageType | 
    UML:Signal | UML15OCL.Types.VoidType | UML:Interface | 
    UML:Enumeration | UML:Class | UML:Subsystem | UML:Component | 
    UML:DataType | UML:ClassifierInState | UML:Exception | 
    UML15OCL.Types.SetType | UML:ProgrammingLanguageDataType | UML:Primitive | 
    UML15OCL.Types.CollectionType | UML:Node | UML15OCL.Types.SequenceType | 
    UML:AssociationClass)* >

<!ELEMENT UML:AssociationEnd.specification (
    UML15OCL.Types.BagType | UML:Classifier | UML:Artifact | 
    UML15OCL.Types.TupleType | UML:ClassifierRole | UML:Actor | 
    UML15OCL.Types.OrderedSetType | UML:UseCase | UML15OCL.Types.OclMessageType | 
    UML:Signal | UML15OCL.Types.VoidType | UML:Interface | 
    UML:Enumeration | UML:Class | UML:Subsystem | UML:Component | 
    UML:DataType | UML:ClassifierInState | UML:Exception | 
    UML15OCL.Types.SetType | UML:ProgrammingLanguageDataType | UML:Primitive | 
    UML15OCL.Types.CollectionType | UML:Node | UML15OCL.Types.SequenceType | 
    UML:AssociationClass)* >

<!ELEMENT UML:AssociationEnd (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:AssociationEnd.isNavigable | UML:AssociationEnd.ordering | 
    UML:AssociationEnd.aggregation | UML:AssociationEnd.targetScope | 
    UML:AssociationEnd.multiplicity | UML:AssociationEnd.changeability | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | OCL.CommonModel.AssociationEnd.qualifiersA | 
    UML:AssociationEnd.association | UML:AssociationEnd.qualifier | 
    UML:AssociationEnd.participant | UML:AssociationEnd.specification | XMI.extension)* >
<!ATTLIST UML:AssociationEnd
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   qualifiersA IDREFS #IMPLIED
   association IDREFS #IMPLIED
   qualifier IDREFS #IMPLIED
   participant IDREFS #IMPLIED
   specification IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isNavigable CDATA #IMPLIED
   ordering (unordered|ordered) #IMPLIED
   aggregation (none|aggregate|composite) #IMPLIED
   targetScope (instance|classifier) #IMPLIED
   multiplicity IDREFS #IMPLIED
   changeability (changeable|frozen|addOnly) #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Artifact (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML:Artifact
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Abstraction.mapping (UML:MappingExpression)* >

<!ELEMENT UML:Abstraction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Abstraction.mapping | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Dependency.client | 
    UML:Dependency.supplier | XMI.extension)* >
<!ATTLIST UML:Abstraction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   client IDREFS #IMPLIED
   supplier IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   mapping IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Permission (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Dependency.client | UML:Dependency.supplier | 
    XMI.extension)* >
<!ATTLIST UML:Permission
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   client IDREFS #IMPLIED
   supplier IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:BehavioralFeature.isQuery (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:BehavioralFeature.parameter (UML:Parameter)* >

<!ELEMENT UML:BehavioralFeature (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Feature.ownerScope | UML:BehavioralFeature.isQuery | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Feature.owner | UML:BehavioralFeature.parameter | 
    XMI.extension)* >
<!ATTLIST UML:BehavioralFeature
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   owner IDREFS #IMPLIED
   parameter IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   ownerScope (instance|classifier) #IMPLIED
   isQuery CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Node.deployedComponent (UML:Component)* >

<!ELEMENT UML:Node (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | UML:Node.deployedComponent | XMI.extension)* >
<!ATTLIST UML:Node
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   deployedComponent IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Interface (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML:Interface
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ElementResidence.visibility EMPTY>
<!ATTLIST UML:ElementResidence.visibility
   xmi.value (public|protected|private|package) #REQUIRED>

<!ELEMENT UML:ElementResidence.resident (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:ElementResidence.container (UML:Component)* >

<!ELEMENT UML:ElementResidence (
    UML:ElementResidence.visibility | UML:ElementResidence.resident | 
    UML:ElementResidence.container | XMI.extension)* >
<!ATTLIST UML:ElementResidence
   resident IDREFS #IMPLIED
   container IDREFS #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:TemplateParameter.template (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:TemplateParameter.parameter (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:TemplateParameter.defaultElement (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:TemplateParameter (
    UML:TemplateParameter.template | UML:TemplateParameter.parameter | 
    UML:TemplateParameter.defaultElement | XMI.extension)* >
<!ATTLIST UML:TemplateParameter
   template IDREFS #IMPLIED
   parameter IDREFS #IMPLIED
   defaultElement IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Dependency.client (UML15OCL.Types.BagType | 
    UML:SubmachineState | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML15OCL.Types.OrderedSetType | UML:Model | 
    UML:Stimulus | UML:AssociationEnd | UML:LinkAction | UML:Interface | 
    UML15OCL.Expressions.OclExpression | UML:Class | UML:Subsystem | UML:StubState | 
    UML15OCL.Types.SetType | UML:Operation | UML15OCL.Types.CollectionType | 
    UML:Reception | UML:Parameter | UML:Package | UML:ActivityGraph | 
    UML:Guard | UML:Variable | UML:BroadcastSignalAction | 
    UML:JumpAction | UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:Dependency.supplier (UML15OCL.Types.BagType | 
    UML:SubmachineState | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML15OCL.Types.OrderedSetType | UML:Model | 
    UML:Stimulus | UML:AssociationEnd | UML:LinkAction | UML:Interface | 
    UML15OCL.Expressions.OclExpression | UML:Class | UML:Subsystem | UML:StubState | 
    UML15OCL.Types.SetType | UML:Operation | UML15OCL.Types.CollectionType | 
    UML:Reception | UML:Parameter | UML:Package | UML:ActivityGraph | 
    UML:Guard | UML:Variable | UML:BroadcastSignalAction | 
    UML:JumpAction | UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:Dependency (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Dependency.client | UML:Dependency.supplier | 
    XMI.extension)* >
<!ATTLIST UML:Dependency
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   client IDREFS #IMPLIED
   supplier IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ModelElement.name (#PCDATA | XMI.reference)* >

<!ELEMENT UML:ModelElement.visibility EMPTY>
<!ATTLIST UML:ModelElement.visibility
   xmi.value (public|protected|private|package) #REQUIRED>

<!ELEMENT UML:ModelElement.isSpecification (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:ModelElement.namespace (UML15OCL.Types.BagType | 
    UML:Classifier | UML:Artifact | UML:ClassifierRole | 
    UML15OCL.Types.TupleType | UML:Actor | UML15OCL.Types.OrderedSetType | UML:Model | 
    UML:UseCase | UML15OCL.Types.OclMessageType | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | UML:Collaboration | 
    UML:Namespace | UML:ClassifierInState | UML:Exception | 
    UML15OCL.Types.SetType | UML:Primitive | UML:ProgrammingLanguageDataType | 
    UML15OCL.Types.CollectionType | UML:Node | UML15OCL.Types.SequenceType | 
    UML:AssociationClass | UML:Package)* >

<!ELEMENT UML:ModelElement.clientDependency (UML:Abstraction | 
    UML:Permission | UML:Binding | UML:Dependency | UML:Usage)* >

<!ELEMENT UML:ModelElement.constraint (UML:Constraint)* >

<!ELEMENT UML:ModelElement.targetFlow (UML:Flow)* >

<!ELEMENT UML:ModelElement.sourceFlow (UML:Flow)* >

<!ELEMENT UML:ModelElement.comment (UML:Comment)* >

<!ELEMENT UML:ModelElement.templateParameter (
    UML:TemplateParameter)* >

<!ELEMENT UML:ModelElement.stereotype (UML:Stereotype)* >

<!ELEMENT UML:ModelElement.taggedValue (UML:TaggedValue)* >

<!ELEMENT UML:ModelElement (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML:ModelElement
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Generalization.discriminator (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:Generalization.child (UML15OCL.Types.BagType | 
    UML:Classifier | UML:Artifact | UML:ClassifierRole | 
    UML15OCL.Types.TupleType | UML:Actor | UML:Stereotype | 
    UML15OCL.Types.OrderedSetType | UML:Model | UML:UseCase | 
    UML15OCL.Types.OclMessageType | UML:GeneralizableElement | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | UML:Collaboration | 
    UML:ClassifierInState | UML:Association | UML:Exception | 
    UML15OCL.Types.SetType | UML:Primitive | UML:ProgrammingLanguageDataType | 
    UML15OCL.Types.CollectionType | UML:AssociationRole | UML:Node | 
    UML15OCL.Types.SequenceType | UML:AssociationClass | UML:Package)* >

<!ELEMENT UML:Generalization.parent (UML15OCL.Types.BagType | 
    UML:Classifier | UML:Artifact | UML:ClassifierRole | 
    UML15OCL.Types.TupleType | UML:Actor | UML:Stereotype | 
    UML15OCL.Types.OrderedSetType | UML:Model | UML:UseCase | 
    UML15OCL.Types.OclMessageType | UML:GeneralizableElement | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | UML:Collaboration | 
    UML:ClassifierInState | UML:Association | UML:Exception | 
    UML15OCL.Types.SetType | UML:Primitive | UML:ProgrammingLanguageDataType | 
    UML15OCL.Types.CollectionType | UML:AssociationRole | UML:Node | 
    UML15OCL.Types.SequenceType | UML:AssociationClass | UML:Package)* >

<!ELEMENT UML:Generalization.powertype (
    UML15OCL.Types.BagType | UML:Classifier | UML:Artifact | 
    UML15OCL.Types.TupleType | UML:ClassifierRole | UML:Actor | 
    UML15OCL.Types.OrderedSetType | UML:UseCase | UML15OCL.Types.OclMessageType | 
    UML:Signal | UML15OCL.Types.VoidType | UML:Interface | 
    UML:Enumeration | UML:Class | UML:Subsystem | UML:Component | 
    UML:DataType | UML:ClassifierInState | UML:Exception | 
    UML15OCL.Types.SetType | UML:ProgrammingLanguageDataType | UML:Primitive | 
    UML15OCL.Types.CollectionType | UML:Node | UML15OCL.Types.SequenceType | 
    UML:AssociationClass)* >

<!ELEMENT UML:Generalization (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Generalization.discriminator | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:Generalization.child | UML:Generalization.parent | 
    UML:Generalization.powertype | XMI.extension)* >
<!ATTLIST UML:Generalization
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   child IDREFS #IMPLIED
   parent IDREFS #IMPLIED
   powertype IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   discriminator CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Attribute.initialValue (UML:TimeExpression | 
    UML:TypeExpression | UML:Expression | UML:ProcedureExpression | 
    UML:MappingExpression | UML:BooleanExpression | 
    UML15OCL.Expressions.ExpressionInOcl | UML:ArgListsExpression)* >

<!ELEMENT UML:Attribute.associationEnd (
    UML:AssociationEndRole | UML:AssociationEnd)* >

<!ELEMENT UML:Attribute (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Feature.ownerScope | UML:StructuralFeature.multiplicity | 
    UML:StructuralFeature.changeability | UML:StructuralFeature.targetScope | 
    UML:StructuralFeature.ordering | UML:Attribute.initialValue | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Feature.owner | UML:StructuralFeature.type | 
    UML:Attribute.associationEnd | XMI.extension)* >
<!ATTLIST UML:Attribute
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   owner IDREFS #IMPLIED
   type IDREFS #IMPLIED
   associationEnd IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   ownerScope (instance|classifier) #IMPLIED
   multiplicity IDREFS #IMPLIED
   changeability (changeable|frozen|addOnly) #IMPLIED
   targetScope (instance|classifier) #IMPLIED
   ordering (unordered|ordered) #IMPLIED
   initialValue IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Feature.ownerScope EMPTY>
<!ATTLIST UML:Feature.ownerScope
   xmi.value (instance|classifier) #REQUIRED>

<!ELEMENT UML:Feature.owner (UML15OCL.Types.BagType | 
    UML:Classifier | UML:Artifact | UML15OCL.Types.TupleType | 
    UML:ClassifierRole | UML:Actor | UML15OCL.Types.OrderedSetType | 
    UML:UseCase | UML15OCL.Types.OclMessageType | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | UML:ClassifierInState | 
    UML:Exception | UML15OCL.Types.SetType | 
    UML:ProgrammingLanguageDataType | UML:Primitive | UML15OCL.Types.CollectionType | 
    UML:Node | UML15OCL.Types.SequenceType | UML:AssociationClass)* >

<!ELEMENT UML:Feature (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Feature.ownerScope | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Feature.owner | 
    XMI.extension)* >
<!ATTLIST UML:Feature
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   owner IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   ownerScope (instance|classifier) #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Enumeration.literal (UML:EnumerationLiteral)* >

<!ELEMENT UML:Enumeration (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | UML:Enumeration.literal | XMI.extension)* >
<!ATTLIST UML:Enumeration
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   literal IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Method.body (UML:ProcedureExpression)* >

<!ELEMENT UML:Method.specification (UML:Operation)* >

<!ELEMENT UML:Method (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Feature.ownerScope | UML:BehavioralFeature.isQuery | UML:Method.body | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Feature.owner | UML:BehavioralFeature.parameter | 
    UML:Method.specification | XMI.extension)* >
<!ATTLIST UML:Method
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   owner IDREFS #IMPLIED
   parameter IDREFS #IMPLIED
   specification IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   ownerScope (instance|classifier) #IMPLIED
   isQuery CDATA #IMPLIED
   body IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Namespace.ownedElement (UML15OCL.Types.BagType | 
    UML:SubmachineState | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML15OCL.Types.OrderedSetType | UML:Model | 
    UML:Stimulus | UML:AssociationEnd | UML:LinkAction | UML:Interface | 
    UML15OCL.Expressions.OclExpression | UML:Class | UML:Subsystem | UML:StubState | 
    UML15OCL.Types.SetType | UML:Operation | UML15OCL.Types.CollectionType | 
    UML:Reception | UML:Parameter | UML:Package | UML:ActivityGraph | 
    UML:Guard | UML:Variable | UML:BroadcastSignalAction | 
    UML:JumpAction | UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:Namespace (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Namespace.ownedElement | XMI.extension)* >
<!ATTLIST UML:Namespace
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:TagDefinition.tagType (#PCDATA | XMI.reference)* >

<!ELEMENT UML:TagDefinition.multiplicity (UML:Multiplicity)* >

<!ELEMENT UML:TagDefinition.owner (UML:Stereotype)* >

<!ELEMENT UML:TagDefinition (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:TagDefinition.tagType | UML:TagDefinition.multiplicity | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:TagDefinition.owner | XMI.extension)* >
<!ATTLIST UML:TagDefinition
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   owner IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   tagType CDATA #IMPLIED
   multiplicity IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:AssociationClass (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:Class.isActive | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Association.connection | 
    UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML:AssociationClass
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   connection IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   isActive CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Classifier.feature (UML:Operation | 
    UML:StructuralFeature | UML:Reception | UML:Attribute | UML:Feature | 
    UML:Method | UML:BehavioralFeature)* >

<!ELEMENT UML:Classifier.powertypeRange (UML:Generalization)* >

<!ELEMENT UML:Classifier (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML:Classifier
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Constraint.body (UML:BooleanExpression | 
    UML15OCL.Expressions.ExpressionInOcl)* >

<!ELEMENT UML:Constraint.constrainedElement (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:Constraint (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Constraint.body | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:Constraint.constrainedElement | XMI.extension)* >
<!ATTLIST UML:Constraint
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   constrainedElement IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   body IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Usage (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Dependency.client | UML:Dependency.supplier | 
    XMI.extension)* >
<!ATTLIST UML:Usage
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   client IDREFS #IMPLIED
   supplier IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Association.connection (UML:AssociationEndRole | 
    UML:AssociationEnd)* >

<!ELEMENT UML:Association (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Association.connection | XMI.extension)* >
<!ATTLIST UML:Association
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   connection IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:GeneralizableElement.isRoot (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:GeneralizableElement.isLeaf (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:GeneralizableElement.isAbstract (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:GeneralizableElement.generalization (
    UML:Generalization)* >

<!ELEMENT UML:GeneralizableElement (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | XMI.extension)* >
<!ATTLIST UML:GeneralizableElement
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:TemplateArgument.modelElement (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:TemplateArgument.binding (UML:Binding)* >

<!ELEMENT UML:TemplateArgument (
    UML:TemplateArgument.modelElement | UML:TemplateArgument.binding | XMI.extension)* >
<!ATTLIST UML:TemplateArgument
   modelElement IDREFS #IMPLIED
   binding IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Primitive (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML:Primitive
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Operation.concurrency EMPTY>
<!ATTLIST UML:Operation.concurrency
   xmi.value (sequential|guarded|concurrent) #REQUIRED>

<!ELEMENT UML:Operation.isRoot (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Operation.isLeaf (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Operation.isAbstract (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Operation.specification (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:Operation (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Feature.ownerScope | UML:BehavioralFeature.isQuery | 
    UML:Operation.concurrency | UML:Operation.isRoot | UML:Operation.isLeaf | 
    UML:Operation.isAbstract | UML:Operation.specification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Feature.owner | UML:BehavioralFeature.parameter | 
    XMI.extension)* >
<!ATTLIST UML:Operation
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   owner IDREFS #IMPLIED
   parameter IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   ownerScope (instance|classifier) #IMPLIED
   isQuery CDATA #IMPLIED
   concurrency (sequential|guarded|concurrent) #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   specification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:PresentationElement.subject (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:PresentationElement (
    UML:PresentationElement.subject | XMI.extension)* >
<!ATTLIST UML:PresentationElement
   subject IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Binding.argument (UML:TemplateArgument)* >

<!ELEMENT UML:Binding (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Dependency.client | UML:Dependency.supplier | 
    UML:Binding.argument | XMI.extension)* >
<!ATTLIST UML:Binding
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   client IDREFS #IMPLIED
   supplier IDREFS #IMPLIED
   argument IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Stereotype.icon (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Stereotype.baseClass (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Stereotype.definedTag (UML:TagDefinition)* >

<!ELEMENT UML:Stereotype.stereotypeConstraint (
    UML:Constraint)* >

<!ELEMENT UML:Stereotype (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:Stereotype.icon | UML:Stereotype.baseClass | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:GeneralizableElement.generalization | 
    UML:Stereotype.definedTag | UML:Stereotype.stereotypeConstraint | XMI.extension)* >
<!ATTLIST UML:Stereotype
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   definedTag IDREFS #IMPLIED
   stereotypeConstraint IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   icon CDATA #IMPLIED
   baseClass CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ProgrammingLanguageDataType.expression (
    UML:TypeExpression)* >

<!ELEMENT UML:ProgrammingLanguageDataType (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | UML:GeneralizableElement.isRoot | 
    UML:GeneralizableElement.isLeaf | UML:GeneralizableElement.isAbstract | 
    UML:ProgrammingLanguageDataType.expression | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML:ProgrammingLanguageDataType
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   expression IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Element (XMI.extension)* >
<!ATTLIST UML:Element
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Parameter.defaultValue (UML:TimeExpression | 
    UML:TypeExpression | UML:Expression | UML:ProcedureExpression | 
    UML:MappingExpression | UML:BooleanExpression | 
    UML15OCL.Expressions.ExpressionInOcl | UML:ArgListsExpression)* >

<!ELEMENT UML:Parameter.kind EMPTY>
<!ATTLIST UML:Parameter.kind
   xmi.value (in|inout|out|return) #REQUIRED>

<!ELEMENT UML:Parameter.behavioralFeature (UML:Operation | 
    UML:Reception | UML:Method | UML:BehavioralFeature)* >

<!ELEMENT UML:Parameter.type (UML15OCL.Types.BagType | 
    UML:Classifier | UML:Artifact | UML15OCL.Types.TupleType | 
    UML:ClassifierRole | UML:Actor | UML15OCL.Types.OrderedSetType | 
    UML:UseCase | UML15OCL.Types.OclMessageType | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | UML:ClassifierInState | 
    UML:Exception | UML15OCL.Types.SetType | 
    UML:ProgrammingLanguageDataType | UML:Primitive | UML15OCL.Types.CollectionType | 
    UML:Node | UML15OCL.Types.SequenceType | UML:AssociationClass)* >

<!ELEMENT UML:Parameter (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Parameter.defaultValue | UML:Parameter.kind | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:Parameter.behavioralFeature | UML:Parameter.type | XMI.extension)* >
<!ATTLIST UML:Parameter
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   behavioralFeature IDREFS #IMPLIED
   type IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   defaultValue IDREFS #IMPLIED
   kind (in|inout|out|return) #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:StructuralFeature.multiplicity (
    UML:Multiplicity)* >

<!ELEMENT UML:StructuralFeature.changeability EMPTY>
<!ATTLIST UML:StructuralFeature.changeability
   xmi.value (changeable|frozen|addOnly) #REQUIRED>

<!ELEMENT UML:StructuralFeature.targetScope EMPTY>
<!ATTLIST UML:StructuralFeature.targetScope
   xmi.value (instance|classifier) #REQUIRED>

<!ELEMENT UML:StructuralFeature.ordering EMPTY>
<!ATTLIST UML:StructuralFeature.ordering
   xmi.value (unordered|ordered) #REQUIRED>

<!ELEMENT UML:StructuralFeature.type (UML15OCL.Types.BagType | 
    UML:Classifier | UML:Artifact | UML15OCL.Types.TupleType | 
    UML:ClassifierRole | UML:Actor | UML15OCL.Types.OrderedSetType | 
    UML:UseCase | UML15OCL.Types.OclMessageType | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | UML:ClassifierInState | 
    UML:Exception | UML15OCL.Types.SetType | 
    UML:ProgrammingLanguageDataType | UML:Primitive | UML15OCL.Types.CollectionType | 
    UML:Node | UML15OCL.Types.SequenceType | UML:AssociationClass)* >

<!ELEMENT UML:StructuralFeature (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Feature.ownerScope | UML:StructuralFeature.multiplicity | 
    UML:StructuralFeature.changeability | UML:StructuralFeature.targetScope | 
    UML:StructuralFeature.ordering | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Feature.owner | 
    UML:StructuralFeature.type | XMI.extension)* >
<!ATTLIST UML:StructuralFeature
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   owner IDREFS #IMPLIED
   type IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   ownerScope (instance|classifier) #IMPLIED
   multiplicity IDREFS #IMPLIED
   changeability (changeable|frozen|addOnly) #IMPLIED
   targetScope (instance|classifier) #IMPLIED
   ordering (unordered|ordered) #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:TaggedValue.dataValue (#PCDATA | XMI.reference)* >

<!ELEMENT UML:TaggedValue.modelElement (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:TaggedValue.type (UML:TagDefinition)* >

<!ELEMENT UML:TaggedValue.referenceValue (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:TaggedValue (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:TaggedValue.dataValue | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:TaggedValue.modelElement | UML:TaggedValue.type | UML:TaggedValue.referenceValue | 
    XMI.extension)* >
<!ATTLIST UML:TaggedValue
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   modelElement IDREFS #IMPLIED
   type IDREFS #IMPLIED
   referenceValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   dataValue CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Core (UML15OCL.Types.BagType | 
    UML:SubmachineState | UML:LiteralValueAction | UML:TemplateArgument | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:BroadcastSignalAction | UML:Variable | UML:CallProcedureAction | UML:CallAction | 
    UML:JumpAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | UML:Clause | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML:FinalState | UML15OCL.Expressions.FeatureCallExp | 
    UML:DataType | UML15OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.StringLiteralExp | UML:ReadLinkAction | UML:ExtensionPoint | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pseudostate | 
    UML:Pin | UML15OCL.Expressions.AttributeCallExp | UML:Element | 
    UML:DataFlow | UML:Attribute | UML:Constraint | 
    UML:ReadIsClassifiedObjectAction | UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML15OCL.Expressions.IterateExp | 
    UML:WriteAttributeAction | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML15OCL.Expressions.UnspecifiedValueExp | UML:TestIdentityAction | UML:EnumerationLiteral | 
    UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:Component | 
    UML:CreateObjectAction | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:TemplateParameter | UML:ClearAttributeAction | 
    UML:BehavioralFeature | UML:NullAction | UML:Exception | UML:CallState | 
    UML:Transition | UML:ProgrammingLanguageDataType | UML:Primitive | 
    UML:ActionState | UML:State | UML15OCL.Expressions.TupleLiteralExp | 
    UML:SynchState | UML:ApplyFunctionAction | UML:Action | 
    UML:Interaction | UML:CallOperationAction | 
    UML:AsynchronousInvocationAction | UML15OCL.Expressions.CollectionItem | 
    UML15OCL.Types.TupleType | UML:InteractionInstanceSet | UML:Event | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | 
    UML:Extend | UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:ElementResidence | UML:StateMachine | 
    UML:Procedure | UML15OCL.Expressions.VariableExp | UML:Stereotype | 
    UML:Relationship | UML:UseCase | UML:GeneralizableElement | UML:Comment | 
    UML:AttributeAction | UML:Signal | UML15OCL.Types.VoidType | 
    UML:ArgumentSpecification | UML:Permission | UML:Instance | UML:UseCaseInstance | 
    UML:Namespace | UML:Association | UML:CollectionAction | 
    UML15OCL.Expressions.LiteralExp | UML:Usage | UML:SubactivityState | 
    UML:PresentationElement | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction | XMI.extension)* >
<!ATTLIST UML:Core
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Model (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | 
    UML:Package.elementImport | XMI.extension)* >
<!ATTLIST UML:Model
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   elementImport IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ElementImport.visibility EMPTY>
<!ATTLIST UML:ElementImport.visibility
   xmi.value (public|protected|private|package) #REQUIRED>

<!ELEMENT UML:ElementImport.alias (#PCDATA | XMI.reference)* >

<!ELEMENT UML:ElementImport.isSpecification (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:ElementImport.package (UML:Model | 
    UML:Subsystem | UML:Package)* >

<!ELEMENT UML:ElementImport.importedElement (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:ElementImport (UML:ElementImport.visibility | 
    UML:ElementImport.alias | UML:ElementImport.isSpecification | 
    UML:ElementImport.package | UML:ElementImport.importedElement | XMI.extension)* >
<!ATTLIST UML:ElementImport
   package IDREFS #IMPLIED
   importedElement IDREFS #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   alias CDATA #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Package.elementImport (UML:ElementImport)* >

<!ELEMENT UML:Package (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | 
    UML:Package.elementImport | XMI.extension)* >
<!ATTLIST UML:Package
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   elementImport IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Subsystem.isInstantiable (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:Subsystem (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:Subsystem.isInstantiable | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:GeneralizableElement.generalization | 
    UML:Namespace.ownedElement | UML:Package.elementImport | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML:Subsystem
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   elementImport IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   isInstantiable CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Model_Management (UML:ElementImport | 
    UML:Model | UML:Subsystem | UML:Package | XMI.extension)* >
<!ATTLIST UML:Model_Management
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Types.OclLibrary.model (UML:Model | 
    UML:Subsystem | UML:Package | OCL.CommonModel.Package)* >

<!ELEMENT OCL.Types.OclLibrary (OCL.Types.OclLibrary.model | 
    XMI.extension)* >
<!ATTLIST OCL.Types.OclLibrary
   model IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Types.VoidType (XMI.extension)* >
<!ATTLIST OCL.Types.VoidType
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Types.BagType (
    OCL.Types.CollectionType.elementType | XMI.extension)* >
<!ATTLIST OCL.Types.BagType
   elementType IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Types.SequenceType (
    OCL.Types.CollectionType.elementType | XMI.extension)* >
<!ATTLIST OCL.Types.SequenceType
   elementType IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Types.OclMessageType.referredOperation (
    UML:Operation | OCL.CommonModel.Operation)* >

<!ELEMENT OCL.Types.OclMessageType.referredSignal (
    OCL.CommonModel.Signal | UML:Signal | UML:Exception)* >

<!ELEMENT OCL.Types.OclMessageType (
    OCL.Types.OclMessageType.referredOperation | OCL.Types.OclMessageType.referredSignal | 
    XMI.extension)* >
<!ATTLIST OCL.Types.OclMessageType
   referredOperation IDREFS #IMPLIED
   referredSignal IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Types.TupleType (XMI.extension)* >
<!ATTLIST OCL.Types.TupleType
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Types.CollectionType.elementType (
    OCL.Types.OrderedSetType | UML15OCL.Types.BagType | OCL.CommonModel.Signal | 
    OCL.Types.TupleType | UML:Classifier | UML:Artifact | 
    OCL.CommonModel.Enumeration | OCL.Types.BagType | UML:ClassifierRole | 
    UML15OCL.Types.TupleType | UML:Actor | UML15OCL.Types.OrderedSetType | 
    OCL.CommonModel.Primitive | UML:UseCase | UML15OCL.Types.OclMessageType | 
    OCL.Types.SetType | OCL.CommonModel.AssociationClass | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | OCL.Types.VoidType | 
    OCL.Types.OclMessageType | UML:ClassifierInState | OCL.Types.CollectionType | 
    UML:Exception | UML15OCL.Types.SetType | OCL.Types.SequenceType | 
    UML15OCL.Types.CollectionType | UML:Primitive | UML:ProgrammingLanguageDataType | 
    OCL.CommonModel.Classifier | UML15OCL.Types.SequenceType | UML:Node | 
    UML:AssociationClass | OCL.CommonModel.DataType)* >

<!ELEMENT OCL.Types.CollectionType (
    OCL.Types.CollectionType.elementType | XMI.extension)* >
<!ATTLIST OCL.Types.CollectionType
   elementType IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Types.SetType (
    OCL.Types.CollectionType.elementType | XMI.extension)* >
<!ATTLIST OCL.Types.SetType
   elementType IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Types.OrderedSetType (
    OCL.Types.CollectionType.elementType | XMI.extension)* >
<!ATTLIST OCL.Types.OrderedSetType
   elementType IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Types (OCL.Types.OrderedSetType | 
    UML15OCL.Types.VoidType | UML15OCL.Types.BagType | OCL.Types.VoidType | 
    OCL.Types.OclMessageType | OCL.Types.TupleType | UML15OCL.Types.OclLibrary | 
    OCL.Types.CollectionType | OCL.Types.BagType | OCL.Types.OclLibrary | 
    UML15OCL.Types.TupleType | UML15OCL.Types.SetType | OCL.Types.SequenceType | 
    UML15OCL.Types.OrderedSetType | UML15OCL.Types.CollectionType | 
    UML15OCL.Types.OclMessageType | OCL.Types.SetType | UML15OCL.Types.SequenceType | 
    XMI.extension)* >
<!ATTLIST OCL.Types
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.primitivetypes (XMI.extension)* >
<!ATTLIST OCL.primitivetypes
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.IfExp.thenExpression (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.IfExp.elseExpression (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.IfExp.condition (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.IfExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.IfExp.thenExpression | OCL.Expressions.IfExp.elseExpression | 
    OCL.Expressions.IfExp.condition | XMI.extension)* >
<!ATTLIST OCL.Expressions.IfExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   thenExpression IDREFS #IMPLIED
   elseExpression IDREFS #IMPLIED
   condition IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.OclMessageExp.target (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.OclMessageExp.arguments (
    OCL.Expressions.OclMessageArg | UML15OCL.Expressions.OclMessageArg)* >

<!ELEMENT OCL.Expressions.OclMessageExp.calledOperation (
    UML:Operation | OCL.CommonModel.Operation)* >

<!ELEMENT OCL.Expressions.OclMessageExp.sentSignal (
    OCL.CommonModel.Signal | UML:Signal | UML:Exception)* >

<!ELEMENT OCL.Expressions.OclMessageExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.OclMessageExp.target | OCL.Expressions.OclMessageExp.arguments | 
    OCL.Expressions.OclMessageExp.calledOperation | OCL.Expressions.OclMessageExp.sentSignal | 
    XMI.extension)* >
<!ATTLIST OCL.Expressions.OclMessageExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   target IDREFS #IMPLIED
   arguments IDREFS #IMPLIED
   calledOperation IDREFS #IMPLIED
   sentSignal IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.CollectionLiteralPart.type (
    OCL.Types.OrderedSetType | UML15OCL.Types.BagType | OCL.CommonModel.Signal | 
    OCL.Types.TupleType | UML:Classifier | UML:Artifact | 
    OCL.CommonModel.Enumeration | OCL.Types.BagType | UML:ClassifierRole | 
    UML15OCL.Types.TupleType | UML:Actor | UML15OCL.Types.OrderedSetType | 
    OCL.CommonModel.Primitive | UML:UseCase | UML15OCL.Types.OclMessageType | 
    OCL.Types.SetType | OCL.CommonModel.AssociationClass | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | OCL.Types.VoidType | 
    OCL.Types.OclMessageType | UML:ClassifierInState | OCL.Types.CollectionType | 
    UML:Exception | UML15OCL.Types.SetType | OCL.Types.SequenceType | 
    UML15OCL.Types.CollectionType | UML:Primitive | UML:ProgrammingLanguageDataType | 
    OCL.CommonModel.Classifier | UML15OCL.Types.SequenceType | UML:Node | 
    UML:AssociationClass | OCL.CommonModel.DataType)* >

<!ELEMENT OCL.Expressions.CollectionLiteralPart (
    OCL.Expressions.CollectionLiteralPart.type | XMI.extension)* >
<!ATTLIST OCL.Expressions.CollectionLiteralPart
   type IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.LetExp.in (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.LetExp.variable (
    OCL.Expressions.VariableDeclaration | UML15OCL.Expressions.VariableDeclaration)* >

<!ELEMENT OCL.Expressions.LetExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.LetExp.in | OCL.Expressions.LetExp.variable | XMI.extension)* >
<!ATTLIST OCL.Expressions.LetExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   in IDREFS #IMPLIED
   variable IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.OclOperationWithTypeArgExp.typeArgument (
    OCL.Types.OrderedSetType | UML15OCL.Types.BagType | OCL.CommonModel.Signal | 
    OCL.Types.TupleType | UML:Classifier | UML:Artifact | 
    OCL.CommonModel.Enumeration | OCL.Types.BagType | UML:ClassifierRole | 
    UML15OCL.Types.TupleType | UML:Actor | UML15OCL.Types.OrderedSetType | 
    OCL.CommonModel.Primitive | UML:UseCase | UML15OCL.Types.OclMessageType | 
    OCL.Types.SetType | OCL.CommonModel.AssociationClass | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | OCL.Types.VoidType | 
    OCL.Types.OclMessageType | UML:ClassifierInState | OCL.Types.CollectionType | 
    UML:Exception | UML15OCL.Types.SetType | OCL.Types.SequenceType | 
    UML15OCL.Types.CollectionType | UML:Primitive | UML:ProgrammingLanguageDataType | 
    OCL.CommonModel.Classifier | UML15OCL.Types.SequenceType | UML:Node | 
    UML:AssociationClass | OCL.CommonModel.DataType)* >

<!ELEMENT OCL.Expressions.OclOperationWithTypeArgExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.PropertyCallExp.source | 
    OCL.Expressions.OclOperationWithTypeArgExp.typeArgument | XMI.extension)* >
<!ATTLIST OCL.Expressions.OclOperationWithTypeArgExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   typeArgument IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.CollectionRange.first (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.CollectionRange.last (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.CollectionRange (
    OCL.Expressions.CollectionLiteralPart.type | OCL.Expressions.CollectionRange.first | 
    OCL.Expressions.CollectionRange.last | XMI.extension)* >
<!ATTLIST OCL.Expressions.CollectionRange
   type IDREFS #IMPLIED
   first IDREFS #IMPLIED
   last IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.StringLiteralExp.stringSymbol (
    #PCDATA | XMI.reference)* >

<!ELEMENT OCL.Expressions.StringLiteralExp (
    OCL.Expressions.StringLiteralExp.stringSymbol | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | XMI.extension)* >
<!ATTLIST OCL.Expressions.StringLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   stringSymbol CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.AssociationClassCallExp.referredAssociationClass (
    OCL.CommonModel.AssociationClass | UML:AssociationClass)* >

<!ELEMENT OCL.Expressions.AssociationClassCallExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.PropertyCallExp.source | OCL.Expressions.NavigationCallExp.qualifiers | 
    OCL.Expressions.NavigationCallExp.navigationSource | 
    OCL.Expressions.AssociationClassCallExp.referredAssociationClass | XMI.extension)* >
<!ATTLIST OCL.Expressions.AssociationClassCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   qualifiers IDREFS #IMPLIED
   navigationSource IDREFS #IMPLIED
   referredAssociationClass IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.OclExpressionFactory (
    XMI.extension)* >
<!ATTLIST OCL.Expressions.OclExpressionFactory
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.UnspecifiedValueExp.type (
    OCL.Types.OrderedSetType | UML15OCL.Types.BagType | OCL.CommonModel.Signal | 
    OCL.Types.TupleType | UML:Classifier | UML:Artifact | 
    OCL.CommonModel.Enumeration | OCL.Types.BagType | UML:ClassifierRole | 
    UML15OCL.Types.TupleType | UML:Actor | UML15OCL.Types.OrderedSetType | 
    OCL.CommonModel.Primitive | UML:UseCase | UML15OCL.Types.OclMessageType | 
    OCL.Types.SetType | OCL.CommonModel.AssociationClass | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | OCL.Types.VoidType | 
    OCL.Types.OclMessageType | UML:ClassifierInState | OCL.Types.CollectionType | 
    UML:Exception | UML15OCL.Types.SetType | OCL.Types.SequenceType | 
    UML15OCL.Types.CollectionType | UML:Primitive | UML:ProgrammingLanguageDataType | 
    OCL.CommonModel.Classifier | UML15OCL.Types.SequenceType | UML:Node | 
    UML:AssociationClass | OCL.CommonModel.DataType)* >

<!ELEMENT OCL.Expressions.UnspecifiedValueExp (
    OCL.Expressions.UnspecifiedValueExp.type | XMI.extension)* >
<!ATTLIST OCL.Expressions.UnspecifiedValueExp
   type IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.PropertyCallExp.source (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.PropertyCallExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.PropertyCallExp.source | XMI.extension)* >
<!ATTLIST OCL.Expressions.PropertyCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.ModelPropertyCallExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.PropertyCallExp.source | XMI.extension)* >
<!ATTLIST OCL.Expressions.ModelPropertyCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.OclExpression.appliedProperty (
    UML15OCL.Expressions.PropertyCallExp | OCL.Expressions.PropertyCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.AttributeCallExp | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.LoopExp | UML15OCL.Expressions.OperationCallExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.IterateExp | 
    OCL.Expressions.IteratorExp | UML15OCL.Expressions.ModelPropertyCallExp | 
    OCL.Expressions.OperationCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.ModelPropertyCallExp | 
    UML15OCL.Expressions.AssociationEndCallExp | UML15OCL.Expressions.IteratorExp | 
    OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.OclOperationWithTypeArgExp)* >

<!ELEMENT OCL.Expressions.OclExpression.loopExp (
    UML15OCL.Expressions.LoopExp | UML15OCL.Expressions.IterateExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.IterateExp | OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.IteratorExp)* >

<!ELEMENT OCL.Expressions.OclExpression.initializedVariable (
    OCL.Expressions.VariableDeclaration | UML15OCL.Expressions.VariableDeclaration)* >

<!ELEMENT OCL.Expressions.OclExpression.type (
    OCL.Types.OrderedSetType | UML15OCL.Types.BagType | OCL.CommonModel.Signal | 
    OCL.Types.TupleType | UML:Classifier | UML:Artifact | 
    OCL.CommonModel.Enumeration | OCL.Types.BagType | UML:ClassifierRole | 
    UML15OCL.Types.TupleType | UML:Actor | UML15OCL.Types.OrderedSetType | 
    OCL.CommonModel.Primitive | UML:UseCase | UML15OCL.Types.OclMessageType | 
    OCL.Types.SetType | OCL.CommonModel.AssociationClass | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | OCL.Types.VoidType | 
    OCL.Types.OclMessageType | UML:ClassifierInState | OCL.Types.CollectionType | 
    UML:Exception | UML15OCL.Types.SetType | OCL.Types.SequenceType | 
    UML15OCL.Types.CollectionType | UML:Primitive | UML:ProgrammingLanguageDataType | 
    OCL.CommonModel.Classifier | UML15OCL.Types.SequenceType | UML:Node | 
    UML:AssociationClass | OCL.CommonModel.DataType)* >

<!ELEMENT OCL.Expressions.OclExpression (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | XMI.extension)* >
<!ATTLIST OCL.Expressions.OclExpression
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.LiteralExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | XMI.extension)* >
<!ATTLIST OCL.Expressions.LiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.VariableExp.referredVariable (
    OCL.Expressions.VariableDeclaration | UML15OCL.Expressions.VariableDeclaration)* >

<!ELEMENT OCL.Expressions.VariableExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.VariableExp.referredVariable | XMI.extension)* >
<!ATTLIST OCL.Expressions.VariableExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   referredVariable IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.LoopExp.body (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.LoopExp.iterators (
    OCL.Expressions.VariableDeclaration | UML15OCL.Expressions.VariableDeclaration)* >

<!ELEMENT OCL.Expressions.LoopExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.PropertyCallExp.source | OCL.Expressions.LoopExp.body | 
    OCL.Expressions.LoopExp.iterators | XMI.extension)* >
<!ATTLIST OCL.Expressions.LoopExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   body IDREFS #IMPLIED
   iterators IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.RealLiteralExp.realSymbol (#PCDATA | 
    XMI.reference)* >

<!ELEMENT OCL.Expressions.RealLiteralExp (
    OCL.Expressions.RealLiteralExp.realSymbol | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | XMI.extension)* >
<!ATTLIST OCL.Expressions.RealLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   realSymbol CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.FeatureCallExp.srcType (
    OCL.Types.OrderedSetType | UML15OCL.Types.BagType | OCL.CommonModel.Signal | 
    OCL.Types.TupleType | UML:Classifier | UML:Artifact | 
    OCL.CommonModel.Enumeration | OCL.Types.BagType | UML:ClassifierRole | 
    UML15OCL.Types.TupleType | UML:Actor | UML15OCL.Types.OrderedSetType | 
    OCL.CommonModel.Primitive | UML:UseCase | UML15OCL.Types.OclMessageType | 
    OCL.Types.SetType | OCL.CommonModel.AssociationClass | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | OCL.Types.VoidType | 
    OCL.Types.OclMessageType | UML:ClassifierInState | OCL.Types.CollectionType | 
    UML:Exception | UML15OCL.Types.SetType | OCL.Types.SequenceType | 
    UML15OCL.Types.CollectionType | UML:Primitive | UML:ProgrammingLanguageDataType | 
    OCL.CommonModel.Classifier | UML15OCL.Types.SequenceType | UML:Node | 
    UML:AssociationClass | OCL.CommonModel.DataType)* >

<!ELEMENT OCL.Expressions.FeatureCallExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.PropertyCallExp.source | OCL.Expressions.FeatureCallExp.srcType | 
    XMI.extension)* >
<!ATTLIST OCL.Expressions.FeatureCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   srcType IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.CollectionLiteralExp.kind EMPTY>
<!ATTLIST OCL.Expressions.CollectionLiteralExp.kind
   xmi.value (Collection|Bag|Set|Sequence) #REQUIRED>

<!ELEMENT OCL.Expressions.CollectionLiteralExp.parts (
    UML15OCL.Expressions.CollectionRange | OCL.Expressions.CollectionLiteralPart | 
    OCL.Expressions.CollectionRange | OCL.Expressions.CollectionItem | 
    UML15OCL.Expressions.CollectionLiteralPart | UML15OCL.Expressions.CollectionItem)* >

<!ELEMENT OCL.Expressions.CollectionLiteralExp (
    OCL.Expressions.CollectionLiteralExp.kind | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.CollectionLiteralExp.parts | 
    XMI.extension)* >
<!ATTLIST OCL.Expressions.CollectionLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   parts IDREFS #IMPLIED
   kind (Collection|Bag|Set|Sequence) #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.IteratorExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.PropertyCallExp.source | OCL.Expressions.LoopExp.body | 
    OCL.Expressions.LoopExp.iterators | XMI.extension)* >
<!ATTLIST OCL.Expressions.IteratorExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   body IDREFS #IMPLIED
   iterators IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.IntegerLiteralExp.integerSymbol (
    #PCDATA | XMI.reference)* >

<!ELEMENT OCL.Expressions.IntegerLiteralExp (
    OCL.Expressions.IntegerLiteralExp.integerSymbol | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | XMI.extension)* >
<!ATTLIST OCL.Expressions.IntegerLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   integerSymbol CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.PrimitiveLiteralExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | XMI.extension)* >
<!ATTLIST OCL.Expressions.PrimitiveLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.VariableDeclaration.initExpression (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.VariableDeclaration.variableExp (
    OCL.Expressions.VariableExp | UML15OCL.Expressions.VariableExp)* >

<!ELEMENT OCL.Expressions.VariableDeclaration.loopExpr (
    UML15OCL.Expressions.LoopExp | UML15OCL.Expressions.IterateExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.IterateExp | OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.IteratorExp)* >

<!ELEMENT OCL.Expressions.VariableDeclaration.baseExp (
    UML15OCL.Expressions.IterateExp | OCL.Expressions.IterateExp)* >

<!ELEMENT OCL.Expressions.VariableDeclaration.type (
    OCL.Types.OrderedSetType | UML15OCL.Types.BagType | OCL.CommonModel.Signal | 
    OCL.Types.TupleType | UML:Classifier | UML:Artifact | 
    OCL.CommonModel.Enumeration | OCL.Types.BagType | UML:ClassifierRole | 
    UML15OCL.Types.TupleType | UML:Actor | UML15OCL.Types.OrderedSetType | 
    OCL.CommonModel.Primitive | UML:UseCase | UML15OCL.Types.OclMessageType | 
    OCL.Types.SetType | OCL.CommonModel.AssociationClass | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | OCL.Types.VoidType | 
    OCL.Types.OclMessageType | UML:ClassifierInState | OCL.Types.CollectionType | 
    UML:Exception | UML15OCL.Types.SetType | OCL.Types.SequenceType | 
    UML15OCL.Types.CollectionType | UML:Primitive | UML:ProgrammingLanguageDataType | 
    OCL.CommonModel.Classifier | UML15OCL.Types.SequenceType | UML:Node | 
    UML:AssociationClass | OCL.CommonModel.DataType)* >

<!ELEMENT OCL.Expressions.VariableDeclaration (
    OCL.Expressions.VariableDeclaration.initExpression | OCL.Expressions.VariableDeclaration.variableExp | 
    OCL.Expressions.VariableDeclaration.loopExpr | OCL.Expressions.VariableDeclaration.baseExp | 
    OCL.Expressions.VariableDeclaration.type | XMI.extension)* >
<!ATTLIST OCL.Expressions.VariableDeclaration
   initExpression IDREFS #IMPLIED
   variableExp IDREFS #IMPLIED
   loopExpr IDREFS #IMPLIED
   baseExp IDREFS #IMPLIED
   type IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.NumericLiteralExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | XMI.extension)* >
<!ATTLIST OCL.Expressions.NumericLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.AssociationEndCallExp.referredAssociationEnd (
    OCL.CommonModel.AssociationEnd | UML:AssociationEndRole | UML:AssociationEnd)* >

<!ELEMENT OCL.Expressions.AssociationEndCallExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.PropertyCallExp.source | OCL.Expressions.NavigationCallExp.qualifiers | 
    OCL.Expressions.NavigationCallExp.navigationSource | 
    OCL.Expressions.AssociationEndCallExp.referredAssociationEnd | XMI.extension)* >
<!ATTLIST OCL.Expressions.AssociationEndCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   qualifiers IDREFS #IMPLIED
   navigationSource IDREFS #IMPLIED
   referredAssociationEnd IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.AttributeCallExp.referredAttribute (
    OCL.CommonModel.Attribute | UML:Attribute)* >

<!ELEMENT OCL.Expressions.AttributeCallExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.PropertyCallExp.source | OCL.Expressions.FeatureCallExp.srcType | 
    OCL.Expressions.AttributeCallExp.referredAttribute | XMI.extension)* >
<!ATTLIST OCL.Expressions.AttributeCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   srcType IDREFS #IMPLIED
   referredAttribute IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.NavigationCallExp.qualifiers (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.NavigationCallExp.navigationSource (
    OCL.CommonModel.AssociationEnd | UML:AssociationEndRole | UML:AssociationEnd)* >

<!ELEMENT OCL.Expressions.NavigationCallExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.PropertyCallExp.source | OCL.Expressions.NavigationCallExp.qualifiers | 
    OCL.Expressions.NavigationCallExp.navigationSource | XMI.extension)* >
<!ATTLIST OCL.Expressions.NavigationCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   qualifiers IDREFS #IMPLIED
   navigationSource IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.OperationCallExp.arguments (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.OperationCallExp.referredOperation (
    UML:Operation | OCL.CommonModel.Operation)* >

<!ELEMENT OCL.Expressions.OperationCallExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.PropertyCallExp.source | OCL.Expressions.FeatureCallExp.srcType | 
    OCL.Expressions.OperationCallExp.arguments | OCL.Expressions.OperationCallExp.referredOperation | 
    XMI.extension)* >
<!ATTLIST OCL.Expressions.OperationCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   srcType IDREFS #IMPLIED
   arguments IDREFS #IMPLIED
   referredOperation IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.ExpressionInOcl.bodyExpression (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.ExpressionInOcl.contextualClassifier (
    OCL.Types.OrderedSetType | UML15OCL.Types.BagType | OCL.CommonModel.Signal | 
    OCL.Types.TupleType | UML:Classifier | UML:Artifact | 
    OCL.CommonModel.Enumeration | OCL.Types.BagType | UML:ClassifierRole | 
    UML15OCL.Types.TupleType | UML:Actor | UML15OCL.Types.OrderedSetType | 
    OCL.CommonModel.Primitive | UML:UseCase | UML15OCL.Types.OclMessageType | 
    OCL.Types.SetType | OCL.CommonModel.AssociationClass | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | OCL.Types.VoidType | 
    OCL.Types.OclMessageType | UML:ClassifierInState | OCL.Types.CollectionType | 
    UML:Exception | UML15OCL.Types.SetType | OCL.Types.SequenceType | 
    UML15OCL.Types.CollectionType | UML:Primitive | UML:ProgrammingLanguageDataType | 
    OCL.CommonModel.Classifier | UML15OCL.Types.SequenceType | UML:Node | 
    UML:AssociationClass | OCL.CommonModel.DataType)* >

<!ELEMENT OCL.Expressions.ExpressionInOcl (
    OCL.Expressions.ExpressionInOcl.bodyExpression | OCL.Expressions.ExpressionInOcl.contextualClassifier | 
    XMI.extension)* >
<!ATTLIST OCL.Expressions.ExpressionInOcl
   bodyExpression IDREFS #IMPLIED
   contextualClassifier IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.BooleanLiteralExp.booleanSymbol (
    #PCDATA | XMI.reference)* >

<!ELEMENT OCL.Expressions.BooleanLiteralExp (
    OCL.Expressions.BooleanLiteralExp.booleanSymbol | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | XMI.extension)* >
<!ATTLIST OCL.Expressions.BooleanLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   booleanSymbol CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.CollectionItem.item (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.CollectionItem (
    OCL.Expressions.CollectionLiteralPart.type | OCL.Expressions.CollectionItem.item | XMI.extension)* >
<!ATTLIST OCL.Expressions.CollectionItem
   type IDREFS #IMPLIED
   item IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.OclMessageArg.unspecified (
    UML15OCL.Expressions.UnspecifiedValueExp | OCL.Expressions.UnspecifiedValueExp)* >

<!ELEMENT OCL.Expressions.OclMessageArg.expression (
    OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.VariableExp | OCL.Expressions.LiteralExp | 
    OCL.Expressions.IterateExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.FeatureCallExp | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.AttributeCallExp | 
    OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.IntegerLiteralExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.IteratorExp | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    OCL.Expressions.TupleLiteralExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML15OCL.Expressions.OclMessageExp | 
    UML15OCL.Expressions.BooleanLiteralExp | OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.FeatureCallExp | OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.OclExpression | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.CollectionLiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.LiteralExp)* >

<!ELEMENT OCL.Expressions.OclMessageArg (
    OCL.Expressions.OclMessageArg.unspecified | OCL.Expressions.OclMessageArg.expression | 
    XMI.extension)* >
<!ATTLIST OCL.Expressions.OclMessageArg
   unspecified IDREFS #IMPLIED
   expression IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.EnumLiteralExp.referredEnumLiteral (
    OCL.CommonModel.EnumerationLiteral | UML:EnumerationLiteral)* >

<!ELEMENT OCL.Expressions.EnumLiteralExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.EnumLiteralExp.referredEnumLiteral | XMI.extension)* >
<!ATTLIST OCL.Expressions.EnumLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   referredEnumLiteral IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.IterateExp.result (
    OCL.Expressions.VariableDeclaration | UML15OCL.Expressions.VariableDeclaration)* >

<!ELEMENT OCL.Expressions.IterateExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.PropertyCallExp.source | OCL.Expressions.LoopExp.body | 
    OCL.Expressions.LoopExp.iterators | OCL.Expressions.IterateExp.result | XMI.extension)* >
<!ATTLIST OCL.Expressions.IterateExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   body IDREFS #IMPLIED
   iterators IDREFS #IMPLIED
   result IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions.TupleLiteralExp.tuplePart (
    OCL.Expressions.VariableDeclaration | UML15OCL.Expressions.VariableDeclaration)* >

<!ELEMENT OCL.Expressions.TupleLiteralExp (
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.TupleLiteralExp.tuplePart | XMI.extension)* >
<!ATTLIST OCL.Expressions.TupleLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   tuplePart IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.Expressions (OCL.Expressions.RealLiteralExp | 
    UML15OCL.Expressions.AttributeCallExp | OCL.Expressions.ExpressionInOcl | 
    OCL.Expressions.VariableExp | OCL.Expressions.IterateExp | 
    OCL.Expressions.LiteralExp | UML15OCL.Expressions.CollectionItem | 
    OCL.Expressions.CollectionLiteralPart | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | OCL.Expressions.OclMessageExp | 
    OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    OCL.Expressions.CollectionRange | OCL.Expressions.FeatureCallExp | 
    OCL.Expressions.CollectionItem | UML15OCL.Expressions.OclExpression | 
    UML15OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.OclExpressionFactory | 
    OCL.Expressions.StringLiteralExp | OCL.Expressions.AttributeCallExp | 
    UML15OCL.Expressions.IntegerLiteralExp | OCL.Expressions.IntegerLiteralExp | 
    OCL.Expressions.UnspecifiedValueExp | OCL.Expressions.EnumLiteralExp | 
    OCL.Expressions.AssociationClassCallExp | OCL.Expressions.OclExpressionFactory | 
    UML15OCL.Expressions.LetExp | UML15OCL.Expressions.IfExp | 
    UML15OCL.Expressions.IterateExp | UML15OCL.Expressions.CollectionLiteralPart | 
    UML15OCL.Expressions.OclMessageArg | UML15OCL.Expressions.IteratorExp | 
    UML15OCL.Expressions.CollectionRange | OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.PropertyCallExp | OCL.Expressions.VariableDeclaration | 
    UML15OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.TupleLiteralExp | 
    UML15OCL.Expressions.UnspecifiedValueExp | OCL.Expressions.LetExp | 
    UML15OCL.Expressions.VariableExp | OCL.Expressions.NumericLiteralExp | 
    OCL.Expressions.PrimitiveLiteralExp | OCL.Expressions.IfExp | 
    UML15OCL.Expressions.EnumLiteralExp | UML15OCL.Expressions.ModelPropertyCallExp | 
    OCL.Expressions.OperationCallExp | OCL.Expressions.LoopExp | 
    OCL.Expressions.OclOperationWithTypeArgExp | OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.ExpressionInOcl | UML15OCL.Expressions.OclOperationWithTypeArgExp | 
    UML15OCL.Expressions.OclMessageExp | UML15OCL.Expressions.BooleanLiteralExp | 
    OCL.Expressions.AssociationEndCallExp | UML15OCL.Expressions.FeatureCallExp | 
    UML15OCL.Expressions.VariableDeclaration | OCL.Expressions.OclExpression | 
    OCL.Expressions.BooleanLiteralExp | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML15OCL.Expressions.CollectionLiteralExp | 
    OCL.Expressions.IteratorExp | OCL.Expressions.OclMessageArg | 
    OCL.Expressions.CollectionLiteralExp | UML15OCL.Expressions.LiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | XMI.extension)* >
<!ATTLIST OCL.Expressions
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.TypedElement (XMI.extension)* >
<!ATTLIST OCL.CommonModel.TypedElement
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.DataType (XMI.extension)* >
<!ATTLIST OCL.CommonModel.DataType
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.ModelElement (XMI.extension)* >
<!ATTLIST OCL.CommonModel.ModelElement
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.Enumeration (XMI.extension)* >
<!ATTLIST OCL.CommonModel.Enumeration
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.Attribute (XMI.extension)* >
<!ATTLIST OCL.CommonModel.Attribute
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.Feature (XMI.extension)* >
<!ATTLIST OCL.CommonModel.Feature
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.EnumerationLiteral (XMI.extension)* >
<!ATTLIST OCL.CommonModel.EnumerationLiteral
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.AssociationClass (XMI.extension)* >
<!ATTLIST OCL.CommonModel.AssociationClass
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.Constraint (XMI.extension)* >
<!ATTLIST OCL.CommonModel.Constraint
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.Classifier (XMI.extension)* >
<!ATTLIST OCL.CommonModel.Classifier
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.Package (XMI.extension)* >
<!ATTLIST OCL.CommonModel.Package
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.Multiplicity (XMI.extension)* >
<!ATTLIST OCL.CommonModel.Multiplicity
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.AssociationEnd.qualifiersA (
    OCL.CommonModel.Attribute | UML:Attribute)* >

<!ELEMENT OCL.CommonModel.AssociationEnd (
    OCL.CommonModel.AssociationEnd.qualifiersA | XMI.extension)* >
<!ATTLIST OCL.CommonModel.AssociationEnd
   qualifiersA IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.BooleanExpression (XMI.extension)* >
<!ATTLIST OCL.CommonModel.BooleanExpression
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.Primitive (XMI.extension)* >
<!ATTLIST OCL.CommonModel.Primitive
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.Operation (XMI.extension)* >
<!ATTLIST OCL.CommonModel.Operation
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.Expression (XMI.extension)* >
<!ATTLIST OCL.CommonModel.Expression
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.Signal (XMI.extension)* >
<!ATTLIST OCL.CommonModel.Signal
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.Parameter (XMI.extension)* >
<!ATTLIST OCL.CommonModel.Parameter
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.Reception (XMI.extension)* >
<!ATTLIST OCL.CommonModel.Reception
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel.NonOclClassifier (XMI.extension)* >
<!ATTLIST OCL.CommonModel.NonOclClassifier
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL.CommonModel (OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    OCL.Expressions.CollectionLiteralPart | UML:LoopAction | UML:ReadLinkObjectEndAction | 
    UML15OCL.Types.OrderedSetType | UML:Model | UML:Stimulus | UML:AssociationEnd | 
    UML:LinkAction | UML:Interface | UML15OCL.Expressions.OclExpression | 
    UML:Class | UML:Subsystem | OCL.Types.OclMessageType | 
    UML:StubState | OCL.Expressions.UnspecifiedValueExp | 
    UML15OCL.Types.SetType | UML:Operation | UML15OCL.Types.CollectionType | 
    OCL.CommonModel.Classifier | UML:Reception | UML:Parameter | UML:Package | 
    UML:ActivityGraph | OCL.Types.OrderedSetType | UML:Guard | 
    OCL.CommonModel.Signal | UML:Variable | UML:BroadcastSignalAction | 
    UML:JumpAction | UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    OCL.CommonModel.Reception | UML:ReadLinkObjectQualifierAction | 
    UML15OCL.Expressions.EnumLiteralExp | OCL.CommonModel.Parameter | 
    UML15OCL.Expressions.ExpressionInOcl | UML:Generalization | 
    UML15OCL.Expressions.BooleanLiteralExp | UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | 
    UML:FinalState | UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ReadLinkAction | UML:ExtensionPoint | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:BooleanExpression | 
    UML:ReadIsClassifiedObjectAction | UML:Constraint | OCL.Types.BagType | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:ProcedureExpression | 
    OCL.CommonModel.AssociationClass | OCL.Types.SetType | UML:WriteLinkAction | 
    OCL.Expressions.CollectionRange | OCL.Expressions.FeatureCallExp | 
    OCL.Expressions.CollectionItem | UML:Enumeration | UML:Binding | 
    OCL.Types.SequenceType | UML:Expression | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    OCL.Types.TupleType | OCL.Expressions.LetExp | UML:EnumerationLiteral | 
    UML:Artifact | UML:Method | OCL.CommonModel.Primitive | 
    UML:ObjectFlowState | OCL.CommonModel.Operation | 
    OCL.CommonModel.Constraint | UML:DestroyObjectAction | 
    OCL.Expressions.OclOperationWithTypeArgExp | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | OCL.Types.VoidType | UML:Component | 
    UML:CreateObjectAction | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    OCL.Expressions.OclExpression | UML:RemoveAttributeValueAction | 
    UML:ClearAttributeAction | OCL.CommonModel.Package | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | 
    OCL.CommonModel.AssociationEnd | UML:Transition | UML:ProgrammingLanguageDataType | 
    UML:Primitive | UML:ActionState | UML:State | UML:SynchState | 
    UML15OCL.Expressions.TupleLiteralExp | UML:ApplyFunctionAction | UML:Action | 
    UML:Interaction | OCL.CommonModel.Feature | 
    OCL.Expressions.ExpressionInOcl | UML:CallOperationAction | 
    UML:AsynchronousInvocationAction | OCL.Expressions.IterateExp | 
    OCL.Expressions.LiteralExp | UML15OCL.Expressions.CollectionItem | 
    UML15OCL.Types.TupleType | OCL.CommonModel.TypedElement | UML:Event | 
    UML:InteractionInstanceSet | UML15OCL.Expressions.RealLiteralExp | 
    UML:TimeExpression | UML15OCL.Types.OclMessageType | UML:MappingExpression | 
    UML:PrimitiveFunction | UML:Extend | UML:WriteVariableAction | UML:LinkEnd | 
    UML:Partition | OCL.Expressions.AttributeCallExp | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:ArgListsExpression | 
    OCL.Expressions.EnumLiteralExp | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    OCL.CommonModel.Expression | UML:ReadAttributeAction | UML:Include | 
    OCL.Expressions.PropertyCallExp | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | OCL.Expressions.VariableDeclaration | 
    UML:StateMachine | OCL.CommonModel.BooleanExpression | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    OCL.Expressions.IfExp | OCL.Expressions.OperationCallExp | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:TypeExpression | 
    UML:Permission | UML:Instance | UML:UseCaseInstance | UML:Namespace | 
    OCL.Types.CollectionType | UML:Association | 
    OCL.Expressions.CollectionLiteralExp | UML:CollectionAction | 
    UML15OCL.Expressions.LiteralExp | UML:Usage | UML:SubactivityState | 
    OCL.Expressions.VariableExp | UML:Classifier | UML:SendSignalAction | 
    OCL.CommonModel.Enumeration | UML15OCL.Expressions.LoopExp | 
    UML:ClearVariableAction | UML:ReclassifyObjectAction | 
    OCL.CommonModel.ModelElement | UML15OCL.Expressions.OperationCallExp | 
    UML:GroupAction | UML:LinkObject | OCL.Expressions.OclMessageExp | 
    UML:AssociationEndRole | OCL.Expressions.ModelPropertyCallExp | 
    UML:RemoveVariableValueAction | UML15OCL.Expressions.AssociationEndCallExp | 
    UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | OCL.Expressions.StringLiteralExp | 
    UML:ReadVariableAction | UML:UnmarshalAction | UML:CollaborationInstanceSet | 
    UML:ClassifierInState | OCL.Expressions.IntegerLiteralExp | 
    UML:CompositeState | UML:Abstraction | 
    OCL.Expressions.AssociationClassCallExp | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | OCL.CommonModel.DataType | UML:CreateLinkAction | 
    OCL.CommonModel.Attribute | OCL.Expressions.TupleLiteralExp | UML:MapAction | 
    OCL.CommonModel.NonOclClassifier | UML:VariableAction | 
    OCL.Expressions.NumericLiteralExp | UML:CreateLinkObjectAction | 
    OCL.CommonModel.EnumerationLiteral | OCL.Expressions.PrimitiveLiteralExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | OCL.Expressions.LoopExp | 
    UML:InvocationAction | OCL.Expressions.NavigationCallExp | UML:ModelElement | 
    UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    OCL.Expressions.AssociationEndCallExp | UML15OCL.Expressions.VariableDeclaration | 
    UML:Collaboration | UML:ReadSelfAction | 
    OCL.Expressions.BooleanLiteralExp | UML:DestroyLinkAction | UML:Flow | 
    OCL.CommonModel.Multiplicity | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | 
    OCL.Expressions.IteratorExp | UML:HandlerAction | OCL.Expressions.OclMessageArg | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction | XMI.extension)* >
<!ATTLIST OCL.CommonModel
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT OCL (OCL.Types | OCL.primitivetypes | 
    OCL.Expressions | OCL.CommonModel | XMI.extension)* >
<!ATTLIST OCL
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Link.association (UML:AssociationRole | 
    UML:AssociationClass | UML:Association)* >

<!ELEMENT UML:Link.connection (UML:LinkEnd)* >

<!ELEMENT UML:Link (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Link.association | UML:Link.connection | 
    XMI.extension)* >
<!ATTLIST UML:Link
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   association IDREFS #IMPLIED
   connection IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Instance.classifier (UML15OCL.Types.BagType | 
    UML:Classifier | UML:Artifact | UML15OCL.Types.TupleType | 
    UML:ClassifierRole | UML:Actor | UML15OCL.Types.OrderedSetType | 
    UML:UseCase | UML15OCL.Types.OclMessageType | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | UML:ClassifierInState | 
    UML:Exception | UML15OCL.Types.SetType | 
    UML:ProgrammingLanguageDataType | UML:Primitive | UML15OCL.Types.CollectionType | 
    UML:Node | UML15OCL.Types.SequenceType | UML:AssociationClass)* >

<!ELEMENT UML:Instance.linkEnd (UML:LinkEnd)* >

<!ELEMENT UML:Instance.slot (UML:AttributeLink)* >

<!ELEMENT UML:Instance.componentInstance (
    UML:ComponentInstance)* >

<!ELEMENT UML:Instance.ownedInstance (UML:SubsystemInstance | 
    UML:Object | UML:ComponentInstance | UML:Instance | 
    UML:UseCaseInstance | UML:LinkObject | UML:NodeInstance | UML:DataValue)* >

<!ELEMENT UML:Instance.ownedLink (UML:Link | UML:LinkObject)* >

<!ELEMENT UML:Instance (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Instance.classifier | UML:Instance.linkEnd | 
    UML:Instance.slot | UML:Instance.componentInstance | 
    UML:Instance.ownedInstance | UML:Instance.ownedLink | XMI.extension)* >
<!ATTLIST UML:Instance
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   classifier IDREFS #IMPLIED
   linkEnd IDREFS #IMPLIED
   slot IDREFS #IMPLIED
   componentInstance IDREFS #IMPLIED
   ownedInstance IDREFS #IMPLIED
   ownedLink IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:DataValue (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Instance.classifier | UML:Instance.linkEnd | 
    UML:Instance.slot | UML:Instance.componentInstance | 
    UML:Instance.ownedInstance | UML:Instance.ownedLink | XMI.extension)* >
<!ATTLIST UML:DataValue
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   classifier IDREFS #IMPLIED
   linkEnd IDREFS #IMPLIED
   slot IDREFS #IMPLIED
   componentInstance IDREFS #IMPLIED
   ownedInstance IDREFS #IMPLIED
   ownedLink IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:LinkEnd.instance (UML:SubsystemInstance | 
    UML:Object | UML:ComponentInstance | UML:Instance | 
    UML:UseCaseInstance | UML:LinkObject | UML:NodeInstance | UML:DataValue)* >

<!ELEMENT UML:LinkEnd.link (UML:Link | UML:LinkObject)* >

<!ELEMENT UML:LinkEnd.associationEnd (UML:AssociationEndRole | 
    UML:AssociationEnd)* >

<!ELEMENT UML:LinkEnd.qualifiedValue (UML:AttributeLink)* >

<!ELEMENT UML:LinkEnd (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:LinkEnd.instance | UML:LinkEnd.link | 
    UML:LinkEnd.associationEnd | UML:LinkEnd.qualifiedValue | XMI.extension)* >
<!ATTLIST UML:LinkEnd
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   instance IDREFS #IMPLIED
   link IDREFS #IMPLIED
   associationEnd IDREFS #IMPLIED
   qualifiedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Stimulus.argument (UML:SubsystemInstance | 
    UML:Object | UML:ComponentInstance | UML:Instance | 
    UML:UseCaseInstance | UML:LinkObject | UML:NodeInstance | UML:DataValue)* >

<!ELEMENT UML:Stimulus.sender (UML:SubsystemInstance | 
    UML:Object | UML:ComponentInstance | UML:Instance | 
    UML:UseCaseInstance | UML:LinkObject | UML:NodeInstance | UML:DataValue)* >

<!ELEMENT UML:Stimulus.receiver (UML:SubsystemInstance | 
    UML:Object | UML:ComponentInstance | UML:Instance | 
    UML:UseCaseInstance | UML:LinkObject | UML:NodeInstance | UML:DataValue)* >

<!ELEMENT UML:Stimulus.communicationLink (UML:Link | 
    UML:LinkObject)* >

<!ELEMENT UML:Stimulus.dispatchAction (UML:Procedure)* >

<!ELEMENT UML:Stimulus (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Stimulus.argument | UML:Stimulus.sender | 
    UML:Stimulus.receiver | UML:Stimulus.communicationLink | 
    UML:Stimulus.dispatchAction | XMI.extension)* >
<!ATTLIST UML:Stimulus
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   argument IDREFS #IMPLIED
   sender IDREFS #IMPLIED
   receiver IDREFS #IMPLIED
   communicationLink IDREFS #IMPLIED
   dispatchAction IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Object (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Instance.classifier | UML:Instance.linkEnd | 
    UML:Instance.slot | UML:Instance.componentInstance | 
    UML:Instance.ownedInstance | UML:Instance.ownedLink | XMI.extension)* >
<!ATTLIST UML:Object
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   classifier IDREFS #IMPLIED
   linkEnd IDREFS #IMPLIED
   slot IDREFS #IMPLIED
   componentInstance IDREFS #IMPLIED
   ownedInstance IDREFS #IMPLIED
   ownedLink IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:LinkObject (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Instance.classifier | UML:Instance.linkEnd | 
    UML:Instance.slot | UML:Instance.componentInstance | 
    UML:Instance.ownedInstance | UML:Instance.ownedLink | UML:Link.association | 
    UML:Link.connection | XMI.extension)* >
<!ATTLIST UML:LinkObject
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   classifier IDREFS #IMPLIED
   linkEnd IDREFS #IMPLIED
   slot IDREFS #IMPLIED
   componentInstance IDREFS #IMPLIED
   ownedInstance IDREFS #IMPLIED
   ownedLink IDREFS #IMPLIED
   association IDREFS #IMPLIED
   connection IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Exception (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML:Exception
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:AttributeLink.attribute (UML:Attribute)* >

<!ELEMENT UML:AttributeLink.value (UML:SubsystemInstance | 
    UML:Object | UML:ComponentInstance | UML:Instance | 
    UML:UseCaseInstance | UML:LinkObject | UML:NodeInstance | UML:DataValue)* >

<!ELEMENT UML:AttributeLink.instance (UML:SubsystemInstance | 
    UML:Object | UML:ComponentInstance | UML:Instance | 
    UML:UseCaseInstance | UML:LinkObject | UML:NodeInstance | UML:DataValue)* >

<!ELEMENT UML:AttributeLink.linkEnd (UML:LinkEnd)* >

<!ELEMENT UML:AttributeLink (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:AttributeLink.attribute | UML:AttributeLink.value | 
    UML:AttributeLink.instance | UML:AttributeLink.linkEnd | XMI.extension)* >
<!ATTLIST UML:AttributeLink
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   attribute IDREFS #IMPLIED
   value IDREFS #IMPLIED
   instance IDREFS #IMPLIED
   linkEnd IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Procedure.language (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Procedure.body (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Procedure.isList (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Procedure.expression (UML:TimeExpression | 
    UML:TypeExpression | UML:Expression | UML:ProcedureExpression | 
    UML:MappingExpression | UML:BooleanExpression | 
    UML15OCL.Expressions.ExpressionInOcl | UML:ArgListsExpression)* >

<!ELEMENT UML:Procedure.method (UML:Method)* >

<!ELEMENT UML:Procedure (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Procedure.language | UML:Procedure.body | UML:Procedure.isList | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Procedure.expression | UML:Procedure.method | 
    XMI.extension)* >
<!ATTLIST UML:Procedure
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   expression IDREFS #IMPLIED
   method IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   language CDATA #IMPLIED
   body CDATA #IMPLIED
   isList CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Signal (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML:Signal
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:SubsystemInstance (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Instance.classifier | UML:Instance.linkEnd | 
    UML:Instance.slot | UML:Instance.componentInstance | 
    UML:Instance.ownedInstance | UML:Instance.ownedLink | XMI.extension)* >
<!ATTLIST UML:SubsystemInstance
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   classifier IDREFS #IMPLIED
   linkEnd IDREFS #IMPLIED
   slot IDREFS #IMPLIED
   componentInstance IDREFS #IMPLIED
   ownedInstance IDREFS #IMPLIED
   ownedLink IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!-- added for UML 1.4 (ArgoUML) compatibility -->

<!ELEMENT UML:CallAction (UML:ModelElement.name | UML:ModelElement.isSpecification |
    UML:ModelElement.isAsynchronous | UML:Action.script | XMI.extension)* >
<!ATTLIST UML:CallAction
   name CDATA #IMPLIED
   isSpecification CDATA #IMPLIED
   isAsynchronous CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:CreateAction (UML:ModelElement.name | UML:ModelElement.isSpecification |
    UML:ModelElement.isAsynchronous | UML:Action.script | XMI.extension)* >
<!ATTLIST UML:CreateAction
   name CDATA #IMPLIED
   isSpecification CDATA #IMPLIED
   isAsynchronous CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:DestroyAction (UML:ModelElement.name | UML:ModelElement.isSpecification |
    UML:ModelElement.isAsynchronous | UML:Action.script | XMI.extension)* >
<!ATTLIST UML:DestroyAction
   name CDATA #IMPLIED
   isSpecification CDATA #IMPLIED
   isAsynchronous CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ReturnAction (UML:ModelElement.name | UML:ModelElement.isSpecification |
    UML:ModelElement.isAsynchronous | UML:Action.script | XMI.extension)* >
<!ATTLIST UML:ReturnAction
   name CDATA #IMPLIED
   isSpecification CDATA #IMPLIED
   isAsynchronous CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:SendAction (UML:ModelElement.name | UML:ModelElement.isSpecification |
    UML:ModelElement.isAsynchronous | UML:Action.script | XMI.extension)* >
<!ATTLIST UML:SendAction
   name CDATA #IMPLIED
   isSpecification CDATA #IMPLIED
   isAsynchronous CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:TerminateAction (UML:ModelElement.name | UML:ModelElement.isSpecification |
    UML:ModelElement.isAsynchronous | UML:Action.script | XMI.extension)* >
<!ATTLIST UML:TerminateAction
   name CDATA #IMPLIED
   isSpecification CDATA #IMPLIED
   isAsynchronous CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:UninterpretedAction (UML:ModelElement.name | UML:ModelElement.isSpecification |
    UML:ModelElement.isAsynchronous | UML:Action.script | XMI.extension)* >
<!ATTLIST UML:UninterpretedAction
   name CDATA #IMPLIED
   isSpecification CDATA #IMPLIED
   isAsynchronous CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:NodeInstance.resident (UML:ComponentInstance)* >

<!ELEMENT UML:NodeInstance (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Instance.classifier | UML:Instance.linkEnd | 
    UML:Instance.slot | UML:Instance.componentInstance | 
    UML:Instance.ownedInstance | UML:Instance.ownedLink | UML:NodeInstance.resident | 
    XMI.extension)* >
<!ATTLIST UML:NodeInstance
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   classifier IDREFS #IMPLIED
   linkEnd IDREFS #IMPLIED
   slot IDREFS #IMPLIED
   componentInstance IDREFS #IMPLIED
   ownedInstance IDREFS #IMPLIED
   ownedLink IDREFS #IMPLIED
   resident IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ComponentInstance.nodeInstance (
    UML:NodeInstance)* >

<!ELEMENT UML:ComponentInstance.resident (
    UML:SubsystemInstance | UML:Object | UML:ComponentInstance | UML:Instance | 
    UML:UseCaseInstance | UML:LinkObject | UML:NodeInstance | UML:DataValue)* >

<!ELEMENT UML:ComponentInstance (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Instance.classifier | UML:Instance.linkEnd | 
    UML:Instance.slot | UML:Instance.componentInstance | 
    UML:Instance.ownedInstance | UML:Instance.ownedLink | 
    UML:ComponentInstance.nodeInstance | UML:ComponentInstance.resident | XMI.extension)* >
<!ATTLIST UML:ComponentInstance
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   classifier IDREFS #IMPLIED
   linkEnd IDREFS #IMPLIED
   slot IDREFS #IMPLIED
   componentInstance IDREFS #IMPLIED
   ownedInstance IDREFS #IMPLIED
   ownedLink IDREFS #IMPLIED
   nodeInstance IDREFS #IMPLIED
   resident IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Reception.specification (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:Reception.isRoot (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Reception.isLeaf (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Reception.isAbstract (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Reception.signal (UML:Signal | UML:Exception)* >

<!ELEMENT UML:Reception (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Feature.ownerScope | UML:BehavioralFeature.isQuery | 
    UML:Reception.specification | UML:Reception.isRoot | UML:Reception.isLeaf | 
    UML:Reception.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Feature.owner | 
    UML:BehavioralFeature.parameter | UML:Reception.signal | XMI.extension)* >
<!ATTLIST UML:Reception
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   owner IDREFS #IMPLIED
   parameter IDREFS #IMPLIED
   signal IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   ownerScope (instance|classifier) #IMPLIED
   isQuery CDATA #IMPLIED
   specification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:A_context_raisedSignal (UML:Operation | 
    UML:Reception | UML:BehavioralFeature | UML:Method | UML:Exception | 
    UML:Signal | XMI.extension)* >
<!ATTLIST UML:A_context_raisedSignal
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Common_Behavior (UML:SubsystemInstance | 
    UML:Object | UML:LinkEnd | UML:Instance | UML:UseCaseInstance | 
    UML:TerminateAction | UML:Procedure | UML:DataValue | UML:Exception | 
    UML:UninterpretedAction | UML:AttributeLink | UML:ComponentInstance | 
    UML:Stimulus | UML:Link | UML:LinkObject | UML:NodeInstance | 
    UML:Reception | UML:Signal | UML:A_context_raisedSignal | 
    XMI.extension)* >
<!ATTLIST UML:Common_Behavior
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Pin.multiplicity (UML:Multiplicity)* >

<!ELEMENT UML:Pin.ordering EMPTY>
<!ATTLIST UML:Pin.ordering
   xmi.value (unordered|ordered) #REQUIRED>

<!ELEMENT UML:Pin.type (UML15OCL.Types.BagType | 
    UML:Classifier | UML:Artifact | UML15OCL.Types.TupleType | 
    UML:ClassifierRole | UML:Actor | UML15OCL.Types.OrderedSetType | 
    UML:UseCase | UML15OCL.Types.OclMessageType | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | UML:ClassifierInState | 
    UML:Exception | UML15OCL.Types.SetType | 
    UML:ProgrammingLanguageDataType | UML:Primitive | UML15OCL.Types.CollectionType | 
    UML:Node | UML15OCL.Types.SequenceType | UML:AssociationClass)* >

<!ELEMENT UML:Pin (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Pin.multiplicity | UML:Pin.ordering | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Pin.type | 
    XMI.extension)* >
<!ATTLIST UML:Pin
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   type IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   multiplicity IDREFS #IMPLIED
   ordering (unordered|ordered) #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Action.isReadOnly (#PCDATA | XMI.reference)* >

<!ELEMENT UML:Action.consequent (UML:ControlFlow)* >

<!ELEMENT UML:Action.antecedent (UML:ControlFlow)* >

<!ELEMENT UML:Action.outputPin (UML:OutputPin)* >

<!ELEMENT UML:Action.inputPin (UML:InputPin)* >

<!ELEMENT UML:Action.procedure (UML:Procedure)* >

<!ELEMENT UML:Action (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | XMI.extension)* >
<!ATTLIST UML:Action
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:InputPin.flow (UML:DataFlow)* >

<!ELEMENT UML:InputPin.procedure (UML:Procedure)* >

<!ELEMENT UML:InputPin.action (UML:CallOperationAction | 
    UML:AsynchronousInvocationAction | UML:SendSignalAction | 
    UML:ReadIsClassifiedObjectAction | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML:PrimitiveAction | UML:GroupAction | UML:WriteVariableAction | 
    UML:LinkAction | UML:RemoveVariableValueAction | 
    UML:SynchronousInvocationAction | UML:WriteLinkAction | UML:UnmarshalAction | 
    UML:ReadVariableAction | UML:ExplicitInvocationActtion | UML:CodeAction | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | UML:ReadAttributeAction | 
    UML:CreateLinkAction | UML:TestIdentityAction | UML:MapAction | 
    UML:VariableAction | UML:BroadcastSignalAction | UML:CallProcedureAction | UML:CallAction | 
    UML:JumpAction | UML:CreateLinkObjectAction | 
    UML:ReadLinkObjectQualifierAction | UML:ReadExtentAction | UML:DestroyObjectAction | 
    UML:InvocationAction | UML:AttributeAction | UML:IterateAction | 
    UML:ReduceAction | UML:CreateObjectAction | UML:MarshalAction | 
    UML:FilterAction | UML:ReadSelfAction | UML:RemoveAttributeValueAction | 
    UML:ReadLinkAction | UML:DestroyLinkAction | UML:ClearAttributeAction | 
    UML:NullAction | UML:StartObjectStateMachineAction | 
    UML:ClearAssociationAction | UML:AddVariableValueAction | UML:HandlerAction | 
    UML:CollectionAction | UML:ApplyFunctionAction | UML:ConditionalAction | 
    UML:Action)* >

<!ELEMENT UML:InputPin (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Pin.multiplicity | UML:Pin.ordering | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Pin.type | 
    UML:InputPin.flow | UML:InputPin.procedure | UML:InputPin.action | 
    XMI.extension)* >
<!ATTLIST UML:InputPin
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   type IDREFS #IMPLIED
   flow IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   action IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   multiplicity IDREFS #IMPLIED
   ordering (unordered|ordered) #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:PrimitiveAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | XMI.extension)* >
<!ATTLIST UML:PrimitiveAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:OutputPin.flow (UML:DataFlow)* >

<!ELEMENT UML:OutputPin.procedure (UML:Procedure)* >

<!ELEMENT UML:OutputPin.action (UML:CallOperationAction | 
    UML:AsynchronousInvocationAction | UML:SendSignalAction | 
    UML:ReadIsClassifiedObjectAction | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML:PrimitiveAction | UML:GroupAction | UML:WriteVariableAction | 
    UML:LinkAction | UML:RemoveVariableValueAction | 
    UML:SynchronousInvocationAction | UML:WriteLinkAction | UML:UnmarshalAction | 
    UML:ReadVariableAction | UML:ExplicitInvocationActtion | UML:CodeAction | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | UML:ReadAttributeAction | 
    UML:CreateLinkAction | UML:TestIdentityAction | UML:MapAction | 
    UML:VariableAction | UML:BroadcastSignalAction | UML:CallProcedureAction | UML:CallAction | 
    UML:JumpAction | UML:CreateLinkObjectAction | 
    UML:ReadLinkObjectQualifierAction | UML:ReadExtentAction | UML:DestroyObjectAction | 
    UML:InvocationAction | UML:AttributeAction | UML:IterateAction | 
    UML:ReduceAction | UML:CreateObjectAction | UML:MarshalAction | 
    UML:FilterAction | UML:ReadSelfAction | UML:RemoveAttributeValueAction | 
    UML:ReadLinkAction | UML:DestroyLinkAction | UML:ClearAttributeAction | 
    UML:NullAction | UML:StartObjectStateMachineAction | 
    UML:ClearAssociationAction | UML:AddVariableValueAction | UML:HandlerAction | 
    UML:CollectionAction | UML:ApplyFunctionAction | UML:ConditionalAction | 
    UML:Action)* >

<!ELEMENT UML:OutputPin (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Pin.multiplicity | UML:Pin.ordering | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Pin.type | 
    UML:OutputPin.flow | UML:OutputPin.procedure | UML:OutputPin.action | 
    XMI.extension)* >
<!ATTLIST UML:OutputPin
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   type IDREFS #IMPLIED
   flow IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   action IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   multiplicity IDREFS #IMPLIED
   ordering (unordered|ordered) #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:DataFlow.source (UML:OutputPin)* >

<!ELEMENT UML:DataFlow.destination (UML:InputPin)* >

<!ELEMENT UML:DataFlow (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:DataFlow.source | UML:DataFlow.destination | 
    XMI.extension)* >
<!ATTLIST UML:DataFlow
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   source IDREFS #IMPLIED
   destination IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ControlFlow.predecessor (
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML:SendSignalAction | UML:ReadIsClassifiedObjectAction | 
    UML:LiteralValueAction | UML:ReadLinkObjectEndAction | UML:LoopAction | 
    UML:ReclassifyObjectAction | UML:ClearVariableAction | UML:PrimitiveAction | 
    UML:GroupAction | UML:WriteVariableAction | UML:LinkAction | 
    UML:RemoveVariableValueAction | UML:SynchronousInvocationAction | UML:WriteLinkAction | 
    UML:UnmarshalAction | UML:ReadVariableAction | 
    UML:ExplicitInvocationActtion | UML:CodeAction | UML:AddAttributeValueAction | 
    UML:WriteAttributeAction | UML:ReadAttributeAction | UML:CreateLinkAction | 
    UML:TestIdentityAction | UML:MapAction | UML:VariableAction | 
    UML:BroadcastSignalAction | UML:CallProcedureAction | UML:CallAction | UML:JumpAction | 
    UML:CreateLinkObjectAction | UML:ReadLinkObjectQualifierAction | 
    UML:ReadExtentAction | UML:DestroyObjectAction | UML:InvocationAction | 
    UML:AttributeAction | UML:IterateAction | UML:ReduceAction | 
    UML:CreateObjectAction | UML:MarshalAction | UML:FilterAction | 
    UML:ReadSelfAction | UML:RemoveAttributeValueAction | UML:ReadLinkAction | 
    UML:DestroyLinkAction | UML:ClearAttributeAction | UML:NullAction | 
    UML:StartObjectStateMachineAction | UML:ClearAssociationAction | 
    UML:AddVariableValueAction | UML:HandlerAction | UML:CollectionAction | 
    UML:ApplyFunctionAction | UML:ConditionalAction | UML:Action)* >

<!ELEMENT UML:ControlFlow.successor (UML:CallOperationAction | 
    UML:AsynchronousInvocationAction | UML:SendSignalAction | 
    UML:ReadIsClassifiedObjectAction | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML:PrimitiveAction | UML:GroupAction | UML:WriteVariableAction | 
    UML:LinkAction | UML:RemoveVariableValueAction | 
    UML:SynchronousInvocationAction | UML:WriteLinkAction | UML:UnmarshalAction | 
    UML:ReadVariableAction | UML:ExplicitInvocationActtion | UML:CodeAction | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | UML:ReadAttributeAction | 
    UML:CreateLinkAction | UML:TestIdentityAction | UML:MapAction | 
    UML:VariableAction | UML:BroadcastSignalAction | UML:CallProcedureAction | UML:CallAction | 
    UML:JumpAction | UML:CreateLinkObjectAction | 
    UML:ReadLinkObjectQualifierAction | UML:ReadExtentAction | UML:DestroyObjectAction | 
    UML:InvocationAction | UML:AttributeAction | UML:IterateAction | 
    UML:ReduceAction | UML:CreateObjectAction | UML:MarshalAction | 
    UML:FilterAction | UML:ReadSelfAction | UML:RemoveAttributeValueAction | 
    UML:ReadLinkAction | UML:DestroyLinkAction | UML:ClearAttributeAction | 
    UML:NullAction | UML:StartObjectStateMachineAction | 
    UML:ClearAssociationAction | UML:AddVariableValueAction | UML:HandlerAction | 
    UML:CollectionAction | UML:ApplyFunctionAction | UML:ConditionalAction | 
    UML:Action)* >

<!ELEMENT UML:ControlFlow (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:ControlFlow.predecessor | 
    UML:ControlFlow.successor | XMI.extension)* >
<!ATTLIST UML:ControlFlow
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   predecessor IDREFS #IMPLIED
   successor IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Action_Foundation (UML:CallOperationAction | 
    UML:AsynchronousInvocationAction | UML:DataFlow | UML:SendSignalAction | 
    UML:ReadIsClassifiedObjectAction | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML:PrimitiveAction | UML:GroupAction | UML:WriteVariableAction | 
    UML:LinkAction | UML:RemoveVariableValueAction | UML:WriteLinkAction | 
    UML:SynchronousInvocationAction | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:ExplicitInvocationActtion | UML:CodeAction | UML:AddAttributeValueAction | 
    UML:WriteAttributeAction | UML:ControlFlow | UML:ReadAttributeAction | 
    UML:CreateLinkAction | UML:TestIdentityAction | UML:MapAction | 
    UML:VariableAction | UML:BroadcastSignalAction | UML:CallProcedureAction | UML:CallAction | 
    UML:JumpAction | UML:CreateLinkObjectAction | 
    UML:ReadLinkObjectQualifierAction | UML:ReadExtentAction | UML:DestroyObjectAction | 
    UML:InvocationAction | UML:AttributeAction | UML:IterateAction | 
    UML:ReduceAction | UML:OutputPin | UML:CreateObjectAction | 
    UML:MarshalAction | UML:FilterAction | UML:ReadSelfAction | 
    UML:RemoveAttributeValueAction | UML:ReadLinkAction | UML:DestroyLinkAction | 
    UML:ClearAttributeAction | UML:NullAction | UML:InputPin | 
    UML:StartObjectStateMachineAction | UML:ClearAssociationAction | 
    UML:AddVariableValueAction | UML:HandlerAction | UML:CollectionAction | 
    UML:ConditionalAction | UML:ApplyFunctionAction | UML:Pin | UML:Action | 
    XMI.extension)* >
<!ATTLIST UML:Action_Foundation
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:CreateLinkObjectAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:LinkAction.endData | XMI.extension)* >
<!ATTLIST UML:CreateLinkObjectAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   endData IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:RemoveVariableValueAction (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:VariableAction.variable | XMI.extension)* >
<!ATTLIST UML:RemoveVariableValueAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   variable IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:AddAttributeValueAction.isReplaceAll (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:AddAttributeValueAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:AddAttributeValueAction.isReplaceAll | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Action.consequent | UML:Action.antecedent | 
    UML:Action.outputPin | UML:Action.inputPin | UML:Action.procedure | 
    UML:AttributeAction.attribute | XMI.extension)* >
<!ATTLIST UML:AddAttributeValueAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   attribute IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   isReplaceAll CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:SendSignalAction.signal (UML:Signal | 
    UML:Exception)* >

<!ELEMENT UML:SendSignalAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:SendSignalAction.signal | XMI.extension)* >
<!ATTLIST UML:SendSignalAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   signal IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:AttributeAction.attribute (UML:Attribute)* >

<!ELEMENT UML:AttributeAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:AttributeAction.attribute | XMI.extension)* >
<!ATTLIST UML:AttributeAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   attribute IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ReclassifyObjectAction.isReplaceAll (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:ReclassifyObjectAction.oldClassifier (
    UML15OCL.Types.BagType | UML:Classifier | UML:Artifact | 
    UML15OCL.Types.TupleType | UML:ClassifierRole | UML:Actor | 
    UML15OCL.Types.OrderedSetType | UML:UseCase | UML15OCL.Types.OclMessageType | 
    UML:Signal | UML15OCL.Types.VoidType | UML:Interface | 
    UML:Enumeration | UML:Class | UML:Subsystem | UML:Component | 
    UML:DataType | UML:ClassifierInState | UML:Exception | 
    UML15OCL.Types.SetType | UML:ProgrammingLanguageDataType | UML:Primitive | 
    UML15OCL.Types.CollectionType | UML:Node | UML15OCL.Types.SequenceType | 
    UML:AssociationClass)* >

<!ELEMENT UML:ReclassifyObjectAction.newClassifier (
    UML15OCL.Types.BagType | UML:Classifier | UML:Artifact | 
    UML15OCL.Types.TupleType | UML:ClassifierRole | UML:Actor | 
    UML15OCL.Types.OrderedSetType | UML:UseCase | UML15OCL.Types.OclMessageType | 
    UML:Signal | UML15OCL.Types.VoidType | UML:Interface | 
    UML:Enumeration | UML:Class | UML:Subsystem | UML:Component | 
    UML:DataType | UML:ClassifierInState | UML:Exception | 
    UML15OCL.Types.SetType | UML:ProgrammingLanguageDataType | UML:Primitive | 
    UML15OCL.Types.CollectionType | UML:Node | UML15OCL.Types.SequenceType | 
    UML:AssociationClass)* >

<!ELEMENT UML:ReclassifyObjectAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ReclassifyObjectAction.isReplaceAll | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Action.consequent | UML:Action.antecedent | 
    UML:Action.outputPin | UML:Action.inputPin | UML:Action.procedure | 
    UML:ReclassifyObjectAction.oldClassifier | UML:ReclassifyObjectAction.newClassifier | 
    XMI.extension)* >
<!ATTLIST UML:ReclassifyObjectAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   oldClassifier IDREFS #IMPLIED
   newClassifier IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   isReplaceAll CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:LinkAction.endData (UML:LinkEndData | 
    UML:LinkEndCreationData)* >

<!ELEMENT UML:LinkAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:LinkAction.endData | XMI.extension)* >
<!ATTLIST UML:LinkAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   endData IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ClearAttributeAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:AttributeAction.attribute | XMI.extension)* >
<!ATTLIST UML:ClearAttributeAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   attribute IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ClearVariableAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:VariableAction.variable | XMI.extension)* >
<!ATTLIST UML:ClearVariableAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   variable IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:SynchronousInvocationAction (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | XMI.extension)* >
<!ATTLIST UML:SynchronousInvocationAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:LoopAction.clause (UML:Clause)* >

<!ELEMENT UML:LoopAction.loopVariable (UML:OutputPin)* >

<!ELEMENT UML:LoopAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:LoopAction.clause | UML:LoopAction.loopVariable | 
    XMI.extension)* >
<!ATTLIST UML:LoopAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   clause IDREFS #IMPLIED
   loopVariable IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:NullAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | XMI.extension)* >
<!ATTLIST UML:NullAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:IterateAction.isUnordered (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:IterateAction.subinput (UML:OutputPin)* >

<!ELEMENT UML:IterateAction.loopVariable (UML:OutputPin)* >

<!ELEMENT UML:IterateAction.suboutput (UML:OutputPin)* >

<!ELEMENT UML:IterateAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:IterateAction.isUnordered | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Action.consequent | UML:Action.antecedent | 
    UML:Action.outputPin | UML:Action.inputPin | UML:Action.procedure | 
    UML:CollectionAction.subaction | UML:IterateAction.subinput | 
    UML:IterateAction.loopVariable | UML:IterateAction.suboutput | XMI.extension)* >
<!ATTLIST UML:IterateAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   subaction IDREFS #IMPLIED
   subinput IDREFS #IMPLIED
   loopVariable IDREFS #IMPLIED
   suboutput IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   isUnordered CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ApplyFunctionAction.function (
    UML:PrimitiveFunction)* >

<!ELEMENT UML:ApplyFunctionAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:ApplyFunctionAction.function | XMI.extension)* >
<!ATTLIST UML:ApplyFunctionAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   function IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:StartObjectStateMachineAction (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | XMI.extension)* >
<!ATTLIST UML:StartObjectStateMachineAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:FilterAction.subinput (UML:OutputPin)* >

<!ELEMENT UML:FilterAction.subtest (UML:OutputPin)* >

<!ELEMENT UML:FilterAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:CollectionAction.subaction | 
    UML:FilterAction.subinput | UML:FilterAction.subtest | XMI.extension)* >
<!ATTLIST UML:FilterAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   subaction IDREFS #IMPLIED
   subinput IDREFS #IMPLIED
   subtest IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:PrimitiveFunction.language (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:PrimitiveFunction.encoding (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:PrimitiveFunction.inputSpec (
    UML:ArgumentSpecification)* >

<!ELEMENT UML:PrimitiveFunction.outputSpec (
    UML:ArgumentSpecification)* >

<!ELEMENT UML:PrimitiveFunction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:PrimitiveFunction.language | UML:PrimitiveFunction.encoding | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:PrimitiveFunction.inputSpec | 
    UML:PrimitiveFunction.outputSpec | XMI.extension)* >
<!ATTLIST UML:PrimitiveFunction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   inputSpec IDREFS #IMPLIED
   outputSpec IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   language CDATA #IMPLIED
   encoding CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:GroupAction.mustIsolate (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:GroupAction.subaction (UML:CallOperationAction | 
    UML:AsynchronousInvocationAction | UML:SendSignalAction | 
    UML:ReadIsClassifiedObjectAction | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML:PrimitiveAction | UML:GroupAction | UML:WriteVariableAction | 
    UML:LinkAction | UML:RemoveVariableValueAction | 
    UML:SynchronousInvocationAction | UML:WriteLinkAction | UML:UnmarshalAction | 
    UML:ReadVariableAction | UML:ExplicitInvocationActtion | UML:CodeAction | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | UML:ReadAttributeAction | 
    UML:CreateLinkAction | UML:TestIdentityAction | UML:MapAction | 
    UML:VariableAction | UML:BroadcastSignalAction | UML:CallProcedureAction | UML:CallAction | 
    UML:JumpAction | UML:CreateLinkObjectAction | 
    UML:ReadLinkObjectQualifierAction | UML:ReadExtentAction | UML:DestroyObjectAction | 
    UML:InvocationAction | UML:AttributeAction | UML:IterateAction | 
    UML:ReduceAction | UML:CreateObjectAction | UML:MarshalAction | 
    UML:FilterAction | UML:ReadSelfAction | UML:RemoveAttributeValueAction | 
    UML:ReadLinkAction | UML:DestroyLinkAction | UML:ClearAttributeAction | 
    UML:NullAction | UML:StartObjectStateMachineAction | 
    UML:ClearAssociationAction | UML:AddVariableValueAction | UML:HandlerAction | 
    UML:CollectionAction | UML:ApplyFunctionAction | UML:ConditionalAction | 
    UML:Action)* >

<!ELEMENT UML:GroupAction.variable (UML:Variable)* >

<!ELEMENT UML:GroupAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:GroupAction.mustIsolate | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Action.consequent | UML:Action.antecedent | 
    UML:Action.outputPin | UML:Action.inputPin | UML:Action.procedure | 
    UML:GroupAction.subaction | UML:GroupAction.variable | XMI.extension)* >
<!ATTLIST UML:GroupAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   subaction IDREFS #IMPLIED
   variable IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   mustIsolate CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:BroadcastSignalAction.signal (UML:Signal | 
    UML:Exception)* >

<!ELEMENT UML:BroadcastSignalAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:BroadcastSignalAction.signal | XMI.extension)* >
<!ATTLIST UML:BroadcastSignalAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   signal IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:CollectionAction.subaction (
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML:SendSignalAction | UML:ReadIsClassifiedObjectAction | 
    UML:LiteralValueAction | UML:ReadLinkObjectEndAction | UML:LoopAction | 
    UML:ReclassifyObjectAction | UML:ClearVariableAction | UML:PrimitiveAction | 
    UML:GroupAction | UML:WriteVariableAction | UML:LinkAction | 
    UML:RemoveVariableValueAction | UML:SynchronousInvocationAction | UML:WriteLinkAction | 
    UML:UnmarshalAction | UML:ReadVariableAction | 
    UML:ExplicitInvocationActtion | UML:CodeAction | UML:AddAttributeValueAction | 
    UML:WriteAttributeAction | UML:ReadAttributeAction | UML:CreateLinkAction | 
    UML:TestIdentityAction | UML:MapAction | UML:VariableAction | 
    UML:BroadcastSignalAction | UML:CallProcedureAction | UML:CallAction | UML:JumpAction | 
    UML:CreateLinkObjectAction | UML:ReadLinkObjectQualifierAction | 
    UML:ReadExtentAction | UML:DestroyObjectAction | UML:InvocationAction | 
    UML:AttributeAction | UML:IterateAction | UML:ReduceAction | 
    UML:CreateObjectAction | UML:MarshalAction | UML:FilterAction | 
    UML:ReadSelfAction | UML:RemoveAttributeValueAction | UML:ReadLinkAction | 
    UML:DestroyLinkAction | UML:ClearAttributeAction | UML:NullAction | 
    UML:StartObjectStateMachineAction | UML:ClearAssociationAction | 
    UML:AddVariableValueAction | UML:HandlerAction | UML:CollectionAction | 
    UML:ApplyFunctionAction | UML:ConditionalAction | UML:Action)* >

<!ELEMENT UML:CollectionAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:CollectionAction.subaction | XMI.extension)* >
<!ATTLIST UML:CollectionAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   subaction IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Clause.body (UML:CallOperationAction | 
    UML:AsynchronousInvocationAction | UML:SendSignalAction | 
    UML:ReadIsClassifiedObjectAction | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML:PrimitiveAction | UML:GroupAction | UML:WriteVariableAction | 
    UML:LinkAction | UML:RemoveVariableValueAction | 
    UML:SynchronousInvocationAction | UML:WriteLinkAction | UML:UnmarshalAction | 
    UML:ReadVariableAction | UML:ExplicitInvocationActtion | UML:CodeAction | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | UML:ReadAttributeAction | 
    UML:CreateLinkAction | UML:TestIdentityAction | UML:MapAction | 
    UML:VariableAction | UML:BroadcastSignalAction | UML:CallProcedureAction | UML:CallAction | 
    UML:JumpAction | UML:CreateLinkObjectAction | 
    UML:ReadLinkObjectQualifierAction | UML:ReadExtentAction | UML:DestroyObjectAction | 
    UML:InvocationAction | UML:AttributeAction | UML:IterateAction | 
    UML:ReduceAction | UML:CreateObjectAction | UML:MarshalAction | 
    UML:FilterAction | UML:ReadSelfAction | UML:RemoveAttributeValueAction | 
    UML:ReadLinkAction | UML:DestroyLinkAction | UML:ClearAttributeAction | 
    UML:NullAction | UML:StartObjectStateMachineAction | 
    UML:ClearAssociationAction | UML:AddVariableValueAction | UML:HandlerAction | 
    UML:CollectionAction | UML:ApplyFunctionAction | UML:ConditionalAction | 
    UML:Action)* >

<!ELEMENT UML:Clause.test (UML:CallOperationAction | 
    UML:AsynchronousInvocationAction | UML:SendSignalAction | 
    UML:ReadIsClassifiedObjectAction | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML:PrimitiveAction | UML:GroupAction | UML:WriteVariableAction | 
    UML:LinkAction | UML:RemoveVariableValueAction | 
    UML:SynchronousInvocationAction | UML:WriteLinkAction | UML:UnmarshalAction | 
    UML:ReadVariableAction | UML:ExplicitInvocationActtion | UML:CodeAction | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | UML:ReadAttributeAction | 
    UML:CreateLinkAction | UML:TestIdentityAction | UML:MapAction | 
    UML:VariableAction | UML:BroadcastSignalAction | UML:CallProcedureAction | UML:CallAction | 
    UML:JumpAction | UML:CreateLinkObjectAction | 
    UML:ReadLinkObjectQualifierAction | UML:ReadExtentAction | UML:DestroyObjectAction | 
    UML:InvocationAction | UML:AttributeAction | UML:IterateAction | 
    UML:ReduceAction | UML:CreateObjectAction | UML:MarshalAction | 
    UML:FilterAction | UML:ReadSelfAction | UML:RemoveAttributeValueAction | 
    UML:ReadLinkAction | UML:DestroyLinkAction | UML:ClearAttributeAction | 
    UML:NullAction | UML:StartObjectStateMachineAction | 
    UML:ClearAssociationAction | UML:AddVariableValueAction | UML:HandlerAction | 
    UML:CollectionAction | UML:ApplyFunctionAction | UML:ConditionalAction | 
    UML:Action)* >

<!ELEMENT UML:Clause.bodyOutput (UML:OutputPin)* >

<!ELEMENT UML:Clause.testOutput (UML:OutputPin)* >

<!ELEMENT UML:Clause.successorClause (UML:Clause)* >

<!ELEMENT UML:Clause.predecessorClause (UML:Clause)* >

<!ELEMENT UML:Clause (UML:Clause.body | UML:Clause.test | 
    UML:Clause.bodyOutput | UML:Clause.testOutput | UML:Clause.successorClause | 
    UML:Clause.predecessorClause | XMI.extension)* >
<!ATTLIST UML:Clause
   body IDREFS #IMPLIED
   test IDREFS #IMPLIED
   bodyOutput IDREFS #IMPLIED
   testOutput IDREFS #IMPLIED
   successorClause IDREFS #IMPLIED
   predecessorClause IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ReadLinkAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:LinkAction.endData | XMI.extension)* >
<!ATTLIST UML:ReadLinkAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   endData IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:TestIdentityAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | XMI.extension)* >
<!ATTLIST UML:TestIdentityAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:MarshalAction.marshalType (UML:Class | 
    UML:AssociationClass)* >

<!ELEMENT UML:MarshalAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:MarshalAction.marshalType | XMI.extension)* >
<!ATTLIST UML:MarshalAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   marshalType IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ArgumentSpecification.multiplicity (
    UML:Multiplicity)* >

<!ELEMENT UML:ArgumentSpecification.ordering EMPTY>
<!ATTLIST UML:ArgumentSpecification.ordering
   xmi.value (unordered|ordered) #REQUIRED>

<!ELEMENT UML:ArgumentSpecification.type (
    UML15OCL.Types.SetType | UML15OCL.Types.TupleType | UML15OCL.Types.BagType | 
    UML15OCL.Types.OrderedSetType | UML:Enumeration | UML15OCL.Types.CollectionType | 
    UML:ProgrammingLanguageDataType | UML:Primitive | UML:DataType | 
    UML15OCL.Types.SequenceType)* >

<!ELEMENT UML:ArgumentSpecification (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ArgumentSpecification.multiplicity | UML:ArgumentSpecification.ordering | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:ArgumentSpecification.type | XMI.extension)* >
<!ATTLIST UML:ArgumentSpecification
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   type IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   multiplicity IDREFS #IMPLIED
   ordering (unordered|ordered) #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:QualifierValue.qualifier (UML:Attribute)* >

<!ELEMENT UML:QualifierValue (UML:QualifierValue.qualifier | 
    XMI.extension)* >
<!ATTLIST UML:QualifierValue
   qualifier IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:InvocationAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | XMI.extension)* >
<!ATTLIST UML:InvocationAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:WriteAttributeAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:AttributeAction.attribute | XMI.extension)* >
<!ATTLIST UML:WriteAttributeAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   attribute IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:CallOperationAction.isAsynchronous (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:CallOperationAction.operation (UML:Operation)* >

<!ELEMENT UML:CallOperationAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:CallOperationAction.isAsynchronous | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Action.consequent | UML:Action.antecedent | 
    UML:Action.outputPin | UML:Action.inputPin | UML:Action.procedure | 
    UML:CallOperationAction.operation | XMI.extension)* >
<!ATTLIST UML:CallOperationAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   operation IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   isAsynchronous CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:LinkEndCreationData.isReplaceAll (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:LinkEndCreationData (
    UML:LinkEndCreationData.isReplaceAll | UML:LinkEndData.end | UML:LinkEndData.qualifier | 
    XMI.extension)* >
<!ATTLIST UML:LinkEndCreationData
   end IDREFS #IMPLIED
   qualifier IDREFS #IMPLIED
   isReplaceAll CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:RemoveAttributeValueAction (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:AttributeAction.attribute | XMI.extension)* >
<!ATTLIST UML:RemoveAttributeValueAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   attribute IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Variable.multiplicity (UML:Multiplicity)* >

<!ELEMENT UML:Variable.ordering EMPTY>
<!ATTLIST UML:Variable.ordering
   xmi.value (unordered|ordered) #REQUIRED>

<!ELEMENT UML:Variable.type (UML15OCL.Types.BagType | 
    UML:Classifier | UML:Artifact | UML15OCL.Types.TupleType | 
    UML:ClassifierRole | UML:Actor | UML15OCL.Types.OrderedSetType | 
    UML:UseCase | UML15OCL.Types.OclMessageType | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | UML:ClassifierInState | 
    UML:Exception | UML15OCL.Types.SetType | 
    UML:ProgrammingLanguageDataType | UML:Primitive | UML15OCL.Types.CollectionType | 
    UML:Node | UML15OCL.Types.SequenceType | UML:AssociationClass)* >

<!ELEMENT UML:Variable.scope (UML:GroupAction)* >

<!ELEMENT UML:Variable (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Variable.multiplicity | UML:Variable.ordering | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Variable.type | 
    UML:Variable.scope | XMI.extension)* >
<!ATTLIST UML:Variable
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   type IDREFS #IMPLIED
   scope IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   multiplicity IDREFS #IMPLIED
   ordering (unordered|ordered) #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:LinkEndData.end (UML:AssociationEndRole | 
    UML:AssociationEnd)* >

<!ELEMENT UML:LinkEndData.qualifier (UML:QualifierValue)* >

<!ELEMENT UML:LinkEndData (UML:LinkEndData.end | 
    UML:LinkEndData.qualifier | XMI.extension)* >
<!ATTLIST UML:LinkEndData
   end IDREFS #IMPLIED
   qualifier IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:JumpHandler.protectedAction (
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML:SendSignalAction | UML:ReadIsClassifiedObjectAction | 
    UML:LiteralValueAction | UML:ReadLinkObjectEndAction | UML:LoopAction | 
    UML:ReclassifyObjectAction | UML:ClearVariableAction | UML:PrimitiveAction | 
    UML:GroupAction | UML:WriteVariableAction | UML:LinkAction | 
    UML:RemoveVariableValueAction | UML:SynchronousInvocationAction | UML:WriteLinkAction | 
    UML:UnmarshalAction | UML:ReadVariableAction | 
    UML:ExplicitInvocationActtion | UML:CodeAction | UML:AddAttributeValueAction | 
    UML:WriteAttributeAction | UML:ReadAttributeAction | UML:CreateLinkAction | 
    UML:TestIdentityAction | UML:MapAction | UML:VariableAction | 
    UML:BroadcastSignalAction | UML:CallProcedureAction | UML:CallAction | UML:JumpAction | 
    UML:CreateLinkObjectAction | UML:ReadLinkObjectQualifierAction | 
    UML:ReadExtentAction | UML:DestroyObjectAction | UML:InvocationAction | 
    UML:AttributeAction | UML:IterateAction | UML:ReduceAction | 
    UML:CreateObjectAction | UML:MarshalAction | UML:FilterAction | 
    UML:ReadSelfAction | UML:RemoveAttributeValueAction | UML:ReadLinkAction | 
    UML:DestroyLinkAction | UML:ClearAttributeAction | UML:NullAction | 
    UML:StartObjectStateMachineAction | UML:ClearAssociationAction | 
    UML:AddVariableValueAction | UML:HandlerAction | UML:CollectionAction | 
    UML:ApplyFunctionAction | UML:ConditionalAction | UML:Action)* >

<!ELEMENT UML:JumpHandler.jumpType (UML15OCL.Types.BagType | 
    UML:Classifier | UML:Artifact | UML15OCL.Types.TupleType | 
    UML:ClassifierRole | UML:Actor | UML15OCL.Types.OrderedSetType | 
    UML:UseCase | UML15OCL.Types.OclMessageType | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | UML:ClassifierInState | 
    UML:Exception | UML15OCL.Types.SetType | 
    UML:ProgrammingLanguageDataType | UML:Primitive | UML15OCL.Types.CollectionType | 
    UML:Node | UML15OCL.Types.SequenceType | UML:AssociationClass)* >

<!ELEMENT UML:JumpHandler.body (UML:HandlerAction)* >

<!ELEMENT UML:JumpHandler (UML:JumpHandler.protectedAction | 
    UML:JumpHandler.jumpType | UML:JumpHandler.body | XMI.extension)* >
<!ATTLIST UML:JumpHandler
   protectedAction IDREFS #IMPLIED
   jumpType IDREFS #IMPLIED
   body IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:DestroyLinkAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:LinkAction.endData | XMI.extension)* >
<!ATTLIST UML:DestroyLinkAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   endData IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ReadIsClassifiedObjectAction.isDirect (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:ReadIsClassifiedObjectAction.classifier (
    UML15OCL.Types.BagType | UML:Classifier | UML:Artifact | 
    UML15OCL.Types.TupleType | UML:ClassifierRole | UML:Actor | 
    UML15OCL.Types.OrderedSetType | UML:UseCase | UML15OCL.Types.OclMessageType | 
    UML:Signal | UML15OCL.Types.VoidType | UML:Interface | 
    UML:Enumeration | UML:Class | UML:Subsystem | UML:Component | 
    UML:DataType | UML:ClassifierInState | UML:Exception | 
    UML15OCL.Types.SetType | UML:ProgrammingLanguageDataType | UML:Primitive | 
    UML15OCL.Types.CollectionType | UML:Node | UML15OCL.Types.SequenceType | 
    UML:AssociationClass)* >

<!ELEMENT UML:ReadIsClassifiedObjectAction (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | UML:Action.isReadOnly | 
    UML:ReadIsClassifiedObjectAction.isDirect | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:ReadIsClassifiedObjectAction.classifier | 
    XMI.extension)* >
<!ATTLIST UML:ReadIsClassifiedObjectAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   classifier IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   isDirect CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ReadSelfAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | XMI.extension)* >
<!ATTLIST UML:ReadSelfAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:MapAction.subinput (UML:OutputPin)* >

<!ELEMENT UML:MapAction.suboutput (UML:OutputPin)* >

<!ELEMENT UML:MapAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:CollectionAction.subaction | 
    UML:MapAction.subinput | UML:MapAction.suboutput | XMI.extension)* >
<!ATTLIST UML:MapAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   subaction IDREFS #IMPLIED
   subinput IDREFS #IMPLIED
   suboutput IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:HandlerAction.handlerOutput (UML:OutputPin)* >

<!ELEMENT UML:HandlerAction.body (UML:CallOperationAction | 
    UML:AsynchronousInvocationAction | UML:SendSignalAction | 
    UML:ReadIsClassifiedObjectAction | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML:PrimitiveAction | UML:GroupAction | UML:WriteVariableAction | 
    UML:LinkAction | UML:RemoveVariableValueAction | 
    UML:SynchronousInvocationAction | UML:WriteLinkAction | UML:UnmarshalAction | 
    UML:ReadVariableAction | UML:ExplicitInvocationActtion | UML:CodeAction | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | UML:ReadAttributeAction | 
    UML:CreateLinkAction | UML:TestIdentityAction | UML:MapAction | 
    UML:VariableAction | UML:BroadcastSignalAction | UML:CallProcedureAction | UML:CallAction | 
    UML:JumpAction | UML:CreateLinkObjectAction | 
    UML:ReadLinkObjectQualifierAction | UML:ReadExtentAction | UML:DestroyObjectAction | 
    UML:InvocationAction | UML:AttributeAction | UML:IterateAction | 
    UML:ReduceAction | UML:CreateObjectAction | UML:MarshalAction | 
    UML:FilterAction | UML:ReadSelfAction | UML:RemoveAttributeValueAction | 
    UML:ReadLinkAction | UML:DestroyLinkAction | UML:ClearAttributeAction | 
    UML:NullAction | UML:StartObjectStateMachineAction | 
    UML:ClearAssociationAction | UML:AddVariableValueAction | UML:HandlerAction | 
    UML:CollectionAction | UML:ApplyFunctionAction | UML:ConditionalAction | 
    UML:Action)* >

<!ELEMENT UML:HandlerAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:HandlerAction.handlerOutput | 
    UML:HandlerAction.body | XMI.extension)* >
<!ATTLIST UML:HandlerAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   handlerOutput IDREFS #IMPLIED
   body IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:UnmarshalAction.unmarshalType (UML:Class | 
    UML:AssociationClass)* >

<!ELEMENT UML:UnmarshalAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:UnmarshalAction.unmarshalType | XMI.extension)* >
<!ATTLIST UML:UnmarshalAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   unmarshalType IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ConditionalAction.isDeterminate (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:ConditionalAction.clause (UML:Clause)* >

<!ELEMENT UML:ConditionalAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ConditionalAction.isDeterminate | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Action.consequent | UML:Action.antecedent | 
    UML:Action.outputPin | UML:Action.inputPin | UML:Action.procedure | 
    UML:ConditionalAction.clause | XMI.extension)* >
<!ATTLIST UML:ConditionalAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   clause IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   isDeterminate CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ReadLinkObjectQualifierAction.qualifier (
    UML:Attribute)* >

<!ELEMENT UML:ReadLinkObjectQualifierAction (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:ReadLinkObjectQualifierAction.qualifier | 
    XMI.extension)* >
<!ATTLIST UML:ReadLinkObjectQualifierAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   qualifier IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:LiteralValueAction.value (UML:DataValue)* >

<!ELEMENT UML:LiteralValueAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:LiteralValueAction.value | XMI.extension)* >
<!ATTLIST UML:LiteralValueAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   value IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ReadVariableAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:VariableAction.variable | XMI.extension)* >
<!ATTLIST UML:ReadVariableAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   variable IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:CreateObjectAction.classifier (
    UML15OCL.Types.BagType | UML:Classifier | UML:Artifact | 
    UML15OCL.Types.TupleType | UML:ClassifierRole | UML:Actor | 
    UML15OCL.Types.OrderedSetType | UML:UseCase | UML15OCL.Types.OclMessageType | 
    UML:Signal | UML15OCL.Types.VoidType | UML:Interface | 
    UML:Enumeration | UML:Class | UML:Subsystem | UML:Component | 
    UML:DataType | UML:ClassifierInState | UML:Exception | 
    UML15OCL.Types.SetType | UML:ProgrammingLanguageDataType | UML:Primitive | 
    UML15OCL.Types.CollectionType | UML:Node | UML15OCL.Types.SequenceType | 
    UML:AssociationClass)* >

<!ELEMENT UML:CreateObjectAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:CreateObjectAction.classifier | XMI.extension)* >
<!ATTLIST UML:CreateObjectAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   classifier IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ReduceAction.isUnordered (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:ReduceAction.leftSubinput (UML:OutputPin)* >

<!ELEMENT UML:ReduceAction.suboutput (UML:OutputPin)* >

<!ELEMENT UML:ReduceAction.rightSubinput (UML:OutputPin)* >

<!ELEMENT UML:ReduceAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ReduceAction.isUnordered | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Action.consequent | UML:Action.antecedent | 
    UML:Action.outputPin | UML:Action.inputPin | UML:Action.procedure | 
    UML:CollectionAction.subaction | UML:ReduceAction.leftSubinput | 
    UML:ReduceAction.suboutput | UML:ReduceAction.rightSubinput | XMI.extension)* >
<!ATTLIST UML:ReduceAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   subaction IDREFS #IMPLIED
   leftSubinput IDREFS #IMPLIED
   suboutput IDREFS #IMPLIED
   rightSubinput IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   isUnordered CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:WriteLinkAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:LinkAction.endData | XMI.extension)* >
<!ATTLIST UML:WriteLinkAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   endData IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:DestroyObjectAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | XMI.extension)* >
<!ATTLIST UML:DestroyObjectAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:AddVariableValueAction.isReplaceAll (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:AddVariableValueAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:AddVariableValueAction.isReplaceAll | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Action.consequent | UML:Action.antecedent | 
    UML:Action.outputPin | UML:Action.inputPin | UML:Action.procedure | 
    UML:VariableAction.variable | XMI.extension)* >
<!ATTLIST UML:AddVariableValueAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   variable IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   isReplaceAll CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:CallProcedureAction.isSynchronous (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:CallProcedureAction.calledProcedure (
    UML:Procedure)* >

<!ELEMENT UML:CallProcedureAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:CallProcedureAction.isSynchronous | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Action.consequent | UML:Action.antecedent | 
    UML:Action.outputPin | UML:Action.inputPin | UML:Action.procedure | 
    UML:CallProcedureAction.calledProcedure | XMI.extension)* >
<!ATTLIST UML:CallProcedureAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   calledProcedure IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   isSynchronous CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:VariableAction.variable (UML:Variable)* >

<!ELEMENT UML:VariableAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:VariableAction.variable | XMI.extension)* >
<!ATTLIST UML:VariableAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   variable IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ClearAssociationAction.association (
    UML:AssociationRole | UML:AssociationClass | UML:Association)* >

<!ELEMENT UML:ClearAssociationAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:ClearAssociationAction.association | 
    XMI.extension)* >
<!ATTLIST UML:ClearAssociationAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   association IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:JumpAction.exception (UML:Exception)* >

<!ELEMENT UML:JumpAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:JumpAction.exception | XMI.extension)* >
<!ATTLIST UML:JumpAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   exception IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ExplicitInvocationActtion (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | XMI.extension)* >
<!ATTLIST UML:ExplicitInvocationActtion
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:WriteVariableAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:VariableAction.variable | XMI.extension)* >
<!ATTLIST UML:WriteVariableAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   variable IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:CreateLinkAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:LinkAction.endData | XMI.extension)* >
<!ATTLIST UML:CreateLinkAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   endData IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:AsynchronousInvocationAction.isRepliable (
    #PCDATA | XMI.reference)* >

<!ELEMENT UML:AsynchronousInvocationAction (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | UML:Action.isReadOnly | 
    UML:AsynchronousInvocationAction.isRepliable | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | XMI.extension)* >
<!ATTLIST UML:AsynchronousInvocationAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   isRepliable CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:CodeAction.language (#PCDATA | XMI.reference)* >

<!ELEMENT UML:CodeAction.encoding (#PCDATA | XMI.reference)* >

<!ELEMENT UML:CodeAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:CodeAction.language | UML:CodeAction.encoding | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Action.consequent | UML:Action.antecedent | 
    UML:Action.outputPin | UML:Action.inputPin | UML:Action.procedure | 
    XMI.extension)* >
<!ATTLIST UML:CodeAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   language CDATA #IMPLIED
   encoding CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ReadAttributeAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:AttributeAction.attribute | XMI.extension)* >
<!ATTLIST UML:ReadAttributeAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   attribute IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ReadLinkObjectEndAction.end (
    UML:AssociationEndRole | UML:AssociationEnd)* >

<!ELEMENT UML:ReadLinkObjectEndAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:ReadLinkObjectEndAction.end | XMI.extension)* >
<!ATTLIST UML:ReadLinkObjectEndAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   end IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ReadExtentAction.classifier (
    UML15OCL.Types.BagType | UML:Classifier | UML:Artifact | 
    UML15OCL.Types.TupleType | UML:ClassifierRole | UML:Actor | 
    UML15OCL.Types.OrderedSetType | UML:UseCase | UML15OCL.Types.OclMessageType | 
    UML:Signal | UML15OCL.Types.VoidType | UML:Interface | 
    UML:Enumeration | UML:Class | UML:Subsystem | UML:Component | 
    UML:DataType | UML:ClassifierInState | UML:Exception | 
    UML15OCL.Types.SetType | UML:ProgrammingLanguageDataType | UML:Primitive | 
    UML15OCL.Types.CollectionType | UML:Node | UML15OCL.Types.SequenceType | 
    UML:AssociationClass)* >

<!ELEMENT UML:ReadExtentAction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Action.isReadOnly | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Action.consequent | 
    UML:Action.antecedent | UML:Action.outputPin | UML:Action.inputPin | 
    UML:Action.procedure | UML:ReadExtentAction.classifier | XMI.extension)* >
<!ATTLIST UML:ReadExtentAction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   consequent IDREFS #IMPLIED
   antecedent IDREFS #IMPLIED
   outputPin IDREFS #IMPLIED
   inputPin IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   classifier IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isReadOnly CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Actions (UML:CallOperationAction | 
    UML:AsynchronousInvocationAction | UML:SendSignalAction | 
    UML:ReadIsClassifiedObjectAction | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML:ClearVariableAction | UML:ReclassifyObjectAction | 
    UML:GroupAction | UML:PrimitiveFunction | UML:WriteVariableAction | 
    UML:LinkAction | UML:RemoveVariableValueAction | 
    UML:SynchronousInvocationAction | UML:WriteLinkAction | UML:UnmarshalAction | 
    UML:ReadVariableAction | UML:ExplicitInvocationActtion | UML:CodeAction | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | UML:QualifierValue | 
    UML:ReadAttributeAction | UML:CreateLinkAction | UML:TestIdentityAction | 
    UML:MapAction | UML:VariableAction | UML:BroadcastSignalAction | 
    UML:Variable | UML:JumpAction | UML:CallProcedureAction | UML:CallAction | 
    UML:LinkEndData | UML:CreateLinkObjectAction | 
    UML:ReadLinkObjectQualifierAction | UML:ReadExtentAction | UML:DestroyObjectAction | 
    UML:AttributeAction | UML:Clause | UML:InvocationAction | UML:IterateAction | 
    UML:ReduceAction | UML:ArgumentSpecification | UML:JumpHandler | 
    UML:CreateObjectAction | UML:MarshalAction | UML:FilterAction | 
    UML:ReadSelfAction | UML:RemoveAttributeValueAction | UML:ReadLinkAction | 
    UML:DestroyLinkAction | UML:ClearAttributeAction | UML:NullAction | 
    UML:StartObjectStateMachineAction | UML:ClearAssociationAction | 
    UML:AddVariableValueAction | UML:LinkEndCreationData | UML:HandlerAction | 
    UML:CollectionAction | UML:ApplyFunctionAction | UML:ConditionalAction | 
    XMI.extension)* >
<!ATTLIST UML:Actions
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.IfExp (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.IfExp.thenExpression | OCL.Expressions.IfExp.elseExpression | 
    OCL.Expressions.IfExp.condition | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.IfExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   thenExpression IDREFS #IMPLIED
   elseExpression IDREFS #IMPLIED
   condition IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.OclMessageExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.OclMessageExp.target | 
    OCL.Expressions.OclMessageExp.arguments | OCL.Expressions.OclMessageExp.calledOperation | 
    OCL.Expressions.OclMessageExp.sentSignal | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.OclMessageExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   target IDREFS #IMPLIED
   arguments IDREFS #IMPLIED
   calledOperation IDREFS #IMPLIED
   sentSignal IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.CollectionLiteralPart (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.CollectionLiteralPart.type | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.CollectionLiteralPart
   type IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.LetExp (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    OCL.Expressions.OclExpression.appliedProperty | OCL.Expressions.OclExpression.loopExp | 
    OCL.Expressions.OclExpression.initializedVariable | OCL.Expressions.OclExpression.type | 
    OCL.Expressions.LetExp.in | OCL.Expressions.LetExp.variable | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.LetExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   in IDREFS #IMPLIED
   variable IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.OclOperationWithTypeArgExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.PropertyCallExp.source | 
    OCL.Expressions.OclOperationWithTypeArgExp.typeArgument | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.OclOperationWithTypeArgExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   typeArgument IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.CollectionRange (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.CollectionLiteralPart.type | 
    OCL.Expressions.CollectionRange.first | OCL.Expressions.CollectionRange.last | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.CollectionRange
   type IDREFS #IMPLIED
   first IDREFS #IMPLIED
   last IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.StringLiteralExp (
    OCL.Expressions.StringLiteralExp.stringSymbol | UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.StringLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   stringSymbol CDATA #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.AssociationClassCallExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.PropertyCallExp.source | 
    OCL.Expressions.NavigationCallExp.qualifiers | OCL.Expressions.NavigationCallExp.navigationSource | 
    OCL.Expressions.AssociationClassCallExp.referredAssociationClass | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.AssociationClassCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   qualifiers IDREFS #IMPLIED
   navigationSource IDREFS #IMPLIED
   referredAssociationClass IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.OclExpressionFactory (
    XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.OclExpressionFactory
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.UnspecifiedValueExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.UnspecifiedValueExp.type | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.UnspecifiedValueExp
   type IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.PropertyCallExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.PropertyCallExp.source | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.PropertyCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.ModelPropertyCallExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.PropertyCallExp.source | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.ModelPropertyCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.OclExpression (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.OclExpression
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.LiteralExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.LiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.VariableExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.VariableExp.referredVariable | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.VariableExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   referredVariable IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.LoopExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.PropertyCallExp.source | 
    OCL.Expressions.LoopExp.body | OCL.Expressions.LoopExp.iterators | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.LoopExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   body IDREFS #IMPLIED
   iterators IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.RealLiteralExp (
    OCL.Expressions.RealLiteralExp.realSymbol | UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.RealLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   realSymbol CDATA #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.FeatureCallExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.PropertyCallExp.source | 
    OCL.Expressions.FeatureCallExp.srcType | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.FeatureCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   srcType IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.CollectionLiteralExp (
    OCL.Expressions.CollectionLiteralExp.kind | UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.CollectionLiteralExp.parts | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.CollectionLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   parts IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   kind (Collection|Bag|Set|Sequence) #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.IteratorExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.PropertyCallExp.source | 
    OCL.Expressions.LoopExp.body | OCL.Expressions.LoopExp.iterators | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.IteratorExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   body IDREFS #IMPLIED
   iterators IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.IntegerLiteralExp (
    OCL.Expressions.IntegerLiteralExp.integerSymbol | UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.IntegerLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   integerSymbol CDATA #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.PrimitiveLiteralExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.PrimitiveLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.VariableDeclaration (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.VariableDeclaration.initExpression | 
    OCL.Expressions.VariableDeclaration.variableExp | OCL.Expressions.VariableDeclaration.loopExpr | 
    OCL.Expressions.VariableDeclaration.baseExp | OCL.Expressions.VariableDeclaration.type | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.VariableDeclaration
   initExpression IDREFS #IMPLIED
   variableExp IDREFS #IMPLIED
   loopExpr IDREFS #IMPLIED
   baseExp IDREFS #IMPLIED
   type IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.NumericLiteralExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.NumericLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.AssociationEndCallExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.PropertyCallExp.source | 
    OCL.Expressions.NavigationCallExp.qualifiers | OCL.Expressions.NavigationCallExp.navigationSource | 
    OCL.Expressions.AssociationEndCallExp.referredAssociationEnd | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.AssociationEndCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   qualifiers IDREFS #IMPLIED
   navigationSource IDREFS #IMPLIED
   referredAssociationEnd IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.AttributeCallExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.PropertyCallExp.source | 
    OCL.Expressions.FeatureCallExp.srcType | OCL.Expressions.AttributeCallExp.referredAttribute | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.AttributeCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   srcType IDREFS #IMPLIED
   referredAttribute IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.NavigationCallExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.PropertyCallExp.source | 
    OCL.Expressions.NavigationCallExp.qualifiers | OCL.Expressions.NavigationCallExp.navigationSource | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.NavigationCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   qualifiers IDREFS #IMPLIED
   navigationSource IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.OperationCallExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.PropertyCallExp.source | 
    OCL.Expressions.FeatureCallExp.srcType | OCL.Expressions.OperationCallExp.arguments | 
    OCL.Expressions.OperationCallExp.referredOperation | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.OperationCallExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   srcType IDREFS #IMPLIED
   arguments IDREFS #IMPLIED
   referredOperation IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.ExpressionInOcl (
    UML:Expression.language | UML:Expression.body | 
    OCL.Expressions.ExpressionInOcl.bodyExpression | OCL.Expressions.ExpressionInOcl.contextualClassifier | 
    XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.ExpressionInOcl
   bodyExpression IDREFS #IMPLIED
   contextualClassifier IDREFS #IMPLIED
   language CDATA #IMPLIED
   body CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.BooleanLiteralExp (
    OCL.Expressions.BooleanLiteralExp.booleanSymbol | UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.BooleanLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   booleanSymbol CDATA #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.CollectionItem (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.CollectionLiteralPart.type | 
    OCL.Expressions.CollectionItem.item | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.CollectionItem
   type IDREFS #IMPLIED
   item IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.OclMessageArg (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclMessageArg.unspecified | 
    OCL.Expressions.OclMessageArg.expression | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.OclMessageArg
   unspecified IDREFS #IMPLIED
   expression IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.EnumLiteralExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.EnumLiteralExp.referredEnumLiteral | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.EnumLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   referredEnumLiteral IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.IterateExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.PropertyCallExp.source | 
    OCL.Expressions.LoopExp.body | OCL.Expressions.LoopExp.iterators | 
    OCL.Expressions.IterateExp.result | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.IterateExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   source IDREFS #IMPLIED
   body IDREFS #IMPLIED
   iterators IDREFS #IMPLIED
   result IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions.TupleLiteralExp (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | OCL.Expressions.OclExpression.appliedProperty | 
    OCL.Expressions.OclExpression.loopExp | OCL.Expressions.OclExpression.initializedVariable | 
    OCL.Expressions.OclExpression.type | OCL.Expressions.TupleLiteralExp.tuplePart | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions.TupleLiteralExp
   appliedProperty IDREFS #IMPLIED
   loopExp IDREFS #IMPLIED
   initializedVariable IDREFS #IMPLIED
   type IDREFS #IMPLIED
   tuplePart IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Expressions (
    UML15OCL.Expressions.CollectionRange | UML15OCL.Expressions.PropertyCallExp | 
    UML15OCL.Expressions.AttributeCallExp | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML15OCL.Expressions.UnspecifiedValueExp | UML15OCL.Expressions.CollectionItem | 
    UML15OCL.Expressions.VariableExp | UML15OCL.Expressions.LoopExp | 
    UML15OCL.Expressions.RealLiteralExp | UML15OCL.Expressions.OperationCallExp | 
    UML15OCL.Expressions.NumericLiteralExp | UML15OCL.Expressions.EnumLiteralExp | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML15OCL.Expressions.AssociationEndCallExp | 
    UML15OCL.Expressions.ExpressionInOcl | UML15OCL.Expressions.OclOperationWithTypeArgExp | 
    UML15OCL.Expressions.OclMessageExp | UML15OCL.Expressions.BooleanLiteralExp | 
    UML15OCL.Expressions.OclExpression | UML15OCL.Expressions.AssociationClassCallExp | 
    UML15OCL.Expressions.OclExpressionFactory | UML15OCL.Expressions.FeatureCallExp | 
    UML15OCL.Expressions.VariableDeclaration | UML15OCL.Expressions.IntegerLiteralExp | 
    UML15OCL.Expressions.StringLiteralExp | UML15OCL.Expressions.NavigationCallExp | 
    UML15OCL.Expressions.CollectionLiteralExp | UML15OCL.Expressions.LetExp | 
    UML15OCL.Expressions.IfExp | UML15OCL.Expressions.IterateExp | 
    UML15OCL.Expressions.CollectionLiteralPart | UML15OCL.Expressions.LiteralExp | 
    UML15OCL.Expressions.TupleLiteralExp | UML15OCL.Expressions.OclMessageArg | 
    UML15OCL.Expressions.IteratorExp | XMI.extension)* >
<!ATTLIST UML15OCL.Expressions
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Types.OclLibrary (
    OCL.Types.OclLibrary.model | XMI.extension)* >
<!ATTLIST UML15OCL.Types.OclLibrary
   model IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Types.VoidType (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML15OCL.Types.VoidType
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Types.BagType (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | OCL.Types.CollectionType.elementType | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:GeneralizableElement.generalization | 
    UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML15OCL.Types.BagType
   elementType IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Types.SequenceType (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | OCL.Types.CollectionType.elementType | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:GeneralizableElement.generalization | 
    UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML15OCL.Types.SequenceType
   elementType IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Types.OclMessageType (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | UML:GeneralizableElement.isRoot | 
    UML:GeneralizableElement.isLeaf | UML:GeneralizableElement.isAbstract | 
    OCL.Types.OclMessageType.referredOperation | OCL.Types.OclMessageType.referredSignal | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:GeneralizableElement.generalization | 
    UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML15OCL.Types.OclMessageType
   referredOperation IDREFS #IMPLIED
   referredSignal IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Types.TupleType (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML15OCL.Types.TupleType
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Types.CollectionType (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | UML:GeneralizableElement.isRoot | 
    UML:GeneralizableElement.isLeaf | UML:GeneralizableElement.isAbstract | 
    OCL.Types.CollectionType.elementType | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML15OCL.Types.CollectionType
   elementType IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Types.SetType (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | OCL.Types.CollectionType.elementType | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:GeneralizableElement.generalization | 
    UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML15OCL.Types.SetType
   elementType IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Types.OrderedSetType (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | UML:GeneralizableElement.isRoot | 
    UML:GeneralizableElement.isLeaf | UML:GeneralizableElement.isAbstract | 
    OCL.Types.CollectionType.elementType | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML15OCL.Types.OrderedSetType
   elementType IDREFS #IMPLIED
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL.Types (UML15OCL.Types.SetType | 
    UML15OCL.Types.TupleType | UML15OCL.Types.VoidType | UML15OCL.Types.BagType | 
    UML15OCL.Types.OrderedSetType | UML15OCL.Types.CollectionType | 
    UML15OCL.Types.OclMessageType | UML15OCL.Types.SequenceType | 
    UML15OCL.Types.OclLibrary | XMI.extension)* >
<!ATTLIST UML15OCL.Types
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML15OCL (UML15OCL.Expressions | UML15OCL.Types | 
    XMI.extension)* >
<!ATTLIST UML15OCL
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Interaction.message (UML:Message)* >

<!ELEMENT UML:Interaction.context (UML:Collaboration)* >

<!ELEMENT UML:Interaction (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Interaction.message | UML:Interaction.context | 
    XMI.extension)* >
<!ATTLIST UML:Interaction
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   message IDREFS #IMPLIED
   context IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:AssociationEndRole.collaborationMultiplicity (
    UML:Multiplicity)* >

<!ELEMENT UML:AssociationEndRole.base (
    UML:AssociationEndRole | UML:AssociationEnd)* >

<!ELEMENT UML:AssociationEndRole.availableQualifier (
    UML:Attribute)* >

<!ELEMENT UML:AssociationEndRole (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:AssociationEnd.isNavigable | UML:AssociationEnd.ordering | 
    UML:AssociationEnd.aggregation | UML:AssociationEnd.targetScope | 
    UML:AssociationEnd.multiplicity | UML:AssociationEnd.changeability | 
    UML:AssociationEndRole.collaborationMultiplicity | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    OCL.CommonModel.AssociationEnd.qualifiersA | UML:AssociationEnd.association | 
    UML:AssociationEnd.qualifier | UML:AssociationEnd.participant | 
    UML:AssociationEnd.specification | UML:AssociationEndRole.base | 
    UML:AssociationEndRole.availableQualifier | XMI.extension)* >
<!ATTLIST UML:AssociationEndRole
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   qualifiersA IDREFS #IMPLIED
   association IDREFS #IMPLIED
   qualifier IDREFS #IMPLIED
   participant IDREFS #IMPLIED
   specification IDREFS #IMPLIED
   base IDREFS #IMPLIED
   availableQualifier IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isNavigable CDATA #IMPLIED
   ordering (unordered|ordered) #IMPLIED
   aggregation (none|aggregate|composite) #IMPLIED
   targetScope (instance|classifier) #IMPLIED
   multiplicity IDREFS #IMPLIED
   changeability (changeable|frozen|addOnly) #IMPLIED
   collaborationMultiplicity IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Collaboration.interaction (UML:Interaction)* >

<!ELEMENT UML:Collaboration.representedClassifier (
    UML15OCL.Types.BagType | UML:Classifier | UML:Artifact | 
    UML15OCL.Types.TupleType | UML:ClassifierRole | UML:Actor | 
    UML15OCL.Types.OrderedSetType | UML:UseCase | UML15OCL.Types.OclMessageType | 
    UML:Signal | UML15OCL.Types.VoidType | UML:Interface | 
    UML:Enumeration | UML:Class | UML:Subsystem | UML:Component | 
    UML:DataType | UML:ClassifierInState | UML:Exception | 
    UML15OCL.Types.SetType | UML:ProgrammingLanguageDataType | UML:Primitive | 
    UML15OCL.Types.CollectionType | UML:Node | UML15OCL.Types.SequenceType | 
    UML:AssociationClass)* >

<!ELEMENT UML:Collaboration.representedOperation (
    UML:Operation)* >

<!ELEMENT UML:Collaboration.constrainingElement (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:Collaboration.usedCollaboration (
    UML:Collaboration)* >

<!ELEMENT UML:Collaboration (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | 
    UML:Collaboration.interaction | UML:Collaboration.representedClassifier | 
    UML:Collaboration.representedOperation | UML:Collaboration.constrainingElement | 
    UML:Collaboration.usedCollaboration | XMI.extension)* >
<!ATTLIST UML:Collaboration
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   interaction IDREFS #IMPLIED
   representedClassifier IDREFS #IMPLIED
   representedOperation IDREFS #IMPLIED
   constrainingElement IDREFS #IMPLIED
   usedCollaboration IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:InteractionInstanceSet.context (
    UML:CollaborationInstanceSet)* >

<!ELEMENT UML:InteractionInstanceSet.interaction (
    UML:Interaction)* >

<!ELEMENT UML:InteractionInstanceSet.participatingStimulus (
    UML:Stimulus)* >

<!ELEMENT UML:InteractionInstanceSet (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:InteractionInstanceSet.context | 
    UML:InteractionInstanceSet.interaction | UML:InteractionInstanceSet.participatingStimulus | 
    XMI.extension)* >
<!ATTLIST UML:InteractionInstanceSet
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   context IDREFS #IMPLIED
   interaction IDREFS #IMPLIED
   participatingStimulus IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:CollaborationInstanceSet.interactionInstanceSet (
    UML:InteractionInstanceSet)* >

<!ELEMENT UML:CollaborationInstanceSet.collaboration (
    UML:Collaboration)* >

<!ELEMENT UML:CollaborationInstanceSet.participatingInstance (
    UML:SubsystemInstance | UML:Object | UML:ComponentInstance | UML:Instance | 
    UML:UseCaseInstance | UML:LinkObject | UML:NodeInstance | UML:DataValue)* >

<!ELEMENT UML:CollaborationInstanceSet.participatingLink (
    UML:Link | UML:LinkObject)* >

<!ELEMENT UML:CollaborationInstanceSet.constrainingElement (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:CollaborationInstanceSet (
    UML:ModelElement.name | UML:ModelElement.visibility | 
    UML:ModelElement.isSpecification | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:CollaborationInstanceSet.interactionInstanceSet | UML:CollaborationInstanceSet.collaboration | 
    UML:CollaborationInstanceSet.participatingInstance | UML:CollaborationInstanceSet.participatingLink | 
    UML:CollaborationInstanceSet.constrainingElement | XMI.extension)* >
<!ATTLIST UML:CollaborationInstanceSet
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   interactionInstanceSet IDREFS #IMPLIED
   collaboration IDREFS #IMPLIED
   participatingInstance IDREFS #IMPLIED
   participatingLink IDREFS #IMPLIED
   constrainingElement IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Message.interaction (UML:Interaction)* >

<!ELEMENT UML:Message.activator (UML:Message)* >

<!ELEMENT UML:Message.sender (UML:ClassifierRole)* >

<!ELEMENT UML:Message.receiver (UML:ClassifierRole)* >

<!ELEMENT UML:Message.predecessor (UML:Message)* >

<!ELEMENT UML:Message.communicationConnection (
    UML:AssociationRole)* >

<!ELEMENT UML:Message.procedure (UML:Procedure)* >

<!ELEMENT UML:Message.conformingStimulus (UML:Stimulus)* >

<!ELEMENT UML:Message (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Message.interaction | UML:Message.activator | 
    UML:Message.sender | UML:Message.receiver | UML:Message.predecessor | 
    UML:Message.communicationConnection | UML:Message.procedure | 
    UML:Message.conformingStimulus | XMI.extension)* >
<!ATTLIST UML:Message
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   interaction IDREFS #IMPLIED
   activator IDREFS #IMPLIED
   sender IDREFS #IMPLIED
   receiver IDREFS #IMPLIED
   predecessor IDREFS #IMPLIED
   communicationConnection IDREFS #IMPLIED
   procedure IDREFS #IMPLIED
   conformingStimulus IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:AssociationRole.multiplicity (UML:Multiplicity)* >

<!ELEMENT UML:AssociationRole.base (UML:AssociationRole | 
    UML:AssociationClass | UML:Association)* >

<!ELEMENT UML:AssociationRole.message (UML:Message)* >

<!ELEMENT UML:AssociationRole.conformingLink (UML:Link | 
    UML:LinkObject)* >

<!ELEMENT UML:AssociationRole (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:AssociationRole.multiplicity | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:GeneralizableElement.generalization | 
    UML:Association.connection | UML:AssociationRole.base | 
    UML:AssociationRole.message | UML:AssociationRole.conformingLink | XMI.extension)* >
<!ATTLIST UML:AssociationRole
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   connection IDREFS #IMPLIED
   base IDREFS #IMPLIED
   message IDREFS #IMPLIED
   conformingLink IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   multiplicity IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ClassifierRole.multiplicity (UML:Multiplicity)* >

<!ELEMENT UML:ClassifierRole.base (UML15OCL.Types.BagType | 
    UML:Classifier | UML:Artifact | UML15OCL.Types.TupleType | 
    UML:ClassifierRole | UML:Actor | UML15OCL.Types.OrderedSetType | 
    UML:UseCase | UML15OCL.Types.OclMessageType | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | UML:ClassifierInState | 
    UML:Exception | UML15OCL.Types.SetType | 
    UML:ProgrammingLanguageDataType | UML:Primitive | UML15OCL.Types.CollectionType | 
    UML:Node | UML15OCL.Types.SequenceType | UML:AssociationClass)* >

<!ELEMENT UML:ClassifierRole.availableFeature (UML:Operation | 
    UML:StructuralFeature | UML:Reception | UML:Attribute | UML:Feature | 
    UML:Method | UML:BehavioralFeature)* >

<!ELEMENT UML:ClassifierRole.availableContents (
    UML15OCL.Types.BagType | UML:SubmachineState | UML:LiteralValueAction | 
    UML:ReadLinkObjectEndAction | UML:LoopAction | UML15OCL.Types.OrderedSetType | 
    UML:Model | UML:Stimulus | UML:AssociationEnd | UML:LinkAction | 
    UML:Interface | UML15OCL.Expressions.OclExpression | UML:Class | 
    UML:Subsystem | UML:StubState | UML15OCL.Types.SetType | 
    UML:Operation | UML15OCL.Types.CollectionType | UML:Reception | 
    UML:Parameter | UML:Package | UML:ActivityGraph | UML:Guard | 
    UML:Variable | UML:BroadcastSignalAction | UML:JumpAction | 
    UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:ClassifierRole.conformingInstance (
    UML:SubsystemInstance | UML:Object | UML:ComponentInstance | UML:Instance | 
    UML:UseCaseInstance | UML:LinkObject | UML:NodeInstance | UML:DataValue)* >

<!ELEMENT UML:ClassifierRole (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ClassifierRole.multiplicity | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:GeneralizableElement.generalization | 
    UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | UML:ClassifierRole.base | 
    UML:ClassifierRole.availableFeature | UML:ClassifierRole.availableContents | 
    UML:ClassifierRole.conformingInstance | XMI.extension)* >
<!ATTLIST UML:ClassifierRole
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   base IDREFS #IMPLIED
   availableFeature IDREFS #IMPLIED
   availableContents IDREFS #IMPLIED
   conformingInstance IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   multiplicity IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Collaborations (UML:ClassifierRole | 
    UML:InteractionInstanceSet | UML:Interaction | UML:Message | UML:AssociationRole | 
    UML:Collaboration | UML:AssociationEndRole | UML:CollaborationInstanceSet | 
    XMI.extension)* >
<!ATTLIST UML:Collaborations
   %XMI.element.att; %XMI.link.att;>

<!-- relaxed for UML 1.4 (ArgoUML) compatibility -->

<!ELEMENT UML:State.entry (UML:Procedure | UML:CallAction |
    UML:CreateAction | UML:DestroyAction | UML:ReturnAction |
    UML:SendAction | UML:TerminateAction | UML:UninterpretedAction)* >

<!ELEMENT UML:State.exit (UML:Procedure | UML:CallAction |
    UML:CreateAction | UML:DestroyAction | UML:ReturnAction |
    UML:SendAction | UML:TerminateAction | UML:UninterpretedAction)* >

<!ELEMENT UML:State.deferrableEvent (UML:Event | 
    UML:ChangeEvent | UML:CallEvent | UML:TimeEvent | UML:SignalEvent)* >

<!ELEMENT UML:State.internalTransition (UML:Transition)* >

<!ELEMENT UML:State.doActivity (UML:Procedure | UML:CallAction |
    UML:CreateAction | UML:DestroyAction | UML:ReturnAction |
    UML:SendAction | UML:TerminateAction | UML:UninterpretedAction)* >

<!ELEMENT UML:State.stateMachine (UML:StateMachine | 
    UML:ActivityGraph)* >

<!ELEMENT UML:State (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:StateVertex.container | UML:StateVertex.outgoing | 
    UML:StateVertex.incoming | UML:State.entry | UML:State.exit | 
    UML:State.deferrableEvent | UML:State.internalTransition | UML:State.doActivity | 
    UML:State.stateMachine | XMI.extension)* >
<!ATTLIST UML:State
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   container IDREFS #IMPLIED
   outgoing IDREFS #IMPLIED
   incoming IDREFS #IMPLIED
   entry IDREFS #IMPLIED
   exit IDREFS #IMPLIED
   deferrableEvent IDREFS #IMPLIED
   internalTransition IDREFS #IMPLIED
   doActivity IDREFS #IMPLIED
   stateMachine IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:CallEvent.operation (UML:Operation)* >

<!ELEMENT UML:CallEvent (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Event.parameter | UML:CallEvent.operation | 
    XMI.extension)* >
<!ATTLIST UML:CallEvent
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   parameter IDREFS #IMPLIED
   operation IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Guard.expression (UML:BooleanExpression | 
    UML15OCL.Expressions.ExpressionInOcl)* >

<!ELEMENT UML:Guard.transition (UML:Transition)* >

<!ELEMENT UML:Guard (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Guard.expression | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Guard.transition | 
    XMI.extension)* >
<!ATTLIST UML:Guard
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   transition IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   expression IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:StubState.referenceState (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:StubState (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:StubState.referenceState | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:StateVertex.container | UML:StateVertex.outgoing | UML:StateVertex.incoming | 
    XMI.extension)* >
<!ATTLIST UML:StubState
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   container IDREFS #IMPLIED
   outgoing IDREFS #IMPLIED
   incoming IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   referenceState CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:SynchState.bound (#PCDATA | XMI.reference)* >

<!ELEMENT UML:SynchState (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:SynchState.bound | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:StateVertex.container | UML:StateVertex.outgoing | UML:StateVertex.incoming | 
    XMI.extension)* >
<!ATTLIST UML:SynchState
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   container IDREFS #IMPLIED
   outgoing IDREFS #IMPLIED
   incoming IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   bound CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Pseudostate.kind EMPTY>
<!ATTLIST UML:Pseudostate.kind
   xmi.value (choice|deepHistory|fork|initial|join|junction|shallowHistory) #REQUIRED>

<!ELEMENT UML:Pseudostate (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Pseudostate.kind | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:StateVertex.container | UML:StateVertex.outgoing | UML:StateVertex.incoming | 
    XMI.extension)* >
<!ATTLIST UML:Pseudostate
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   container IDREFS #IMPLIED
   outgoing IDREFS #IMPLIED
   incoming IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   kind (choice|deepHistory|fork|initial|join|junction|shallowHistory) #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ChangeEvent.changeExpression (
    UML:BooleanExpression | UML15OCL.Expressions.ExpressionInOcl)* >

<!ELEMENT UML:ChangeEvent (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ChangeEvent.changeExpression | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Event.parameter | 
    XMI.extension)* >
<!ATTLIST UML:ChangeEvent
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   parameter IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   changeExpression IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:TimeEvent.when (UML:TimeExpression)* >

<!ELEMENT UML:TimeEvent (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | UML:TimeEvent.when | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Event.parameter | XMI.extension)* >
<!ATTLIST UML:TimeEvent
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   parameter IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   when IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:FinalState (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:StateVertex.container | UML:StateVertex.outgoing | 
    UML:StateVertex.incoming | UML:State.entry | UML:State.exit | 
    UML:State.deferrableEvent | UML:State.internalTransition | UML:State.doActivity | 
    UML:State.stateMachine | XMI.extension)* >
<!ATTLIST UML:FinalState
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   container IDREFS #IMPLIED
   outgoing IDREFS #IMPLIED
   incoming IDREFS #IMPLIED
   entry IDREFS #IMPLIED
   exit IDREFS #IMPLIED
   deferrableEvent IDREFS #IMPLIED
   internalTransition IDREFS #IMPLIED
   doActivity IDREFS #IMPLIED
   stateMachine IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:SubmachineState.submachine (UML:StateMachine | 
    UML:ActivityGraph)* >

<!ELEMENT UML:SubmachineState (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:CompositeState.isConcurrent | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:StateVertex.container | UML:StateVertex.outgoing | UML:StateVertex.incoming | 
    UML:State.entry | UML:State.exit | UML:State.deferrableEvent | 
    UML:State.internalTransition | UML:State.doActivity | UML:State.stateMachine | 
    UML:CompositeState.subvertex | UML:SubmachineState.submachine | XMI.extension)* >
<!ATTLIST UML:SubmachineState
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   container IDREFS #IMPLIED
   outgoing IDREFS #IMPLIED
   incoming IDREFS #IMPLIED
   entry IDREFS #IMPLIED
   exit IDREFS #IMPLIED
   deferrableEvent IDREFS #IMPLIED
   internalTransition IDREFS #IMPLIED
   doActivity IDREFS #IMPLIED
   stateMachine IDREFS #IMPLIED
   subvertex IDREFS #IMPLIED
   submachine IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isConcurrent CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:SimpleState (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:StateVertex.container | UML:StateVertex.outgoing | 
    UML:StateVertex.incoming | UML:State.entry | UML:State.exit | 
    UML:State.deferrableEvent | UML:State.internalTransition | UML:State.doActivity | 
    UML:State.stateMachine | XMI.extension)* >
<!ATTLIST UML:SimpleState
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   container IDREFS #IMPLIED
   outgoing IDREFS #IMPLIED
   incoming IDREFS #IMPLIED
   entry IDREFS #IMPLIED
   exit IDREFS #IMPLIED
   deferrableEvent IDREFS #IMPLIED
   internalTransition IDREFS #IMPLIED
   doActivity IDREFS #IMPLIED
   stateMachine IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:StateMachine.context (UML15OCL.Types.BagType | 
    UML:SubmachineState | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML15OCL.Types.OrderedSetType | UML:Model | 
    UML:Stimulus | UML:AssociationEnd | UML:LinkAction | UML:Interface | 
    UML15OCL.Expressions.OclExpression | UML:Class | UML:Subsystem | UML:StubState | 
    UML15OCL.Types.SetType | UML:Operation | UML15OCL.Types.CollectionType | 
    UML:Reception | UML:Parameter | UML:Package | UML:ActivityGraph | 
    UML:Guard | UML:Variable | UML:BroadcastSignalAction | 
    UML:JumpAction | UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:StateMachine.top (UML:CallState | 
    UML:SimpleState | UML:SubactivityState | UML:FinalState | 
    UML:ObjectFlowState | UML:ActionState | UML:State | UML:SubmachineState | 
    UML:CompositeState)* >

<!ELEMENT UML:StateMachine.transitions (UML:Transition)* >

<!ELEMENT UML:StateMachine.submachineState (
    UML:SubactivityState | UML:SubmachineState)* >

<!ELEMENT UML:StateMachine (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:StateMachine.context | UML:StateMachine.top | 
    UML:StateMachine.transitions | UML:StateMachine.submachineState | XMI.extension)* >
<!ATTLIST UML:StateMachine
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   context IDREFS #IMPLIED
   top IDREFS #IMPLIED
   transitions IDREFS #IMPLIED
   submachineState IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Event.parameter (UML:Parameter)* >

<!ELEMENT UML:Event (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Event.parameter | XMI.extension)* >
<!ATTLIST UML:Event
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   parameter IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:StateVertex.container (UML:SubactivityState | 
    UML:SubmachineState | UML:CompositeState)* >

<!ELEMENT UML:StateVertex.outgoing (UML:Transition)* >

<!ELEMENT UML:StateVertex.incoming (UML:Transition)* >

<!ELEMENT UML:StateVertex (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:StateVertex.container | UML:StateVertex.outgoing | 
    UML:StateVertex.incoming | XMI.extension)* >
<!ATTLIST UML:StateVertex
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   container IDREFS #IMPLIED
   outgoing IDREFS #IMPLIED
   incoming IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:CompositeState.isConcurrent (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:CompositeState.subvertex (UML:SimpleState | 
    UML:SubactivityState | UML:FinalState | UML:StubState | UML:SubmachineState | 
    UML:CompositeState | UML:CallState | UML:StateVertex | UML:ObjectFlowState | 
    UML:ActionState | UML:State | UML:SynchState | UML:Pseudostate)* >

<!ELEMENT UML:CompositeState (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:CompositeState.isConcurrent | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:StateVertex.container | UML:StateVertex.outgoing | UML:StateVertex.incoming | 
    UML:State.entry | UML:State.exit | UML:State.deferrableEvent | 
    UML:State.internalTransition | UML:State.doActivity | UML:State.stateMachine | 
    UML:CompositeState.subvertex | XMI.extension)* >
<!ATTLIST UML:CompositeState
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   container IDREFS #IMPLIED
   outgoing IDREFS #IMPLIED
   incoming IDREFS #IMPLIED
   entry IDREFS #IMPLIED
   exit IDREFS #IMPLIED
   deferrableEvent IDREFS #IMPLIED
   internalTransition IDREFS #IMPLIED
   doActivity IDREFS #IMPLIED
   stateMachine IDREFS #IMPLIED
   subvertex IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isConcurrent CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Transition.guard (UML:Guard)* >

<!ELEMENT UML:Transition.effect (UML:CallAction | UML:CreateAction | 
    UML:DestroyAction | UML:ReturnAction | UML:SendAction |
    UML:TerminateAction | UML:UninterpretedAction |UML:Procedure)* > 

<!ELEMENT UML:Transition.trigger (UML:Event | 
    UML:ChangeEvent | UML:CallEvent | UML:TimeEvent | UML:SignalEvent)* >

<!ELEMENT UML:Transition.source (UML:SimpleState | 
    UML:SubactivityState | UML:FinalState | UML:StubState | UML:SubmachineState | 
    UML:CompositeState | UML:CallState | UML:StateVertex | UML:ObjectFlowState | 
    UML:ActionState | UML:State | UML:SynchState | UML:Pseudostate)* >

<!ELEMENT UML:Transition.target (UML:SimpleState | 
    UML:SubactivityState | UML:FinalState | UML:StubState | UML:SubmachineState | 
    UML:CompositeState | UML:CallState | UML:StateVertex | UML:ObjectFlowState | 
    UML:ActionState | UML:State | UML:SynchState | UML:Pseudostate)* >

<!ELEMENT UML:Transition.stateMachine (UML:StateMachine | 
    UML:ActivityGraph)* >

<!ELEMENT UML:Transition (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Transition.guard | UML:Transition.effect | 
    UML:Transition.trigger | UML:Transition.source | UML:Transition.target | 
    UML:Transition.stateMachine | XMI.extension)* >
<!ATTLIST UML:Transition
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   guard IDREFS #IMPLIED
   effect IDREFS #IMPLIED
   trigger IDREFS #IMPLIED
   source IDREFS #IMPLIED
   target IDREFS #IMPLIED
   stateMachine IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:SignalEvent.signal (UML:Signal | UML:Exception)* >

<!ELEMENT UML:SignalEvent (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Event.parameter | UML:SignalEvent.signal | 
    XMI.extension)* >
<!ATTLIST UML:SignalEvent
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   parameter IDREFS #IMPLIED
   signal IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:State_Machines (UML:SimpleState | 
    UML:SubactivityState | UML:TimeEvent | UML:SignalEvent | UML:FinalState | 
    UML:Guard | UML:StubState | UML:StateMachine | 
    UML:SubmachineState | UML:CompositeState | UML:Event | UML:CallState | 
    UML:ChangeEvent | UML:CallEvent | UML:Transition | UML:StateVertex | 
    UML:ObjectFlowState | UML:ActionState | UML:State | UML:SynchState | 
    UML:Pseudostate | UML:ActivityGraph | XMI.extension)* >
<!ATTLIST UML:State_Machines
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ActionState.isDynamic (#PCDATA | XMI.reference)* >

<!ELEMENT UML:ActionState.dynamicArguments (
    UML:ArgListsExpression)* >

<!ELEMENT UML:ActionState.dynamicMultiplicity (
    UML:Multiplicity)* >

<!ELEMENT UML:ActionState (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ActionState.isDynamic | UML:ActionState.dynamicArguments | 
    UML:ActionState.dynamicMultiplicity | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:StateVertex.container | UML:StateVertex.outgoing | UML:StateVertex.incoming | 
    UML:State.entry | UML:State.exit | UML:State.deferrableEvent | 
    UML:State.internalTransition | UML:State.doActivity | UML:State.stateMachine | 
    XMI.extension)* >
<!ATTLIST UML:ActionState
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   container IDREFS #IMPLIED
   outgoing IDREFS #IMPLIED
   incoming IDREFS #IMPLIED
   entry IDREFS #IMPLIED
   exit IDREFS #IMPLIED
   deferrableEvent IDREFS #IMPLIED
   internalTransition IDREFS #IMPLIED
   doActivity IDREFS #IMPLIED
   stateMachine IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isDynamic CDATA #IMPLIED
   dynamicArguments IDREFS #IMPLIED
   dynamicMultiplicity IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ClassifierInState.type (UML15OCL.Types.BagType | 
    UML:Classifier | UML:Artifact | UML15OCL.Types.TupleType | 
    UML:ClassifierRole | UML:Actor | UML15OCL.Types.OrderedSetType | 
    UML:UseCase | UML15OCL.Types.OclMessageType | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | UML:ClassifierInState | 
    UML:Exception | UML15OCL.Types.SetType | 
    UML:ProgrammingLanguageDataType | UML:Primitive | UML15OCL.Types.CollectionType | 
    UML:Node | UML15OCL.Types.SequenceType | UML:AssociationClass)* >

<!ELEMENT UML:ClassifierInState.inState (UML:CallState | 
    UML:SimpleState | UML:SubactivityState | UML:FinalState | 
    UML:ObjectFlowState | UML:ActionState | UML:State | UML:SubmachineState | 
    UML:CompositeState)* >

<!ELEMENT UML:ClassifierInState (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | UML:ClassifierInState.type | 
    UML:ClassifierInState.inState | XMI.extension)* >
<!ATTLIST UML:ClassifierInState
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   type IDREFS #IMPLIED
   inState IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:CallState (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ActionState.isDynamic | UML:ActionState.dynamicArguments | 
    UML:ActionState.dynamicMultiplicity | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:StateVertex.container | UML:StateVertex.outgoing | UML:StateVertex.incoming | 
    UML:State.entry | UML:State.exit | UML:State.deferrableEvent | 
    UML:State.internalTransition | UML:State.doActivity | UML:State.stateMachine | 
    XMI.extension)* >
<!ATTLIST UML:CallState
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   container IDREFS #IMPLIED
   outgoing IDREFS #IMPLIED
   incoming IDREFS #IMPLIED
   entry IDREFS #IMPLIED
   exit IDREFS #IMPLIED
   deferrableEvent IDREFS #IMPLIED
   internalTransition IDREFS #IMPLIED
   doActivity IDREFS #IMPLIED
   stateMachine IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isDynamic CDATA #IMPLIED
   dynamicArguments IDREFS #IMPLIED
   dynamicMultiplicity IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Partition.contents (UML15OCL.Types.BagType | 
    UML:SubmachineState | UML:LiteralValueAction | UML:ReadLinkObjectEndAction | 
    UML:LoopAction | UML15OCL.Types.OrderedSetType | UML:Model | 
    UML:Stimulus | UML:AssociationEnd | UML:LinkAction | UML:Interface | 
    UML15OCL.Expressions.OclExpression | UML:Class | UML:Subsystem | UML:StubState | 
    UML15OCL.Types.SetType | UML:Operation | UML15OCL.Types.CollectionType | 
    UML:Reception | UML:Parameter | UML:Package | UML:ActivityGraph | 
    UML:Guard | UML:Variable | UML:BroadcastSignalAction | 
    UML:JumpAction | UML:CallProcedureAction | UML:CallAction | UML:ComponentInstance | 
    UML:ReadLinkObjectQualifierAction | UML15OCL.Expressions.EnumLiteralExp | 
    UML:Generalization | UML15OCL.Expressions.BooleanLiteralExp | 
    UML:SimpleState | UML15OCL.Expressions.FeatureCallExp | UML:FinalState | 
    UML:DataType | UML15OCL.Expressions.StringLiteralExp | 
    UML15OCL.Expressions.NavigationCallExp | UML:ExtensionPoint | UML:ReadLinkAction | 
    UML:DataValue | UML:InputPin | 
    UML15OCL.Expressions.CollectionLiteralExp | UML:TaggedValue | UML:Feature | UML:Pin | 
    UML:Pseudostate | UML15OCL.Expressions.AttributeCallExp | UML:DataFlow | 
    UML:Attribute | UML:ReadIsClassifiedObjectAction | UML:Constraint | 
    UML:ClassifierRole | UML:CallEvent | UML:Actor | 
    UML15OCL.Expressions.NumericLiteralExp | UML:PrimitiveAction | UML:WriteLinkAction | 
    UML:Enumeration | UML:Binding | UML:StateVertex | 
    UML:AddAttributeValueAction | UML:WriteAttributeAction | 
    UML15OCL.Expressions.IterateExp | UML:AssociationRole | 
    UML15OCL.Expressions.CollectionLiteralPart | UML:NodeInstance | UML:Node | 
    UML15OCL.Expressions.IteratorExp | UML15OCL.Expressions.CollectionRange | 
    UML:SignalEvent | UML15OCL.Expressions.PrimitiveLiteralExp | 
    UML:TestIdentityAction | UML15OCL.Expressions.UnspecifiedValueExp | 
    UML:EnumerationLiteral | UML:Artifact | UML:Method | UML:ObjectFlowState | 
    UML:DestroyObjectAction | UML:IterateAction | 
    UML15OCL.Expressions.OclOperationWithTypeArgExp | UML:TimeEvent | UML:CreateObjectAction | 
    UML:Component | UML:OutputPin | UML:MarshalAction | UML:FilterAction | 
    UML:RemoveAttributeValueAction | UML:ClearAttributeAction | UML:BehavioralFeature | 
    UML:NullAction | UML:Exception | UML:CallState | UML:Transition | 
    UML:Primitive | UML:ProgrammingLanguageDataType | UML:ActionState | 
    UML:State | UML15OCL.Expressions.TupleLiteralExp | UML:SynchState | 
    UML:ApplyFunctionAction | UML:Action | UML:Interaction | 
    UML:CallOperationAction | UML:AsynchronousInvocationAction | 
    UML15OCL.Expressions.CollectionItem | UML15OCL.Types.TupleType | UML:InteractionInstanceSet | 
    UML:Event | UML15OCL.Expressions.RealLiteralExp | 
    UML15OCL.Types.OclMessageType | UML:PrimitiveFunction | UML:Extend | 
    UML:WriteVariableAction | UML:LinkEnd | UML:Partition | 
    UML:ExplicitInvocationActtion | UML15OCL.Expressions.IntegerLiteralExp | 
    UML:CodeAction | UML:StructuralFeature | UML15OCL.Expressions.LetExp | 
    UML:ReadAttributeAction | UML:Include | UML:SubsystemInstance | 
    UML15OCL.Expressions.PropertyCallExp | UML:Message | UML:StateMachine | UML:Procedure | 
    UML15OCL.Expressions.VariableExp | UML:Stereotype | UML:Relationship | UML:UseCase | 
    UML:GeneralizableElement | UML:Comment | UML:AttributeAction | UML:Signal | 
    UML15OCL.Types.VoidType | UML:ArgumentSpecification | UML:Permission | 
    UML:Instance | UML:UseCaseInstance | UML:Namespace | UML:Association | 
    UML:CollectionAction | UML15OCL.Expressions.LiteralExp | UML:Usage | 
    UML:SubactivityState | UML:Classifier | UML:SendSignalAction | 
    UML15OCL.Expressions.LoopExp | UML:ReclassifyObjectAction | UML:ClearVariableAction | 
    UML15OCL.Expressions.OperationCallExp | UML:GroupAction | UML:LinkObject | 
    UML:AssociationEndRole | UML:RemoveVariableValueAction | 
    UML15OCL.Expressions.AssociationEndCallExp | UML:SynchronousInvocationAction | UML:Object | 
    UML15OCL.Expressions.AssociationClassCallExp | UML:ReadVariableAction | UML:UnmarshalAction | 
    UML:CollaborationInstanceSet | UML:ClassifierInState | UML:CompositeState | 
    UML:Abstraction | UML15OCL.Expressions.IfExp | UML:ControlFlow | 
    UML:Dependency | UML:AssociationClass | 
    UML15OCL.Expressions.OclMessageArg | UML:CreateLinkAction | UML:MapAction | 
    UML:VariableAction | UML:CreateLinkObjectAction | 
    UML15OCL.Expressions.ModelPropertyCallExp | UML:ReadExtentAction | UML:InvocationAction | 
    UML:ModelElement | UML15OCL.Expressions.OclMessageExp | UML:ReduceAction | 
    UML15OCL.Expressions.VariableDeclaration | UML:Collaboration | UML:ReadSelfAction | 
    UML:DestroyLinkAction | UML:Flow | UML:TagDefinition | UML:ChangeEvent | 
    UML:StartObjectStateMachineAction | UML:AttributeLink | UML:ClearAssociationAction | 
    UML:Link | UML:AddVariableValueAction | UML:HandlerAction | 
    UML15OCL.Types.SequenceType | UML:ConditionalAction)* >

<!ELEMENT UML:Partition.activityGraph (UML:ActivityGraph)* >

<!ELEMENT UML:Partition (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Partition.contents | UML:Partition.activityGraph | 
    XMI.extension)* >
<!ATTLIST UML:Partition
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   contents IDREFS #IMPLIED
   activityGraph IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:SubactivityState.isDynamic (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:SubactivityState.dynamicArguments (
    UML:ArgListsExpression)* >

<!ELEMENT UML:SubactivityState.dynamicMultiplicity (
    UML:Multiplicity)* >

<!ELEMENT UML:SubactivityState (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:CompositeState.isConcurrent | UML:SubactivityState.isDynamic | 
    UML:SubactivityState.dynamicArguments | UML:SubactivityState.dynamicMultiplicity | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:StateVertex.container | UML:StateVertex.outgoing | 
    UML:StateVertex.incoming | UML:State.entry | UML:State.exit | 
    UML:State.deferrableEvent | UML:State.internalTransition | UML:State.doActivity | 
    UML:State.stateMachine | UML:CompositeState.subvertex | 
    UML:SubmachineState.submachine | XMI.extension)* >
<!ATTLIST UML:SubactivityState
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   container IDREFS #IMPLIED
   outgoing IDREFS #IMPLIED
   incoming IDREFS #IMPLIED
   entry IDREFS #IMPLIED
   exit IDREFS #IMPLIED
   deferrableEvent IDREFS #IMPLIED
   internalTransition IDREFS #IMPLIED
   doActivity IDREFS #IMPLIED
   stateMachine IDREFS #IMPLIED
   subvertex IDREFS #IMPLIED
   submachine IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isConcurrent CDATA #IMPLIED
   isDynamic CDATA #IMPLIED
   dynamicArguments IDREFS #IMPLIED
   dynamicMultiplicity IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ActivityGraph.partition (UML:Partition)* >

<!ELEMENT UML:ActivityGraph (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:StateMachine.context | UML:StateMachine.top | 
    UML:StateMachine.transitions | UML:StateMachine.submachineState | 
    UML:ActivityGraph.partition | XMI.extension)* >
<!ATTLIST UML:ActivityGraph
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   context IDREFS #IMPLIED
   top IDREFS #IMPLIED
   transitions IDREFS #IMPLIED
   submachineState IDREFS #IMPLIED
   partition IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ObjectFlowState.isSynch (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:ObjectFlowState.parameter (UML:Parameter)* >

<!ELEMENT UML:ObjectFlowState.type (UML15OCL.Types.BagType | 
    UML:Classifier | UML:Artifact | UML15OCL.Types.TupleType | 
    UML:ClassifierRole | UML:Actor | UML15OCL.Types.OrderedSetType | 
    UML:UseCase | UML15OCL.Types.OclMessageType | UML:Signal | 
    UML15OCL.Types.VoidType | UML:Interface | UML:Enumeration | UML:Class | 
    UML:Subsystem | UML:Component | UML:DataType | UML:ClassifierInState | 
    UML:Exception | UML15OCL.Types.SetType | 
    UML:ProgrammingLanguageDataType | UML:Primitive | UML15OCL.Types.CollectionType | 
    UML:Node | UML15OCL.Types.SequenceType | UML:AssociationClass)* >

<!ELEMENT UML:ObjectFlowState (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ObjectFlowState.isSynch | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:StateVertex.container | UML:StateVertex.outgoing | UML:StateVertex.incoming | 
    UML:State.entry | UML:State.exit | UML:State.deferrableEvent | 
    UML:State.internalTransition | UML:State.doActivity | UML:State.stateMachine | 
    UML:ObjectFlowState.parameter | UML:ObjectFlowState.type | XMI.extension)* >
<!ATTLIST UML:ObjectFlowState
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   container IDREFS #IMPLIED
   outgoing IDREFS #IMPLIED
   incoming IDREFS #IMPLIED
   entry IDREFS #IMPLIED
   exit IDREFS #IMPLIED
   deferrableEvent IDREFS #IMPLIED
   internalTransition IDREFS #IMPLIED
   doActivity IDREFS #IMPLIED
   stateMachine IDREFS #IMPLIED
   parameter IDREFS #IMPLIED
   type IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isSynch CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Activity_Graphs (UML:CallState | 
    UML:SubactivityState | UML:Partition | UML:ObjectFlowState | UML:ActionState | 
    UML:ClassifierInState | UML:ActivityGraph | XMI.extension)* >
<!ATTLIST UML:Activity_Graphs
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Extend.condition (UML:BooleanExpression | 
    UML15OCL.Expressions.ExpressionInOcl)* >

<!ELEMENT UML:Extend.base (UML:UseCase)* >

<!ELEMENT UML:Extend.extension (UML:UseCase)* >

<!ELEMENT UML:Extend.extensionPoint (UML:ExtensionPoint)* >

<!ELEMENT UML:Extend (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:Extend.condition | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | UML:Extend.base | 
    UML:Extend.extension | UML:Extend.extensionPoint | XMI.extension)* >
<!ATTLIST UML:Extend
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   base IDREFS #IMPLIED
   extension IDREFS #IMPLIED
   extensionPoint IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   condition IDREFS #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Actor (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | XMI.extension)* >
<!ATTLIST UML:Actor
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:UseCase.extend (UML:Extend)* >

<!ELEMENT UML:UseCase.include (UML:Include)* >

<!ELEMENT UML:UseCase.extensionPoint (UML:ExtensionPoint)* >

<!ELEMENT UML:UseCase (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:GeneralizableElement.isRoot | UML:GeneralizableElement.isLeaf | 
    UML:GeneralizableElement.isAbstract | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:GeneralizableElement.generalization | UML:Namespace.ownedElement | UML:Classifier.feature | 
    UML:Classifier.powertypeRange | UML:UseCase.extend | UML:UseCase.include | 
    UML:UseCase.extensionPoint | XMI.extension)* >
<!ATTLIST UML:UseCase
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   generalization IDREFS #IMPLIED
   ownedElement IDREFS #IMPLIED
   feature IDREFS #IMPLIED
   powertypeRange IDREFS #IMPLIED
   extend IDREFS #IMPLIED
   include IDREFS #IMPLIED
   extensionPoint IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   isRoot CDATA #IMPLIED
   isLeaf CDATA #IMPLIED
   isAbstract CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Include.addition (UML:UseCase)* >

<!ELEMENT UML:Include.base (UML:UseCase)* >

<!ELEMENT UML:Include (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Include.addition | UML:Include.base | 
    XMI.extension)* >
<!ATTLIST UML:Include
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   addition IDREFS #IMPLIED
   base IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:ExtensionPoint.location (#PCDATA | 
    XMI.reference)* >

<!ELEMENT UML:ExtensionPoint.useCase (UML:UseCase)* >

<!ELEMENT UML:ExtensionPoint (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ExtensionPoint.location | UML:ModelElement.namespace | 
    UML:ModelElement.clientDependency | UML:ModelElement.constraint | 
    UML:ModelElement.targetFlow | UML:ModelElement.sourceFlow | 
    UML:ModelElement.comment | UML:ModelElement.templateParameter | 
    UML:ModelElement.stereotype | UML:ModelElement.taggedValue | 
    UML:ExtensionPoint.useCase | XMI.extension)* >
<!ATTLIST UML:ExtensionPoint
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   useCase IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   location CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:UseCaseInstance (UML:ModelElement.name | 
    UML:ModelElement.visibility | UML:ModelElement.isSpecification | 
    UML:ModelElement.namespace | UML:ModelElement.clientDependency | 
    UML:ModelElement.constraint | UML:ModelElement.targetFlow | 
    UML:ModelElement.sourceFlow | UML:ModelElement.comment | 
    UML:ModelElement.templateParameter | UML:ModelElement.stereotype | 
    UML:ModelElement.taggedValue | UML:Instance.classifier | UML:Instance.linkEnd | 
    UML:Instance.slot | UML:Instance.componentInstance | 
    UML:Instance.ownedInstance | UML:Instance.ownedLink | XMI.extension)* >
<!ATTLIST UML:UseCaseInstance
   namespace IDREFS #IMPLIED
   clientDependency IDREFS #IMPLIED
   constraint IDREFS #IMPLIED
   targetFlow IDREFS #IMPLIED
   sourceFlow IDREFS #IMPLIED
   comment IDREFS #IMPLIED
   templateParameter IDREFS #IMPLIED
   stereotype IDREFS #IMPLIED
   taggedValue IDREFS #IMPLIED
   classifier IDREFS #IMPLIED
   linkEnd IDREFS #IMPLIED
   slot IDREFS #IMPLIED
   componentInstance IDREFS #IMPLIED
   ownedInstance IDREFS #IMPLIED
   ownedLink IDREFS #IMPLIED
   name CDATA #IMPLIED
   visibility (public|protected|private|package) #IMPLIED
   isSpecification CDATA #IMPLIED
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:Use_Cases (UML:Include | UML:Actor | 
    UML:UseCaseInstance | UML:UseCase | UML:Extend | UML:ExtensionPoint | 
    XMI.extension)* >
<!ATTLIST UML:Use_Cases
   %XMI.element.att; %XMI.link.att;>

<!ELEMENT UML:UML (XMI.extension)* >
<!ATTLIST UML:UML
   %XMI.element.att; %XMI.link.att;>
