| <?xml version="1.0" encoding="UTF-8"?> |
| <xmi:XMI xmi:version="20110701" xmlns:xmi="http://www.omg.org/spec/XMI/20110701" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Ecore="http://www.eclipse.org/uml2/schemas/Ecore/5" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:l2="http://www.eclipse.org/uml2/4.0.0/UML/Profile/L2" xmlns:l3="http://www.eclipse.org/uml2/4.0.0/UML/Profile/L3" xmlns:uml="http://www.eclipse.org/uml2/4.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/uml2/schemas/Ecore/5 pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA"> |
| <uml:Model xmi:id="_0" name="UML" URI="http://www.omg.org/spec/UML/20110701"> |
| <packageImport xmi:id="_packageImport.0"> |
| <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/> |
| </packageImport> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_action_actionExecutionSpecification" name="A_action_actionExecutionSpecification" visibility="private" memberEnd="ActionExecutionSpecification-action A_action_actionExecutionSpecification-actionExecutionSpecification"> |
| <ownedEnd xmi:id="A_action_actionExecutionSpecification-actionExecutionSpecification" name="actionExecutionSpecification" visibility="public" type="ActionExecutionSpecification" association="A_action_actionExecutionSpecification"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_action_actionExecutionSpecification-actionExecutionSpecification-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_action_actionExecutionSpecification-actionExecutionSpecification-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_action_interaction" name="A_action_interaction" visibility="private" memberEnd="Interaction-action A_action_interaction-interaction"> |
| <ownedEnd xmi:id="A_action_interaction-interaction" name="interaction" visibility="public" type="Interaction" subsettedProperty="Element-owner" association="A_action_interaction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_action_interaction-interaction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_actualGate_interactionUse" name="A_actualGate_interactionUse" visibility="private" memberEnd="InteractionUse-actualGate A_actualGate_interactionUse-interactionUse"> |
| <ownedEnd xmi:id="A_actualGate_interactionUse-interactionUse" name="interactionUse" visibility="public" type="InteractionUse" subsettedProperty="Element-owner" association="A_actualGate_interactionUse"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_actualGate_interactionUse-interactionUse-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_actual_templateParameterSubstitution" name="A_actual_templateParameterSubstitution" visibility="private" memberEnd="TemplateParameterSubstitution-actual A_actual_templateParameterSubstitution-templateParameterSubstitution"> |
| <ownedEnd xmi:id="A_actual_templateParameterSubstitution-templateParameterSubstitution" name="templateParameterSubstitution" visibility="public" type="TemplateParameterSubstitution" association="A_actual_templateParameterSubstitution"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_actual_templateParameterSubstitution-templateParameterSubstitution-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_actual_templateParameterSubstitution-templateParameterSubstitution-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_addition_include" name="A_addition_include" visibility="private" memberEnd="Include-addition A_addition_include-include"> |
| <ownedEnd xmi:id="A_addition_include-include" name="include" visibility="public" type="Include" subsettedProperty="A_target_directedRelationship-directedRelationship" association="A_addition_include"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_addition_include-include-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_addition_include-include-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_annotatedElement_comment" name="A_annotatedElement_comment" visibility="private" memberEnd="Comment-annotatedElement A_annotatedElement_comment-comment"> |
| <ownedEnd xmi:id="A_annotatedElement_comment-comment" name="comment" visibility="public" type="Comment" association="A_annotatedElement_comment"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_annotatedElement_comment-comment-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_annotatedElement_comment-comment-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_appliedProfile_profileApplication" name="A_appliedProfile_profileApplication" visibility="private" memberEnd="ProfileApplication-appliedProfile A_appliedProfile_profileApplication-profileApplication"> |
| <ownedEnd xmi:id="A_appliedProfile_profileApplication-profileApplication" name="profileApplication" visibility="public" type="ProfileApplication" subsettedProperty="A_target_directedRelationship-directedRelationship" association="A_appliedProfile_profileApplication"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_appliedProfile_profileApplication-profileApplication-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_appliedProfile_profileApplication-profileApplication-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_argument_interactionUse" name="A_argument_interactionUse" visibility="private" memberEnd="InteractionUse-argument A_argument_interactionUse-interactionUse"> |
| <ownedEnd xmi:id="A_argument_interactionUse-interactionUse" name="interactionUse" visibility="public" type="InteractionUse" subsettedProperty="Element-owner" association="A_argument_interactionUse"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_argument_interactionUse-interactionUse-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_argument_invocationAction" name="A_argument_invocationAction" visibility="private" memberEnd="InvocationAction-argument A_argument_invocationAction-invocationAction"> |
| <ownedEnd xmi:id="A_argument_invocationAction-invocationAction" name="invocationAction" visibility="public" type="InvocationAction" subsettedProperty="A_input_action-action" association="A_argument_invocationAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_argument_invocationAction-invocationAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_argument_message" name="A_argument_message" visibility="private" memberEnd="Message-argument A_argument_message-message"> |
| <ownedEnd xmi:id="A_argument_message-message" name="message" visibility="public" type="Message" subsettedProperty="Element-owner" association="A_argument_message"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_argument_message-message-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_association_clearAssociationAction" name="A_association_clearAssociationAction" visibility="private" memberEnd="ClearAssociationAction-association A_association_clearAssociationAction-clearAssociationAction"> |
| <ownedEnd xmi:id="A_association_clearAssociationAction-clearAssociationAction" name="clearAssociationAction" visibility="public" type="ClearAssociationAction" association="A_association_clearAssociationAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_association_clearAssociationAction-clearAssociationAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_attribute_classifier" name="A_attribute_classifier" visibility="private" isDerived="true" memberEnd="Classifier-attribute A_attribute_classifier-classifier"> |
| <ownedEnd xmi:id="A_attribute_classifier-classifier" name="classifier" visibility="public" type="Classifier" subsettedProperty="Feature-featuringClassifier RedefinableElement-redefinitionContext" association="A_attribute_classifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_attribute_classifier-classifier-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_before_toAfter" name="A_before_toAfter" visibility="private" memberEnd="GeneralOrdering-before OccurrenceSpecification-toAfter"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_behavior_behaviorExecutionSpecification" name="A_behavior_behaviorExecutionSpecification" visibility="private" memberEnd="BehaviorExecutionSpecification-behavior A_behavior_behaviorExecutionSpecification-behaviorExecutionSpecification"> |
| <ownedEnd xmi:id="A_behavior_behaviorExecutionSpecification-behaviorExecutionSpecification" name="behaviorExecutionSpecification" visibility="public" type="BehaviorExecutionSpecification" association="A_behavior_behaviorExecutionSpecification"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_behavior_behaviorExecutionSpecification-behaviorExecutionSpecification-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_behavior_behaviorExecutionSpecification-behaviorExecutionSpecification-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_behavior_callBehaviorAction" name="A_behavior_callBehaviorAction" visibility="private" memberEnd="CallBehaviorAction-behavior A_behavior_callBehaviorAction-callBehaviorAction"> |
| <ownedEnd xmi:id="A_behavior_callBehaviorAction-callBehaviorAction" name="callBehaviorAction" visibility="public" type="CallBehaviorAction" association="A_behavior_callBehaviorAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_behavior_callBehaviorAction-callBehaviorAction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_behavior_callBehaviorAction-callBehaviorAction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_behavior_opaqueExpression" name="A_behavior_opaqueExpression" visibility="private" memberEnd="OpaqueExpression-behavior A_behavior_opaqueExpression-opaqueExpression"> |
| <ownedEnd xmi:id="A_behavior_opaqueExpression-opaqueExpression" name="opaqueExpression" visibility="public" type="OpaqueExpression" association="A_behavior_opaqueExpression"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_behavior_opaqueExpression-opaqueExpression-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_behavior_opaqueExpression-opaqueExpression-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_bodyCondition_bodyContext" name="A_bodyCondition_bodyContext" visibility="private" memberEnd="Operation-bodyCondition A_bodyCondition_bodyContext-bodyContext"> |
| <ownedEnd xmi:id="A_bodyCondition_bodyContext-bodyContext" name="bodyContext" visibility="public" type="Operation" subsettedProperty="Constraint-context" association="A_bodyCondition_bodyContext"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_bodyCondition_bodyContext-bodyContext-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_bodyOutput_clause" name="A_bodyOutput_clause" visibility="private" memberEnd="Clause-bodyOutput A_bodyOutput_clause-clause"> |
| <ownedEnd xmi:id="A_bodyOutput_clause-clause" name="clause" visibility="public" type="Clause" association="A_bodyOutput_clause"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_bodyOutput_clause-clause-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_bodyOutput_clause-clause-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_bodyOutput_loopNode" name="A_bodyOutput_loopNode" visibility="private" memberEnd="LoopNode-bodyOutput A_bodyOutput_loopNode-loopNode"> |
| <ownedEnd xmi:id="A_bodyOutput_loopNode-loopNode" name="loopNode" visibility="public" type="LoopNode" association="A_bodyOutput_loopNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_bodyOutput_loopNode-loopNode-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_bodyOutput_loopNode-loopNode-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_bodyPart_loopNode" name="A_bodyPart_loopNode" visibility="private" memberEnd="LoopNode-bodyPart A_bodyPart_loopNode-loopNode"> |
| <ownedEnd xmi:id="A_bodyPart_loopNode-loopNode" name="loopNode" visibility="public" type="LoopNode" association="A_bodyPart_loopNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_bodyPart_loopNode-loopNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_body_clause" name="A_body_clause" visibility="private" memberEnd="Clause-body A_body_clause-clause"> |
| <ownedEnd xmi:id="A_body_clause-clause" name="clause" visibility="public" type="Clause" association="A_body_clause"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_body_clause-clause-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_cfragmentGate_combinedFragment" name="A_cfragmentGate_combinedFragment" visibility="private" memberEnd="CombinedFragment-cfragmentGate A_cfragmentGate_combinedFragment-combinedFragment"> |
| <ownedEnd xmi:id="A_cfragmentGate_combinedFragment-combinedFragment" name="combinedFragment" visibility="public" type="CombinedFragment" subsettedProperty="Element-owner" association="A_cfragmentGate_combinedFragment"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_cfragmentGate_combinedFragment-combinedFragment-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_changeExpression_changeEvent" name="A_changeExpression_changeEvent" visibility="private" memberEnd="ChangeEvent-changeExpression A_changeExpression_changeEvent-changeEvent"> |
| <ownedEnd xmi:id="A_changeExpression_changeEvent-changeEvent" name="changeEvent" visibility="public" type="ChangeEvent" subsettedProperty="Element-owner" association="A_changeExpression_changeEvent"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_changeExpression_changeEvent-changeEvent-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_classifierBehavior_behavioredClassifier" name="A_classifierBehavior_behavioredClassifier" visibility="private" memberEnd="BehavioredClassifier-classifierBehavior A_classifierBehavior_behavioredClassifier-behavioredClassifier"> |
| <generalization xmi:id="A_classifierBehavior_behavioredClassifier-_generalization.0" general="A_ownedBehavior_behavioredClassifier"/> |
| <ownedEnd xmi:id="A_classifierBehavior_behavioredClassifier-behavioredClassifier" name="behavioredClassifier" visibility="public" type="BehavioredClassifier" redefinedProperty="A_ownedBehavior_behavioredClassifier-behavioredClassifier" association="A_classifierBehavior_behavioredClassifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_classifierBehavior_behavioredClassifier-behavioredClassifier-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_classifier_createObjectAction" name="A_classifier_createObjectAction" visibility="private" memberEnd="CreateObjectAction-classifier A_classifier_createObjectAction-createObjectAction"> |
| <ownedEnd xmi:id="A_classifier_createObjectAction-createObjectAction" name="createObjectAction" visibility="public" type="CreateObjectAction" association="A_classifier_createObjectAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_classifier_createObjectAction-createObjectAction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_classifier_createObjectAction-createObjectAction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_classifier_enumerationLiteral" name="A_classifier_enumerationLiteral" visibility="private" isDerived="true" memberEnd="EnumerationLiteral-classifier A_classifier_enumerationLiteral-enumerationLiteral"> |
| <generalization xmi:id="A_classifier_enumerationLiteral-_generalization.0" general="A_classifier_instanceSpecification"/> |
| <ownedEnd xmi:id="A_classifier_enumerationLiteral-enumerationLiteral" name="enumerationLiteral" visibility="public" type="EnumerationLiteral" redefinedProperty="A_classifier_instanceSpecification-instanceSpecification" association="A_classifier_enumerationLiteral"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_classifier_enumerationLiteral-enumerationLiteral-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_classifier_enumerationLiteral-enumerationLiteral-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_classifier_instanceSpecification" name="A_classifier_instanceSpecification" visibility="private" memberEnd="InstanceSpecification-classifier A_classifier_instanceSpecification-instanceSpecification"> |
| <ownedEnd xmi:id="A_classifier_instanceSpecification-instanceSpecification" name="instanceSpecification" visibility="public" type="InstanceSpecification" association="A_classifier_instanceSpecification"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_classifier_instanceSpecification-instanceSpecification-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_classifier_instanceSpecification-instanceSpecification-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_classifier_readExtentAction" name="A_classifier_readExtentAction" visibility="private" memberEnd="ReadExtentAction-classifier A_classifier_readExtentAction-readExtentAction"> |
| <ownedEnd xmi:id="A_classifier_readExtentAction-readExtentAction" name="readExtentAction" visibility="public" type="ReadExtentAction" association="A_classifier_readExtentAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_classifier_readExtentAction-readExtentAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_classifier_readIsClassifiedObjectAction" name="A_classifier_readIsClassifiedObjectAction" visibility="private" memberEnd="ReadIsClassifiedObjectAction-classifier A_classifier_readIsClassifiedObjectAction-readIsClassifiedObjectAction"> |
| <ownedEnd xmi:id="A_classifier_readIsClassifiedObjectAction-readIsClassifiedObjectAction" name="readIsClassifiedObjectAction" visibility="public" type="ReadIsClassifiedObjectAction" association="A_classifier_readIsClassifiedObjectAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_classifier_readIsClassifiedObjectAction-readIsClassifiedObjectAction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_classifier_readIsClassifiedObjectAction-readIsClassifiedObjectAction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_classifier_templateParameter_parameteredElement" name="A_classifier_templateParameter_parameteredElement" visibility="private" memberEnd="Classifier-templateParameter ClassifierTemplateParameter-parameteredElement"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_clause_conditionalNode" name="A_clause_conditionalNode" visibility="private" memberEnd="ConditionalNode-clause A_clause_conditionalNode-conditionalNode"> |
| <ownedEnd xmi:id="A_clause_conditionalNode-conditionalNode" name="conditionalNode" visibility="public" type="ConditionalNode" subsettedProperty="Element-owner" association="A_clause_conditionalNode"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_clientDependency_client" name="A_clientDependency_client" visibility="private" memberEnd="NamedElement-clientDependency Dependency-client"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_collaborationRole_collaboration" name="A_collaborationRole_collaboration" visibility="private" memberEnd="Collaboration-collaborationRole A_collaborationRole_collaboration-collaboration"> |
| <ownedEnd xmi:id="A_collaborationRole_collaboration-collaboration" name="collaboration" visibility="public" type="Collaboration" subsettedProperty="A_role_structuredClassifier-structuredClassifier" association="A_collaborationRole_collaboration"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_collaborationRole_collaboration-collaboration-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_collaborationRole_collaboration-collaboration-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_collaborationUse_classifier" name="A_collaborationUse_classifier" visibility="private" memberEnd="Classifier-collaborationUse A_collaborationUse_classifier-classifier"> |
| <ownedEnd xmi:id="A_collaborationUse_classifier-classifier" name="classifier" visibility="public" type="Classifier" subsettedProperty="Element-owner" association="A_collaborationUse_classifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_collaborationUse_classifier-classifier-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_collection_reduceAction" name="A_collection_reduceAction" visibility="private" memberEnd="ReduceAction-collection A_collection_reduceAction-reduceAction"> |
| <ownedEnd xmi:id="A_collection_reduceAction-reduceAction" name="reduceAction" visibility="public" type="ReduceAction" subsettedProperty="A_input_action-action" association="A_collection_reduceAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_collection_reduceAction-reduceAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_condition_extend" name="A_condition_extend" visibility="private" memberEnd="Extend-condition A_condition_extend-extend"> |
| <ownedEnd xmi:id="A_condition_extend-extend" name="extend" visibility="public" type="Extend" subsettedProperty="Element-owner" association="A_condition_extend"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_condition_extend-extend-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_condition_parameterSet" name="A_condition_parameterSet" visibility="private" memberEnd="ParameterSet-condition A_condition_parameterSet-parameterSet"> |
| <ownedEnd xmi:id="A_condition_parameterSet-parameterSet" name="parameterSet" visibility="public" type="ParameterSet" subsettedProperty="Element-owner" association="A_condition_parameterSet"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_condition_parameterSet-parameterSet-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_configuration_deployment" name="A_configuration_deployment" visibility="private" memberEnd="Deployment-configuration DeploymentSpecification-deployment"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_conformance_specificMachine" name="A_conformance_specificMachine" visibility="private" memberEnd="ProtocolStateMachine-conformance ProtocolConformance-specificMachine"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_connectableElement_templateParameter_parameteredElement" name="A_connectableElement_templateParameter_parameteredElement" visibility="private" memberEnd="ConnectableElement-templateParameter ConnectableElementTemplateParameter-parameteredElement"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_connectionPoint_state" name="A_connectionPoint_state" visibility="private" memberEnd="State-connectionPoint Pseudostate-state"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_connectionPoint_stateMachine" name="A_connectionPoint_stateMachine" visibility="private" memberEnd="StateMachine-connectionPoint Pseudostate-stateMachine"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_connection_state" name="A_connection_state" visibility="private" memberEnd="State-connection ConnectionPointReference-state"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_connector_message" name="A_connector_message" visibility="private" memberEnd="Message-connector A_connector_message-message"> |
| <ownedEnd xmi:id="A_connector_message-message" name="message" visibility="public" type="Message" association="A_connector_message"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_connector_message-message-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_connector_message-message-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_constrainedElement_constraint" name="A_constrainedElement_constraint" visibility="private" memberEnd="Constraint-constrainedElement A_constrainedElement_constraint-constraint"> |
| <ownedEnd xmi:id="A_constrainedElement_constraint-constraint" name="constraint" visibility="public" type="Constraint" association="A_constrainedElement_constraint"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_constrainedElement_constraint-constraint-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_constrainedElement_constraint-constraint-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_constrainingClassifier_classifierTemplateParameter" name="A_constrainingClassifier_classifierTemplateParameter" visibility="private" memberEnd="ClassifierTemplateParameter-constrainingClassifier A_constrainingClassifier_classifierTemplateParameter-classifierTemplateParameter"> |
| <ownedEnd xmi:id="A_constrainingClassifier_classifierTemplateParameter-classifierTemplateParameter" name="classifierTemplateParameter" visibility="public" type="ClassifierTemplateParameter" association="A_constrainingClassifier_classifierTemplateParameter"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_constrainingClassifier_classifierTemplateParameter-classifierTemplateParameter-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_constrainingClassifier_classifierTemplateParameter-classifierTemplateParameter-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_containedEdge_inGroup" name="A_containedEdge_inGroup" visibility="private" isDerived="true" memberEnd="ActivityGroup-containedEdge ActivityEdge-inGroup"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_containedNode_inGroup" name="A_containedNode_inGroup" visibility="private" isDerived="true" memberEnd="ActivityGroup-containedNode ActivityNode-inGroup"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_context_action" name="A_context_action" visibility="private" isDerived="true" memberEnd="Action-context A_context_action-action"> |
| <ownedEnd xmi:id="A_context_action-action" name="action" visibility="public" type="Action" association="A_context_action"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_context_action-action-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_context_action-action-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_context_behavior" name="A_context_behavior" visibility="private" isDerived="true" memberEnd="Behavior-context A_context_behavior-behavior"> |
| <ownedEnd xmi:id="A_context_behavior-behavior" name="behavior" visibility="public" type="Behavior" subsettedProperty="A_redefinitionContext_redefinableElement-redefinableElement" association="A_context_behavior"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_context_behavior-behavior-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_context_behavior-behavior-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_contract_connector" name="A_contract_connector" visibility="private" memberEnd="Connector-contract A_contract_connector-connector"> |
| <ownedEnd xmi:id="A_contract_connector-connector" name="connector" visibility="public" type="Connector" association="A_contract_connector"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_contract_connector-connector-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_contract_connector-connector-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_contract_interfaceRealization" name="A_contract_interfaceRealization" visibility="private" memberEnd="InterfaceRealization-contract A_contract_interfaceRealization-interfaceRealization"> |
| <ownedEnd xmi:id="A_contract_interfaceRealization-interfaceRealization" name="interfaceRealization" visibility="public" type="InterfaceRealization" subsettedProperty="A_supplier_supplierDependency-supplierDependency" association="A_contract_interfaceRealization"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_contract_interfaceRealization-interfaceRealization-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_contract_interfaceRealization-interfaceRealization-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_contract_substitution" name="A_contract_substitution" visibility="private" memberEnd="Substitution-contract A_contract_substitution-substitution"> |
| <ownedEnd xmi:id="A_contract_substitution-substitution" name="substitution" visibility="public" type="Substitution" subsettedProperty="A_supplier_supplierDependency-supplierDependency" association="A_contract_substitution"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_contract_substitution-substitution-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_contract_substitution-substitution-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_conveyed_informationFlow" name="A_conveyed_informationFlow" visibility="private" memberEnd="InformationFlow-conveyed A_conveyed_informationFlow-informationFlow"> |
| <ownedEnd xmi:id="A_conveyed_informationFlow-informationFlow" name="informationFlow" visibility="public" type="InformationFlow" association="A_conveyed_informationFlow"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_conveyed_informationFlow-informationFlow-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_conveyed_informationFlow-informationFlow-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_covered_coveredBy" name="A_covered_coveredBy" visibility="private" memberEnd="InteractionFragment-covered Lifeline-coveredBy"> |
| <ownedComment xmi:id="A_covered_coveredBy-_ownedComment.0" annotatedElement="A_covered_coveredBy"> |
| <body>This association shows the lifelines that make up an interaction. A lifeline may be part of more than one interaction use.</body> |
| </ownedComment> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_covered_events" name="A_covered_events" visibility="private" memberEnd="OccurrenceSpecification-covered A_covered_events-events"> |
| <ownedEnd xmi:id="A_covered_events-events" name="events" visibility="public" type="OccurrenceSpecification" isOrdered="true" subsettedProperty="Lifeline-coveredBy" association="A_covered_events"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_covered_events-events-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_covered_events-events-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_covered_stateInvariant" name="A_covered_stateInvariant" visibility="private" memberEnd="StateInvariant-covered A_covered_stateInvariant-stateInvariant"> |
| <ownedEnd xmi:id="A_covered_stateInvariant-stateInvariant" name="stateInvariant" visibility="public" type="StateInvariant" subsettedProperty="Lifeline-coveredBy" association="A_covered_stateInvariant"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_covered_stateInvariant-stateInvariant-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_covered_stateInvariant-stateInvariant-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_decider_clause" name="A_decider_clause" visibility="private" memberEnd="Clause-decider A_decider_clause-clause"> |
| <ownedEnd xmi:id="A_decider_clause-clause" name="clause" visibility="public" type="Clause" association="A_decider_clause"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_decider_clause-clause-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_decider_loopNode" name="A_decider_loopNode" visibility="private" memberEnd="LoopNode-decider A_decider_loopNode-loopNode"> |
| <ownedEnd xmi:id="A_decider_loopNode-loopNode" name="loopNode" visibility="public" type="LoopNode" association="A_decider_loopNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_decider_loopNode-loopNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_decisionInputFlow_decisionNode" name="A_decisionInputFlow_decisionNode" visibility="private" memberEnd="DecisionNode-decisionInputFlow A_decisionInputFlow_decisionNode-decisionNode"> |
| <ownedEnd xmi:id="A_decisionInputFlow_decisionNode-decisionNode" name="decisionNode" visibility="public" type="DecisionNode" association="A_decisionInputFlow_decisionNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_decisionInputFlow_decisionNode-decisionNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_decisionInput_decisionNode" name="A_decisionInput_decisionNode" visibility="private" memberEnd="DecisionNode-decisionInput A_decisionInput_decisionNode-decisionNode"> |
| <ownedEnd xmi:id="A_decisionInput_decisionNode-decisionNode" name="decisionNode" visibility="public" type="DecisionNode" association="A_decisionInput_decisionNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_decisionInput_decisionNode-decisionNode-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_decisionInput_decisionNode-decisionNode-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_decomposedAs_lifeline" name="A_decomposedAs_lifeline" visibility="private" memberEnd="Lifeline-decomposedAs A_decomposedAs_lifeline-lifeline"> |
| <ownedEnd xmi:id="A_decomposedAs_lifeline-lifeline" name="lifeline" visibility="public" type="Lifeline" association="A_decomposedAs_lifeline"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_defaultValue_owningParameter" name="A_defaultValue_owningParameter" visibility="private" memberEnd="Parameter-defaultValue A_defaultValue_owningParameter-owningParameter"> |
| <ownedEnd xmi:id="A_defaultValue_owningParameter-owningParameter" name="owningParameter" visibility="public" type="Parameter" subsettedProperty="Element-owner" association="A_defaultValue_owningParameter"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_defaultValue_owningParameter-owningParameter-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_defaultValue_owningProperty" name="A_defaultValue_owningProperty" visibility="private" memberEnd="Property-defaultValue A_defaultValue_owningProperty-owningProperty"> |
| <ownedEnd xmi:id="A_defaultValue_owningProperty-owningProperty" name="owningProperty" visibility="public" type="Property" subsettedProperty="Element-owner" association="A_defaultValue_owningProperty"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_defaultValue_owningProperty-owningProperty-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_default_templateParameter" name="A_default_templateParameter" visibility="private" memberEnd="TemplateParameter-default A_default_templateParameter-templateParameter"> |
| <ownedEnd xmi:id="A_default_templateParameter-templateParameter" name="templateParameter" visibility="public" type="TemplateParameter" association="A_default_templateParameter"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_default_templateParameter-templateParameter-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_default_templateParameter-templateParameter-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_deferrableTrigger_state" name="A_deferrableTrigger_state" visibility="private" memberEnd="State-deferrableTrigger A_deferrableTrigger_state-state"> |
| <ownedEnd xmi:id="A_deferrableTrigger_state-state" name="state" visibility="public" type="State" subsettedProperty="Element-owner" association="A_deferrableTrigger_state"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_deferrableTrigger_state-state-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_definingEnd_connectorEnd" name="A_definingEnd_connectorEnd" visibility="private" isDerived="true" memberEnd="ConnectorEnd-definingEnd A_definingEnd_connectorEnd-connectorEnd"> |
| <ownedEnd xmi:id="A_definingEnd_connectorEnd-connectorEnd" name="connectorEnd" visibility="public" type="ConnectorEnd" association="A_definingEnd_connectorEnd"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_definingEnd_connectorEnd-connectorEnd-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_definingEnd_connectorEnd-connectorEnd-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_definingFeature_slot" name="A_definingFeature_slot" visibility="private" memberEnd="Slot-definingFeature A_definingFeature_slot-slot"> |
| <ownedEnd xmi:id="A_definingFeature_slot-slot" name="slot" visibility="public" type="Slot" association="A_definingFeature_slot"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_definingFeature_slot-slot-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_definingFeature_slot-slot-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_deployedArtifact_deployment" name="A_deployedArtifact_deployment" visibility="private" memberEnd="Deployment-deployedArtifact A_deployedArtifact_deployment-deployment"> |
| <ownedEnd xmi:id="A_deployedArtifact_deployment-deployment" name="deployment" visibility="public" type="Deployment" subsettedProperty="A_supplier_supplierDependency-supplierDependency" association="A_deployedArtifact_deployment"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_deployedArtifact_deployment-deployment-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_deployedArtifact_deployment-deployment-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_deployedElement_deploymentTarget" name="A_deployedElement_deploymentTarget" visibility="private" isDerived="true" memberEnd="DeploymentTarget-deployedElement A_deployedElement_deploymentTarget-deploymentTarget"> |
| <ownedEnd xmi:id="A_deployedElement_deploymentTarget-deploymentTarget" name="deploymentTarget" visibility="public" type="DeploymentTarget" association="A_deployedElement_deploymentTarget"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_deployedElement_deploymentTarget-deploymentTarget-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_deployedElement_deploymentTarget-deploymentTarget-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_deployment_location" name="A_deployment_location" visibility="private" memberEnd="DeploymentTarget-deployment Deployment-location"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_destroyAt_linkEndDestructionData" name="A_destroyAt_linkEndDestructionData" visibility="private" memberEnd="LinkEndDestructionData-destroyAt A_destroyAt_linkEndDestructionData-linkEndDestructionData"> |
| <ownedEnd xmi:id="A_destroyAt_linkEndDestructionData-linkEndDestructionData" name="linkEndDestructionData" visibility="public" type="LinkEndDestructionData" association="A_destroyAt_linkEndDestructionData"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_destroyAt_linkEndDestructionData-linkEndDestructionData-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_doActivity_state" name="A_doActivity_state" visibility="private" memberEnd="State-doActivity A_doActivity_state-state"> |
| <ownedEnd xmi:id="A_doActivity_state-state" name="state" visibility="public" type="State" subsettedProperty="Element-owner" association="A_doActivity_state"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_doActivity_state-state-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_edge_activity" name="A_edge_activity" visibility="private" memberEnd="Activity-edge ActivityEdge-activity"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_edge_inPartition" name="A_edge_inPartition" visibility="private" memberEnd="ActivityPartition-edge ActivityEdge-inPartition"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_edge_inStructuredNode" name="A_edge_inStructuredNode" visibility="private" memberEnd="StructuredActivityNode-edge ActivityEdge-inStructuredNode"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_effect_transition" name="A_effect_transition" visibility="private" memberEnd="Transition-effect A_effect_transition-transition"> |
| <ownedEnd xmi:id="A_effect_transition-transition" name="transition" visibility="public" type="Transition" subsettedProperty="Element-owner" association="A_effect_transition"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_effect_transition-transition-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_elementImport_importingNamespace" name="A_elementImport_importingNamespace" visibility="private" memberEnd="Namespace-elementImport ElementImport-importingNamespace"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_endData_createLinkAction" name="A_endData_createLinkAction" visibility="private" memberEnd="CreateLinkAction-endData A_endData_createLinkAction-createLinkAction"> |
| <generalization xmi:id="A_endData_createLinkAction-_generalization.0" general="A_endData_linkAction"/> |
| <ownedEnd xmi:id="A_endData_createLinkAction-createLinkAction" name="createLinkAction" visibility="public" type="CreateLinkAction" redefinedProperty="A_endData_linkAction-linkAction" association="A_endData_createLinkAction"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_endData_destroyLinkAction" name="A_endData_destroyLinkAction" visibility="private" memberEnd="DestroyLinkAction-endData A_endData_destroyLinkAction-destroyLinkAction"> |
| <generalization xmi:id="A_endData_destroyLinkAction-_generalization.0" general="A_endData_linkAction"/> |
| <ownedEnd xmi:id="A_endData_destroyLinkAction-destroyLinkAction" name="destroyLinkAction" visibility="public" type="DestroyLinkAction" redefinedProperty="A_endData_linkAction-linkAction" association="A_endData_destroyLinkAction"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_endData_linkAction" name="A_endData_linkAction" visibility="private" memberEnd="LinkAction-endData A_endData_linkAction-linkAction"> |
| <ownedEnd xmi:id="A_endData_linkAction-linkAction" name="linkAction" visibility="public" type="LinkAction" subsettedProperty="Element-owner" association="A_endData_linkAction"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_endType_association" name="A_endType_association" visibility="private" isDerived="true" memberEnd="Association-endType A_endType_association-association"> |
| <ownedEnd xmi:id="A_endType_association-association" name="association" visibility="public" type="Association" subsettedProperty="A_relatedElement_relationship-relationship" association="A_endType_association"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_endType_association-association-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_endType_association-association-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_end_connector" name="A_end_connector" visibility="private" memberEnd="Connector-end A_end_connector-connector"> |
| <ownedEnd xmi:id="A_end_connector-connector" name="connector" visibility="public" type="Connector" subsettedProperty="Element-owner" association="A_end_connector"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_end_linkEndData" name="A_end_linkEndData" visibility="private" memberEnd="LinkEndData-end A_end_linkEndData-linkEndData"> |
| <ownedEnd xmi:id="A_end_linkEndData-linkEndData" name="linkEndData" visibility="public" type="LinkEndData" association="A_end_linkEndData"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_end_linkEndData-linkEndData-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_end_linkEndData-linkEndData-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_end_readLinkObjectEndAction" name="A_end_readLinkObjectEndAction" visibility="private" memberEnd="ReadLinkObjectEndAction-end A_end_readLinkObjectEndAction-readLinkObjectEndAction"> |
| <ownedEnd xmi:id="A_end_readLinkObjectEndAction-readLinkObjectEndAction" name="readLinkObjectEndAction" visibility="public" type="ReadLinkObjectEndAction" association="A_end_readLinkObjectEndAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_end_readLinkObjectEndAction-readLinkObjectEndAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_end_role" name="A_end_role" visibility="private" memberEnd="ConnectableElement-end ConnectorEnd-role"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_entry_connectionPointReference" name="A_entry_connectionPointReference" visibility="private" memberEnd="ConnectionPointReference-entry A_entry_connectionPointReference-connectionPointReference"> |
| <ownedEnd xmi:id="A_entry_connectionPointReference-connectionPointReference" name="connectionPointReference" visibility="public" type="ConnectionPointReference" association="A_entry_connectionPointReference"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_entry_connectionPointReference-connectionPointReference-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_entry_state" name="A_entry_state" visibility="private" memberEnd="State-entry A_entry_state-state"> |
| <ownedEnd xmi:id="A_entry_state-state" name="state" visibility="public" type="State" subsettedProperty="Element-owner" association="A_entry_state"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_entry_state-state-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_event_durationObservation" name="A_event_durationObservation" visibility="private" memberEnd="DurationObservation-event A_event_durationObservation-durationObservation"> |
| <ownedEnd xmi:id="A_event_durationObservation-durationObservation" name="durationObservation" visibility="public" type="DurationObservation" association="A_event_durationObservation"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_event_durationObservation-durationObservation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_event_durationObservation-durationObservation-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_event_timeObservation" name="A_event_timeObservation" visibility="private" memberEnd="TimeObservation-event A_event_timeObservation-timeObservation"> |
| <ownedEnd xmi:id="A_event_timeObservation-timeObservation" name="timeObservation" visibility="public" type="TimeObservation" association="A_event_timeObservation"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_event_timeObservation-timeObservation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_event_timeObservation-timeObservation-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_event_trigger" name="A_event_trigger" visibility="private" memberEnd="Trigger-event A_event_trigger-trigger"> |
| <ownedEnd xmi:id="A_event_trigger-trigger" name="trigger" visibility="public" type="Trigger" association="A_event_trigger"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_event_trigger-trigger-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_event_trigger-trigger-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_exceptionInput_exceptionHandler" name="A_exceptionInput_exceptionHandler" visibility="private" memberEnd="ExceptionHandler-exceptionInput A_exceptionInput_exceptionHandler-exceptionHandler"> |
| <ownedEnd xmi:id="A_exceptionInput_exceptionHandler-exceptionHandler" name="exceptionHandler" visibility="public" type="ExceptionHandler" association="A_exceptionInput_exceptionHandler"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_exceptionInput_exceptionHandler-exceptionHandler-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_exceptionInput_exceptionHandler-exceptionHandler-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_exceptionType_exceptionHandler" name="A_exceptionType_exceptionHandler" visibility="private" memberEnd="ExceptionHandler-exceptionType A_exceptionType_exceptionHandler-exceptionHandler"> |
| <ownedEnd xmi:id="A_exceptionType_exceptionHandler-exceptionHandler" name="exceptionHandler" visibility="public" type="ExceptionHandler" association="A_exceptionType_exceptionHandler"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_exceptionType_exceptionHandler-exceptionHandler-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_exceptionType_exceptionHandler-exceptionHandler-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_exception_raiseExceptionAction" name="A_exception_raiseExceptionAction" visibility="private" memberEnd="RaiseExceptionAction-exception A_exception_raiseExceptionAction-raiseExceptionAction"> |
| <ownedEnd xmi:id="A_exception_raiseExceptionAction-raiseExceptionAction" name="raiseExceptionAction" visibility="public" type="RaiseExceptionAction" subsettedProperty="A_input_action-action" association="A_exception_raiseExceptionAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_exception_raiseExceptionAction-raiseExceptionAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_executableNode_sequenceNode" name="A_executableNode_sequenceNode" visibility="private" memberEnd="SequenceNode-executableNode A_executableNode_sequenceNode-sequenceNode"> |
| <ownedEnd xmi:id="A_executableNode_sequenceNode-sequenceNode" name="sequenceNode" visibility="public" type="SequenceNode" subsettedProperty="ActivityNode-inStructuredNode" association="A_executableNode_sequenceNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_executableNode_sequenceNode-sequenceNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_execution_executionOccurrenceSpecification" name="A_execution_executionOccurrenceSpecification" visibility="private" memberEnd="ExecutionOccurrenceSpecification-execution A_execution_executionOccurrenceSpecification-executionOccurrenceSpecification"> |
| <ownedEnd xmi:id="A_execution_executionOccurrenceSpecification-executionOccurrenceSpecification" name="executionOccurrenceSpecification" visibility="public" type="ExecutionOccurrenceSpecification" association="A_execution_executionOccurrenceSpecification"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_execution_executionOccurrenceSpecification-executionOccurrenceSpecification-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_execution_executionOccurrenceSpecification-executionOccurrenceSpecification-_upperValue" value="2"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_exit_connectionPointReference" name="A_exit_connectionPointReference" visibility="private" memberEnd="ConnectionPointReference-exit A_exit_connectionPointReference-connectionPointReference"> |
| <ownedEnd xmi:id="A_exit_connectionPointReference-connectionPointReference" name="connectionPointReference" visibility="public" type="ConnectionPointReference" association="A_exit_connectionPointReference"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_exit_connectionPointReference-connectionPointReference-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_exit_state" name="A_exit_state" visibility="private" memberEnd="State-exit A_exit_state-state"> |
| <ownedEnd xmi:id="A_exit_state-state" name="state" visibility="public" type="State" subsettedProperty="Element-owner" association="A_exit_state"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_exit_state-state-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_expr_duration" name="A_expr_duration" visibility="private" memberEnd="Duration-expr A_expr_duration-duration"> |
| <ownedEnd xmi:id="A_expr_duration-duration" name="duration" visibility="public" type="Duration" subsettedProperty="Element-owner" association="A_expr_duration"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_expr_duration-duration-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_expr_timeExpression" name="A_expr_timeExpression" visibility="private" memberEnd="TimeExpression-expr A_expr_timeExpression-timeExpression"> |
| <ownedEnd xmi:id="A_expr_timeExpression-timeExpression" name="timeExpression" visibility="public" type="TimeExpression" subsettedProperty="Element-owner" association="A_expr_timeExpression"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_expr_timeExpression-timeExpression-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_extend_extension" name="A_extend_extension" visibility="private" memberEnd="UseCase-extend Extend-extension"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_extendedCase_extend" name="A_extendedCase_extend" visibility="private" memberEnd="Extend-extendedCase A_extendedCase_extend-extend"> |
| <ownedEnd xmi:id="A_extendedCase_extend-extend" name="extend" visibility="public" type="Extend" subsettedProperty="A_target_directedRelationship-directedRelationship" association="A_extendedCase_extend"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_extendedCase_extend-extend-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_extendedCase_extend-extend-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_extendedRegion_region" name="A_extendedRegion_region" visibility="private" memberEnd="Region-extendedRegion A_extendedRegion_region-region"> |
| <ownedEnd xmi:id="A_extendedRegion_region-region" name="region" visibility="public" type="Region" subsettedProperty="A_redefinedElement_redefinableElement-redefinableElement" association="A_extendedRegion_region"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_extendedRegion_region-region-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_extendedSignature_redefinableTemplateSignature" name="A_extendedSignature_redefinableTemplateSignature" visibility="private" memberEnd="RedefinableTemplateSignature-extendedSignature A_extendedSignature_redefinableTemplateSignature-redefinableTemplateSignature"> |
| <ownedEnd xmi:id="A_extendedSignature_redefinableTemplateSignature-redefinableTemplateSignature" name="redefinableTemplateSignature" visibility="public" type="RedefinableTemplateSignature" subsettedProperty="A_redefinedElement_redefinableElement-redefinableElement" association="A_extendedSignature_redefinableTemplateSignature"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_extendedSignature_redefinableTemplateSignature-redefinableTemplateSignature-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_extendedSignature_redefinableTemplateSignature-redefinableTemplateSignature-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_extendedStateMachine_stateMachine" name="A_extendedStateMachine_stateMachine" visibility="private" memberEnd="StateMachine-extendedStateMachine A_extendedStateMachine_stateMachine-stateMachine"> |
| <ownedEnd xmi:id="A_extendedStateMachine_stateMachine-stateMachine" name="stateMachine" visibility="public" type="StateMachine" subsettedProperty="A_redefinedBehavior_behavior-behavior" association="A_extendedStateMachine_stateMachine"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_extendedStateMachine_stateMachine-stateMachine-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_extensionLocation_extension" name="A_extensionLocation_extension" visibility="private" memberEnd="Extend-extensionLocation A_extensionLocation_extension-extension"> |
| <ownedEnd xmi:id="A_extensionLocation_extension-extension" name="extension" visibility="public" type="Extend" association="A_extensionLocation_extension"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_extensionLocation_extension-extension-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_extensionLocation_extension-extension-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_extensionPoint_useCase" name="A_extensionPoint_useCase" visibility="private" memberEnd="UseCase-extensionPoint ExtensionPoint-useCase"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_extension_metaclass" name="A_extension_metaclass" visibility="private" isDerived="true" memberEnd="Class-extension Extension-metaclass"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_feature_featuringClassifier" name="A_feature_featuringClassifier" visibility="private" isDerived="true" memberEnd="Classifier-feature Feature-featuringClassifier"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_finish_executionSpecification" name="A_finish_executionSpecification" visibility="private" memberEnd="ExecutionSpecification-finish A_finish_executionSpecification-executionSpecification"> |
| <ownedComment xmi:id="A_finish_executionSpecification-_ownedComment.0" annotatedElement="A_finish_executionSpecification"> |
| <body>The event shows the time point at which the action completes execution.</body> |
| </ownedComment> |
| <ownedEnd xmi:id="A_finish_executionSpecification-executionSpecification" name="executionSpecification" visibility="public" type="ExecutionSpecification" association="A_finish_executionSpecification"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_finish_executionSpecification-executionSpecification-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_finish_executionSpecification-executionSpecification-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_first_testIdentityAction" name="A_first_testIdentityAction" visibility="private" memberEnd="TestIdentityAction-first A_first_testIdentityAction-testIdentityAction"> |
| <ownedEnd xmi:id="A_first_testIdentityAction-testIdentityAction" name="testIdentityAction" visibility="public" type="TestIdentityAction" subsettedProperty="A_input_action-action" association="A_first_testIdentityAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_first_testIdentityAction-testIdentityAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_formalGate_interaction" name="A_formalGate_interaction" visibility="private" memberEnd="Interaction-formalGate A_formalGate_interaction-interaction"> |
| <ownedEnd xmi:id="A_formalGate_interaction-interaction" name="interaction" visibility="public" type="Interaction" subsettedProperty="NamedElement-namespace" association="A_formalGate_interaction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_formalGate_interaction-interaction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_formal_templateParameterSubstitution" name="A_formal_templateParameterSubstitution" visibility="private" memberEnd="TemplateParameterSubstitution-formal A_formal_templateParameterSubstitution-templateParameterSubstitution"> |
| <ownedEnd xmi:id="A_formal_templateParameterSubstitution-templateParameterSubstitution" name="templateParameterSubstitution" visibility="public" type="TemplateParameterSubstitution" association="A_formal_templateParameterSubstitution"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_formal_templateParameterSubstitution-templateParameterSubstitution-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_formal_templateParameterSubstitution-templateParameterSubstitution-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_fragment_enclosingInteraction" name="A_fragment_enclosingInteraction" visibility="private" memberEnd="Interaction-fragment InteractionFragment-enclosingInteraction"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_fragment_enclosingOperand" name="A_fragment_enclosingOperand" visibility="private" memberEnd="InteractionOperand-fragment InteractionFragment-enclosingOperand"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_fromAction_actionInputPin" name="A_fromAction_actionInputPin" visibility="private" memberEnd="ActionInputPin-fromAction A_fromAction_actionInputPin-actionInputPin"> |
| <ownedEnd xmi:id="A_fromAction_actionInputPin-actionInputPin" name="actionInputPin" visibility="public" type="ActionInputPin" subsettedProperty="Element-owner" association="A_fromAction_actionInputPin"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_fromAction_actionInputPin-actionInputPin-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_generalMachine_protocolConformance" name="A_generalMachine_protocolConformance" visibility="private" memberEnd="ProtocolConformance-generalMachine A_generalMachine_protocolConformance-protocolConformance"> |
| <ownedEnd xmi:id="A_generalMachine_protocolConformance-protocolConformance" name="protocolConformance" visibility="public" type="ProtocolConformance" subsettedProperty="A_target_directedRelationship-directedRelationship" association="A_generalMachine_protocolConformance"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_generalMachine_protocolConformance-protocolConformance-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_generalMachine_protocolConformance-protocolConformance-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_generalOrdering_interactionFragment" name="A_generalOrdering_interactionFragment" visibility="private" memberEnd="InteractionFragment-generalOrdering A_generalOrdering_interactionFragment-interactionFragment"> |
| <ownedEnd xmi:id="A_generalOrdering_interactionFragment-interactionFragment" name="interactionFragment" visibility="public" type="InteractionFragment" subsettedProperty="Element-owner" association="A_generalOrdering_interactionFragment"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_generalOrdering_interactionFragment-interactionFragment-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_general_classifier" name="A_general_classifier" visibility="private" isDerived="true" memberEnd="Classifier-general A_general_classifier-classifier"> |
| <ownedEnd xmi:id="A_general_classifier-classifier" name="classifier" visibility="public" type="Classifier" association="A_general_classifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_general_classifier-classifier-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_general_classifier-classifier-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_general_generalization" name="A_general_generalization" visibility="private" memberEnd="Generalization-general A_general_generalization-generalization"> |
| <ownedEnd xmi:id="A_general_generalization-generalization" name="generalization" visibility="public" type="Generalization" subsettedProperty="A_target_directedRelationship-directedRelationship" association="A_general_generalization"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_general_generalization-generalization-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_general_generalization-generalization-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_generalizationSet_generalization" name="A_generalizationSet_generalization" visibility="private" memberEnd="Generalization-generalizationSet GeneralizationSet-generalization"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_generalization_specific" name="A_generalization_specific" visibility="private" memberEnd="Classifier-generalization Generalization-specific"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_group_inActivity" name="A_group_inActivity" visibility="private" memberEnd="Activity-group ActivityGroup-inActivity"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_guard_activityEdge" name="A_guard_activityEdge" visibility="private" memberEnd="ActivityEdge-guard A_guard_activityEdge-activityEdge"> |
| <ownedEnd xmi:id="A_guard_activityEdge-activityEdge" name="activityEdge" visibility="public" type="ActivityEdge" subsettedProperty="Element-owner" association="A_guard_activityEdge"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_guard_activityEdge-activityEdge-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_guard_interactionOperand" name="A_guard_interactionOperand" visibility="private" memberEnd="InteractionOperand-guard A_guard_interactionOperand-interactionOperand"> |
| <ownedEnd xmi:id="A_guard_interactionOperand-interactionOperand" name="interactionOperand" visibility="public" type="InteractionOperand" subsettedProperty="Element-owner" association="A_guard_interactionOperand"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_guard_transition" name="A_guard_transition" visibility="private" memberEnd="Transition-guard A_guard_transition-transition"> |
| <ownedEnd xmi:id="A_guard_transition-transition" name="transition" visibility="public" type="Transition" subsettedProperty="Constraint-context" association="A_guard_transition"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_guard_transition-transition-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_handlerBody_exceptionHandler" name="A_handlerBody_exceptionHandler" visibility="private" memberEnd="ExceptionHandler-handlerBody A_handlerBody_exceptionHandler-exceptionHandler"> |
| <ownedEnd xmi:id="A_handlerBody_exceptionHandler-exceptionHandler" name="exceptionHandler" visibility="public" type="ExceptionHandler" association="A_handlerBody_exceptionHandler"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_handlerBody_exceptionHandler-exceptionHandler-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_handlerBody_exceptionHandler-exceptionHandler-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_handler_protectedNode" name="A_handler_protectedNode" visibility="private" memberEnd="ExecutableNode-handler ExceptionHandler-protectedNode"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_icon_stereotype" name="A_icon_stereotype" visibility="private" memberEnd="Stereotype-icon A_icon_stereotype-stereotype"> |
| <ownedEnd xmi:id="A_icon_stereotype-stereotype" name="stereotype" visibility="public" type="Stereotype" subsettedProperty="Element-owner" association="A_icon_stereotype"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_icon_stereotype-stereotype-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_importedElement_elementImport" name="A_importedElement_elementImport" visibility="private" memberEnd="ElementImport-importedElement A_importedElement_elementImport-elementImport"> |
| <ownedEnd xmi:id="A_importedElement_elementImport-elementImport" name="elementImport" visibility="public" type="ElementImport" subsettedProperty="A_target_directedRelationship-directedRelationship" association="A_importedElement_elementImport"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_importedElement_elementImport-elementImport-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_importedElement_elementImport-elementImport-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_importedMember_namespace" name="A_importedMember_namespace" visibility="private" isDerived="true" memberEnd="Namespace-importedMember A_importedMember_namespace-namespace"> |
| <ownedEnd xmi:id="A_importedMember_namespace-namespace" name="namespace" visibility="public" type="Namespace" subsettedProperty="A_member_memberNamespace-memberNamespace" association="A_importedMember_namespace"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_importedMember_namespace-namespace-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_importedMember_namespace-namespace-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_importedPackage_packageImport" name="A_importedPackage_packageImport" visibility="private" memberEnd="PackageImport-importedPackage A_importedPackage_packageImport-packageImport"> |
| <ownedEnd xmi:id="A_importedPackage_packageImport-packageImport" name="packageImport" visibility="public" type="PackageImport" subsettedProperty="A_target_directedRelationship-directedRelationship" association="A_importedPackage_packageImport"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_importedPackage_packageImport-packageImport-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_importedPackage_packageImport-packageImport-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_inInterruptibleRegion_node" name="A_inInterruptibleRegion_node" visibility="private" memberEnd="ActivityNode-inInterruptibleRegion InterruptibleActivityRegion-node"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_inPartition_node" name="A_inPartition_node" visibility="private" memberEnd="ActivityNode-inPartition ActivityPartition-node"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_inState_objectNode" name="A_inState_objectNode" visibility="private" memberEnd="ObjectNode-inState A_inState_objectNode-objectNode"> |
| <ownedEnd xmi:id="A_inState_objectNode-objectNode" name="objectNode" visibility="public" type="ObjectNode" association="A_inState_objectNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_inState_objectNode-objectNode-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_inState_objectNode-objectNode-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_include_includingCase" name="A_include_includingCase" visibility="private" memberEnd="UseCase-include Include-includingCase"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_incoming_target_node" name="A_incoming_target_node" visibility="private" memberEnd="ActivityNode-incoming ActivityEdge-target"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_incoming_target_vertex" name="A_incoming_target_vertex" visibility="private" memberEnd="Vertex-incoming Transition-target"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_informationSource_informationFlow" name="A_informationSource_informationFlow" visibility="private" memberEnd="InformationFlow-informationSource A_informationSource_informationFlow-informationFlow"> |
| <ownedEnd xmi:id="A_informationSource_informationFlow-informationFlow" name="informationFlow" visibility="public" type="InformationFlow" subsettedProperty="A_source_directedRelationship-directedRelationship" association="A_informationSource_informationFlow"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_informationSource_informationFlow-informationFlow-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_informationSource_informationFlow-informationFlow-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_informationTarget_informationFlow" name="A_informationTarget_informationFlow" visibility="private" memberEnd="InformationFlow-informationTarget A_informationTarget_informationFlow-informationFlow"> |
| <ownedEnd xmi:id="A_informationTarget_informationFlow-informationFlow" name="informationFlow" visibility="public" type="InformationFlow" subsettedProperty="A_target_directedRelationship-directedRelationship" association="A_informationTarget_informationFlow"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_informationTarget_informationFlow-informationFlow-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_informationTarget_informationFlow-informationFlow-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_inheritedMember_classifier" name="A_inheritedMember_classifier" visibility="private" isDerived="true" memberEnd="Classifier-inheritedMember A_inheritedMember_classifier-classifier"> |
| <ownedEnd xmi:id="A_inheritedMember_classifier-classifier" name="classifier" visibility="public" type="Classifier" subsettedProperty="A_member_memberNamespace-memberNamespace" association="A_inheritedMember_classifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_inheritedMember_classifier-classifier-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_inheritedMember_classifier-classifier-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_inheritedParameter_redefinableTemplateSignature" name="A_inheritedParameter_redefinableTemplateSignature" visibility="private" isDerived="true" memberEnd="RedefinableTemplateSignature-inheritedParameter A_inheritedParameter_redefinableTemplateSignature-redefinableTemplateSignature"> |
| <ownedEnd xmi:id="A_inheritedParameter_redefinableTemplateSignature-redefinableTemplateSignature" name="redefinableTemplateSignature" visibility="public" type="RedefinableTemplateSignature" subsettedProperty="A_parameter_templateSignature-templateSignature" association="A_inheritedParameter_redefinableTemplateSignature"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_inheritedParameter_redefinableTemplateSignature-redefinableTemplateSignature-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_inheritedParameter_redefinableTemplateSignature-redefinableTemplateSignature-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_inputElement_regionAsInput" name="A_inputElement_regionAsInput" visibility="private" memberEnd="ExpansionRegion-inputElement ExpansionNode-regionAsInput"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_inputValue_linkAction" name="A_inputValue_linkAction" visibility="private" memberEnd="LinkAction-inputValue A_inputValue_linkAction-linkAction"> |
| <ownedEnd xmi:id="A_inputValue_linkAction-linkAction" name="linkAction" visibility="public" type="LinkAction" subsettedProperty="A_input_action-action" association="A_inputValue_linkAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_inputValue_linkAction-linkAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_inputValue_opaqueAction" name="A_inputValue_opaqueAction" visibility="private" memberEnd="OpaqueAction-inputValue A_inputValue_opaqueAction-opaqueAction"> |
| <ownedEnd xmi:id="A_inputValue_opaqueAction-opaqueAction" name="opaqueAction" visibility="public" type="OpaqueAction" subsettedProperty="A_input_action-action" association="A_inputValue_opaqueAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_inputValue_opaqueAction-opaqueAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_input_action" name="A_input_action" visibility="private" isDerived="true" memberEnd="Action-input A_input_action-action"> |
| <ownedEnd xmi:id="A_input_action-action" name="action" visibility="public" type="Action" subsettedProperty="Element-owner" association="A_input_action"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_input_action-action-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_insertAt_addStructuralFeatureValueAction" name="A_insertAt_addStructuralFeatureValueAction" visibility="private" memberEnd="AddStructuralFeatureValueAction-insertAt A_insertAt_addStructuralFeatureValueAction-addStructuralFeatureValueAction"> |
| <ownedEnd xmi:id="A_insertAt_addStructuralFeatureValueAction-addStructuralFeatureValueAction" name="addStructuralFeatureValueAction" visibility="public" type="AddStructuralFeatureValueAction" subsettedProperty="A_input_action-action" association="A_insertAt_addStructuralFeatureValueAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_insertAt_addStructuralFeatureValueAction-addStructuralFeatureValueAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_insertAt_addVariableValueAction" name="A_insertAt_addVariableValueAction" visibility="private" memberEnd="AddVariableValueAction-insertAt A_insertAt_addVariableValueAction-addVariableValueAction"> |
| <ownedEnd xmi:id="A_insertAt_addVariableValueAction-addVariableValueAction" name="addVariableValueAction" visibility="public" type="AddVariableValueAction" subsettedProperty="A_input_action-action" association="A_insertAt_addVariableValueAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_insertAt_addVariableValueAction-addVariableValueAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_insertAt_linkEndCreationData" name="A_insertAt_linkEndCreationData" visibility="private" memberEnd="LinkEndCreationData-insertAt A_insertAt_linkEndCreationData-linkEndCreationData"> |
| <ownedEnd xmi:id="A_insertAt_linkEndCreationData-linkEndCreationData" name="linkEndCreationData" visibility="public" type="LinkEndCreationData" association="A_insertAt_linkEndCreationData"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_insertAt_linkEndCreationData-linkEndCreationData-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_instance_instanceValue" name="A_instance_instanceValue" visibility="private" memberEnd="InstanceValue-instance A_instance_instanceValue-instanceValue"> |
| <ownedEnd xmi:id="A_instance_instanceValue-instanceValue" name="instanceValue" visibility="public" type="InstanceValue" association="A_instance_instanceValue"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_instance_instanceValue-instanceValue-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_instance_instanceValue-instanceValue-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_interfaceRealization_implementingClassifier" name="A_interfaceRealization_implementingClassifier" visibility="private" memberEnd="BehavioredClassifier-interfaceRealization InterfaceRealization-implementingClassifier"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_interruptingEdge_interrupts" name="A_interruptingEdge_interrupts" visibility="private" memberEnd="InterruptibleActivityRegion-interruptingEdge ActivityEdge-interrupts"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_invariant_stateInvariant" name="A_invariant_stateInvariant" visibility="private" memberEnd="StateInvariant-invariant A_invariant_stateInvariant-stateInvariant"> |
| <ownedEnd xmi:id="A_invariant_stateInvariant-stateInvariant" name="stateInvariant" visibility="public" type="StateInvariant" subsettedProperty="Element-owner" association="A_invariant_stateInvariant"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_invariant_stateInvariant-stateInvariant-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_joinSpec_joinNode" name="A_joinSpec_joinNode" visibility="private" memberEnd="JoinNode-joinSpec A_joinSpec_joinNode-joinNode"> |
| <ownedEnd xmi:id="A_joinSpec_joinNode-joinNode" name="joinNode" visibility="public" type="JoinNode" subsettedProperty="Element-owner" association="A_joinSpec_joinNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_joinSpec_joinNode-joinNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_lifeline_interaction" name="A_lifeline_interaction" visibility="private" memberEnd="Interaction-lifeline Lifeline-interaction"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_localPostcondition_action" name="A_localPostcondition_action" visibility="private" memberEnd="Action-localPostcondition A_localPostcondition_action-action"> |
| <ownedEnd xmi:id="A_localPostcondition_action-action" name="action" visibility="public" type="Action" subsettedProperty="Element-owner" association="A_localPostcondition_action"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_localPostcondition_action-action-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_localPrecondition_action" name="A_localPrecondition_action" visibility="private" memberEnd="Action-localPrecondition A_localPrecondition_action-action"> |
| <ownedEnd xmi:id="A_localPrecondition_action-action" name="action" visibility="public" type="Action" subsettedProperty="Element-owner" association="A_localPrecondition_action"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_localPrecondition_action-action-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_loopVariableInput_loopNode" name="A_loopVariableInput_loopNode" visibility="private" memberEnd="LoopNode-loopVariableInput A_loopVariableInput_loopNode-loopNode"> |
| <ownedEnd xmi:id="A_loopVariableInput_loopNode-loopNode" name="loopNode" visibility="public" type="LoopNode" subsettedProperty="A_structuredNodeInput_structuredActivityNode-structuredActivityNode" association="A_loopVariableInput_loopNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_loopVariableInput_loopNode-loopNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_loopVariable_loopNode" name="A_loopVariable_loopNode" visibility="private" memberEnd="LoopNode-loopVariable A_loopVariable_loopNode-loopNode"> |
| <ownedEnd xmi:id="A_loopVariable_loopNode-loopNode" name="loopNode" visibility="public" type="LoopNode" association="A_loopVariable_loopNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_loopVariable_loopNode-loopNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_lowerValue_owningLower" name="A_lowerValue_owningLower" visibility="private" memberEnd="MultiplicityElement-lowerValue A_lowerValue_owningLower-owningLower"> |
| <ownedEnd xmi:id="A_lowerValue_owningLower-owningLower" name="owningLower" visibility="public" type="MultiplicityElement" subsettedProperty="Element-owner" association="A_lowerValue_owningLower"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_lowerValue_owningLower-owningLower-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_manifestation_artifact" name="A_manifestation_artifact" visibility="private" memberEnd="Artifact-manifestation A_manifestation_artifact-artifact"> |
| <ownedEnd xmi:id="A_manifestation_artifact-artifact" name="artifact" visibility="public" type="Artifact" subsettedProperty="Element-owner Dependency-client" association="A_manifestation_artifact"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_mapping_abstraction" name="A_mapping_abstraction" visibility="private" memberEnd="Abstraction-mapping A_mapping_abstraction-abstraction"> |
| <ownedEnd xmi:id="A_mapping_abstraction-abstraction" name="abstraction" visibility="public" type="Abstraction" subsettedProperty="Element-owner" association="A_mapping_abstraction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_mapping_abstraction-abstraction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_max_durationInterval" name="A_max_durationInterval" visibility="private" memberEnd="DurationInterval-max A_max_durationInterval-durationInterval"> |
| <generalization xmi:id="A_max_durationInterval-_generalization.0" general="A_max_interval"/> |
| <ownedEnd xmi:id="A_max_durationInterval-durationInterval" name="durationInterval" visibility="public" type="DurationInterval" redefinedProperty="A_max_interval-interval" association="A_max_durationInterval"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_max_durationInterval-durationInterval-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_max_durationInterval-durationInterval-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_max_interval" name="A_max_interval" visibility="private" memberEnd="Interval-max A_max_interval-interval"> |
| <ownedEnd xmi:id="A_max_interval-interval" name="interval" visibility="public" type="Interval" association="A_max_interval"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_max_interval-interval-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_max_interval-interval-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_max_timeInterval" name="A_max_timeInterval" visibility="private" memberEnd="TimeInterval-max A_max_timeInterval-timeInterval"> |
| <generalization xmi:id="A_max_timeInterval-_generalization.0" general="A_max_interval"/> |
| <ownedEnd xmi:id="A_max_timeInterval-timeInterval" name="timeInterval" visibility="public" type="TimeInterval" redefinedProperty="A_max_interval-interval" association="A_max_timeInterval"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_max_timeInterval-timeInterval-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_max_timeInterval-timeInterval-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_maxint_interactionConstraint" name="A_maxint_interactionConstraint" visibility="private" memberEnd="InteractionConstraint-maxint A_maxint_interactionConstraint-interactionConstraint"> |
| <ownedEnd xmi:id="A_maxint_interactionConstraint-interactionConstraint" name="interactionConstraint" visibility="public" type="InteractionConstraint" subsettedProperty="Element-owner" association="A_maxint_interactionConstraint"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_maxint_interactionConstraint-interactionConstraint-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_memberEnd_association" name="A_memberEnd_association" visibility="private" memberEnd="Association-memberEnd Property-association"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_member_memberNamespace" name="A_member_memberNamespace" visibility="private" isDerived="true" memberEnd="Namespace-member A_member_memberNamespace-memberNamespace"> |
| <ownedEnd xmi:id="A_member_memberNamespace-memberNamespace" name="memberNamespace" visibility="public" type="Namespace" association="A_member_memberNamespace"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_member_memberNamespace-memberNamespace-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_member_memberNamespace-memberNamespace-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_mergedPackage_packageMerge" name="A_mergedPackage_packageMerge" visibility="private" memberEnd="PackageMerge-mergedPackage A_mergedPackage_packageMerge-packageMerge"> |
| <ownedEnd xmi:id="A_mergedPackage_packageMerge-packageMerge" name="packageMerge" visibility="public" type="PackageMerge" subsettedProperty="A_target_directedRelationship-directedRelationship" association="A_mergedPackage_packageMerge"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_mergedPackage_packageMerge-packageMerge-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_mergedPackage_packageMerge-packageMerge-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_message_considerIgnoreFragment" name="A_message_considerIgnoreFragment" visibility="private" memberEnd="ConsiderIgnoreFragment-message A_message_considerIgnoreFragment-considerIgnoreFragment"> |
| <ownedEnd xmi:id="A_message_considerIgnoreFragment-considerIgnoreFragment" name="considerIgnoreFragment" visibility="public" type="ConsiderIgnoreFragment" association="A_message_considerIgnoreFragment"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_message_considerIgnoreFragment-considerIgnoreFragment-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_message_considerIgnoreFragment-considerIgnoreFragment-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_message_interaction" name="A_message_interaction" visibility="private" memberEnd="Interaction-message Message-interaction"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_message_messageEnd" name="A_message_messageEnd" visibility="private" memberEnd="MessageEnd-message A_message_messageEnd-messageEnd"> |
| <ownedEnd xmi:id="A_message_messageEnd-messageEnd" name="messageEnd" visibility="public" type="MessageEnd" association="A_message_messageEnd"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_message_messageEnd-messageEnd-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_message_messageEnd-messageEnd-_upperValue" value="2"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_metaclassReference_profile" name="A_metaclassReference_profile" visibility="private" memberEnd="Profile-metaclassReference A_metaclassReference_profile-profile"> |
| <ownedEnd xmi:id="A_metaclassReference_profile-profile" name="profile" visibility="public" type="Profile" subsettedProperty="ElementImport-importingNamespace" association="A_metaclassReference_profile"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_metaclassReference_profile-profile-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_metamodelReference_profile" name="A_metamodelReference_profile" visibility="private" memberEnd="Profile-metamodelReference A_metamodelReference_profile-profile"> |
| <ownedEnd xmi:id="A_metamodelReference_profile-profile" name="profile" visibility="public" type="Profile" subsettedProperty="PackageImport-importingNamespace" association="A_metamodelReference_profile"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_metamodelReference_profile-profile-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_method_specification" name="A_method_specification" visibility="private" memberEnd="BehavioralFeature-method Behavior-specification"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_min_durationInterval" name="A_min_durationInterval" visibility="private" memberEnd="DurationInterval-min A_min_durationInterval-durationInterval"> |
| <generalization xmi:id="A_min_durationInterval-_generalization.0" general="A_min_interval"/> |
| <ownedEnd xmi:id="A_min_durationInterval-durationInterval" name="durationInterval" visibility="public" type="DurationInterval" redefinedProperty="A_min_interval-interval" association="A_min_durationInterval"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_min_durationInterval-durationInterval-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_min_durationInterval-durationInterval-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_min_interval" name="A_min_interval" visibility="private" memberEnd="Interval-min A_min_interval-interval"> |
| <ownedEnd xmi:id="A_min_interval-interval" name="interval" visibility="public" type="Interval" association="A_min_interval"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_min_interval-interval-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_min_interval-interval-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_min_timeInterval" name="A_min_timeInterval" visibility="private" memberEnd="TimeInterval-min A_min_timeInterval-timeInterval"> |
| <generalization xmi:id="A_min_timeInterval-_generalization.0" general="A_min_interval"/> |
| <ownedEnd xmi:id="A_min_timeInterval-timeInterval" name="timeInterval" visibility="public" type="TimeInterval" redefinedProperty="A_min_interval-interval" association="A_min_timeInterval"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_min_timeInterval-timeInterval-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_min_timeInterval-timeInterval-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_minint_interactionConstraint" name="A_minint_interactionConstraint" visibility="private" memberEnd="InteractionConstraint-minint A_minint_interactionConstraint-interactionConstraint"> |
| <ownedEnd xmi:id="A_minint_interactionConstraint-interactionConstraint" name="interactionConstraint" visibility="public" type="InteractionConstraint" subsettedProperty="Element-owner" association="A_minint_interactionConstraint"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_minint_interactionConstraint-interactionConstraint-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_nameExpression_namedElement" name="A_nameExpression_namedElement" visibility="private" memberEnd="NamedElement-nameExpression A_nameExpression_namedElement-namedElement"> |
| <ownedEnd xmi:id="A_nameExpression_namedElement-namedElement" name="namedElement" visibility="public" type="NamedElement" subsettedProperty="Element-owner" association="A_nameExpression_namedElement"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_nameExpression_namedElement-namedElement-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_navigableOwnedEnd_association" name="A_navigableOwnedEnd_association" visibility="private" memberEnd="Association-navigableOwnedEnd A_navigableOwnedEnd_association-association"> |
| <ownedEnd xmi:id="A_navigableOwnedEnd_association-association" name="association" visibility="public" type="Association" subsettedProperty="Property-owningAssociation" association="A_navigableOwnedEnd_association"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_navigableOwnedEnd_association-association-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_nestedArtifact_artifact" name="A_nestedArtifact_artifact" visibility="private" memberEnd="Artifact-nestedArtifact A_nestedArtifact_artifact-artifact"> |
| <ownedEnd xmi:id="A_nestedArtifact_artifact-artifact" name="artifact" visibility="public" type="Artifact" subsettedProperty="NamedElement-namespace" association="A_nestedArtifact_artifact"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_nestedArtifact_artifact-artifact-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_nestedClassifier_class" name="A_nestedClassifier_class" visibility="private" memberEnd="Class-nestedClassifier A_nestedClassifier_class-class"> |
| <ownedEnd xmi:id="A_nestedClassifier_class-class" name="class" visibility="public" type="Class" subsettedProperty="RedefinableElement-redefinitionContext NamedElement-namespace" association="A_nestedClassifier_class"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_nestedClassifier_class-class-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_nestedClassifier_interface" name="A_nestedClassifier_interface" visibility="private" memberEnd="Interface-nestedClassifier A_nestedClassifier_interface-interface"> |
| <ownedEnd xmi:id="A_nestedClassifier_interface-interface" name="interface" visibility="public" type="Interface" subsettedProperty="RedefinableElement-redefinitionContext NamedElement-namespace" association="A_nestedClassifier_interface"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_nestedClassifier_interface-interface-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_nestedNode_node" name="A_nestedNode_node" visibility="private" memberEnd="Node-nestedNode A_nestedNode_node-node"> |
| <ownedEnd xmi:id="A_nestedNode_node-node" name="node" visibility="public" type="Node" subsettedProperty="NamedElement-namespace" association="A_nestedNode_node"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_nestedNode_node-node-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_nestedPackage_nestingPackage" name="A_nestedPackage_nestingPackage" visibility="private" memberEnd="Package-nestedPackage Package-nestingPackage"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_newClassifier_reclassifyObjectAction" name="A_newClassifier_reclassifyObjectAction" visibility="private" memberEnd="ReclassifyObjectAction-newClassifier A_newClassifier_reclassifyObjectAction-reclassifyObjectAction"> |
| <ownedEnd xmi:id="A_newClassifier_reclassifyObjectAction-reclassifyObjectAction" name="reclassifyObjectAction" visibility="public" type="ReclassifyObjectAction" association="A_newClassifier_reclassifyObjectAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_newClassifier_reclassifyObjectAction-reclassifyObjectAction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_newClassifier_reclassifyObjectAction-reclassifyObjectAction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_node_activity" name="A_node_activity" visibility="private" memberEnd="Activity-node ActivityNode-activity"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_node_inStructuredNode" name="A_node_inStructuredNode" visibility="private" memberEnd="StructuredActivityNode-node ActivityNode-inStructuredNode"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_object_clearAssociationAction" name="A_object_clearAssociationAction" visibility="private" memberEnd="ClearAssociationAction-object A_object_clearAssociationAction-clearAssociationAction"> |
| <ownedEnd xmi:id="A_object_clearAssociationAction-clearAssociationAction" name="clearAssociationAction" visibility="public" type="ClearAssociationAction" subsettedProperty="A_input_action-action" association="A_object_clearAssociationAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_object_clearAssociationAction-clearAssociationAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_object_readIsClassifiedObjectAction" name="A_object_readIsClassifiedObjectAction" visibility="private" memberEnd="ReadIsClassifiedObjectAction-object A_object_readIsClassifiedObjectAction-readIsClassifiedObjectAction"> |
| <ownedEnd xmi:id="A_object_readIsClassifiedObjectAction-readIsClassifiedObjectAction" name="readIsClassifiedObjectAction" visibility="public" type="ReadIsClassifiedObjectAction" subsettedProperty="A_input_action-action" association="A_object_readIsClassifiedObjectAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_object_readIsClassifiedObjectAction-readIsClassifiedObjectAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_object_readLinkObjectEndAction" name="A_object_readLinkObjectEndAction" visibility="private" memberEnd="ReadLinkObjectEndAction-object A_object_readLinkObjectEndAction-readLinkObjectEndAction"> |
| <ownedEnd xmi:id="A_object_readLinkObjectEndAction-readLinkObjectEndAction" name="readLinkObjectEndAction" visibility="public" type="ReadLinkObjectEndAction" subsettedProperty="A_input_action-action" association="A_object_readLinkObjectEndAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_object_readLinkObjectEndAction-readLinkObjectEndAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_object_readLinkObjectEndQualifierAction" name="A_object_readLinkObjectEndQualifierAction" visibility="private" memberEnd="ReadLinkObjectEndQualifierAction-object A_object_readLinkObjectEndQualifierAction-readLinkObjectEndQualifierAction"> |
| <ownedEnd xmi:id="A_object_readLinkObjectEndQualifierAction-readLinkObjectEndQualifierAction" name="readLinkObjectEndQualifierAction" visibility="public" type="ReadLinkObjectEndQualifierAction" subsettedProperty="A_input_action-action" association="A_object_readLinkObjectEndQualifierAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_object_readLinkObjectEndQualifierAction-readLinkObjectEndQualifierAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_object_reclassifyObjectAction" name="A_object_reclassifyObjectAction" visibility="private" memberEnd="ReclassifyObjectAction-object A_object_reclassifyObjectAction-reclassifyObjectAction"> |
| <ownedEnd xmi:id="A_object_reclassifyObjectAction-reclassifyObjectAction" name="reclassifyObjectAction" visibility="public" type="ReclassifyObjectAction" subsettedProperty="A_input_action-action" association="A_object_reclassifyObjectAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_object_reclassifyObjectAction-reclassifyObjectAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_object_startClassifierBehaviorAction" name="A_object_startClassifierBehaviorAction" visibility="private" memberEnd="StartClassifierBehaviorAction-object A_object_startClassifierBehaviorAction-startClassifierBehaviorAction"> |
| <ownedEnd xmi:id="A_object_startClassifierBehaviorAction-startClassifierBehaviorAction" name="startClassifierBehaviorAction" visibility="public" type="StartClassifierBehaviorAction" subsettedProperty="A_input_action-action" association="A_object_startClassifierBehaviorAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_object_startClassifierBehaviorAction-startClassifierBehaviorAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_object_startObjectBehaviorAction" name="A_object_startObjectBehaviorAction" visibility="private" memberEnd="StartObjectBehaviorAction-object A_object_startObjectBehaviorAction-startObjectBehaviorAction"> |
| <ownedEnd xmi:id="A_object_startObjectBehaviorAction-startObjectBehaviorAction" name="startObjectBehaviorAction" visibility="public" type="StartObjectBehaviorAction" subsettedProperty="A_input_action-action" association="A_object_startObjectBehaviorAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_object_startObjectBehaviorAction-startObjectBehaviorAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_object_structuralFeatureAction" name="A_object_structuralFeatureAction" visibility="private" memberEnd="StructuralFeatureAction-object A_object_structuralFeatureAction-structuralFeatureAction"> |
| <ownedEnd xmi:id="A_object_structuralFeatureAction-structuralFeatureAction" name="structuralFeatureAction" visibility="public" type="StructuralFeatureAction" subsettedProperty="A_input_action-action" association="A_object_structuralFeatureAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_object_structuralFeatureAction-structuralFeatureAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_object_unmarshallAction" name="A_object_unmarshallAction" visibility="private" memberEnd="UnmarshallAction-object A_object_unmarshallAction-unmarshallAction"> |
| <ownedEnd xmi:id="A_object_unmarshallAction-unmarshallAction" name="unmarshallAction" visibility="public" type="UnmarshallAction" subsettedProperty="A_input_action-action" association="A_object_unmarshallAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_object_unmarshallAction-unmarshallAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_observation_duration" name="A_observation_duration" visibility="private" memberEnd="Duration-observation A_observation_duration-duration"> |
| <ownedEnd xmi:id="A_observation_duration-duration" name="duration" visibility="public" type="Duration" association="A_observation_duration"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_observation_duration-duration-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_observation_timeExpression" name="A_observation_timeExpression" visibility="private" memberEnd="TimeExpression-observation A_observation_timeExpression-timeExpression"> |
| <ownedEnd xmi:id="A_observation_timeExpression-timeExpression" name="timeExpression" visibility="public" type="TimeExpression" association="A_observation_timeExpression"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_observation_timeExpression-timeExpression-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_oldClassifier_reclassifyObjectAction" name="A_oldClassifier_reclassifyObjectAction" visibility="private" memberEnd="ReclassifyObjectAction-oldClassifier A_oldClassifier_reclassifyObjectAction-reclassifyObjectAction"> |
| <ownedEnd xmi:id="A_oldClassifier_reclassifyObjectAction-reclassifyObjectAction" name="reclassifyObjectAction" visibility="public" type="ReclassifyObjectAction" association="A_oldClassifier_reclassifyObjectAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_oldClassifier_reclassifyObjectAction-reclassifyObjectAction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_oldClassifier_reclassifyObjectAction-reclassifyObjectAction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_onPort_invocationAction" name="A_onPort_invocationAction" visibility="private" memberEnd="InvocationAction-onPort A_onPort_invocationAction-invocationAction"> |
| <ownedEnd xmi:id="A_onPort_invocationAction-invocationAction" name="invocationAction" visibility="public" type="InvocationAction" association="A_onPort_invocationAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_onPort_invocationAction-invocationAction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_onPort_invocationAction-invocationAction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_operand_combinedFragment" name="A_operand_combinedFragment" visibility="private" memberEnd="CombinedFragment-operand A_operand_combinedFragment-combinedFragment"> |
| <ownedEnd xmi:id="A_operand_combinedFragment-combinedFragment" name="combinedFragment" visibility="public" type="CombinedFragment" subsettedProperty="Element-owner" association="A_operand_combinedFragment"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_operand_combinedFragment-combinedFragment-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_operand_expression" name="A_operand_expression" visibility="private" memberEnd="Expression-operand A_operand_expression-expression"> |
| <ownedEnd xmi:id="A_operand_expression-expression" name="expression" visibility="public" type="Expression" subsettedProperty="Element-owner" association="A_operand_expression"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_operand_expression-expression-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_operation_callEvent" name="A_operation_callEvent" visibility="private" memberEnd="CallEvent-operation A_operation_callEvent-callEvent"> |
| <ownedEnd xmi:id="A_operation_callEvent-callEvent" name="callEvent" visibility="public" type="CallEvent" association="A_operation_callEvent"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_operation_callEvent-callEvent-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_operation_callEvent-callEvent-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_operation_callOperationAction" name="A_operation_callOperationAction" visibility="private" memberEnd="CallOperationAction-operation A_operation_callOperationAction-callOperationAction"> |
| <ownedEnd xmi:id="A_operation_callOperationAction-callOperationAction" name="callOperationAction" visibility="public" type="CallOperationAction" association="A_operation_callOperationAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_operation_callOperationAction-callOperationAction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_operation_callOperationAction-callOperationAction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_operation_templateParameter_parameteredElement" name="A_operation_templateParameter_parameteredElement" visibility="private" memberEnd="Operation-templateParameter OperationTemplateParameter-parameteredElement"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_opposite_property" name="A_opposite_property" visibility="private" isDerived="true" memberEnd="Property-opposite A_opposite_property-property"> |
| <ownedEnd xmi:id="A_opposite_property-property" name="property" visibility="public" type="Property" association="A_opposite_property"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_opposite_property-property-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_outgoing_source_node" name="A_outgoing_source_node" visibility="private" memberEnd="ActivityNode-outgoing ActivityEdge-source"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_outgoing_source_vertex" name="A_outgoing_source_vertex" visibility="private" memberEnd="Vertex-outgoing Transition-source"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_outputElement_regionAsOutput" name="A_outputElement_regionAsOutput" visibility="private" memberEnd="ExpansionRegion-outputElement ExpansionNode-regionAsOutput"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_outputValue_opaqueAction" name="A_outputValue_opaqueAction" visibility="private" memberEnd="OpaqueAction-outputValue A_outputValue_opaqueAction-opaqueAction"> |
| <ownedEnd xmi:id="A_outputValue_opaqueAction-opaqueAction" name="opaqueAction" visibility="public" type="OpaqueAction" subsettedProperty="A_output_action-action" association="A_outputValue_opaqueAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_outputValue_opaqueAction-opaqueAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_output_action" name="A_output_action" visibility="private" isDerived="true" memberEnd="Action-output A_output_action-action"> |
| <ownedEnd xmi:id="A_output_action-action" name="action" visibility="public" type="Action" subsettedProperty="Element-owner" association="A_output_action"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_output_action-action-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedActual_templateParameterSubstitution" name="A_ownedActual_templateParameterSubstitution" visibility="private" memberEnd="TemplateParameterSubstitution-ownedActual A_ownedActual_templateParameterSubstitution-templateParameterSubstitution"> |
| <generalization xmi:id="A_ownedActual_templateParameterSubstitution-_generalization.0" general="A_actual_templateParameterSubstitution"/> |
| <ownedEnd xmi:id="A_ownedActual_templateParameterSubstitution-templateParameterSubstitution" name="templateParameterSubstitution" visibility="public" type="TemplateParameterSubstitution" redefinedProperty="A_actual_templateParameterSubstitution-templateParameterSubstitution" subsettedProperty="Element-owner" association="A_ownedActual_templateParameterSubstitution"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedActual_templateParameterSubstitution-templateParameterSubstitution-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedAttribute_artifact" name="A_ownedAttribute_artifact" visibility="private" memberEnd="Artifact-ownedAttribute A_ownedAttribute_artifact-artifact"> |
| <ownedEnd xmi:id="A_ownedAttribute_artifact-artifact" name="artifact" visibility="public" type="Artifact" subsettedProperty="A_attribute_classifier-classifier NamedElement-namespace" association="A_ownedAttribute_artifact"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedAttribute_artifact-artifact-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedAttribute_class" name="A_ownedAttribute_class" visibility="private" memberEnd="Class-ownedAttribute Property-class"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedAttribute_datatype" name="A_ownedAttribute_datatype" visibility="private" memberEnd="DataType-ownedAttribute Property-datatype"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedAttribute_interface" name="A_ownedAttribute_interface" visibility="private" memberEnd="Interface-ownedAttribute Property-interface"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedAttribute_owningSignal" name="A_ownedAttribute_owningSignal" visibility="private" memberEnd="Signal-ownedAttribute A_ownedAttribute_owningSignal-owningSignal"> |
| <ownedEnd xmi:id="A_ownedAttribute_owningSignal-owningSignal" name="owningSignal" visibility="public" type="Signal" subsettedProperty="A_attribute_classifier-classifier NamedElement-namespace" association="A_ownedAttribute_owningSignal"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedAttribute_owningSignal-owningSignal-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedAttribute_structuredClassifier" name="A_ownedAttribute_structuredClassifier" visibility="private" memberEnd="StructuredClassifier-ownedAttribute A_ownedAttribute_structuredClassifier-structuredClassifier"> |
| <generalization xmi:id="A_ownedAttribute_structuredClassifier-_generalization.0" general="A_role_structuredClassifier"/> |
| <ownedEnd xmi:id="A_ownedAttribute_structuredClassifier-structuredClassifier" name="structuredClassifier" visibility="public" type="StructuredClassifier" redefinedProperty="A_role_structuredClassifier-structuredClassifier" subsettedProperty="A_attribute_classifier-classifier NamedElement-namespace" association="A_ownedAttribute_structuredClassifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedAttribute_structuredClassifier-structuredClassifier-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedBehavior_behavioredClassifier" name="A_ownedBehavior_behavioredClassifier" visibility="private" memberEnd="BehavioredClassifier-ownedBehavior A_ownedBehavior_behavioredClassifier-behavioredClassifier"> |
| <ownedEnd xmi:id="A_ownedBehavior_behavioredClassifier-behavioredClassifier" name="behavioredClassifier" visibility="public" type="BehavioredClassifier" subsettedProperty="NamedElement-namespace" association="A_ownedBehavior_behavioredClassifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedBehavior_behavioredClassifier-behavioredClassifier-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedComment_owningElement" name="A_ownedComment_owningElement" visibility="private" memberEnd="Element-ownedComment A_ownedComment_owningElement-owningElement"> |
| <ownedEnd xmi:id="A_ownedComment_owningElement-owningElement" name="owningElement" visibility="public" type="Element" subsettedProperty="Element-owner" association="A_ownedComment_owningElement"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedComment_owningElement-owningElement-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedConnector_structuredClassifier" name="A_ownedConnector_structuredClassifier" visibility="private" memberEnd="StructuredClassifier-ownedConnector A_ownedConnector_structuredClassifier-structuredClassifier"> |
| <ownedEnd xmi:id="A_ownedConnector_structuredClassifier-structuredClassifier" name="structuredClassifier" visibility="public" type="StructuredClassifier" subsettedProperty="Feature-featuringClassifier RedefinableElement-redefinitionContext NamedElement-namespace" association="A_ownedConnector_structuredClassifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedConnector_structuredClassifier-structuredClassifier-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedDefault_templateParameter" name="A_ownedDefault_templateParameter" visibility="private" memberEnd="TemplateParameter-ownedDefault A_ownedDefault_templateParameter-templateParameter"> |
| <generalization xmi:id="A_ownedDefault_templateParameter-_generalization.0" general="A_default_templateParameter"/> |
| <ownedEnd xmi:id="A_ownedDefault_templateParameter-templateParameter" name="templateParameter" visibility="public" type="TemplateParameter" redefinedProperty="A_default_templateParameter-templateParameter" subsettedProperty="Element-owner" association="A_ownedDefault_templateParameter"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedDefault_templateParameter-templateParameter-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedElement_owner" name="A_ownedElement_owner" visibility="private" isDerived="true" memberEnd="Element-ownedElement Element-owner"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedEnd_extension" name="A_ownedEnd_extension" visibility="private" memberEnd="Extension-ownedEnd A_ownedEnd_extension-extension"> |
| <ownedEnd xmi:id="A_ownedEnd_extension-extension" name="extension" visibility="public" type="Extension" subsettedProperty="Property-owningAssociation" association="A_ownedEnd_extension"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedEnd_owningAssociation" name="A_ownedEnd_owningAssociation" visibility="private" memberEnd="Association-ownedEnd Property-owningAssociation"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedLiteral_enumeration" name="A_ownedLiteral_enumeration" visibility="private" memberEnd="Enumeration-ownedLiteral EnumerationLiteral-enumeration"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedMember_namespace" name="A_ownedMember_namespace" visibility="private" isDerived="true" memberEnd="Namespace-ownedMember NamedElement-namespace"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedOperation_artifact" name="A_ownedOperation_artifact" visibility="private" memberEnd="Artifact-ownedOperation A_ownedOperation_artifact-artifact"> |
| <ownedEnd xmi:id="A_ownedOperation_artifact-artifact" name="artifact" visibility="public" type="Artifact" subsettedProperty="Feature-featuringClassifier RedefinableElement-redefinitionContext NamedElement-namespace" association="A_ownedOperation_artifact"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedOperation_artifact-artifact-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedOperation_class" name="A_ownedOperation_class" visibility="private" memberEnd="Class-ownedOperation Operation-class"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedOperation_datatype" name="A_ownedOperation_datatype" visibility="private" memberEnd="DataType-ownedOperation Operation-datatype"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedOperation_interface" name="A_ownedOperation_interface" visibility="private" memberEnd="Interface-ownedOperation Operation-interface"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedParameterSet_behavior" name="A_ownedParameterSet_behavior" visibility="private" memberEnd="Behavior-ownedParameterSet A_ownedParameterSet_behavior-behavior"> |
| <ownedEnd xmi:id="A_ownedParameterSet_behavior-behavior" name="behavior" visibility="public" type="Behavior" subsettedProperty="NamedElement-namespace" association="A_ownedParameterSet_behavior"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedParameterSet_behavior-behavior-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedParameterSet_behavioralFeature" name="A_ownedParameterSet_behavioralFeature" visibility="private" memberEnd="BehavioralFeature-ownedParameterSet A_ownedParameterSet_behavioralFeature-behavioralFeature"> |
| <ownedEnd xmi:id="A_ownedParameterSet_behavioralFeature-behavioralFeature" name="behavioralFeature" visibility="public" type="BehavioralFeature" subsettedProperty="NamedElement-namespace" association="A_ownedParameterSet_behavioralFeature"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedParameterSet_behavioralFeature-behavioralFeature-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedParameter_behavior" name="A_ownedParameter_behavior" visibility="private" memberEnd="Behavior-ownedParameter A_ownedParameter_behavior-behavior"> |
| <ownedEnd xmi:id="A_ownedParameter_behavior-behavior" name="behavior" visibility="public" type="Behavior" subsettedProperty="NamedElement-namespace" association="A_ownedParameter_behavior"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedParameter_behavior-behavior-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedParameter_operation" name="A_ownedParameter_operation" visibility="private" memberEnd="Operation-ownedParameter Parameter-operation"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedParameter_ownerFormalParam" name="A_ownedParameter_ownerFormalParam" visibility="private" memberEnd="BehavioralFeature-ownedParameter A_ownedParameter_ownerFormalParam-ownerFormalParam"> |
| <ownedEnd xmi:id="A_ownedParameter_ownerFormalParam-ownerFormalParam" name="ownerFormalParam" visibility="public" type="BehavioralFeature" subsettedProperty="NamedElement-namespace" association="A_ownedParameter_ownerFormalParam"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedParameter_ownerFormalParam-ownerFormalParam-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedParameter_signature" name="A_ownedParameter_signature" visibility="private" memberEnd="TemplateSignature-ownedParameter TemplateParameter-signature"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedParameteredElement_owningTemplateParameter" name="A_ownedParameteredElement_owningTemplateParameter" visibility="private" memberEnd="TemplateParameter-ownedParameteredElement ParameterableElement-owningTemplateParameter"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedPort_encapsulatedClassifier" name="A_ownedPort_encapsulatedClassifier" visibility="private" isDerived="true" memberEnd="EncapsulatedClassifier-ownedPort A_ownedPort_encapsulatedClassifier-encapsulatedClassifier"> |
| <ownedEnd xmi:id="A_ownedPort_encapsulatedClassifier-encapsulatedClassifier" name="encapsulatedClassifier" visibility="public" type="EncapsulatedClassifier" subsettedProperty="A_ownedAttribute_structuredClassifier-structuredClassifier" association="A_ownedPort_encapsulatedClassifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedPort_encapsulatedClassifier-encapsulatedClassifier-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedReception_class" name="A_ownedReception_class" visibility="private" memberEnd="Class-ownedReception A_ownedReception_class-class"> |
| <ownedEnd xmi:id="A_ownedReception_class-class" name="class" visibility="public" type="Class" subsettedProperty="Feature-featuringClassifier NamedElement-namespace" association="A_ownedReception_class"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedReception_class-class-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedReception_interface" name="A_ownedReception_interface" visibility="private" memberEnd="Interface-ownedReception A_ownedReception_interface-interface"> |
| <ownedEnd xmi:id="A_ownedReception_interface-interface" name="interface" visibility="public" type="Interface" subsettedProperty="Feature-featuringClassifier NamedElement-namespace" association="A_ownedReception_interface"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedReception_interface-interface-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedRule_context" name="A_ownedRule_context" visibility="private" memberEnd="Namespace-ownedRule Constraint-context"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedStereotype_owningPackage" name="A_ownedStereotype_owningPackage" visibility="private" isDerived="true" memberEnd="Package-ownedStereotype A_ownedStereotype_owningPackage-owningPackage"> |
| <generalization xmi:id="A_ownedStereotype_owningPackage-_generalization.0" general="A_packagedElement_owningPackage"/> |
| <ownedEnd xmi:id="A_ownedStereotype_owningPackage-owningPackage" name="owningPackage" visibility="public" type="Package" redefinedProperty="A_packagedElement_owningPackage-owningPackage" association="A_ownedStereotype_owningPackage"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedTemplateSignature_classifier" name="A_ownedTemplateSignature_classifier" visibility="private" memberEnd="Classifier-ownedTemplateSignature RedefinableTemplateSignature-classifier"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedTemplateSignature_template" name="A_ownedTemplateSignature_template" visibility="private" memberEnd="TemplateableElement-ownedTemplateSignature TemplateSignature-template"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedType_package" name="A_ownedType_package" visibility="private" memberEnd="Package-ownedType Type-package"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_ownedUseCase_classifier" name="A_ownedUseCase_classifier" visibility="private" memberEnd="Classifier-ownedUseCase A_ownedUseCase_classifier-classifier"> |
| <ownedEnd xmi:id="A_ownedUseCase_classifier-classifier" name="classifier" visibility="public" type="Classifier" subsettedProperty="NamedElement-namespace" association="A_ownedUseCase_classifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_ownedUseCase_classifier-classifier-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_packageImport_importingNamespace" name="A_packageImport_importingNamespace" visibility="private" memberEnd="Namespace-packageImport PackageImport-importingNamespace"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_packageMerge_receivingPackage" name="A_packageMerge_receivingPackage" visibility="private" memberEnd="Package-packageMerge PackageMerge-receivingPackage"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_packagedElement_component" name="A_packagedElement_component" visibility="private" memberEnd="Component-packagedElement A_packagedElement_component-component"> |
| <ownedEnd xmi:id="A_packagedElement_component-component" name="component" visibility="public" type="Component" subsettedProperty="NamedElement-namespace" association="A_packagedElement_component"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_packagedElement_component-component-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_packagedElement_owningPackage" name="A_packagedElement_owningPackage" visibility="private" memberEnd="Package-packagedElement A_packagedElement_owningPackage-owningPackage"> |
| <ownedEnd xmi:id="A_packagedElement_owningPackage-owningPackage" name="owningPackage" visibility="public" type="Package" subsettedProperty="NamedElement-namespace" association="A_packagedElement_owningPackage"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_packagedElement_owningPackage-owningPackage-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_parameterSet_parameter" name="A_parameterSet_parameter" visibility="private" memberEnd="Parameter-parameterSet ParameterSet-parameter"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_parameterSubstitution_templateBinding" name="A_parameterSubstitution_templateBinding" visibility="private" memberEnd="TemplateBinding-parameterSubstitution TemplateParameterSubstitution-templateBinding"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_parameter_activityParameterNode" name="A_parameter_activityParameterNode" visibility="private" memberEnd="ActivityParameterNode-parameter A_parameter_activityParameterNode-activityParameterNode"> |
| <ownedEnd xmi:id="A_parameter_activityParameterNode-activityParameterNode" name="activityParameterNode" visibility="public" type="ActivityParameterNode" association="A_parameter_activityParameterNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_parameter_activityParameterNode-activityParameterNode-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_parameter_activityParameterNode-activityParameterNode-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_parameter_templateSignature" name="A_parameter_templateSignature" visibility="private" memberEnd="TemplateSignature-parameter A_parameter_templateSignature-templateSignature"> |
| <ownedEnd xmi:id="A_parameter_templateSignature-templateSignature" name="templateSignature" visibility="public" type="TemplateSignature" association="A_parameter_templateSignature"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_parameter_templateSignature-templateSignature-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_parameter_templateSignature-templateSignature-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_parameteredElement_templateParameter" name="A_parameteredElement_templateParameter" visibility="private" memberEnd="TemplateParameter-parameteredElement ParameterableElement-templateParameter"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_partWithPort_connectorEnd" name="A_partWithPort_connectorEnd" visibility="private" memberEnd="ConnectorEnd-partWithPort A_partWithPort_connectorEnd-connectorEnd"> |
| <ownedEnd xmi:id="A_partWithPort_connectorEnd-connectorEnd" name="connectorEnd" visibility="public" type="ConnectorEnd" association="A_partWithPort_connectorEnd"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_partWithPort_connectorEnd-connectorEnd-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_partWithPort_connectorEnd-connectorEnd-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_part_structuredClassifier" name="A_part_structuredClassifier" visibility="private" isDerived="true" memberEnd="StructuredClassifier-part A_part_structuredClassifier-structuredClassifier"> |
| <ownedEnd xmi:id="A_part_structuredClassifier-structuredClassifier" name="structuredClassifier" visibility="public" type="StructuredClassifier" association="A_part_structuredClassifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_part_structuredClassifier-structuredClassifier-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_partition_activity" name="A_partition_activity" visibility="private" memberEnd="Activity-partition A_partition_activity-activity"> |
| <ownedEnd xmi:id="A_partition_activity-activity" name="activity" visibility="public" type="Activity" subsettedProperty="ActivityGroup-inActivity" association="A_partition_activity"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_partition_activity-activity-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_port_trigger" name="A_port_trigger" visibility="private" memberEnd="Trigger-port A_port_trigger-trigger"> |
| <ownedEnd xmi:id="A_port_trigger-trigger" name="trigger" visibility="public" type="Trigger" association="A_port_trigger"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_port_trigger-trigger-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_port_trigger-trigger-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_postCondition_owningTransition" name="A_postCondition_owningTransition" visibility="private" memberEnd="ProtocolTransition-postCondition A_postCondition_owningTransition-owningTransition"> |
| <ownedEnd xmi:id="A_postCondition_owningTransition-owningTransition" name="owningTransition" visibility="public" type="ProtocolTransition" subsettedProperty="Constraint-context" association="A_postCondition_owningTransition"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_postCondition_owningTransition-owningTransition-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_postcondition_behavior" name="A_postcondition_behavior" visibility="private" memberEnd="Behavior-postcondition A_postcondition_behavior-behavior"> |
| <ownedEnd xmi:id="A_postcondition_behavior-behavior" name="behavior" visibility="public" type="Behavior" subsettedProperty="Constraint-context" association="A_postcondition_behavior"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_postcondition_behavior-behavior-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_postcondition_postContext" name="A_postcondition_postContext" visibility="private" memberEnd="Operation-postcondition A_postcondition_postContext-postContext"> |
| <ownedEnd xmi:id="A_postcondition_postContext-postContext" name="postContext" visibility="public" type="Operation" subsettedProperty="Constraint-context" association="A_postcondition_postContext"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_postcondition_postContext-postContext-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_powertypeExtent_powertype" name="A_powertypeExtent_powertype" visibility="private" memberEnd="Classifier-powertypeExtent GeneralizationSet-powertype"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_preCondition_protocolTransition" name="A_preCondition_protocolTransition" visibility="private" memberEnd="ProtocolTransition-preCondition A_preCondition_protocolTransition-protocolTransition"> |
| <generalization xmi:id="A_preCondition_protocolTransition-_generalization.0" general="A_guard_transition"/> |
| <ownedEnd xmi:id="A_preCondition_protocolTransition-protocolTransition" name="protocolTransition" visibility="public" type="ProtocolTransition" redefinedProperty="A_guard_transition-transition" association="A_preCondition_protocolTransition"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_preCondition_protocolTransition-protocolTransition-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_precondition_behavior" name="A_precondition_behavior" visibility="private" memberEnd="Behavior-precondition A_precondition_behavior-behavior"> |
| <ownedEnd xmi:id="A_precondition_behavior-behavior" name="behavior" visibility="public" type="Behavior" subsettedProperty="Constraint-context" association="A_precondition_behavior"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_precondition_behavior-behavior-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_precondition_preContext" name="A_precondition_preContext" visibility="private" memberEnd="Operation-precondition A_precondition_preContext-preContext"> |
| <ownedEnd xmi:id="A_precondition_preContext-preContext" name="preContext" visibility="public" type="Operation" subsettedProperty="Constraint-context" association="A_precondition_preContext"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_precondition_preContext-preContext-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_predecessorClause_successorClause" name="A_predecessorClause_successorClause" visibility="private" memberEnd="Clause-predecessorClause Clause-successorClause"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_profileApplication_applyingPackage" name="A_profileApplication_applyingPackage" visibility="private" memberEnd="Package-profileApplication ProfileApplication-applyingPackage"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_profile_stereotype" name="A_profile_stereotype" visibility="private" isDerived="true" memberEnd="Stereotype-profile A_profile_stereotype-stereotype"> |
| <ownedEnd xmi:id="A_profile_stereotype-stereotype" name="stereotype" visibility="public" type="Stereotype" association="A_profile_stereotype"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_profile_stereotype-stereotype-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_profile_stereotype-stereotype-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_protocol_interface" name="A_protocol_interface" visibility="private" memberEnd="Interface-protocol A_protocol_interface-interface"> |
| <ownedEnd xmi:id="A_protocol_interface-interface" name="interface" visibility="public" type="Interface" subsettedProperty="NamedElement-namespace" association="A_protocol_interface"> |
| <ownedComment xmi:id="A_protocol_interface-interface-_ownedComment.0" annotatedElement="A_protocol_interface-interface"> |
| <body>Specifies the namespace in which the protocol state machine is defined.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_protocol_interface-interface-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_protocol_port" name="A_protocol_port" visibility="private" memberEnd="Port-protocol A_protocol_port-port"> |
| <ownedEnd xmi:id="A_protocol_port-port" name="port" visibility="public" type="Port" association="A_protocol_port"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_protocol_port-port-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_protocol_port-port-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_provided_component" name="A_provided_component" visibility="private" isDerived="true" memberEnd="Component-provided A_provided_component-component"> |
| <ownedEnd xmi:id="A_provided_component-component" name="component" visibility="public" type="Component" association="A_provided_component"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_provided_component-component-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_provided_component-component-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_provided_port" name="A_provided_port" visibility="private" isDerived="true" memberEnd="Port-provided A_provided_port-port"> |
| <ownedEnd xmi:id="A_provided_port-port" name="port" visibility="public" type="Port" association="A_provided_port"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_provided_port-port-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_provided_port-port-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_qualifier_associationEnd" name="A_qualifier_associationEnd" visibility="private" memberEnd="Property-qualifier Property-associationEnd"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_qualifier_linkEndData" name="A_qualifier_linkEndData" visibility="private" memberEnd="LinkEndData-qualifier A_qualifier_linkEndData-linkEndData"> |
| <ownedEnd xmi:id="A_qualifier_linkEndData-linkEndData" name="linkEndData" visibility="public" type="LinkEndData" subsettedProperty="Element-owner" association="A_qualifier_linkEndData"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_qualifier_qualifierValue" name="A_qualifier_qualifierValue" visibility="private" memberEnd="QualifierValue-qualifier A_qualifier_qualifierValue-qualifierValue"> |
| <ownedEnd xmi:id="A_qualifier_qualifierValue-qualifierValue" name="qualifierValue" visibility="public" type="QualifierValue" association="A_qualifier_qualifierValue"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_qualifier_qualifierValue-qualifierValue-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_qualifier_qualifierValue-qualifierValue-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_qualifier_readLinkObjectEndQualifierAction" name="A_qualifier_readLinkObjectEndQualifierAction" visibility="private" memberEnd="ReadLinkObjectEndQualifierAction-qualifier A_qualifier_readLinkObjectEndQualifierAction-readLinkObjectEndQualifierAction"> |
| <ownedEnd xmi:id="A_qualifier_readLinkObjectEndQualifierAction-readLinkObjectEndQualifierAction" name="readLinkObjectEndQualifierAction" visibility="public" type="ReadLinkObjectEndQualifierAction" association="A_qualifier_readLinkObjectEndQualifierAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_qualifier_readLinkObjectEndQualifierAction-readLinkObjectEndQualifierAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_raisedException_behavioralFeature" name="A_raisedException_behavioralFeature" visibility="private" memberEnd="BehavioralFeature-raisedException A_raisedException_behavioralFeature-behavioralFeature"> |
| <ownedEnd xmi:id="A_raisedException_behavioralFeature-behavioralFeature" name="behavioralFeature" visibility="public" type="BehavioralFeature" association="A_raisedException_behavioralFeature"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_raisedException_behavioralFeature-behavioralFeature-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_raisedException_behavioralFeature-behavioralFeature-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_raisedException_operation" name="A_raisedException_operation" visibility="private" memberEnd="Operation-raisedException A_raisedException_operation-operation"> |
| <ownedEnd xmi:id="A_raisedException_operation-operation" name="operation" visibility="public" type="Operation" subsettedProperty="A_raisedException_behavioralFeature-behavioralFeature" association="A_raisedException_operation"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_raisedException_operation-operation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_raisedException_operation-operation-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_realization_abstraction_component" name="A_realization_abstraction_component" visibility="private" memberEnd="Component-realization ComponentRealization-abstraction"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_realization_abstraction_flow" name="A_realization_abstraction_flow" visibility="private" memberEnd="InformationFlow-realization A_realization_abstraction_flow-abstraction"> |
| <ownedEnd xmi:id="A_realization_abstraction_flow-abstraction" name="abstraction" visibility="public" type="InformationFlow" association="A_realization_abstraction_flow"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_realization_abstraction_flow-abstraction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_realization_abstraction_flow-abstraction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_realizingActivityEdge_informationFlow" name="A_realizingActivityEdge_informationFlow" visibility="private" memberEnd="InformationFlow-realizingActivityEdge A_realizingActivityEdge_informationFlow-informationFlow"> |
| <ownedEnd xmi:id="A_realizingActivityEdge_informationFlow-informationFlow" name="informationFlow" visibility="public" type="InformationFlow" association="A_realizingActivityEdge_informationFlow"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_realizingActivityEdge_informationFlow-informationFlow-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_realizingActivityEdge_informationFlow-informationFlow-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_realizingClassifier_componentRealization" name="A_realizingClassifier_componentRealization" visibility="private" memberEnd="ComponentRealization-realizingClassifier A_realizingClassifier_componentRealization-componentRealization"> |
| <ownedEnd xmi:id="A_realizingClassifier_componentRealization-componentRealization" name="componentRealization" visibility="public" type="ComponentRealization" subsettedProperty="NamedElement-clientDependency" association="A_realizingClassifier_componentRealization"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_realizingClassifier_componentRealization-componentRealization-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_realizingClassifier_componentRealization-componentRealization-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_realizingConnector_informationFlow" name="A_realizingConnector_informationFlow" visibility="private" memberEnd="InformationFlow-realizingConnector A_realizingConnector_informationFlow-informationFlow"> |
| <ownedEnd xmi:id="A_realizingConnector_informationFlow-informationFlow" name="informationFlow" visibility="public" type="InformationFlow" association="A_realizingConnector_informationFlow"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_realizingConnector_informationFlow-informationFlow-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_realizingConnector_informationFlow-informationFlow-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_realizingMessage_informationFlow" name="A_realizingMessage_informationFlow" visibility="private" memberEnd="InformationFlow-realizingMessage A_realizingMessage_informationFlow-informationFlow"> |
| <ownedEnd xmi:id="A_realizingMessage_informationFlow-informationFlow" name="informationFlow" visibility="public" type="InformationFlow" association="A_realizingMessage_informationFlow"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_realizingMessage_informationFlow-informationFlow-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_realizingMessage_informationFlow-informationFlow-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_receiveEvent_endMessage" name="A_receiveEvent_endMessage" visibility="private" memberEnd="Message-receiveEvent A_receiveEvent_endMessage-endMessage"> |
| <ownedEnd xmi:id="A_receiveEvent_endMessage-endMessage" name="endMessage" visibility="public" type="Message" subsettedProperty="MessageEnd-message" association="A_receiveEvent_endMessage"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_receiveEvent_endMessage-endMessage-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinedBehavior_behavior" name="A_redefinedBehavior_behavior" visibility="private" memberEnd="Behavior-redefinedBehavior A_redefinedBehavior_behavior-behavior"> |
| <ownedEnd xmi:id="A_redefinedBehavior_behavior-behavior" name="behavior" visibility="public" type="Behavior" subsettedProperty="A_redefinedClassifier_classifier-classifier" association="A_redefinedBehavior_behavior"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinedBehavior_behavior-behavior-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinedBehavior_behavior-behavior-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinedClassifier_classifier" name="A_redefinedClassifier_classifier" visibility="private" memberEnd="Classifier-redefinedClassifier A_redefinedClassifier_classifier-classifier"> |
| <ownedEnd xmi:id="A_redefinedClassifier_classifier-classifier" name="classifier" visibility="public" type="Classifier" subsettedProperty="A_redefinedElement_redefinableElement-redefinableElement" association="A_redefinedClassifier_classifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinedClassifier_classifier-classifier-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinedClassifier_classifier-classifier-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinedConnector_connector" name="A_redefinedConnector_connector" visibility="private" memberEnd="Connector-redefinedConnector A_redefinedConnector_connector-connector"> |
| <ownedEnd xmi:id="A_redefinedConnector_connector-connector" name="connector" visibility="public" type="Connector" subsettedProperty="A_redefinedElement_redefinableElement-redefinableElement" association="A_redefinedConnector_connector"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinedConnector_connector-connector-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinedConnector_connector-connector-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinedEdge_activityEdge" name="A_redefinedEdge_activityEdge" visibility="private" memberEnd="ActivityEdge-redefinedEdge A_redefinedEdge_activityEdge-activityEdge"> |
| <ownedEnd xmi:id="A_redefinedEdge_activityEdge-activityEdge" name="activityEdge" visibility="public" type="ActivityEdge" subsettedProperty="A_redefinedElement_redefinableElement-redefinableElement" association="A_redefinedEdge_activityEdge"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinedEdge_activityEdge-activityEdge-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinedEdge_activityEdge-activityEdge-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinedElement_redefinableElement" name="A_redefinedElement_redefinableElement" visibility="private" isDerived="true" memberEnd="RedefinableElement-redefinedElement A_redefinedElement_redefinableElement-redefinableElement"> |
| <ownedEnd xmi:id="A_redefinedElement_redefinableElement-redefinableElement" name="redefinableElement" visibility="public" type="RedefinableElement" association="A_redefinedElement_redefinableElement"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinedElement_redefinableElement-redefinableElement-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinedElement_redefinableElement-redefinableElement-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinedInterface_interface" name="A_redefinedInterface_interface" visibility="private" memberEnd="Interface-redefinedInterface A_redefinedInterface_interface-interface"> |
| <ownedEnd xmi:id="A_redefinedInterface_interface-interface" name="interface" visibility="public" type="Interface" subsettedProperty="A_redefinedClassifier_classifier-classifier" association="A_redefinedInterface_interface"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinedInterface_interface-interface-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinedInterface_interface-interface-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinedNode_activityNode" name="A_redefinedNode_activityNode" visibility="private" memberEnd="ActivityNode-redefinedNode A_redefinedNode_activityNode-activityNode"> |
| <ownedEnd xmi:id="A_redefinedNode_activityNode-activityNode" name="activityNode" visibility="public" type="ActivityNode" subsettedProperty="A_redefinedElement_redefinableElement-redefinableElement" association="A_redefinedNode_activityNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinedNode_activityNode-activityNode-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinedNode_activityNode-activityNode-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinedOperation_operation" name="A_redefinedOperation_operation" visibility="private" memberEnd="Operation-redefinedOperation A_redefinedOperation_operation-operation"> |
| <ownedEnd xmi:id="A_redefinedOperation_operation-operation" name="operation" visibility="public" type="Operation" subsettedProperty="A_redefinedElement_redefinableElement-redefinableElement" association="A_redefinedOperation_operation"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinedOperation_operation-operation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinedOperation_operation-operation-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinedPort_port" name="A_redefinedPort_port" visibility="private" memberEnd="Port-redefinedPort A_redefinedPort_port-port"> |
| <ownedEnd xmi:id="A_redefinedPort_port-port" name="port" visibility="public" type="Port" subsettedProperty="A_redefinedProperty_property-property" association="A_redefinedPort_port"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinedPort_port-port-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinedPort_port-port-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinedProperty_property" name="A_redefinedProperty_property" visibility="private" memberEnd="Property-redefinedProperty A_redefinedProperty_property-property"> |
| <ownedEnd xmi:id="A_redefinedProperty_property-property" name="property" visibility="public" type="Property" subsettedProperty="A_redefinedElement_redefinableElement-redefinableElement" association="A_redefinedProperty_property"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinedProperty_property-property-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinedProperty_property-property-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinedState_state" name="A_redefinedState_state" visibility="private" memberEnd="State-redefinedState A_redefinedState_state-state"> |
| <ownedEnd xmi:id="A_redefinedState_state-state" name="state" visibility="public" type="State" subsettedProperty="A_redefinedElement_redefinableElement-redefinableElement" association="A_redefinedState_state"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinedState_state-state-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinedTransition_transition" name="A_redefinedTransition_transition" visibility="private" memberEnd="Transition-redefinedTransition A_redefinedTransition_transition-transition"> |
| <ownedEnd xmi:id="A_redefinedTransition_transition-transition" name="transition" visibility="public" type="Transition" subsettedProperty="A_redefinedElement_redefinableElement-redefinableElement" association="A_redefinedTransition_transition"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinedTransition_transition-transition-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinitionContext_redefinableElement" name="A_redefinitionContext_redefinableElement" visibility="private" isDerived="true" memberEnd="RedefinableElement-redefinitionContext A_redefinitionContext_redefinableElement-redefinableElement"> |
| <ownedEnd xmi:id="A_redefinitionContext_redefinableElement-redefinableElement" name="redefinableElement" visibility="public" type="RedefinableElement" association="A_redefinitionContext_redefinableElement"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinitionContext_redefinableElement-redefinableElement-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinitionContext_redefinableElement-redefinableElement-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinitionContext_region" name="A_redefinitionContext_region" visibility="private" isDerived="true" memberEnd="Region-redefinitionContext A_redefinitionContext_region-region"> |
| <generalization xmi:id="A_redefinitionContext_region-_generalization.0" general="A_redefinitionContext_redefinableElement"/> |
| <ownedEnd xmi:id="A_redefinitionContext_region-region" name="region" visibility="public" type="Region" redefinedProperty="A_redefinitionContext_redefinableElement-redefinableElement" association="A_redefinitionContext_region"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinitionContext_region-region-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinitionContext_region-region-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinitionContext_state" name="A_redefinitionContext_state" visibility="private" isDerived="true" memberEnd="State-redefinitionContext A_redefinitionContext_state-state"> |
| <generalization xmi:id="A_redefinitionContext_state-_generalization.0" general="A_redefinitionContext_redefinableElement"/> |
| <ownedEnd xmi:id="A_redefinitionContext_state-state" name="state" visibility="public" type="State" redefinedProperty="A_redefinitionContext_redefinableElement-redefinableElement" association="A_redefinitionContext_state"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinitionContext_state-state-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinitionContext_state-state-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_redefinitionContext_transition" name="A_redefinitionContext_transition" visibility="private" isDerived="true" memberEnd="Transition-redefinitionContext A_redefinitionContext_transition-transition"> |
| <generalization xmi:id="A_redefinitionContext_transition-_generalization.0" general="A_redefinitionContext_redefinableElement"/> |
| <ownedEnd xmi:id="A_redefinitionContext_transition-transition" name="transition" visibility="public" type="Transition" redefinedProperty="A_redefinitionContext_redefinableElement-redefinableElement" association="A_redefinitionContext_transition"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_redefinitionContext_transition-transition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_redefinitionContext_transition-transition-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_reducer_reduceAction" name="A_reducer_reduceAction" visibility="private" memberEnd="ReduceAction-reducer A_reducer_reduceAction-reduceAction"> |
| <ownedEnd xmi:id="A_reducer_reduceAction-reduceAction" name="reduceAction" visibility="public" type="ReduceAction" association="A_reducer_reduceAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_reducer_reduceAction-reduceAction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_reducer_reduceAction-reduceAction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_referred_protocolTransition" name="A_referred_protocolTransition" visibility="private" isDerived="true" memberEnd="ProtocolTransition-referred A_referred_protocolTransition-protocolTransition"> |
| <ownedEnd xmi:id="A_referred_protocolTransition-protocolTransition" name="protocolTransition" visibility="public" type="ProtocolTransition" association="A_referred_protocolTransition"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_referred_protocolTransition-protocolTransition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_referred_protocolTransition-protocolTransition-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_refersTo_interactionUse" name="A_refersTo_interactionUse" visibility="private" memberEnd="InteractionUse-refersTo A_refersTo_interactionUse-interactionUse"> |
| <ownedEnd xmi:id="A_refersTo_interactionUse-interactionUse" name="interactionUse" visibility="public" type="InteractionUse" association="A_refersTo_interactionUse"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_refersTo_interactionUse-interactionUse-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_refersTo_interactionUse-interactionUse-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_region_state" name="A_region_state" visibility="private" memberEnd="State-region Region-state"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_region_stateMachine" name="A_region_stateMachine" visibility="private" memberEnd="StateMachine-region Region-stateMachine"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_relatedElement_relationship" name="A_relatedElement_relationship" visibility="private" isDerived="true" memberEnd="Relationship-relatedElement A_relatedElement_relationship-relationship"> |
| <ownedEnd xmi:id="A_relatedElement_relationship-relationship" name="relationship" visibility="public" type="Relationship" association="A_relatedElement_relationship"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_relatedElement_relationship-relationship-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_relatedElement_relationship-relationship-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_removeAt_removeStructuralFeatureValueAction" name="A_removeAt_removeStructuralFeatureValueAction" visibility="private" memberEnd="RemoveStructuralFeatureValueAction-removeAt A_removeAt_removeStructuralFeatureValueAction-removeStructuralFeatureValueAction"> |
| <ownedEnd xmi:id="A_removeAt_removeStructuralFeatureValueAction-removeStructuralFeatureValueAction" name="removeStructuralFeatureValueAction" visibility="public" type="RemoveStructuralFeatureValueAction" subsettedProperty="A_input_action-action" association="A_removeAt_removeStructuralFeatureValueAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_removeAt_removeStructuralFeatureValueAction-removeStructuralFeatureValueAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_removeAt_removeVariableValueAction" name="A_removeAt_removeVariableValueAction" visibility="private" memberEnd="RemoveVariableValueAction-removeAt A_removeAt_removeVariableValueAction-removeVariableValueAction"> |
| <ownedEnd xmi:id="A_removeAt_removeVariableValueAction-removeVariableValueAction" name="removeVariableValueAction" visibility="public" type="RemoveVariableValueAction" subsettedProperty="A_input_action-action" association="A_removeAt_removeVariableValueAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_removeAt_removeVariableValueAction-removeVariableValueAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_replyToCall_replyAction" name="A_replyToCall_replyAction" visibility="private" memberEnd="ReplyAction-replyToCall A_replyToCall_replyAction-replyAction"> |
| <ownedEnd xmi:id="A_replyToCall_replyAction-replyAction" name="replyAction" visibility="public" type="ReplyAction" association="A_replyToCall_replyAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_replyToCall_replyAction-replyAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_replyValue_replyAction" name="A_replyValue_replyAction" visibility="private" memberEnd="ReplyAction-replyValue A_replyValue_replyAction-replyAction"> |
| <ownedEnd xmi:id="A_replyValue_replyAction-replyAction" name="replyAction" visibility="public" type="ReplyAction" subsettedProperty="A_input_action-action" association="A_replyValue_replyAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_replyValue_replyAction-replyAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_representation_classifier" name="A_representation_classifier" visibility="private" memberEnd="Classifier-representation A_representation_classifier-classifier"> |
| <generalization xmi:id="A_representation_classifier-_generalization.0" general="A_collaborationUse_classifier"/> |
| <ownedEnd xmi:id="A_representation_classifier-classifier" name="classifier" visibility="public" type="Classifier" redefinedProperty="A_collaborationUse_classifier-classifier" association="A_representation_classifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_representation_classifier-classifier-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_represented_representation" name="A_represented_representation" visibility="private" memberEnd="InformationItem-represented A_represented_representation-representation"> |
| <ownedEnd xmi:id="A_represented_representation-representation" name="representation" visibility="public" type="InformationItem" association="A_represented_representation"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_represented_representation-representation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_represented_representation-representation-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_represents_activityPartition" name="A_represents_activityPartition" visibility="private" memberEnd="ActivityPartition-represents A_represents_activityPartition-activityPartition"> |
| <ownedEnd xmi:id="A_represents_activityPartition-activityPartition" name="activityPartition" visibility="public" type="ActivityPartition" association="A_represents_activityPartition"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_represents_activityPartition-activityPartition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_represents_activityPartition-activityPartition-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_represents_lifeline" name="A_represents_lifeline" visibility="private" memberEnd="Lifeline-represents A_represents_lifeline-lifeline"> |
| <ownedComment xmi:id="A_represents_lifeline-_ownedComment.0" annotatedElement="A_represents_lifeline"> |
| <body>If a Part has multiplicity, multiple lifelines might be used to show it.</body> |
| </ownedComment> |
| <ownedEnd xmi:id="A_represents_lifeline-lifeline" name="lifeline" visibility="public" type="Lifeline" association="A_represents_lifeline"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_represents_lifeline-lifeline-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_represents_lifeline-lifeline-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_request_sendObjectAction" name="A_request_sendObjectAction" visibility="private" memberEnd="SendObjectAction-request A_request_sendObjectAction-sendObjectAction"> |
| <generalization xmi:id="A_request_sendObjectAction-_generalization.0" general="A_argument_invocationAction"/> |
| <ownedEnd xmi:id="A_request_sendObjectAction-sendObjectAction" name="sendObjectAction" visibility="public" type="SendObjectAction" redefinedProperty="A_argument_invocationAction-invocationAction" association="A_request_sendObjectAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_request_sendObjectAction-sendObjectAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_required_component" name="A_required_component" visibility="private" isDerived="true" memberEnd="Component-required A_required_component-component"> |
| <ownedEnd xmi:id="A_required_component-component" name="component" visibility="public" type="Component" association="A_required_component"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_required_component-component-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_required_component-component-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_required_port" name="A_required_port" visibility="private" isDerived="true" memberEnd="Port-required A_required_port-port"> |
| <ownedEnd xmi:id="A_required_port-port" name="port" visibility="public" type="Port" association="A_required_port"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_required_port-port-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_required_port-port-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_acceptEventAction" name="A_result_acceptEventAction" visibility="private" memberEnd="AcceptEventAction-result A_result_acceptEventAction-acceptEventAction"> |
| <ownedEnd xmi:id="A_result_acceptEventAction-acceptEventAction" name="acceptEventAction" visibility="public" type="AcceptEventAction" subsettedProperty="A_output_action-action" association="A_result_acceptEventAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_acceptEventAction-acceptEventAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_callAction" name="A_result_callAction" visibility="private" memberEnd="CallAction-result A_result_callAction-callAction"> |
| <ownedEnd xmi:id="A_result_callAction-callAction" name="callAction" visibility="public" type="CallAction" subsettedProperty="A_output_action-action" association="A_result_callAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_callAction-callAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_clearStructuralFeatureAction" name="A_result_clearStructuralFeatureAction" visibility="private" memberEnd="ClearStructuralFeatureAction-result A_result_clearStructuralFeatureAction-clearStructuralFeatureAction"> |
| <ownedEnd xmi:id="A_result_clearStructuralFeatureAction-clearStructuralFeatureAction" name="clearStructuralFeatureAction" visibility="public" type="ClearStructuralFeatureAction" subsettedProperty="A_output_action-action" association="A_result_clearStructuralFeatureAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_clearStructuralFeatureAction-clearStructuralFeatureAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_conditionalNode" name="A_result_conditionalNode" visibility="private" memberEnd="ConditionalNode-result A_result_conditionalNode-conditionalNode"> |
| <ownedEnd xmi:id="A_result_conditionalNode-conditionalNode" name="conditionalNode" visibility="public" type="ConditionalNode" subsettedProperty="A_structuredNodeOutput_structuredActivityNode-structuredActivityNode" association="A_result_conditionalNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_conditionalNode-conditionalNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_createLinkObjectAction" name="A_result_createLinkObjectAction" visibility="private" memberEnd="CreateLinkObjectAction-result A_result_createLinkObjectAction-createLinkObjectAction"> |
| <ownedEnd xmi:id="A_result_createLinkObjectAction-createLinkObjectAction" name="createLinkObjectAction" visibility="public" type="CreateLinkObjectAction" subsettedProperty="A_output_action-action" association="A_result_createLinkObjectAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_createLinkObjectAction-createLinkObjectAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_createObjectAction" name="A_result_createObjectAction" visibility="private" memberEnd="CreateObjectAction-result A_result_createObjectAction-createObjectAction"> |
| <ownedEnd xmi:id="A_result_createObjectAction-createObjectAction" name="createObjectAction" visibility="public" type="CreateObjectAction" subsettedProperty="A_output_action-action" association="A_result_createObjectAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_createObjectAction-createObjectAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_loopNode" name="A_result_loopNode" visibility="private" memberEnd="LoopNode-result A_result_loopNode-loopNode"> |
| <ownedEnd xmi:id="A_result_loopNode-loopNode" name="loopNode" visibility="public" type="LoopNode" subsettedProperty="A_structuredNodeOutput_structuredActivityNode-structuredActivityNode" association="A_result_loopNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_loopNode-loopNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_opaqueExpression" name="A_result_opaqueExpression" visibility="private" isDerived="true" memberEnd="OpaqueExpression-result A_result_opaqueExpression-opaqueExpression"> |
| <ownedEnd xmi:id="A_result_opaqueExpression-opaqueExpression" name="opaqueExpression" visibility="public" type="OpaqueExpression" association="A_result_opaqueExpression"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_opaqueExpression-opaqueExpression-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_result_opaqueExpression-opaqueExpression-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_readExtentAction" name="A_result_readExtentAction" visibility="private" memberEnd="ReadExtentAction-result A_result_readExtentAction-readExtentAction"> |
| <ownedEnd xmi:id="A_result_readExtentAction-readExtentAction" name="readExtentAction" visibility="public" type="ReadExtentAction" subsettedProperty="A_output_action-action" association="A_result_readExtentAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_readExtentAction-readExtentAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_readIsClassifiedObjectAction" name="A_result_readIsClassifiedObjectAction" visibility="private" memberEnd="ReadIsClassifiedObjectAction-result A_result_readIsClassifiedObjectAction-readIsClassifiedObjectAction"> |
| <ownedEnd xmi:id="A_result_readIsClassifiedObjectAction-readIsClassifiedObjectAction" name="readIsClassifiedObjectAction" visibility="public" type="ReadIsClassifiedObjectAction" subsettedProperty="A_output_action-action" association="A_result_readIsClassifiedObjectAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_readIsClassifiedObjectAction-readIsClassifiedObjectAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_readLinkAction" name="A_result_readLinkAction" visibility="private" memberEnd="ReadLinkAction-result A_result_readLinkAction-readLinkAction"> |
| <ownedEnd xmi:id="A_result_readLinkAction-readLinkAction" name="readLinkAction" visibility="public" type="ReadLinkAction" subsettedProperty="A_output_action-action" association="A_result_readLinkAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_readLinkAction-readLinkAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_readLinkObjectEndAction" name="A_result_readLinkObjectEndAction" visibility="private" memberEnd="ReadLinkObjectEndAction-result A_result_readLinkObjectEndAction-readLinkObjectEndAction"> |
| <ownedEnd xmi:id="A_result_readLinkObjectEndAction-readLinkObjectEndAction" name="readLinkObjectEndAction" visibility="public" type="ReadLinkObjectEndAction" subsettedProperty="A_output_action-action" association="A_result_readLinkObjectEndAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_readLinkObjectEndAction-readLinkObjectEndAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_readLinkObjectEndQualifierAction" name="A_result_readLinkObjectEndQualifierAction" visibility="private" memberEnd="ReadLinkObjectEndQualifierAction-result A_result_readLinkObjectEndQualifierAction-readLinkObjectEndQualifierAction"> |
| <ownedEnd xmi:id="A_result_readLinkObjectEndQualifierAction-readLinkObjectEndQualifierAction" name="readLinkObjectEndQualifierAction" visibility="public" type="ReadLinkObjectEndQualifierAction" subsettedProperty="A_output_action-action" association="A_result_readLinkObjectEndQualifierAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_readLinkObjectEndQualifierAction-readLinkObjectEndQualifierAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_readSelfAction" name="A_result_readSelfAction" visibility="private" memberEnd="ReadSelfAction-result A_result_readSelfAction-readSelfAction"> |
| <ownedEnd xmi:id="A_result_readSelfAction-readSelfAction" name="readSelfAction" visibility="public" type="ReadSelfAction" subsettedProperty="A_output_action-action" association="A_result_readSelfAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_readSelfAction-readSelfAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_readStructuralFeatureAction" name="A_result_readStructuralFeatureAction" visibility="private" memberEnd="ReadStructuralFeatureAction-result A_result_readStructuralFeatureAction-readStructuralFeatureAction"> |
| <ownedEnd xmi:id="A_result_readStructuralFeatureAction-readStructuralFeatureAction" name="readStructuralFeatureAction" visibility="public" type="ReadStructuralFeatureAction" subsettedProperty="A_output_action-action" association="A_result_readStructuralFeatureAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_readStructuralFeatureAction-readStructuralFeatureAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_readVariableAction" name="A_result_readVariableAction" visibility="private" memberEnd="ReadVariableAction-result A_result_readVariableAction-readVariableAction"> |
| <ownedEnd xmi:id="A_result_readVariableAction-readVariableAction" name="readVariableAction" visibility="public" type="ReadVariableAction" subsettedProperty="A_output_action-action" association="A_result_readVariableAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_readVariableAction-readVariableAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_reduceAction" name="A_result_reduceAction" visibility="private" memberEnd="ReduceAction-result A_result_reduceAction-reduceAction"> |
| <ownedEnd xmi:id="A_result_reduceAction-reduceAction" name="reduceAction" visibility="public" type="ReduceAction" subsettedProperty="A_output_action-action" association="A_result_reduceAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_reduceAction-reduceAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_testIdentityAction" name="A_result_testIdentityAction" visibility="private" memberEnd="TestIdentityAction-result A_result_testIdentityAction-testIdentityAction"> |
| <ownedEnd xmi:id="A_result_testIdentityAction-testIdentityAction" name="testIdentityAction" visibility="public" type="TestIdentityAction" subsettedProperty="A_output_action-action" association="A_result_testIdentityAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_testIdentityAction-testIdentityAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_unmarshallAction" name="A_result_unmarshallAction" visibility="private" memberEnd="UnmarshallAction-result A_result_unmarshallAction-unmarshallAction"> |
| <ownedEnd xmi:id="A_result_unmarshallAction-unmarshallAction" name="unmarshallAction" visibility="public" type="UnmarshallAction" subsettedProperty="A_output_action-action" association="A_result_unmarshallAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_unmarshallAction-unmarshallAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_valueSpecificationAction" name="A_result_valueSpecificationAction" visibility="private" memberEnd="ValueSpecificationAction-result A_result_valueSpecificationAction-valueSpecificationAction"> |
| <ownedEnd xmi:id="A_result_valueSpecificationAction-valueSpecificationAction" name="valueSpecificationAction" visibility="public" type="ValueSpecificationAction" subsettedProperty="A_output_action-action" association="A_result_valueSpecificationAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_valueSpecificationAction-valueSpecificationAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_result_writeStructuralFeatureAction" name="A_result_writeStructuralFeatureAction" visibility="private" memberEnd="WriteStructuralFeatureAction-result A_result_writeStructuralFeatureAction-writeStructuralFeatureAction"> |
| <ownedEnd xmi:id="A_result_writeStructuralFeatureAction-writeStructuralFeatureAction" name="writeStructuralFeatureAction" visibility="public" type="WriteStructuralFeatureAction" subsettedProperty="A_output_action-action" association="A_result_writeStructuralFeatureAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_result_writeStructuralFeatureAction-writeStructuralFeatureAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_returnInformation_acceptCallAction" name="A_returnInformation_acceptCallAction" visibility="private" memberEnd="AcceptCallAction-returnInformation A_returnInformation_acceptCallAction-acceptCallAction"> |
| <ownedEnd xmi:id="A_returnInformation_acceptCallAction-acceptCallAction" name="acceptCallAction" visibility="public" type="AcceptCallAction" subsettedProperty="A_output_action-action" association="A_returnInformation_acceptCallAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_returnInformation_acceptCallAction-acceptCallAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_returnInformation_replyAction" name="A_returnInformation_replyAction" visibility="private" memberEnd="ReplyAction-returnInformation A_returnInformation_replyAction-replyAction"> |
| <ownedEnd xmi:id="A_returnInformation_replyAction-replyAction" name="replyAction" visibility="public" type="ReplyAction" subsettedProperty="A_input_action-action" association="A_returnInformation_replyAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_returnInformation_replyAction-replyAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_returnValueRecipient_interactionUse" name="A_returnValueRecipient_interactionUse" visibility="private" memberEnd="InteractionUse-returnValueRecipient A_returnValueRecipient_interactionUse-interactionUse"> |
| <ownedEnd xmi:id="A_returnValueRecipient_interactionUse-interactionUse" name="interactionUse" visibility="public" type="InteractionUse" association="A_returnValueRecipient_interactionUse"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_returnValueRecipient_interactionUse-interactionUse-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_returnValueRecipient_interactionUse-interactionUse-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_returnValue_interactionUse" name="A_returnValue_interactionUse" visibility="private" memberEnd="InteractionUse-returnValue A_returnValue_interactionUse-interactionUse"> |
| <ownedEnd xmi:id="A_returnValue_interactionUse-interactionUse" name="interactionUse" visibility="public" type="InteractionUse" subsettedProperty="Element-owner" association="A_returnValue_interactionUse"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_returnValue_interactionUse-interactionUse-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_roleBinding_collaborationUse" name="A_roleBinding_collaborationUse" visibility="private" memberEnd="CollaborationUse-roleBinding A_roleBinding_collaborationUse-collaborationUse"> |
| <ownedEnd xmi:id="A_roleBinding_collaborationUse-collaborationUse" name="collaborationUse" visibility="public" type="CollaborationUse" subsettedProperty="Element-owner" association="A_roleBinding_collaborationUse"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_roleBinding_collaborationUse-collaborationUse-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_role_structuredClassifier" name="A_role_structuredClassifier" visibility="private" isDerived="true" memberEnd="StructuredClassifier-role A_role_structuredClassifier-structuredClassifier"> |
| <ownedEnd xmi:id="A_role_structuredClassifier-structuredClassifier" name="structuredClassifier" visibility="public" type="StructuredClassifier" subsettedProperty="A_member_memberNamespace-memberNamespace" association="A_role_structuredClassifier"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_role_structuredClassifier-structuredClassifier-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_role_structuredClassifier-structuredClassifier-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_second_testIdentityAction" name="A_second_testIdentityAction" visibility="private" memberEnd="TestIdentityAction-second A_second_testIdentityAction-testIdentityAction"> |
| <ownedEnd xmi:id="A_second_testIdentityAction-testIdentityAction" name="testIdentityAction" visibility="public" type="TestIdentityAction" subsettedProperty="A_input_action-action" association="A_second_testIdentityAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_second_testIdentityAction-testIdentityAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_selection_objectFlow" name="A_selection_objectFlow" visibility="private" memberEnd="ObjectFlow-selection A_selection_objectFlow-objectFlow"> |
| <ownedEnd xmi:id="A_selection_objectFlow-objectFlow" name="objectFlow" visibility="public" type="ObjectFlow" association="A_selection_objectFlow"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_selection_objectFlow-objectFlow-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_selection_objectFlow-objectFlow-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_selection_objectNode" name="A_selection_objectNode" visibility="private" memberEnd="ObjectNode-selection A_selection_objectNode-objectNode"> |
| <ownedEnd xmi:id="A_selection_objectNode-objectNode" name="objectNode" visibility="public" type="ObjectNode" association="A_selection_objectNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_selection_objectNode-objectNode-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_selection_objectNode-objectNode-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_selector_lifeline" name="A_selector_lifeline" visibility="private" memberEnd="Lifeline-selector A_selector_lifeline-lifeline"> |
| <ownedEnd xmi:id="A_selector_lifeline-lifeline" name="lifeline" visibility="public" type="Lifeline" subsettedProperty="Element-owner" association="A_selector_lifeline"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_selector_lifeline-lifeline-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_sendEvent_endMessage" name="A_sendEvent_endMessage" visibility="private" memberEnd="Message-sendEvent A_sendEvent_endMessage-endMessage"> |
| <ownedEnd xmi:id="A_sendEvent_endMessage-endMessage" name="endMessage" visibility="public" type="Message" subsettedProperty="MessageEnd-message" association="A_sendEvent_endMessage"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_sendEvent_endMessage-endMessage-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_setupPart_loopNode" name="A_setupPart_loopNode" visibility="private" memberEnd="LoopNode-setupPart A_setupPart_loopNode-loopNode"> |
| <ownedEnd xmi:id="A_setupPart_loopNode-loopNode" name="loopNode" visibility="public" type="LoopNode" association="A_setupPart_loopNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_setupPart_loopNode-loopNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_signal_broadcastSignalAction" name="A_signal_broadcastSignalAction" visibility="private" memberEnd="BroadcastSignalAction-signal A_signal_broadcastSignalAction-broadcastSignalAction"> |
| <ownedEnd xmi:id="A_signal_broadcastSignalAction-broadcastSignalAction" name="broadcastSignalAction" visibility="public" type="BroadcastSignalAction" association="A_signal_broadcastSignalAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_signal_broadcastSignalAction-broadcastSignalAction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_signal_broadcastSignalAction-broadcastSignalAction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_signal_reception" name="A_signal_reception" visibility="private" memberEnd="Reception-signal A_signal_reception-reception"> |
| <ownedEnd xmi:id="A_signal_reception-reception" name="reception" visibility="public" type="Reception" association="A_signal_reception"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_signal_reception-reception-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_signal_reception-reception-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_signal_sendSignalAction" name="A_signal_sendSignalAction" visibility="private" memberEnd="SendSignalAction-signal A_signal_sendSignalAction-sendSignalAction"> |
| <ownedEnd xmi:id="A_signal_sendSignalAction-sendSignalAction" name="sendSignalAction" visibility="public" type="SendSignalAction" association="A_signal_sendSignalAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_signal_sendSignalAction-sendSignalAction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_signal_sendSignalAction-sendSignalAction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_signal_signalEvent" name="A_signal_signalEvent" visibility="private" memberEnd="SignalEvent-signal A_signal_signalEvent-signalEvent"> |
| <ownedEnd xmi:id="A_signal_signalEvent-signalEvent" name="signalEvent" visibility="public" type="SignalEvent" association="A_signal_signalEvent"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_signal_signalEvent-signalEvent-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_signal_signalEvent-signalEvent-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_signature_message" name="A_signature_message" visibility="private" memberEnd="Message-signature A_signature_message-message"> |
| <ownedEnd xmi:id="A_signature_message-message" name="message" visibility="public" type="Message" association="A_signature_message"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_signature_message-message-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_signature_message-message-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_signature_templateBinding" name="A_signature_templateBinding" visibility="private" memberEnd="TemplateBinding-signature A_signature_templateBinding-templateBinding"> |
| <ownedEnd xmi:id="A_signature_templateBinding-templateBinding" name="templateBinding" visibility="public" type="TemplateBinding" subsettedProperty="A_target_directedRelationship-directedRelationship" association="A_signature_templateBinding"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_signature_templateBinding-templateBinding-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_signature_templateBinding-templateBinding-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_slot_owningInstance" name="A_slot_owningInstance" visibility="private" memberEnd="InstanceSpecification-slot Slot-owningInstance"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_source_directedRelationship" name="A_source_directedRelationship" visibility="private" isDerived="true" memberEnd="DirectedRelationship-source A_source_directedRelationship-directedRelationship"> |
| <ownedEnd xmi:id="A_source_directedRelationship-directedRelationship" name="directedRelationship" visibility="public" type="DirectedRelationship" subsettedProperty="A_relatedElement_relationship-relationship" association="A_source_directedRelationship"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_source_directedRelationship-directedRelationship-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_source_directedRelationship-directedRelationship-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_specification_durationConstraint" name="A_specification_durationConstraint" visibility="private" memberEnd="DurationConstraint-specification A_specification_durationConstraint-durationConstraint"> |
| <generalization xmi:id="A_specification_durationConstraint-_generalization.0" general="A_specification_intervalConstraint"/> |
| <ownedEnd xmi:id="A_specification_durationConstraint-durationConstraint" name="durationConstraint" visibility="public" type="DurationConstraint" redefinedProperty="A_specification_intervalConstraint-intervalConstraint" association="A_specification_durationConstraint"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_specification_durationConstraint-durationConstraint-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_specification_intervalConstraint" name="A_specification_intervalConstraint" visibility="private" memberEnd="IntervalConstraint-specification A_specification_intervalConstraint-intervalConstraint"> |
| <generalization xmi:id="A_specification_intervalConstraint-_generalization.0" general="A_specification_owningConstraint"/> |
| <ownedEnd xmi:id="A_specification_intervalConstraint-intervalConstraint" name="intervalConstraint" visibility="public" type="IntervalConstraint" redefinedProperty="A_specification_owningConstraint-owningConstraint" association="A_specification_intervalConstraint"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_specification_intervalConstraint-intervalConstraint-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_specification_owningConstraint" name="A_specification_owningConstraint" visibility="private" memberEnd="Constraint-specification A_specification_owningConstraint-owningConstraint"> |
| <ownedEnd xmi:id="A_specification_owningConstraint-owningConstraint" name="owningConstraint" visibility="public" type="Constraint" subsettedProperty="Element-owner" association="A_specification_owningConstraint"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_specification_owningConstraint-owningConstraint-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_specification_owningInstanceSpec" name="A_specification_owningInstanceSpec" visibility="private" memberEnd="InstanceSpecification-specification A_specification_owningInstanceSpec-owningInstanceSpec"> |
| <ownedEnd xmi:id="A_specification_owningInstanceSpec-owningInstanceSpec" name="owningInstanceSpec" visibility="public" type="InstanceSpecification" subsettedProperty="Element-owner" association="A_specification_owningInstanceSpec"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_specification_owningInstanceSpec-owningInstanceSpec-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_specification_timeConstraint" name="A_specification_timeConstraint" visibility="private" memberEnd="TimeConstraint-specification A_specification_timeConstraint-timeConstraint"> |
| <generalization xmi:id="A_specification_timeConstraint-_generalization.0" general="A_specification_intervalConstraint"/> |
| <ownedEnd xmi:id="A_specification_timeConstraint-timeConstraint" name="timeConstraint" visibility="public" type="TimeConstraint" redefinedProperty="A_specification_intervalConstraint-intervalConstraint" association="A_specification_timeConstraint"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_specification_timeConstraint-timeConstraint-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_start_executionSpecification" name="A_start_executionSpecification" visibility="private" memberEnd="ExecutionSpecification-start A_start_executionSpecification-executionSpecification"> |
| <ownedComment xmi:id="A_start_executionSpecification-_ownedComment.0" annotatedElement="A_start_executionSpecification"> |
| <body>The event shows the time point at which the action begins execution.</body> |
| </ownedComment> |
| <ownedEnd xmi:id="A_start_executionSpecification-executionSpecification" name="executionSpecification" visibility="public" type="ExecutionSpecification" association="A_start_executionSpecification"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_start_executionSpecification-executionSpecification-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_start_executionSpecification-executionSpecification-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_stateInvariant_owningState" name="A_stateInvariant_owningState" visibility="private" memberEnd="State-stateInvariant A_stateInvariant_owningState-owningState"> |
| <ownedEnd xmi:id="A_stateInvariant_owningState-owningState" name="owningState" visibility="public" type="State" subsettedProperty="Constraint-context" association="A_stateInvariant_owningState"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_stateInvariant_owningState-owningState-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_structuralFeature_structuralFeatureAction" name="A_structuralFeature_structuralFeatureAction" visibility="private" memberEnd="StructuralFeatureAction-structuralFeature A_structuralFeature_structuralFeatureAction-structuralFeatureAction"> |
| <ownedEnd xmi:id="A_structuralFeature_structuralFeatureAction-structuralFeatureAction" name="structuralFeatureAction" visibility="public" type="StructuralFeatureAction" association="A_structuralFeature_structuralFeatureAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_structuralFeature_structuralFeatureAction-structuralFeatureAction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_structuralFeature_structuralFeatureAction-structuralFeatureAction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_structuredNodeInput_structuredActivityNode" name="A_structuredNodeInput_structuredActivityNode" visibility="private" memberEnd="StructuredActivityNode-structuredNodeInput A_structuredNodeInput_structuredActivityNode-structuredActivityNode"> |
| <ownedEnd xmi:id="A_structuredNodeInput_structuredActivityNode-structuredActivityNode" name="structuredActivityNode" visibility="public" type="StructuredActivityNode" subsettedProperty="A_input_action-action" association="A_structuredNodeInput_structuredActivityNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_structuredNodeInput_structuredActivityNode-structuredActivityNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_structuredNodeOutput_structuredActivityNode" name="A_structuredNodeOutput_structuredActivityNode" visibility="private" memberEnd="StructuredActivityNode-structuredNodeOutput A_structuredNodeOutput_structuredActivityNode-structuredActivityNode"> |
| <ownedEnd xmi:id="A_structuredNodeOutput_structuredActivityNode-structuredActivityNode" name="structuredActivityNode" visibility="public" type="StructuredActivityNode" subsettedProperty="A_output_action-action" association="A_structuredNodeOutput_structuredActivityNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_structuredNodeOutput_structuredActivityNode-structuredActivityNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_structuredNode_activity" name="A_structuredNode_activity" visibility="private" memberEnd="Activity-structuredNode StructuredActivityNode-activity"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_subExpression_owningExpression" name="A_subExpression_owningExpression" visibility="private" memberEnd="StringExpression-subExpression StringExpression-owningExpression"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_subgroup_superGroup" name="A_subgroup_superGroup" visibility="private" isDerived="true" memberEnd="ActivityGroup-subgroup ActivityGroup-superGroup"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_subject_useCase" name="A_subject_useCase" visibility="private" memberEnd="UseCase-subject Classifier-useCase"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_submachineState_submachine" name="A_submachineState_submachine" visibility="private" memberEnd="StateMachine-submachineState State-submachine"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_subpartition_superPartition" name="A_subpartition_superPartition" visibility="private" memberEnd="ActivityPartition-subpartition ActivityPartition-superPartition"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_subsettedProperty_property" name="A_subsettedProperty_property" visibility="private" memberEnd="Property-subsettedProperty A_subsettedProperty_property-property"> |
| <ownedEnd xmi:id="A_subsettedProperty_property-property" name="property" visibility="public" type="Property" association="A_subsettedProperty_property"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_subsettedProperty_property-property-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_subsettedProperty_property-property-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_substitution_substitutingClassifier" name="A_substitution_substitutingClassifier" visibility="private" memberEnd="Classifier-substitution Substitution-substitutingClassifier"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_subvertex_container" name="A_subvertex_container" visibility="private" memberEnd="Region-subvertex Vertex-container"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_superClass_class" name="A_superClass_class" visibility="private" isDerived="true" memberEnd="Class-superClass A_superClass_class-class"> |
| <ownedEnd xmi:id="A_superClass_class-class" name="class" visibility="public" type="Class" subsettedProperty="A_general_classifier-classifier" association="A_superClass_class"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_superClass_class-class-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_superClass_class-class-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_supplier_supplierDependency" name="A_supplier_supplierDependency" visibility="private" memberEnd="Dependency-supplier A_supplier_supplierDependency-supplierDependency"> |
| <ownedEnd xmi:id="A_supplier_supplierDependency-supplierDependency" name="supplierDependency" visibility="public" type="Dependency" subsettedProperty="A_target_directedRelationship-directedRelationship" association="A_supplier_supplierDependency"> |
| <ownedComment xmi:id="A_supplier_supplierDependency-supplierDependency-_ownedComment.0" annotatedElement="A_supplier_supplierDependency-supplierDependency"> |
| <body>Indicates the dependencies that reference the supplier.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_supplier_supplierDependency-supplierDependency-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_supplier_supplierDependency-supplierDependency-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_target_callOperationAction" name="A_target_callOperationAction" visibility="private" memberEnd="CallOperationAction-target A_target_callOperationAction-callOperationAction"> |
| <ownedEnd xmi:id="A_target_callOperationAction-callOperationAction" name="callOperationAction" visibility="public" type="CallOperationAction" subsettedProperty="A_input_action-action" association="A_target_callOperationAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_target_callOperationAction-callOperationAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_target_destroyObjectAction" name="A_target_destroyObjectAction" visibility="private" memberEnd="DestroyObjectAction-target A_target_destroyObjectAction-destroyObjectAction"> |
| <ownedEnd xmi:id="A_target_destroyObjectAction-destroyObjectAction" name="destroyObjectAction" visibility="public" type="DestroyObjectAction" subsettedProperty="A_input_action-action" association="A_target_destroyObjectAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_target_destroyObjectAction-destroyObjectAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_target_directedRelationship" name="A_target_directedRelationship" visibility="private" isDerived="true" memberEnd="DirectedRelationship-target A_target_directedRelationship-directedRelationship"> |
| <ownedEnd xmi:id="A_target_directedRelationship-directedRelationship" name="directedRelationship" visibility="public" type="DirectedRelationship" subsettedProperty="A_relatedElement_relationship-relationship" association="A_target_directedRelationship"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_target_directedRelationship-directedRelationship-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_target_directedRelationship-directedRelationship-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_target_sendObjectAction" name="A_target_sendObjectAction" visibility="private" memberEnd="SendObjectAction-target A_target_sendObjectAction-sendObjectAction"> |
| <ownedEnd xmi:id="A_target_sendObjectAction-sendObjectAction" name="sendObjectAction" visibility="public" type="SendObjectAction" subsettedProperty="A_input_action-action" association="A_target_sendObjectAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_target_sendObjectAction-sendObjectAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_target_sendSignalAction" name="A_target_sendSignalAction" visibility="private" memberEnd="SendSignalAction-target A_target_sendSignalAction-sendSignalAction"> |
| <ownedEnd xmi:id="A_target_sendSignalAction-sendSignalAction" name="sendSignalAction" visibility="public" type="SendSignalAction" subsettedProperty="A_input_action-action" association="A_target_sendSignalAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_target_sendSignalAction-sendSignalAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_templateBinding_boundElement" name="A_templateBinding_boundElement" visibility="private" memberEnd="TemplateableElement-templateBinding TemplateBinding-boundElement"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_test_clause" name="A_test_clause" visibility="private" memberEnd="Clause-test A_test_clause-clause"> |
| <ownedEnd xmi:id="A_test_clause-clause" name="clause" visibility="public" type="Clause" association="A_test_clause"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_test_clause-clause-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_test_loopNode" name="A_test_loopNode" visibility="private" memberEnd="LoopNode-test A_test_loopNode-loopNode"> |
| <ownedEnd xmi:id="A_test_loopNode-loopNode" name="loopNode" visibility="public" type="LoopNode" association="A_test_loopNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_test_loopNode-loopNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_toBefore_after" name="A_toBefore_after" visibility="private" memberEnd="OccurrenceSpecification-toBefore GeneralOrdering-after"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_transformation_objectFlow" name="A_transformation_objectFlow" visibility="private" memberEnd="ObjectFlow-transformation A_transformation_objectFlow-objectFlow"> |
| <ownedEnd xmi:id="A_transformation_objectFlow-objectFlow" name="objectFlow" visibility="public" type="ObjectFlow" association="A_transformation_objectFlow"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_transformation_objectFlow-objectFlow-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_transformation_objectFlow-objectFlow-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_transition_container" name="A_transition_container" visibility="private" memberEnd="Region-transition Transition-container"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_trigger_acceptEventAction" name="A_trigger_acceptEventAction" visibility="private" memberEnd="AcceptEventAction-trigger A_trigger_acceptEventAction-acceptEventAction"> |
| <ownedEnd xmi:id="A_trigger_acceptEventAction-acceptEventAction" name="acceptEventAction" visibility="public" type="AcceptEventAction" subsettedProperty="Element-owner" association="A_trigger_acceptEventAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_trigger_acceptEventAction-acceptEventAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_trigger_transition" name="A_trigger_transition" visibility="private" memberEnd="Transition-trigger A_trigger_transition-transition"> |
| <ownedEnd xmi:id="A_trigger_transition-transition" name="transition" visibility="public" type="Transition" subsettedProperty="Element-owner" association="A_trigger_transition"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_trigger_transition-transition-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_type_collaborationUse" name="A_type_collaborationUse" visibility="private" memberEnd="CollaborationUse-type A_type_collaborationUse-collaborationUse"> |
| <ownedEnd xmi:id="A_type_collaborationUse-collaborationUse" name="collaborationUse" visibility="public" type="CollaborationUse" association="A_type_collaborationUse"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_type_collaborationUse-collaborationUse-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_type_collaborationUse-collaborationUse-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_type_connector" name="A_type_connector" visibility="private" memberEnd="Connector-type A_type_connector-connector"> |
| <ownedEnd xmi:id="A_type_connector-connector" name="connector" visibility="public" type="Connector" association="A_type_connector"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_type_connector-connector-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_type_connector-connector-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_type_extensionEnd" name="A_type_extensionEnd" visibility="private" memberEnd="ExtensionEnd-type A_type_extensionEnd-extensionEnd"> |
| <ownedEnd xmi:id="A_type_extensionEnd-extensionEnd" name="extensionEnd" visibility="public" type="ExtensionEnd" subsettedProperty="A_type_typedElement-typedElement" association="A_type_extensionEnd"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_type_extensionEnd-extensionEnd-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_type_extensionEnd-extensionEnd-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_type_operation" name="A_type_operation" visibility="private" isDerived="true" memberEnd="Operation-type A_type_operation-operation"> |
| <ownedEnd xmi:id="A_type_operation-operation" name="operation" visibility="public" type="Operation" association="A_type_operation"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_type_operation-operation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_type_operation-operation-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_type_typedElement" name="A_type_typedElement" visibility="private" memberEnd="TypedElement-type A_type_typedElement-typedElement"> |
| <ownedEnd xmi:id="A_type_typedElement-typedElement" name="typedElement" visibility="public" type="TypedElement" association="A_type_typedElement"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_type_typedElement-typedElement-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_type_typedElement-typedElement-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_unmarshallType_unmarshallAction" name="A_unmarshallType_unmarshallAction" visibility="private" memberEnd="UnmarshallAction-unmarshallType A_unmarshallType_unmarshallAction-unmarshallAction"> |
| <ownedEnd xmi:id="A_unmarshallType_unmarshallAction-unmarshallAction" name="unmarshallAction" visibility="public" type="UnmarshallAction" association="A_unmarshallType_unmarshallAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_unmarshallType_unmarshallAction-unmarshallAction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_unmarshallType_unmarshallAction-unmarshallAction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_upperBound_objectNode" name="A_upperBound_objectNode" visibility="private" memberEnd="ObjectNode-upperBound A_upperBound_objectNode-objectNode"> |
| <ownedEnd xmi:id="A_upperBound_objectNode-objectNode" name="objectNode" visibility="public" type="ObjectNode" subsettedProperty="Element-owner" association="A_upperBound_objectNode"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_upperBound_objectNode-objectNode-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_upperValue_owningUpper" name="A_upperValue_owningUpper" visibility="private" memberEnd="MultiplicityElement-upperValue A_upperValue_owningUpper-owningUpper"> |
| <ownedEnd xmi:id="A_upperValue_owningUpper-owningUpper" name="owningUpper" visibility="public" type="MultiplicityElement" subsettedProperty="Element-owner" association="A_upperValue_owningUpper"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_upperValue_owningUpper-owningUpper-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_utilizedElement_manifestation" name="A_utilizedElement_manifestation" visibility="private" memberEnd="Manifestation-utilizedElement A_utilizedElement_manifestation-manifestation"> |
| <ownedEnd xmi:id="A_utilizedElement_manifestation-manifestation" name="manifestation" visibility="public" type="Manifestation" subsettedProperty="A_supplier_supplierDependency-supplierDependency" association="A_utilizedElement_manifestation"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_utilizedElement_manifestation-manifestation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_utilizedElement_manifestation-manifestation-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_value_linkEndData" name="A_value_linkEndData" visibility="private" memberEnd="LinkEndData-value A_value_linkEndData-linkEndData"> |
| <ownedEnd xmi:id="A_value_linkEndData-linkEndData" name="linkEndData" visibility="public" type="LinkEndData" association="A_value_linkEndData"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_value_linkEndData-linkEndData-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_value_owningSlot" name="A_value_owningSlot" visibility="private" memberEnd="Slot-value A_value_owningSlot-owningSlot"> |
| <ownedEnd xmi:id="A_value_owningSlot-owningSlot" name="owningSlot" visibility="public" type="Slot" subsettedProperty="Element-owner" association="A_value_owningSlot"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_value_owningSlot-owningSlot-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_value_qualifierValue" name="A_value_qualifierValue" visibility="private" memberEnd="QualifierValue-value A_value_qualifierValue-qualifierValue"> |
| <ownedEnd xmi:id="A_value_qualifierValue-qualifierValue" name="qualifierValue" visibility="public" type="QualifierValue" association="A_value_qualifierValue"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_value_qualifierValue-qualifierValue-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_value_valuePin" name="A_value_valuePin" visibility="private" memberEnd="ValuePin-value A_value_valuePin-valuePin"> |
| <ownedEnd xmi:id="A_value_valuePin-valuePin" name="valuePin" visibility="public" type="ValuePin" subsettedProperty="Element-owner" association="A_value_valuePin"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_value_valuePin-valuePin-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_value_valueSpecificationAction" name="A_value_valueSpecificationAction" visibility="private" memberEnd="ValueSpecificationAction-value A_value_valueSpecificationAction-valueSpecificationAction"> |
| <ownedEnd xmi:id="A_value_valueSpecificationAction-valueSpecificationAction" name="valueSpecificationAction" visibility="public" type="ValueSpecificationAction" subsettedProperty="Element-owner" association="A_value_valueSpecificationAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_value_valueSpecificationAction-valueSpecificationAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_value_writeStructuralFeatureAction" name="A_value_writeStructuralFeatureAction" visibility="private" memberEnd="WriteStructuralFeatureAction-value A_value_writeStructuralFeatureAction-writeStructuralFeatureAction"> |
| <ownedEnd xmi:id="A_value_writeStructuralFeatureAction-writeStructuralFeatureAction" name="writeStructuralFeatureAction" visibility="public" type="WriteStructuralFeatureAction" subsettedProperty="A_input_action-action" association="A_value_writeStructuralFeatureAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_value_writeStructuralFeatureAction-writeStructuralFeatureAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_value_writeVariableAction" name="A_value_writeVariableAction" visibility="private" memberEnd="WriteVariableAction-value A_value_writeVariableAction-writeVariableAction"> |
| <ownedEnd xmi:id="A_value_writeVariableAction-writeVariableAction" name="writeVariableAction" visibility="public" type="WriteVariableAction" subsettedProperty="A_input_action-action" association="A_value_writeVariableAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_value_writeVariableAction-writeVariableAction-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_variable_activityScope" name="A_variable_activityScope" visibility="private" memberEnd="Activity-variable Variable-activityScope"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_variable_scope" name="A_variable_scope" visibility="private" memberEnd="StructuredActivityNode-variable Variable-scope"/> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_variable_variableAction" name="A_variable_variableAction" visibility="private" memberEnd="VariableAction-variable A_variable_variableAction-variableAction"> |
| <ownedEnd xmi:id="A_variable_variableAction-variableAction" name="variableAction" visibility="public" type="VariableAction" association="A_variable_variableAction"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_variable_variableAction-variableAction-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="A_variable_variableAction-variableAction-_upperValue" value="*"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_weight_activityEdge" name="A_weight_activityEdge" visibility="private" memberEnd="ActivityEdge-weight A_weight_activityEdge-activityEdge"> |
| <ownedEnd xmi:id="A_weight_activityEdge-activityEdge" name="activityEdge" visibility="public" type="ActivityEdge" subsettedProperty="Element-owner" association="A_weight_activityEdge"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_weight_activityEdge-activityEdge-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Association" xmi:id="A_when_timeEvent" name="A_when_timeEvent" visibility="private" memberEnd="TimeEvent-when A_when_timeEvent-timeEvent"> |
| <ownedEnd xmi:id="A_when_timeEvent-timeEvent" name="timeEvent" visibility="public" type="TimeEvent" subsettedProperty="Element-owner" association="A_when_timeEvent"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="A_when_timeEvent-timeEvent-_lowerValue"/> |
| </ownedEnd> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Abstraction" name="Abstraction"> |
| <ownedComment xmi:id="Abstraction-_ownedComment.0" annotatedElement="Abstraction"> |
| <body>An abstraction is a relationship that relates two elements or sets of elements that represent the same concept at different levels of abstraction or from different viewpoints.</body> |
| </ownedComment> |
| <generalization xmi:id="Abstraction-_generalization.0" general="Dependency"/> |
| <ownedAttribute xmi:id="Abstraction-mapping" name="mapping" visibility="public" type="OpaqueExpression" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_mapping_abstraction"> |
| <ownedComment xmi:id="Abstraction-mapping-_ownedComment.0" annotatedElement="Abstraction-mapping"> |
| <body>An composition of an Expression that states the abstraction relationship between the supplier and the client. In some cases, such as Derivation, it is usually formal and unidirectional; in other cases, such as Trace, it is usually informal and bidirectional. The mapping expression is optional and may be omitted if the precise relationship between the elements is not specified.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Abstraction-mapping-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="AcceptCallAction" name="AcceptCallAction"> |
| <ownedComment xmi:id="AcceptCallAction-_ownedComment.0" annotatedElement="AcceptCallAction"> |
| <body>An accept call action is an accept event action representing the receipt of a synchronous call request. In addition to the normal operation parameters, the action produces an output that is needed later to supply the information to the reply action necessary to return control to the caller. This action is for synchronous calls. If it is used to handle an asynchronous call, execution of the subsequent reply action will complete immediately with no effects.</body> |
| </ownedComment> |
| <ownedRule xmi:id="AcceptCallAction-trigger_call_event" name="trigger_call_event" constrainedElement="AcceptCallAction"> |
| <ownedComment xmi:id="AcceptCallAction-trigger_call_event-_ownedComment.0" annotatedElement="AcceptCallAction-trigger_call_event"> |
| <body>The trigger event must be a CallEvent.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="AcceptCallAction-trigger_call_event-_specification"> |
| <language>OCL</language> |
| <body>trigger.event.oclIsKindOf(CallEvent)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="AcceptCallAction-unmarshall" name="unmarshall" constrainedElement="AcceptCallAction"> |
| <ownedComment xmi:id="AcceptCallAction-unmarshall-_ownedComment.0" annotatedElement="AcceptCallAction-unmarshall"> |
| <body>isUnmrashall must be true for an AcceptCallAction.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="AcceptCallAction-unmarshall-_specification"> |
| <language>OCL</language> |
| <body>isUnmarshall = true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="AcceptCallAction-result_pins" name="result_pins" constrainedElement="AcceptCallAction"> |
| <ownedComment xmi:id="AcceptCallAction-result_pins-_ownedComment.0" annotatedElement="AcceptCallAction-result_pins"> |
| <body>The result pins must match the in and inout parameters of the operation specified by the trigger event in number, type, and order.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="AcceptCallAction-result_pins-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="AcceptCallAction-_generalization.0" general="AcceptEventAction"/> |
| <ownedAttribute xmi:id="AcceptCallAction-returnInformation" name="returnInformation" visibility="public" type="OutputPin" aggregation="composite" subsettedProperty="Action-output" association="A_returnInformation_acceptCallAction"> |
| <ownedComment xmi:id="AcceptCallAction-returnInformation-_ownedComment.0" annotatedElement="AcceptCallAction-returnInformation"> |
| <body>Pin where a value is placed containing sufficient information to perform a subsequent reply and return control to the caller. The contents of this value are opaque. It can be passed and copied but it cannot be manipulated by the model.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="AcceptEventAction" name="AcceptEventAction"> |
| <ownedComment xmi:id="AcceptEventAction-_ownedComment.0" annotatedElement="AcceptEventAction"> |
| <body>A accept event action is an action that waits for the occurrence of an event meeting specified conditions.</body> |
| </ownedComment> |
| <ownedRule xmi:id="AcceptEventAction-no_input_pins" name="no_input_pins" constrainedElement="AcceptEventAction"> |
| <ownedComment xmi:id="AcceptEventAction-no_input_pins-_ownedComment.0" annotatedElement="AcceptEventAction-no_input_pins"> |
| <body>AcceptEventActions may have no input pins.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="AcceptEventAction-no_input_pins-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="AcceptEventAction-trigger_events" name="trigger_events" constrainedElement="AcceptEventAction"> |
| <ownedComment xmi:id="AcceptEventAction-trigger_events-_ownedComment.0" annotatedElement="AcceptEventAction-trigger_events"> |
| <body>If the trigger events are all TimeEvents, there is exactly one output pin.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="AcceptEventAction-trigger_events-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="AcceptEventAction-unmarshall_signal_events" name="unmarshall_signal_events" constrainedElement="AcceptEventAction"> |
| <ownedComment xmi:id="AcceptEventAction-unmarshall_signal_events-_ownedComment.0" annotatedElement="AcceptEventAction-unmarshall_signal_events"> |
| <body>If isUnmarshall is true, there must be exactly one trigger for events of type SignalEvent. The number of result output pins must be the same as the number of attributes of the signal. The type and ordering of each result output pin must be the same as the corresponding attribute of the signal. The multiplicity of each result output pin must be compatible with the multiplicity of the corresponding attribute.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="AcceptEventAction-unmarshall_signal_events-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="AcceptEventAction-no_output_pins" name="no_output_pins" constrainedElement="AcceptEventAction"> |
| <ownedComment xmi:id="AcceptEventAction-no_output_pins-_ownedComment.0" annotatedElement="AcceptEventAction-no_output_pins"> |
| <body>There are no output pins if the trigger events are only ChangeEvents, or if they are only CallEvents when this action is an instance of AcceptEventAction and not an instance of a descendant of AcceptEventAction (such as AcceptCallAction).</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="AcceptEventAction-no_output_pins-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="AcceptEventAction-_generalization.0" general="Action"/> |
| <ownedAttribute xmi:id="AcceptEventAction-isUnmarshall" name="isUnmarshall" visibility="public"> |
| <ownedComment xmi:id="AcceptEventAction-isUnmarshall-_ownedComment.0" annotatedElement="AcceptEventAction-isUnmarshall"> |
| <body>Indicates whether there is a single output pin for the event, or multiple output pins for attributes of the event.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="AcceptEventAction-isUnmarshall-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="AcceptEventAction-result" name="result" visibility="public" type="OutputPin" aggregation="composite" subsettedProperty="Action-output" association="A_result_acceptEventAction"> |
| <ownedComment xmi:id="AcceptEventAction-result-_ownedComment.0" annotatedElement="AcceptEventAction-result"> |
| <body>Pins holding the received event objects or their attributes. Event objects may be copied in transmission, so identity might not be preserved.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="AcceptEventAction-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="AcceptEventAction-result-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="AcceptEventAction-trigger" name="trigger" visibility="public" type="Trigger" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_trigger_acceptEventAction"> |
| <ownedComment xmi:id="AcceptEventAction-trigger-_ownedComment.0" annotatedElement="AcceptEventAction-trigger"> |
| <body>The type of events accepted by the action, as specified by triggers. For triggers with signal events, a signal of the specified type or any subtype of the specified signal type is accepted.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="AcceptEventAction-trigger-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Action" name="Action" isAbstract="true"> |
| <ownedComment xmi:id="Action-_ownedComment.0" annotatedElement="Action"> |
| <body>An action has pre- and post-conditions.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Action-_ownedComment.1" annotatedElement="Action"> |
| <body>An action represents a single step within an activity, that is, one that is not further decomposed within the activity.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Action-_ownedComment.2" annotatedElement="Action"> |
| <body>An action is a named element that is the fundamental unit of executable functionality. The execution of an action represents some transformation or processing in the modeled system, be it a computer system or otherwise.</body> |
| </ownedComment> |
| <generalization xmi:id="Action-_generalization.0" general="ExecutableNode"/> |
| <ownedAttribute xmi:id="Action-context" name="context" visibility="public" type="Classifier" isReadOnly="true" isDerived="true" association="A_context_action"> |
| <ownedComment xmi:id="Action-context-_ownedComment.0" annotatedElement="Action-context"> |
| <body>The classifier that owns the behavior of which this action is a part.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Action-context-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Action-input" name="input" visibility="public" type="InputPin" isOrdered="true" isReadOnly="true" aggregation="composite" isDerived="true" isDerivedUnion="true" subsettedProperty="Element-ownedElement" association="A_input_action"> |
| <ownedComment xmi:id="Action-input-_ownedComment.0" annotatedElement="Action-input"> |
| <body>The ordered set of input pins connected to the Action. These are among the total set of inputs.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Action-input-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Action-input-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Action-isLocallyReentrant" name="isLocallyReentrant" visibility="public"> |
| <ownedComment xmi:id="Action-isLocallyReentrant-_ownedComment.0" annotatedElement="Action-isLocallyReentrant"> |
| <body>If true, the action can begin a new, concurrent execution, even if there is already another execution of the action ongoing. If false, the action cannot begin a new execution until any previous execution has completed.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Action-isLocallyReentrant-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Action-localPostcondition" name="localPostcondition" visibility="public" type="Constraint" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_localPostcondition_action"> |
| <ownedComment xmi:id="Action-localPostcondition-_ownedComment.0" annotatedElement="Action-localPostcondition"> |
| <body>Constraint that must be satisfied when executed is completed.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Action-localPostcondition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Action-localPostcondition-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Action-localPrecondition" name="localPrecondition" visibility="public" type="Constraint" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_localPrecondition_action"> |
| <ownedComment xmi:id="Action-localPrecondition-_ownedComment.0" annotatedElement="Action-localPrecondition"> |
| <body>Constraint that must be satisfied when execution is started.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Action-localPrecondition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Action-localPrecondition-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Action-output" name="output" visibility="public" type="OutputPin" isOrdered="true" isReadOnly="true" aggregation="composite" isDerived="true" isDerivedUnion="true" subsettedProperty="Element-ownedElement" association="A_output_action"> |
| <ownedComment xmi:id="Action-output-_ownedComment.0" annotatedElement="Action-output"> |
| <body>The ordered set of output pins connected to the Action. The action places its results onto pins in this set.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Action-output-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Action-output-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Action-context.1" name="context" visibility="public" bodyCondition="Action-context.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Action-context.1-_ownedComment.0" annotatedElement="Action-context.1"> |
| <body>Missing derivation for Action::/context : Classifier</body> |
| </ownedComment> |
| <ownedRule xmi:id="Action-context.1-spec" name="spec" constrainedElement="Action-context.1 Action-context"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Action-context.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Action-context.1-result" name="result" visibility="public" type="Classifier" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Action-context.1-result-_lowerValue"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ActionExecutionSpecification" name="ActionExecutionSpecification"> |
| <ownedComment xmi:id="ActionExecutionSpecification-_ownedComment.0" annotatedElement="ActionExecutionSpecification"> |
| <body>An action execution specification is a kind of execution specification representing the execution of an action.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ActionExecutionSpecification-action_referenced" name="action_referenced" constrainedElement="ActionExecutionSpecification"> |
| <ownedComment xmi:id="ActionExecutionSpecification-action_referenced-_ownedComment.0" annotatedElement="ActionExecutionSpecification-action_referenced"> |
| <body>The Action referenced by the ActionExecutionSpecification, if any, must be owned by the Interaction owning the ActionExecutionOccurrence.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActionExecutionSpecification-action_referenced-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ActionExecutionSpecification-_generalization.0" general="ExecutionSpecification"/> |
| <ownedAttribute xmi:id="ActionExecutionSpecification-action" name="action" visibility="public" type="Action" association="A_action_actionExecutionSpecification"> |
| <ownedComment xmi:id="ActionExecutionSpecification-action-_ownedComment.0" annotatedElement="ActionExecutionSpecification-action"> |
| <body>Action whose execution is occurring.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ActionInputPin" name="ActionInputPin"> |
| <ownedComment xmi:id="ActionInputPin-_ownedComment.0" annotatedElement="ActionInputPin"> |
| <body>An action input pin is a kind of pin that executes an action to determine the values to input to another.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ActionInputPin-input_pin" name="input_pin" constrainedElement="ActionInputPin"> |
| <ownedComment xmi:id="ActionInputPin-input_pin-_ownedComment.0" annotatedElement="ActionInputPin-input_pin"> |
| <body>The fromAction of an action input pin must only have action input pins as input pins.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActionInputPin-input_pin-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActionInputPin-no_control_or_data_flow" name="no_control_or_data_flow" constrainedElement="ActionInputPin"> |
| <ownedComment xmi:id="ActionInputPin-no_control_or_data_flow-_ownedComment.0" annotatedElement="ActionInputPin-no_control_or_data_flow"> |
| <body>The fromAction of an action input pin cannot have control or data flows coming into or out of it or its pins.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActionInputPin-no_control_or_data_flow-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActionInputPin-one_output_pin" name="one_output_pin" constrainedElement="ActionInputPin"> |
| <ownedComment xmi:id="ActionInputPin-one_output_pin-_ownedComment.0" annotatedElement="ActionInputPin-one_output_pin"> |
| <body>The fromAction of an action input pin must have exactly one output pin.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActionInputPin-one_output_pin-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ActionInputPin-_generalization.0" general="InputPin"/> |
| <ownedAttribute xmi:id="ActionInputPin-fromAction" name="fromAction" visibility="public" type="Action" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_fromAction_actionInputPin"> |
| <ownedComment xmi:id="ActionInputPin-fromAction-_ownedComment.0" annotatedElement="ActionInputPin-fromAction"> |
| <body>The action used to provide values.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Activity" name="Activity"> |
| <ownedComment xmi:id="Activity-_ownedComment.0" annotatedElement="Activity"> |
| <body>An activity is the specification of parameterized behavior as the coordinated sequencing of subordinate units whose individual elements are actions.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Activity-activity_parameter_node" name="activity_parameter_node" constrainedElement="Activity"> |
| <ownedComment xmi:id="Activity-activity_parameter_node-_ownedComment.0" annotatedElement="Activity-activity_parameter_node"> |
| <body>The nodes of the activity must include one ActivityParameterNode for each parameter.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Activity-activity_parameter_node-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Activity-autonomous" name="autonomous" constrainedElement="Activity"> |
| <ownedComment xmi:id="Activity-autonomous-_ownedComment.0" annotatedElement="Activity-autonomous"> |
| <body>An activity cannot be autonomous and have a classifier or behavioral feature context at the same time.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Activity-autonomous-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Activity-no_supergroups" name="no_supergroups" constrainedElement="Activity"> |
| <ownedComment xmi:id="Activity-no_supergroups-_ownedComment.0" annotatedElement="Activity-no_supergroups"> |
| <body>The groups of an activity have no supergroups.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Activity-no_supergroups-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Activity-_generalization.0" general="Behavior"/> |
| <ownedAttribute xmi:id="Activity-edge" name="edge" visibility="public" type="ActivityEdge" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_edge_activity"> |
| <ownedComment xmi:id="Activity-edge-_ownedComment.0" annotatedElement="Activity-edge"> |
| <body>Edges expressing flow between nodes of the activity.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Activity-edge-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Activity-edge-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Activity-group" name="group" visibility="public" type="ActivityGroup" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_group_inActivity"> |
| <ownedComment xmi:id="Activity-group-_ownedComment.0" annotatedElement="Activity-group"> |
| <body>Top-level groups in the activity.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Activity-group-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Activity-group-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Activity-isReadOnly" name="isReadOnly" visibility="public"> |
| <ownedComment xmi:id="Activity-isReadOnly-_ownedComment.0" annotatedElement="Activity-isReadOnly"> |
| <body>If true, this activity must not make any changes to variables outside the activity or to objects. (This is an assertion, not an executable property. It may be used by an execution engine to optimize model execution. If the assertion is violated by the action, then the model is ill-formed.) The default is false (an activity may make nonlocal changes).</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Activity-isReadOnly-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Activity-isSingleExecution" name="isSingleExecution" visibility="public"> |
| <ownedComment xmi:id="Activity-isSingleExecution-_ownedComment.0" annotatedElement="Activity-isSingleExecution"> |
| <body>If true, all invocations of the activity are handled by the same execution.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Activity-isSingleExecution-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Activity-node" name="node" visibility="public" type="ActivityNode" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_node_activity"> |
| <ownedComment xmi:id="Activity-node-_ownedComment.0" annotatedElement="Activity-node"> |
| <body>Nodes coordinated by the activity.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Activity-node-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Activity-node-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Activity-partition" name="partition" visibility="public" type="ActivityPartition" subsettedProperty="Activity-group" association="A_partition_activity"> |
| <ownedComment xmi:id="Activity-partition-_ownedComment.0" annotatedElement="Activity-partition"> |
| <body>Top-level partitions in the activity.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Activity-partition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Activity-partition-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Activity-structuredNode" name="structuredNode" visibility="public" type="StructuredActivityNode" aggregation="composite" subsettedProperty="Activity-group Activity-node" association="A_structuredNode_activity"> |
| <ownedComment xmi:id="Activity-structuredNode-_ownedComment.0" annotatedElement="Activity-structuredNode"> |
| <body>Top-level structured nodes in the activity.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Activity-structuredNode-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Activity-structuredNode-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Activity-variable" name="variable" visibility="public" type="Variable" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_variable_activityScope"> |
| <ownedComment xmi:id="Activity-variable-_ownedComment.0" annotatedElement="Activity-variable"> |
| <body>Top-level variables in the activity.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Activity-variable-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Activity-variable-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ActivityEdge" name="ActivityEdge" isAbstract="true"> |
| <ownedComment xmi:id="ActivityEdge-_ownedComment.0" annotatedElement="ActivityEdge"> |
| <body>Activity edges can be contained in interruptible regions.</body> |
| </ownedComment> |
| <ownedComment xmi:id="ActivityEdge-_ownedComment.1" annotatedElement="ActivityEdge"> |
| <body>An activity edge is an abstract class for directed connections between two activity nodes.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ActivityEdge-owned" name="owned" constrainedElement="ActivityEdge"> |
| <ownedComment xmi:id="ActivityEdge-owned-_ownedComment.0" annotatedElement="ActivityEdge-owned"> |
| <body>Activity edges may be owned only by activities or groups.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityEdge-owned-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityEdge-source_and_target" name="source_and_target" constrainedElement="ActivityEdge"> |
| <ownedComment xmi:id="ActivityEdge-source_and_target-_ownedComment.0" annotatedElement="ActivityEdge-source_and_target"> |
| <body>The source and target of an edge must be in the same activity as the edge.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityEdge-source_and_target-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityEdge-structured_node" name="structured_node" constrainedElement="ActivityEdge"> |
| <ownedComment xmi:id="ActivityEdge-structured_node-_ownedComment.0" annotatedElement="ActivityEdge-structured_node"> |
| <body>Activity edges may be owned by at most one structured node.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityEdge-structured_node-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ActivityEdge-_generalization.0" general="RedefinableElement"/> |
| <ownedAttribute xmi:id="ActivityEdge-activity" name="activity" visibility="public" type="Activity" subsettedProperty="Element-owner" association="A_edge_activity"> |
| <ownedComment xmi:id="ActivityEdge-activity-_ownedComment.0" annotatedElement="ActivityEdge-activity"> |
| <body>Activity containing the edge.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityEdge-activity-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityEdge-guard" name="guard" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_guard_activityEdge"> |
| <ownedComment xmi:id="ActivityEdge-guard-_ownedComment.0" annotatedElement="ActivityEdge-guard"> |
| <body>Specification evaluated at runtime to determine if the edge can be traversed.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityEdge-inGroup" name="inGroup" visibility="public" type="ActivityGroup" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="A_containedEdge_inGroup"> |
| <ownedComment xmi:id="ActivityEdge-inGroup-_ownedComment.0" annotatedElement="ActivityEdge-inGroup"> |
| <body>Groups containing the edge.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityEdge-inGroup-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityEdge-inGroup-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityEdge-inPartition" name="inPartition" visibility="public" type="ActivityPartition" subsettedProperty="ActivityEdge-inGroup" association="A_edge_inPartition"> |
| <ownedComment xmi:id="ActivityEdge-inPartition-_ownedComment.0" annotatedElement="ActivityEdge-inPartition"> |
| <body>Partitions containing the edge.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityEdge-inPartition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityEdge-inPartition-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityEdge-inStructuredNode" name="inStructuredNode" visibility="public" type="StructuredActivityNode" subsettedProperty="ActivityEdge-inGroup Element-owner" association="A_edge_inStructuredNode"> |
| <ownedComment xmi:id="ActivityEdge-inStructuredNode-_ownedComment.0" annotatedElement="ActivityEdge-inStructuredNode"> |
| <body>Structured activity node containing the edge.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityEdge-inStructuredNode-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityEdge-interrupts" name="interrupts" visibility="public" type="InterruptibleActivityRegion" association="A_interruptingEdge_interrupts"> |
| <ownedComment xmi:id="ActivityEdge-interrupts-_ownedComment.0" annotatedElement="ActivityEdge-interrupts"> |
| <body>Region that the edge can interrupt.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityEdge-interrupts-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityEdge-redefinedEdge" name="redefinedEdge" visibility="public" type="ActivityEdge" subsettedProperty="RedefinableElement-redefinedElement" association="A_redefinedEdge_activityEdge"> |
| <ownedComment xmi:id="ActivityEdge-redefinedEdge-_ownedComment.0" annotatedElement="ActivityEdge-redefinedEdge"> |
| <body>Inherited edges replaced by this edge in a specialization of the activity.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityEdge-redefinedEdge-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityEdge-redefinedEdge-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityEdge-source" name="source" visibility="public" type="ActivityNode" association="A_outgoing_source_node"> |
| <ownedComment xmi:id="ActivityEdge-source-_ownedComment.0" annotatedElement="ActivityEdge-source"> |
| <body>Node from which tokens are taken when they traverse the edge.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityEdge-target" name="target" visibility="public" type="ActivityNode" association="A_incoming_target_node"> |
| <ownedComment xmi:id="ActivityEdge-target-_ownedComment.0" annotatedElement="ActivityEdge-target"> |
| <body>Node to which tokens are put when they traverse the edge.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityEdge-weight" name="weight" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_weight_activityEdge"> |
| <ownedComment xmi:id="ActivityEdge-weight-_ownedComment.0" annotatedElement="ActivityEdge-weight"> |
| <body>The minimum number of tokens that must traverse the edge at the same time.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ActivityFinalNode" name="ActivityFinalNode"> |
| <ownedComment xmi:id="ActivityFinalNode-_ownedComment.0" annotatedElement="ActivityFinalNode"> |
| <body>An activity final node is a final node that stops all flows in an activity.</body> |
| </ownedComment> |
| <generalization xmi:id="ActivityFinalNode-_generalization.0" general="FinalNode"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ActivityGroup" name="ActivityGroup" isAbstract="true"> |
| <ownedComment xmi:id="ActivityGroup-_ownedComment.0" annotatedElement="ActivityGroup"> |
| <body>ActivityGroup is an abstract class for defining sets of nodes and edges in an activity.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ActivityGroup-group_owned" name="group_owned" constrainedElement="ActivityGroup"> |
| <ownedComment xmi:id="ActivityGroup-group_owned-_ownedComment.0" annotatedElement="ActivityGroup-group_owned"> |
| <body>Groups may only be owned by activities or groups.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityGroup-group_owned-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityGroup-not_contained" name="not_contained" constrainedElement="ActivityGroup"> |
| <ownedComment xmi:id="ActivityGroup-not_contained-_ownedComment.0" annotatedElement="ActivityGroup-not_contained"> |
| <body>No node or edge in a group may be contained by its subgroups or its containing groups, transitively.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityGroup-not_contained-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityGroup-nodes_and_edges" name="nodes_and_edges" constrainedElement="ActivityGroup"> |
| <ownedComment xmi:id="ActivityGroup-nodes_and_edges-_ownedComment.0" annotatedElement="ActivityGroup-nodes_and_edges"> |
| <body>All nodes and edges of the group must be in the same activity as the group.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityGroup-nodes_and_edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ActivityGroup-_generalization.0" general="NamedElement"/> |
| <ownedAttribute xmi:id="ActivityGroup-containedEdge" name="containedEdge" visibility="public" type="ActivityEdge" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="A_containedEdge_inGroup"> |
| <ownedComment xmi:id="ActivityGroup-containedEdge-_ownedComment.0" annotatedElement="ActivityGroup-containedEdge"> |
| <body>Edges immediately contained in the group.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityGroup-containedEdge-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityGroup-containedEdge-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityGroup-containedNode" name="containedNode" visibility="public" type="ActivityNode" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="A_containedNode_inGroup"> |
| <ownedComment xmi:id="ActivityGroup-containedNode-_ownedComment.0" annotatedElement="ActivityGroup-containedNode"> |
| <body>Nodes immediately contained in the group.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityGroup-containedNode-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityGroup-containedNode-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityGroup-inActivity" name="inActivity" visibility="public" type="Activity" subsettedProperty="Element-owner" association="A_group_inActivity"> |
| <ownedComment xmi:id="ActivityGroup-inActivity-_ownedComment.0" annotatedElement="ActivityGroup-inActivity"> |
| <body>Activity containing the group.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityGroup-inActivity-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityGroup-subgroup" name="subgroup" visibility="public" type="ActivityGroup" isReadOnly="true" aggregation="composite" isDerived="true" isDerivedUnion="true" subsettedProperty="Element-ownedElement" association="A_subgroup_superGroup"> |
| <ownedComment xmi:id="ActivityGroup-subgroup-_ownedComment.0" annotatedElement="ActivityGroup-subgroup"> |
| <body>Groups immediately contained in the group.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityGroup-subgroup-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityGroup-subgroup-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityGroup-superGroup" name="superGroup" visibility="public" type="ActivityGroup" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="Element-owner" association="A_subgroup_superGroup"> |
| <ownedComment xmi:id="ActivityGroup-superGroup-_ownedComment.0" annotatedElement="ActivityGroup-superGroup"> |
| <body>Group immediately containing the group.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityGroup-superGroup-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ActivityNode" name="ActivityNode" isAbstract="true"> |
| <ownedComment xmi:id="ActivityNode-_ownedComment.0" annotatedElement="ActivityNode"> |
| <body>ActivityNode is an abstract class for points in the flow of an activity connected by edges.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ActivityNode-owned" name="owned" constrainedElement="ActivityNode"> |
| <ownedComment xmi:id="ActivityNode-owned-_ownedComment.0" annotatedElement="ActivityNode-owned"> |
| <body>Activity nodes can only be owned by activities or groups.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityNode-owned-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityNode-owned_structured_node" name="owned_structured_node" constrainedElement="ActivityNode"> |
| <ownedComment xmi:id="ActivityNode-owned_structured_node-_ownedComment.0" annotatedElement="ActivityNode-owned_structured_node"> |
| <body>Activity nodes may be owned by at most one structured node.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityNode-owned_structured_node-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ActivityNode-_generalization.0" general="RedefinableElement"/> |
| <ownedAttribute xmi:id="ActivityNode-activity" name="activity" visibility="public" type="Activity" subsettedProperty="Element-owner" association="A_node_activity"> |
| <ownedComment xmi:id="ActivityNode-activity-_ownedComment.0" annotatedElement="ActivityNode-activity"> |
| <body>Activity containing the node.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityNode-activity-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityNode-inGroup" name="inGroup" visibility="public" type="ActivityGroup" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="A_containedNode_inGroup"> |
| <ownedComment xmi:id="ActivityNode-inGroup-_ownedComment.0" annotatedElement="ActivityNode-inGroup"> |
| <body>Groups containing the node.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityNode-inGroup-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityNode-inGroup-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityNode-inInterruptibleRegion" name="inInterruptibleRegion" visibility="public" type="InterruptibleActivityRegion" subsettedProperty="ActivityNode-inGroup" association="A_inInterruptibleRegion_node"> |
| <ownedComment xmi:id="ActivityNode-inInterruptibleRegion-_ownedComment.0" annotatedElement="ActivityNode-inInterruptibleRegion"> |
| <body>Interruptible regions containing the node.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityNode-inInterruptibleRegion-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityNode-inInterruptibleRegion-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityNode-inPartition" name="inPartition" visibility="public" type="ActivityPartition" subsettedProperty="ActivityNode-inGroup" association="A_inPartition_node"> |
| <ownedComment xmi:id="ActivityNode-inPartition-_ownedComment.0" annotatedElement="ActivityNode-inPartition"> |
| <body>Partitions containing the node.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityNode-inPartition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityNode-inPartition-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityNode-inStructuredNode" name="inStructuredNode" visibility="public" type="StructuredActivityNode" subsettedProperty="ActivityNode-inGroup Element-owner" association="A_node_inStructuredNode"> |
| <ownedComment xmi:id="ActivityNode-inStructuredNode-_ownedComment.0" annotatedElement="ActivityNode-inStructuredNode"> |
| <body>Structured activity node containing the node.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityNode-inStructuredNode-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityNode-incoming" name="incoming" visibility="public" type="ActivityEdge" association="A_incoming_target_node"> |
| <ownedComment xmi:id="ActivityNode-incoming-_ownedComment.0" annotatedElement="ActivityNode-incoming"> |
| <body>Edges that have the node as target.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityNode-incoming-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityNode-incoming-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityNode-outgoing" name="outgoing" visibility="public" type="ActivityEdge" association="A_outgoing_source_node"> |
| <ownedComment xmi:id="ActivityNode-outgoing-_ownedComment.0" annotatedElement="ActivityNode-outgoing"> |
| <body>Edges that have the node as source.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityNode-outgoing-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityNode-outgoing-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityNode-redefinedNode" name="redefinedNode" visibility="public" type="ActivityNode" subsettedProperty="RedefinableElement-redefinedElement" association="A_redefinedNode_activityNode"> |
| <ownedComment xmi:id="ActivityNode-redefinedNode-_ownedComment.0" annotatedElement="ActivityNode-redefinedNode"> |
| <body>Inherited nodes replaced by this node in a specialization of the activity.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityNode-redefinedNode-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityNode-redefinedNode-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ActivityParameterNode" name="ActivityParameterNode"> |
| <ownedComment xmi:id="ActivityParameterNode-_ownedComment.0" annotatedElement="ActivityParameterNode"> |
| <body>An activity parameter node is an object node for inputs and outputs to activities.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ActivityParameterNode-maximum_one_parameter_node" name="maximum_one_parameter_node" constrainedElement="ActivityParameterNode"> |
| <ownedComment xmi:id="ActivityParameterNode-maximum_one_parameter_node-_ownedComment.0" annotatedElement="ActivityParameterNode-maximum_one_parameter_node"> |
| <body>A parameter with direction other than inout must have at most one activity parameter node in an activity.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityParameterNode-maximum_one_parameter_node-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityParameterNode-maximum_two_parameter_nodes" name="maximum_two_parameter_nodes" constrainedElement="ActivityParameterNode"> |
| <ownedComment xmi:id="ActivityParameterNode-maximum_two_parameter_nodes-_ownedComment.0" annotatedElement="ActivityParameterNode-maximum_two_parameter_nodes"> |
| <body>A parameter with direction inout must have at most two activity parameter nodes in an activity, one with incoming flows and one with outgoing flows.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityParameterNode-maximum_two_parameter_nodes-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityParameterNode-no_edges" name="no_edges" constrainedElement="ActivityParameterNode"> |
| <ownedComment xmi:id="ActivityParameterNode-no_edges-_ownedComment.0" annotatedElement="ActivityParameterNode-no_edges"> |
| <body>An activity parameter node may have all incoming edges or all outgoing edges, but it must not have both incoming and outgoing edges.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityParameterNode-no_edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityParameterNode-no_incoming_edges" name="no_incoming_edges" constrainedElement="ActivityParameterNode"> |
| <ownedComment xmi:id="ActivityParameterNode-no_incoming_edges-_ownedComment.0" annotatedElement="ActivityParameterNode-no_incoming_edges"> |
| <body>Activity parameter object nodes with no incoming edges and one or more outgoing edges must have a parameter with in or inout direction.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityParameterNode-no_incoming_edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityParameterNode-no_outgoing_edges" name="no_outgoing_edges" constrainedElement="ActivityParameterNode"> |
| <ownedComment xmi:id="ActivityParameterNode-no_outgoing_edges-_ownedComment.0" annotatedElement="ActivityParameterNode-no_outgoing_edges"> |
| <body>Activity parameter object nodes with no outgoing edges and one or more incoming edges must have a parameter with out, inout, or return direction.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityParameterNode-no_outgoing_edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityParameterNode-same_type" name="same_type" constrainedElement="ActivityParameterNode"> |
| <ownedComment xmi:id="ActivityParameterNode-same_type-_ownedComment.0" annotatedElement="ActivityParameterNode-same_type"> |
| <body>The type of an activity parameter node is the same as the type of its parameter.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityParameterNode-same_type-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityParameterNode-has_parameters" name="has_parameters" constrainedElement="ActivityParameterNode"> |
| <ownedComment xmi:id="ActivityParameterNode-has_parameters-_ownedComment.0" annotatedElement="ActivityParameterNode-has_parameters"> |
| <body>Activity parameter nodes must have parameters from the containing activity.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityParameterNode-has_parameters-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ActivityParameterNode-_generalization.0" general="ObjectNode"/> |
| <ownedAttribute xmi:id="ActivityParameterNode-parameter" name="parameter" visibility="public" type="Parameter" association="A_parameter_activityParameterNode"> |
| <ownedComment xmi:id="ActivityParameterNode-parameter-_ownedComment.0" annotatedElement="ActivityParameterNode-parameter"> |
| <body>The parameter the object node will be accepting or providing values for.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ActivityPartition" name="ActivityPartition"> |
| <ownedComment xmi:id="ActivityPartition-_ownedComment.0" annotatedElement="ActivityPartition"> |
| <body>An activity partition is a kind of activity group for identifying actions that have some characteristic in common.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ActivityPartition-represents_part" name="represents_part" constrainedElement="ActivityPartition"> |
| <ownedComment xmi:id="ActivityPartition-represents_part-_ownedComment.0" annotatedElement="ActivityPartition-represents_part"> |
| <body>If a partition represents a part, then all the non-external partitions in the same dimension and at the same level of nesting in that dimension must represent parts directly contained in the internal structure of the same classifier.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityPartition-represents_part-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityPartition-represents_classifier" name="represents_classifier" constrainedElement="ActivityPartition"> |
| <ownedComment xmi:id="ActivityPartition-represents_classifier-_ownedComment.0" annotatedElement="ActivityPartition-represents_classifier"> |
| <body>If a non-external partition represents a classifier and is contained in another partition, then the containing partition must represent a classifier, and the classifier of the subpartition must be nested in the classifier represented by the containing partition, or be at the contained end of a strong composition association with the classifier represented by the containing partition.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityPartition-represents_classifier-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityPartition-represents_part_and_is_contained" name="represents_part_and_is_contained" constrainedElement="ActivityPartition"> |
| <ownedComment xmi:id="ActivityPartition-represents_part_and_is_contained-_ownedComment.0" annotatedElement="ActivityPartition-represents_part_and_is_contained"> |
| <body>If a partition represents a part and is contained by another partition, then the part must be of a classifier represented by the containing partition, or of a classifier that is the type of a part representing the containing partition.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityPartition-represents_part_and_is_contained-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ActivityPartition-dimension_not_contained" name="dimension_not_contained" constrainedElement="ActivityPartition"> |
| <ownedComment xmi:id="ActivityPartition-dimension_not_contained-_ownedComment.0" annotatedElement="ActivityPartition-dimension_not_contained"> |
| <body>A partition with isDimension = true may not be contained by another partition.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ActivityPartition-dimension_not_contained-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ActivityPartition-_generalization.0" general="ActivityGroup"/> |
| <ownedAttribute xmi:id="ActivityPartition-edge" name="edge" visibility="public" type="ActivityEdge" subsettedProperty="ActivityGroup-containedEdge" association="A_edge_inPartition"> |
| <ownedComment xmi:id="ActivityPartition-edge-_ownedComment.0" annotatedElement="ActivityPartition-edge"> |
| <body>Edges immediately contained in the group.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityPartition-edge-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityPartition-edge-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityPartition-isDimension" name="isDimension" visibility="public"> |
| <ownedComment xmi:id="ActivityPartition-isDimension-_ownedComment.0" annotatedElement="ActivityPartition-isDimension"> |
| <body>Tells whether the partition groups other partitions along a dimension.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="ActivityPartition-isDimension-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityPartition-isExternal" name="isExternal" visibility="public"> |
| <ownedComment xmi:id="ActivityPartition-isExternal-_ownedComment.0" annotatedElement="ActivityPartition-isExternal"> |
| <body>Tells whether the partition represents an entity to which the partitioning structure does not apply.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="ActivityPartition-isExternal-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityPartition-node" name="node" visibility="public" type="ActivityNode" subsettedProperty="ActivityGroup-containedNode" association="A_inPartition_node"> |
| <ownedComment xmi:id="ActivityPartition-node-_ownedComment.0" annotatedElement="ActivityPartition-node"> |
| <body>Nodes immediately contained in the group.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityPartition-node-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityPartition-node-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityPartition-represents" name="represents" visibility="public" type="Element" association="A_represents_activityPartition"> |
| <ownedComment xmi:id="ActivityPartition-represents-_ownedComment.0" annotatedElement="ActivityPartition-represents"> |
| <body>An element constraining behaviors invoked by nodes in the partition.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityPartition-represents-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityPartition-subpartition" name="subpartition" visibility="public" type="ActivityPartition" aggregation="composite" subsettedProperty="ActivityGroup-subgroup" association="A_subpartition_superPartition"> |
| <ownedComment xmi:id="ActivityPartition-subpartition-_ownedComment.0" annotatedElement="ActivityPartition-subpartition"> |
| <body>Partitions immediately contained in the partition.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityPartition-subpartition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ActivityPartition-subpartition-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ActivityPartition-superPartition" name="superPartition" visibility="public" type="ActivityPartition" subsettedProperty="ActivityGroup-superGroup" association="A_subpartition_superPartition"> |
| <ownedComment xmi:id="ActivityPartition-superPartition-_ownedComment.0" annotatedElement="ActivityPartition-superPartition"> |
| <body>Partition immediately containing the partition.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ActivityPartition-superPartition-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Actor" name="Actor"> |
| <ownedComment xmi:id="Actor-_ownedComment.0" annotatedElement="Actor"> |
| <body>An actor specifies a role played by a user or any other system that interacts with the subject.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Actor-associations" name="associations" constrainedElement="Actor"> |
| <ownedComment xmi:id="Actor-associations-_ownedComment.0" annotatedElement="Actor-associations"> |
| <body>An actor can only have associations to use cases, components and classes. Furthermore these associations must be binary.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Actor-associations-_specification"> |
| <language>OCL</language> |
| <body>self.ownedAttribute->forAll ( a | |
| (a.association->notEmpty()) implies |
| ((a.association.memberEnd.size() = 2) and |
| (a.opposite.class.oclIsKindOf(UseCase) or |
| (a.opposite.class.oclIsKindOf(Class) and not a.opposite.class.oclIsKindOf(Behavior)))) |
| </body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Actor-must_have_name" name="must_have_name" constrainedElement="Actor"> |
| <ownedComment xmi:id="Actor-must_have_name-_ownedComment.0" annotatedElement="Actor-must_have_name"> |
| <body>An actor must have a name.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Actor-must_have_name-_specification"> |
| <language>OCL</language> |
| <body>name->notEmpty()</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Actor-_generalization.0" general="BehavioredClassifier"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="AddStructuralFeatureValueAction" name="AddStructuralFeatureValueAction"> |
| <ownedComment xmi:id="AddStructuralFeatureValueAction-_ownedComment.0" annotatedElement="AddStructuralFeatureValueAction"> |
| <body>An add structural feature value action is a write structural feature action for adding values to a structural feature.</body> |
| </ownedComment> |
| <ownedRule xmi:id="AddStructuralFeatureValueAction-unlimited_natural_and_multiplicity" name="unlimited_natural_and_multiplicity" constrainedElement="AddStructuralFeatureValueAction"> |
| <ownedComment xmi:id="AddStructuralFeatureValueAction-unlimited_natural_and_multiplicity-_ownedComment.0" annotatedElement="AddStructuralFeatureValueAction-unlimited_natural_and_multiplicity"> |
| <body>Actions adding a value to ordered structural features must have a single input pin for the insertion point with type UnlimitedNatural and multiplicity of 1..1, otherwise the action has no input pin for the insertion point.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="AddStructuralFeatureValueAction-unlimited_natural_and_multiplicity-_specification"> |
| <language>OCL</language> |
| <body>let insertAtPins : Collection = self.insertAt in |
| if self.structuralFeature.isOrdered = #false |
| then insertAtPins->size() = 0 |
| else let insertAtPin : InputPin= insertAt->asSequence()->first() in |
| insertAtPins->size() = 1 |
| and insertAtPin.type = UnlimitedNatural |
| and insertAtPin.multiplicity.is(1,1)) |
| endif |
| </body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="AddStructuralFeatureValueAction-required_value" name="required_value" constrainedElement="AddStructuralFeatureValueAction"> |
| <ownedComment xmi:id="AddStructuralFeatureValueAction-required_value-_ownedComment.0" annotatedElement="AddStructuralFeatureValueAction-required_value"> |
| <body>A value input pin is required.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="AddStructuralFeatureValueAction-required_value-_specification"> |
| <language>OCL</language> |
| <body>self.value -> notEmpty()</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="AddStructuralFeatureValueAction-_generalization.0" general="WriteStructuralFeatureAction"/> |
| <ownedAttribute xmi:id="AddStructuralFeatureValueAction-insertAt" name="insertAt" visibility="public" type="InputPin" aggregation="composite" subsettedProperty="Action-input" association="A_insertAt_addStructuralFeatureValueAction"> |
| <ownedComment xmi:id="AddStructuralFeatureValueAction-insertAt-_ownedComment.0" annotatedElement="AddStructuralFeatureValueAction-insertAt"> |
| <body>Gives the position at which to insert a new value or move an existing value in ordered structural features. The type of the pin is UnlimitedNatural, but the value cannot be zero. This pin is omitted for unordered structural features.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="AddStructuralFeatureValueAction-insertAt-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="AddStructuralFeatureValueAction-isReplaceAll" name="isReplaceAll" visibility="public"> |
| <ownedComment xmi:id="AddStructuralFeatureValueAction-isReplaceAll-_ownedComment.0" annotatedElement="AddStructuralFeatureValueAction-isReplaceAll"> |
| <body>Specifies whether existing values of the structural feature of the object should be removed before adding the new value.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="AddStructuralFeatureValueAction-isReplaceAll-_defaultValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="AddVariableValueAction" name="AddVariableValueAction"> |
| <ownedComment xmi:id="AddVariableValueAction-_ownedComment.0" annotatedElement="AddVariableValueAction"> |
| <body>An add variable value action is a write variable action for adding values to a variable.</body> |
| </ownedComment> |
| <ownedRule xmi:id="AddVariableValueAction-required_value" name="required_value" constrainedElement="AddVariableValueAction"> |
| <ownedComment xmi:id="AddVariableValueAction-required_value-_ownedComment.0" annotatedElement="AddVariableValueAction-required_value"> |
| <body>A value input pin is required.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="AddVariableValueAction-required_value-_specification"> |
| <language>OCL</language> |
| <body>self.value -> notEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="AddVariableValueAction-single_input_pin" name="single_input_pin" constrainedElement="AddVariableValueAction"> |
| <ownedComment xmi:id="AddVariableValueAction-single_input_pin-_ownedComment.0" annotatedElement="AddVariableValueAction-single_input_pin"> |
| <body>Actions adding values to ordered variables must have a single input pin for the insertion point with type UnlimtedNatural and multiplicity of 1..1, otherwise the action has no input pin for the insertion point.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="AddVariableValueAction-single_input_pin-_specification"> |
| <language>OCL</language> |
| <body>let insertAtPins : Collection = self.insertAt in |
| if self.variable.ordering = #unordered |
| then insertAtPins->size() = 0 |
| else let insertAtPin : InputPin = insertAt->asSequence()->first() in |
| insertAtPins->size() = 1 |
| and insertAtPin.type = UnlimitedNatural |
| and insertAtPin.multiplicity.is(1,1)) |
| endif |
| </body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="AddVariableValueAction-_generalization.0" general="WriteVariableAction"/> |
| <ownedAttribute xmi:id="AddVariableValueAction-insertAt" name="insertAt" visibility="public" type="InputPin" aggregation="composite" subsettedProperty="Action-input" association="A_insertAt_addVariableValueAction"> |
| <ownedComment xmi:id="AddVariableValueAction-insertAt-_ownedComment.0" annotatedElement="AddVariableValueAction-insertAt"> |
| <body>Gives the position at which to insert a new value or move an existing value in ordered variables. The types is UnlimitedINatural, but the value cannot be zero. This pin is omitted for unordered variables.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="AddVariableValueAction-insertAt-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="AddVariableValueAction-isReplaceAll" name="isReplaceAll" visibility="public"> |
| <ownedComment xmi:id="AddVariableValueAction-isReplaceAll-_ownedComment.0" annotatedElement="AddVariableValueAction-isReplaceAll"> |
| <body>Specifies whether existing values of the variable should be removed before adding the new value.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="AddVariableValueAction-isReplaceAll-_defaultValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="AnyReceiveEvent" name="AnyReceiveEvent"> |
| <ownedComment xmi:id="AnyReceiveEvent-_ownedComment.0" annotatedElement="AnyReceiveEvent"> |
| <body>A trigger for an AnyReceiveEvent is triggered by the receipt of any message that is not explicitly handled by any related trigger.</body> |
| </ownedComment> |
| <generalization xmi:id="AnyReceiveEvent-_generalization.0" general="MessageEvent"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Artifact" name="Artifact"> |
| <ownedComment xmi:id="Artifact-_ownedComment.0" annotatedElement="Artifact"> |
| <body>An artifact is the source of a deployment to a node.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Artifact-_ownedComment.1" annotatedElement="Artifact"> |
| <body>An artifact is the specification of a physical piece of information that is used or produced by a software development process, or by deployment and operation of a system. Examples of artifacts include model files, source files, scripts, and binary executable files, a table in a database system, a development deliverable, or a word-processing document, a mail message.</body> |
| </ownedComment> |
| <generalization xmi:id="Artifact-_generalization.0" general="DeployedArtifact"/> |
| <generalization xmi:id="Artifact-_generalization.1" general="Classifier"/> |
| <ownedAttribute xmi:id="Artifact-fileName" name="fileName" visibility="public"> |
| <ownedComment xmi:id="Artifact-fileName-_ownedComment.0" annotatedElement="Artifact-fileName"> |
| <body>A concrete name that is used to refer to the Artifact in a physical context. Example: file system name, universal resource locator.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Artifact-fileName-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Artifact-manifestation" name="manifestation" visibility="public" type="Manifestation" aggregation="composite" subsettedProperty="Element-ownedElement NamedElement-clientDependency" association="A_manifestation_artifact"> |
| <ownedComment xmi:id="Artifact-manifestation-_ownedComment.0" annotatedElement="Artifact-manifestation"> |
| <body>The set of model elements that are manifested in the Artifact. That is, these model elements are utilized in the construction (or generation) of the artifact.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Artifact-manifestation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Artifact-manifestation-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Artifact-nestedArtifact" name="nestedArtifact" visibility="public" type="Artifact" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_nestedArtifact_artifact"> |
| <ownedComment xmi:id="Artifact-nestedArtifact-_ownedComment.0" annotatedElement="Artifact-nestedArtifact"> |
| <body>The Artifacts that are defined (nested) within the Artifact. The association is a specialization of the ownedMember association from Namespace to NamedElement.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Artifact-nestedArtifact-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Artifact-nestedArtifact-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Artifact-ownedAttribute" name="ownedAttribute" visibility="public" type="Property" isOrdered="true" aggregation="composite" subsettedProperty="Namespace-ownedMember Classifier-attribute" association="A_ownedAttribute_artifact"> |
| <ownedComment xmi:id="Artifact-ownedAttribute-_ownedComment.0" annotatedElement="Artifact-ownedAttribute"> |
| <body>The attributes or association ends defined for the Artifact. The association is a specialization of the ownedMember association.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Artifact-ownedAttribute-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Artifact-ownedAttribute-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Artifact-ownedOperation" name="ownedOperation" visibility="public" type="Operation" isOrdered="true" aggregation="composite" subsettedProperty="Classifier-feature A_redefinitionContext_redefinableElement-redefinableElement Namespace-ownedMember" association="A_ownedOperation_artifact"> |
| <ownedComment xmi:id="Artifact-ownedOperation-_ownedComment.0" annotatedElement="Artifact-ownedOperation"> |
| <body>The Operations defined for the Artifact. The association is a specialization of the ownedMember association.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Artifact-ownedOperation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Artifact-ownedOperation-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Association" name="Association"> |
| <ownedComment xmi:id="Association-_ownedComment.0" annotatedElement="Association"> |
| <body>An association describes a set of tuples whose values refer to typed instances. An instance of an association is called a link.A link is a tuple with one value for each end of the association, where each value is an instance of the type of the end.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Association-_ownedComment.1" annotatedElement="Association"> |
| <body>An association describes a set of tuples whose values refer to typed instances. An instance of an association is called a link. A link is a tuple with one value for each end of the association, where each value is an instance of the type of the end.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Association-specialized_end_number" name="specialized_end_number" constrainedElement="Association"> |
| <ownedComment xmi:id="Association-specialized_end_number-_ownedComment.0" annotatedElement="Association-specialized_end_number"> |
| <body>An association specializing another association has the same number of ends as the other association.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Association-specialized_end_number-_specification"> |
| <language>OCL</language> |
| <body>parents()->select(oclIsKindOf(Association)).oclAsType(Association)->forAll(p | p.memberEnd->size() = self.memberEnd->size())</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Association-association_ends" name="association_ends" constrainedElement="Association"> |
| <ownedComment xmi:id="Association-association_ends-_ownedComment.0" annotatedElement="Association-association_ends"> |
| <body>Association ends of associations with more than two ends must be owned by the association.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Association-association_ends-_specification"> |
| <language>OCL</language> |
| <body>if memberEnd->size() > 2 then ownedEnd->includesAll(memberEnd)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Association-binary_associations" name="binary_associations" constrainedElement="Association"> |
| <ownedComment xmi:id="Association-binary_associations-_ownedComment.0" annotatedElement="Association-binary_associations"> |
| <body>Only binary associations can be aggregations.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Association-binary_associations-_specification"> |
| <language>OCL</language> |
| <body>self.memberEnd->exists(aggregation <> Aggregation::none) implies self.memberEnd->size() = 2</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Association-specialized_end_types" name="specialized_end_types" constrainedElement="Association"> |
| <ownedComment xmi:id="Association-specialized_end_types-_ownedComment.0" annotatedElement="Association-specialized_end_types"> |
| <body>When an association specializes another association, every end of the specific association corresponds to an end of the general association, and the specific end reaches the same type or a subtype of the more general end.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Association-specialized_end_types-_specification"> |
| <language>OCL</language> |
| <body>Sequence{1..self.memberEnd->size()}-> |
| forAll(i | self.general->select(oclIsKindOf(Association)).oclAsType(Association)-> |
| forAll(ga |self.memberEnd->at(i).type.conformsTo(ga.memberEnd->at(i).type)))</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Association-_generalization.0" general="Classifier"/> |
| <generalization xmi:id="Association-_generalization.1" general="Relationship"/> |
| <ownedAttribute xmi:id="Association-endType" name="endType" visibility="public" type="Type" isOrdered="true" isReadOnly="true" isDerived="true" subsettedProperty="Relationship-relatedElement" association="A_endType_association"> |
| <ownedComment xmi:id="Association-endType-_ownedComment.0" annotatedElement="Association-endType"> |
| <body>References the classifiers that are used as types of the ends of the association.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Association-endType-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Association-isDerived" name="isDerived" visibility="public"> |
| <ownedComment xmi:id="Association-isDerived-_ownedComment.0" annotatedElement="Association-isDerived"> |
| <body>Specifies whether the association is derived from other model elements such as other associations or constraints.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Association-isDerived-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Association-memberEnd" name="memberEnd" visibility="public" type="Property" isOrdered="true" subsettedProperty="Namespace-member" association="A_memberEnd_association"> |
| <ownedComment xmi:id="Association-memberEnd-_ownedComment.0" annotatedElement="Association-memberEnd"> |
| <body>Each end represents participation of instances of the classifier connected to the end in links of the association.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Association-memberEnd-_lowerValue" value="2"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Association-memberEnd-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Association-navigableOwnedEnd" name="navigableOwnedEnd" visibility="public" type="Property" subsettedProperty="Association-ownedEnd" association="A_navigableOwnedEnd_association"> |
| <ownedComment xmi:id="Association-navigableOwnedEnd-_ownedComment.0" annotatedElement="Association-navigableOwnedEnd"> |
| <body>The navigable ends that are owned by the association itself.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Association-navigableOwnedEnd-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Association-navigableOwnedEnd-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Association-ownedEnd" name="ownedEnd" visibility="public" type="Property" isOrdered="true" aggregation="composite" subsettedProperty="Association-memberEnd Classifier-feature A_redefinitionContext_redefinableElement-redefinableElement Namespace-ownedMember" association="A_ownedEnd_owningAssociation"> |
| <ownedComment xmi:id="Association-ownedEnd-_ownedComment.0" annotatedElement="Association-ownedEnd"> |
| <body>The ends that are owned by the association itself.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Association-ownedEnd-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Association-ownedEnd-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Association-endType.1" name="endType" visibility="public" bodyCondition="Association-endType.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Association-endType.1-_ownedComment.0" annotatedElement="Association-endType.1"> |
| <body>endType is derived from the types of the member ends.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Association-endType.1-spec" name="spec" constrainedElement="Association-endType.1 Association-endType"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Association-endType.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = self.memberEnd->collect(e | e.type)</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Association-endType.1-result" name="result" visibility="public" type="Type" isOrdered="true" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Association-endType.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Association-endType.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="AssociationClass" name="AssociationClass"> |
| <ownedComment xmi:id="AssociationClass-_ownedComment.0" annotatedElement="AssociationClass"> |
| <body>A model element that has both association and class properties. An AssociationClass can be seen as an association that also has class properties, or as a class that also has association properties. It not only connects a set of classifiers but also defines a set of features that belong to the relationship itself and not to any of the classifiers.</body> |
| </ownedComment> |
| <ownedRule xmi:id="AssociationClass-disjoint_attributes_ends" name="disjoint_attributes_ends" constrainedElement="AssociationClass"> |
| <ownedComment xmi:id="AssociationClass-disjoint_attributes_ends-_ownedComment.0" annotatedElement="AssociationClass-disjoint_attributes_ends"> |
| <body>The owned attributes and owned ends of an AssociationClass are disjoint</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="AssociationClass-disjoint_attributes_ends-_specification"> |
| <language>OCL</language> |
| <body>ownedAttribute->intersection(ownedEnd)->isEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="AssociationClass-cannot_be_defined" name="cannot_be_defined" constrainedElement="AssociationClass"> |
| <ownedComment xmi:id="AssociationClass-cannot_be_defined-_ownedComment.0" annotatedElement="AssociationClass-cannot_be_defined"> |
| <body>An AssociationClass cannot be defined between itself and something else.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="AssociationClass-cannot_be_defined-_specification"> |
| <language>OCL</language> |
| <body>self.endType->excludes(self) and self.endType>collect(et|et.allparents()->excludes(self))</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="AssociationClass-_generalization.0" general="Class"/> |
| <generalization xmi:id="AssociationClass-_generalization.1" general="Association"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Behavior" name="Behavior" isAbstract="true"> |
| <ownedComment xmi:id="Behavior-_ownedComment.0" annotatedElement="Behavior"> |
| <body>Behavior is a specification of how its context classifier changes state over time. This specification may be either a definition of possible behavior execution or emergent behavior, or a selective illustration of an interesting subset of possible executions. The latter form is typically used for capturing examples, such as a trace of a particular execution.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Behavior-_ownedComment.1" annotatedElement="Behavior"> |
| <body>A behavior owns zero or more parameter sets.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Behavior-parameters_match" name="parameters_match" constrainedElement="Behavior"> |
| <ownedComment xmi:id="Behavior-parameters_match-_ownedComment.0" annotatedElement="Behavior-parameters_match"> |
| <body>The parameters of the behavior must match the parameters of the implemented behavioral feature.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Behavior-parameters_match-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Behavior-feature_of_context_classifier" name="feature_of_context_classifier" constrainedElement="Behavior"> |
| <ownedComment xmi:id="Behavior-feature_of_context_classifier-_ownedComment.0" annotatedElement="Behavior-feature_of_context_classifier"> |
| <body>The implemented behavioral feature must be a feature (possibly inherited) of the context classifier of the behavior.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Behavior-feature_of_context_classifier-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Behavior-must_realize" name="must_realize" constrainedElement="Behavior"> |
| <ownedComment xmi:id="Behavior-must_realize-_ownedComment.0" annotatedElement="Behavior-must_realize"> |
| <body>If the implemented behavioral feature has been redefined in the ancestors of the owner of the behavior, then the behavior must realize the latest redefining behavioral feature.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Behavior-must_realize-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Behavior-most_one_behaviour" name="most_one_behaviour" constrainedElement="Behavior"> |
| <ownedComment xmi:id="Behavior-most_one_behaviour-_ownedComment.0" annotatedElement="Behavior-most_one_behaviour"> |
| <body>There may be at most one behavior for a given pairing of classifier (as owner of the behavior) and behavioral feature (as specification of the behavior).</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Behavior-most_one_behaviour-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Behavior-_generalization.0" general="Class"/> |
| <ownedAttribute xmi:id="Behavior-context" name="context" visibility="public" type="BehavioredClassifier" isReadOnly="true" isDerived="true" subsettedProperty="RedefinableElement-redefinitionContext" association="A_context_behavior"> |
| <ownedComment xmi:id="Behavior-context-_ownedComment.0" annotatedElement="Behavior-context"> |
| <body>The classifier that is the context for the execution of the behavior. If the behavior is owned by a BehavioredClassifier, that classifier is the context. Otherwise, the context is the first BehavioredClassifier reached by following the chain of owner relationships. For example, following this algorithm, the context of an entry action in a state machine is the classifier that owns the state machine. The features of the context classifier as well as the elements visible to the context classifier are visible to the behavior.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Behavior-context-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Behavior-isReentrant" name="isReentrant" visibility="public"> |
| <ownedComment xmi:id="Behavior-isReentrant-_ownedComment.0" annotatedElement="Behavior-isReentrant"> |
| <body>Tells whether the behavior can be invoked while it is still executing from a previous invocation.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Behavior-isReentrant-_defaultValue" value="true"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Behavior-ownedParameter" name="ownedParameter" visibility="public" type="Parameter" isOrdered="true" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_ownedParameter_behavior"> |
| <ownedComment xmi:id="Behavior-ownedParameter-_ownedComment.0" annotatedElement="Behavior-ownedParameter"> |
| <body>References a list of parameters to the behavior which describes the order and type of arguments that can be given when the behavior is invoked and of the values which will be returned when the behavior completes its execution.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Behavior-ownedParameter-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Behavior-ownedParameter-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Behavior-ownedParameterSet" name="ownedParameterSet" visibility="public" type="ParameterSet" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_ownedParameterSet_behavior"> |
| <ownedComment xmi:id="Behavior-ownedParameterSet-_ownedComment.0" annotatedElement="Behavior-ownedParameterSet"> |
| <body>The ParameterSets owned by this Behavior.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Behavior-ownedParameterSet-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Behavior-ownedParameterSet-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Behavior-postcondition" name="postcondition" visibility="public" type="Constraint" aggregation="composite" subsettedProperty="Namespace-ownedRule" association="A_postcondition_behavior"> |
| <ownedComment xmi:id="Behavior-postcondition-_ownedComment.0" annotatedElement="Behavior-postcondition"> |
| <body>An optional set of Constraints specifying what is fulfilled after the execution of the behavior is completed, if its precondition was fulfilled before its invocation.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Behavior-postcondition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Behavior-postcondition-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Behavior-precondition" name="precondition" visibility="public" type="Constraint" aggregation="composite" subsettedProperty="Namespace-ownedRule" association="A_precondition_behavior"> |
| <ownedComment xmi:id="Behavior-precondition-_ownedComment.0" annotatedElement="Behavior-precondition"> |
| <body>An optional set of Constraints specifying what must be fulfilled when the behavior is invoked.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Behavior-precondition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Behavior-precondition-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Behavior-redefinedBehavior" name="redefinedBehavior" visibility="public" type="Behavior" subsettedProperty="Classifier-redefinedClassifier" association="A_redefinedBehavior_behavior"> |
| <ownedComment xmi:id="Behavior-redefinedBehavior-_ownedComment.0" annotatedElement="Behavior-redefinedBehavior"> |
| <body>References a behavior that this behavior redefines. A subtype of Behavior may redefine any other subtype of Behavior. If the behavior implements a behavioral feature, it replaces the redefined behavior. If the behavior is a classifier behavior, it extends the redefined behavior.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Behavior-redefinedBehavior-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Behavior-redefinedBehavior-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Behavior-specification" name="specification" visibility="public" type="BehavioralFeature" association="A_method_specification"> |
| <ownedComment xmi:id="Behavior-specification-_ownedComment.0" annotatedElement="Behavior-specification"> |
| <body>Designates a behavioral feature that the behavior implements. The behavioral feature must be owned by the classifier that owns the behavior or be inherited by it. The parameters of the behavioral feature and the implementing behavior must match. A behavior does not need to have a specification, in which case it either is the classifer behavior of a BehavioredClassifier or it can only be invoked by another behavior of the classifier.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Behavior-specification-_lowerValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Behavior-context.1" name="context" visibility="public" bodyCondition="Behavior-context.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Behavior-context.1-_ownedComment.0" annotatedElement="Behavior-context.1"> |
| <body>Missing derivation for Behavior::/context : BehavioredClassifier</body> |
| </ownedComment> |
| <ownedRule xmi:id="Behavior-context.1-spec" name="spec" constrainedElement="Behavior-context.1 Behavior-context"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Behavior-context.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Behavior-context.1-result" name="result" visibility="public" type="BehavioredClassifier" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Behavior-context.1-result-_lowerValue"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="BehaviorExecutionSpecification" name="BehaviorExecutionSpecification"> |
| <ownedComment xmi:id="BehaviorExecutionSpecification-_ownedComment.0" annotatedElement="BehaviorExecutionSpecification"> |
| <body>A behavior execution specification is a kind of execution specification representing the execution of a behavior.</body> |
| </ownedComment> |
| <generalization xmi:id="BehaviorExecutionSpecification-_generalization.0" general="ExecutionSpecification"/> |
| <ownedAttribute xmi:id="BehaviorExecutionSpecification-behavior" name="behavior" visibility="public" type="Behavior" association="A_behavior_behaviorExecutionSpecification"> |
| <ownedComment xmi:id="BehaviorExecutionSpecification-behavior-_ownedComment.0" annotatedElement="BehaviorExecutionSpecification-behavior"> |
| <body>Behavior whose execution is occurring.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="BehaviorExecutionSpecification-behavior-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="BehavioralFeature" name="BehavioralFeature" isAbstract="true"> |
| <ownedComment xmi:id="BehavioralFeature-_ownedComment.0" annotatedElement="BehavioralFeature"> |
| <body>A behavioral feature is a feature of a classifier that specifies an aspect of the behavior of its instances.</body> |
| </ownedComment> |
| <ownedComment xmi:id="BehavioralFeature-_ownedComment.1" annotatedElement="BehavioralFeature"> |
| <body>A behavioral feature is implemented (realized) by a behavior. A behavioral feature specifies that a classifier will respond to a designated request by invoking its implementing method.</body> |
| </ownedComment> |
| <ownedComment xmi:id="BehavioralFeature-_ownedComment.2" annotatedElement="BehavioralFeature"> |
| <body>A behavioral feature owns zero or more parameter sets.</body> |
| </ownedComment> |
| <generalization xmi:id="BehavioralFeature-_generalization.0" general="Namespace"/> |
| <generalization xmi:id="BehavioralFeature-_generalization.1" general="Feature"/> |
| <ownedAttribute xmi:id="BehavioralFeature-concurrency" name="concurrency" visibility="public" type="CallConcurrencyKind"> |
| <ownedComment xmi:id="BehavioralFeature-concurrency-_ownedComment.0" annotatedElement="BehavioralFeature-concurrency"> |
| <body>Specifies the semantics of concurrent calls to the same passive instance (i.e., an instance originating from a class with isActive being false). Active instances control access to their own behavioral features.</body> |
| </ownedComment> |
| <defaultValue xmi:type="uml:InstanceValue" xmi:id="BehavioralFeature-concurrency-_defaultValue" type="CallConcurrencyKind" instance="CallConcurrencyKind-sequential"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="BehavioralFeature-isAbstract" name="isAbstract" visibility="public"> |
| <ownedComment xmi:id="BehavioralFeature-isAbstract-_ownedComment.0" annotatedElement="BehavioralFeature-isAbstract"> |
| <body>If true, then the behavioral feature does not have an implementation, and one must be supplied by a more specific element. If false, the behavioral feature must have an implementation in the classifier or one must be inherited from a more general element.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="BehavioralFeature-isAbstract-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="BehavioralFeature-method" name="method" visibility="public" type="Behavior" association="A_method_specification"> |
| <ownedComment xmi:id="BehavioralFeature-method-_ownedComment.0" annotatedElement="BehavioralFeature-method"> |
| <body>A behavioral description that implements the behavioral feature. There may be at most one behavior for a particular pairing of a classifier (as owner of the behavior) and a behavioral feature (as specification of the behavior).</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="BehavioralFeature-method-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="BehavioralFeature-method-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="BehavioralFeature-ownedParameter" name="ownedParameter" visibility="public" type="Parameter" isOrdered="true" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_ownedParameter_ownerFormalParam"> |
| <ownedComment xmi:id="BehavioralFeature-ownedParameter-_ownedComment.0" annotatedElement="BehavioralFeature-ownedParameter"> |
| <body>Specifies the ordered set of formal parameters of this BehavioralFeature.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="BehavioralFeature-ownedParameter-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="BehavioralFeature-ownedParameter-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="BehavioralFeature-ownedParameterSet" name="ownedParameterSet" visibility="public" type="ParameterSet" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_ownedParameterSet_behavioralFeature"> |
| <ownedComment xmi:id="BehavioralFeature-ownedParameterSet-_ownedComment.0" annotatedElement="BehavioralFeature-ownedParameterSet"> |
| <body>The ParameterSets owned by this BehavioralFeature.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="BehavioralFeature-ownedParameterSet-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="BehavioralFeature-ownedParameterSet-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="BehavioralFeature-raisedException" name="raisedException" visibility="public" type="Type" association="A_raisedException_behavioralFeature"> |
| <ownedComment xmi:id="BehavioralFeature-raisedException-_ownedComment.0" annotatedElement="BehavioralFeature-raisedException"> |
| <body>References the Types representing exceptions that may be raised during an invocation of this feature.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="BehavioralFeature-raisedException-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="BehavioralFeature-raisedException-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="BehavioralFeature-isDistinguishableFrom" name="isDistinguishableFrom" visibility="public" bodyCondition="BehavioralFeature-isDistinguishableFrom-spec" isQuery="true" redefinedOperation="NamedElement-isDistinguishableFrom"> |
| <ownedComment xmi:id="BehavioralFeature-isDistinguishableFrom-_ownedComment.0" annotatedElement="BehavioralFeature-isDistinguishableFrom"> |
| <body>The query isDistinguishableFrom() determines whether two BehavioralFeatures may coexist in the same Namespace. It specifies that they have to have different signatures.</body> |
| </ownedComment> |
| <ownedRule xmi:id="BehavioralFeature-isDistinguishableFrom-spec" name="spec" constrainedElement="BehavioralFeature-isDistinguishableFrom"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="BehavioralFeature-isDistinguishableFrom-spec-_specification"> |
| <language>OCL</language> |
| <body>result = if n.oclIsKindOf(BehavioralFeature) |
| then |
| if ns.getNamesOfMember(self)->intersection(ns.getNamesOfMember(n))->notEmpty() |
| then Set{}->including(self)->including(n)->isUnique(bf | bf.ownedParameter->collect(type)) |
| else true |
| endif |
| else true |
| endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="BehavioralFeature-isDistinguishableFrom-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="BehavioralFeature-isDistinguishableFrom-n" name="n" visibility="public" type="NamedElement"/> |
| <ownedParameter xmi:id="BehavioralFeature-isDistinguishableFrom-ns" name="ns" visibility="public" type="Namespace"/> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="BehavioredClassifier" name="BehavioredClassifier" isAbstract="true"> |
| <ownedComment xmi:id="BehavioredClassifier-_ownedComment.0" annotatedElement="BehavioredClassifier"> |
| <body>A behaviored classifier may have an interface realization.</body> |
| </ownedComment> |
| <ownedComment xmi:id="BehavioredClassifier-_ownedComment.1" annotatedElement="BehavioredClassifier"> |
| <body>A classifier can have behavior specifications defined in its namespace. One of these may specify the behavior of the classifier itself.</body> |
| </ownedComment> |
| <ownedRule xmi:id="BehavioredClassifier-class_behavior" name="class_behavior" constrainedElement="BehavioredClassifier"> |
| <ownedComment xmi:id="BehavioredClassifier-class_behavior-_ownedComment.0" annotatedElement="BehavioredClassifier-class_behavior"> |
| <body>If a behavior is classifier behavior, it does not have a specification.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="BehavioredClassifier-class_behavior-_specification"> |
| <language>OCL</language> |
| <body>self.classifierBehavior->notEmpty() implies self.classifierBehavior.specification->isEmpty()</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="BehavioredClassifier-_generalization.0" general="Classifier"/> |
| <ownedAttribute xmi:id="BehavioredClassifier-classifierBehavior" name="classifierBehavior" visibility="public" type="Behavior" subsettedProperty="BehavioredClassifier-ownedBehavior" association="A_classifierBehavior_behavioredClassifier"> |
| <ownedComment xmi:id="BehavioredClassifier-classifierBehavior-_ownedComment.0" annotatedElement="BehavioredClassifier-classifierBehavior"> |
| <body>A behavior specification that specifies the behavior of the classifier itself.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="BehavioredClassifier-classifierBehavior-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="BehavioredClassifier-interfaceRealization" name="interfaceRealization" visibility="public" type="InterfaceRealization" aggregation="composite" subsettedProperty="Element-ownedElement NamedElement-clientDependency" association="A_interfaceRealization_implementingClassifier"> |
| <ownedComment xmi:id="BehavioredClassifier-interfaceRealization-_ownedComment.0" annotatedElement="BehavioredClassifier-interfaceRealization"> |
| <body>The set of InterfaceRealizations owned by the BehavioredClassifier. Interface realizations reference the Interfaces of which the BehavioredClassifier is an implementation.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="BehavioredClassifier-interfaceRealization-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="BehavioredClassifier-interfaceRealization-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="BehavioredClassifier-ownedBehavior" name="ownedBehavior" visibility="public" type="Behavior" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_ownedBehavior_behavioredClassifier"> |
| <ownedComment xmi:id="BehavioredClassifier-ownedBehavior-_ownedComment.0" annotatedElement="BehavioredClassifier-ownedBehavior"> |
| <body>References behavior specifications owned by a classifier.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="BehavioredClassifier-ownedBehavior-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="BehavioredClassifier-ownedBehavior-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="BroadcastSignalAction" name="BroadcastSignalAction"> |
| <ownedComment xmi:id="BroadcastSignalAction-_ownedComment.0" annotatedElement="BroadcastSignalAction"> |
| <body>A broadcast signal action is an action that transmits a signal instance to all the potential target objects in the system, which may cause the firing of a state machine transitions or the execution of associated activities of a target object. The argument values are available to the execution of associated behaviors. The requestor continues execution immediately after the signals are sent out. It does not wait for receipt. Any reply messages are ignored and are not transmitted to the requestor.</body> |
| </ownedComment> |
| <ownedRule xmi:id="BroadcastSignalAction-type_ordering_multiplicity" name="type_ordering_multiplicity" constrainedElement="BroadcastSignalAction"> |
| <ownedComment xmi:id="BroadcastSignalAction-type_ordering_multiplicity-_ownedComment.0" annotatedElement="BroadcastSignalAction-type_ordering_multiplicity"> |
| <body>The type, ordering, and multiplicity of an argument pin must be the same as the corresponding attribute of the signal.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="BroadcastSignalAction-type_ordering_multiplicity-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="BroadcastSignalAction-number_and_order" name="number_and_order" constrainedElement="BroadcastSignalAction"> |
| <ownedComment xmi:id="BroadcastSignalAction-number_and_order-_ownedComment.0" annotatedElement="BroadcastSignalAction-number_and_order"> |
| <body>The number and order of argument pins must be the same as the number and order of attributes in the signal.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="BroadcastSignalAction-number_and_order-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="BroadcastSignalAction-_generalization.0" general="InvocationAction"/> |
| <ownedAttribute xmi:id="BroadcastSignalAction-signal" name="signal" visibility="public" type="Signal" association="A_signal_broadcastSignalAction"> |
| <ownedComment xmi:id="BroadcastSignalAction-signal-_ownedComment.0" annotatedElement="BroadcastSignalAction-signal"> |
| <body>The specification of signal object transmitted to the target objects.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="CallAction" name="CallAction" isAbstract="true"> |
| <ownedComment xmi:id="CallAction-_ownedComment.0" annotatedElement="CallAction"> |
| <body>CallAction is an abstract class for actions that invoke behavior and receive return values.</body> |
| </ownedComment> |
| <ownedRule xmi:id="CallAction-synchronous_call" name="synchronous_call" constrainedElement="CallAction"> |
| <ownedComment xmi:id="CallAction-synchronous_call-_ownedComment.0" annotatedElement="CallAction-synchronous_call"> |
| <body>Only synchronous call actions can have result pins.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CallAction-synchronous_call-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CallAction-number_and_order" name="number_and_order" constrainedElement="CallAction"> |
| <ownedComment xmi:id="CallAction-number_and_order-_ownedComment.0" annotatedElement="CallAction-number_and_order"> |
| <body>The number and order of argument pins must be the same as the number and order of parameters of the invoked behavior or behavioral feature. Pins are matched to parameters by order.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CallAction-number_and_order-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CallAction-type_ordering_multiplicity" name="type_ordering_multiplicity" constrainedElement="CallAction"> |
| <ownedComment xmi:id="CallAction-type_ordering_multiplicity-_ownedComment.0" annotatedElement="CallAction-type_ordering_multiplicity"> |
| <body>The type, ordering, and multiplicity of an argument pin must be the same as the corresponding parameter of the behavior or behavioral feature.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CallAction-type_ordering_multiplicity-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="CallAction-_generalization.0" general="InvocationAction"/> |
| <ownedAttribute xmi:id="CallAction-isSynchronous" name="isSynchronous" visibility="public"> |
| <ownedComment xmi:id="CallAction-isSynchronous-_ownedComment.0" annotatedElement="CallAction-isSynchronous"> |
| <body>If true, the call is synchronous and the caller waits for completion of the invoked behavior. If false, the call is asynchronous and the caller proceeds immediately and does not expect a return values.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="CallAction-isSynchronous-_defaultValue" value="true"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="CallAction-result" name="result" visibility="public" type="OutputPin" isOrdered="true" aggregation="composite" subsettedProperty="Action-output" association="A_result_callAction"> |
| <ownedComment xmi:id="CallAction-result-_ownedComment.0" annotatedElement="CallAction-result"> |
| <body>A list of output pins where the results of performing the invocation are placed.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="CallAction-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="CallAction-result-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="CallBehaviorAction" name="CallBehaviorAction"> |
| <ownedComment xmi:id="CallBehaviorAction-_ownedComment.0" annotatedElement="CallBehaviorAction"> |
| <body>A call behavior action is a call action that invokes a behavior directly rather than invoking a behavioral feature that, in turn, results in the invocation of that behavior. The argument values of the action are available to the execution of the invoked behavior. For synchronous calls the execution of the call behavior action waits until the execution of the invoked behavior completes and a result is returned on its output pin. The action completes immediately without a result, if the call is asynchronous. In particular, the invoked behavior may be an activity.</body> |
| </ownedComment> |
| <ownedRule xmi:id="CallBehaviorAction-result_pin_equal_parameter" name="result_pin_equal_parameter" constrainedElement="CallBehaviorAction"> |
| <ownedComment xmi:id="CallBehaviorAction-result_pin_equal_parameter-_ownedComment.0" annotatedElement="CallBehaviorAction-result_pin_equal_parameter"> |
| <body>The number of result pins and the number of parameters of the behavior of type return, out, and in-out must be equal.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CallBehaviorAction-result_pin_equal_parameter-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CallBehaviorAction-type_ordering_multiplicity" name="type_ordering_multiplicity" constrainedElement="CallBehaviorAction"> |
| <ownedComment xmi:id="CallBehaviorAction-type_ordering_multiplicity-_ownedComment.0" annotatedElement="CallBehaviorAction-type_ordering_multiplicity"> |
| <body>The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding parameter of the behavior.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CallBehaviorAction-type_ordering_multiplicity-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CallBehaviorAction-argument_pin_equal_parameter" name="argument_pin_equal_parameter" constrainedElement="CallBehaviorAction"> |
| <ownedComment xmi:id="CallBehaviorAction-argument_pin_equal_parameter-_ownedComment.0" annotatedElement="CallBehaviorAction-argument_pin_equal_parameter"> |
| <body>The number of argument pins and the number of parameters of the behavior of type in and in-out must be equal.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CallBehaviorAction-argument_pin_equal_parameter-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="CallBehaviorAction-_generalization.0" general="CallAction"/> |
| <ownedAttribute xmi:id="CallBehaviorAction-behavior" name="behavior" visibility="public" type="Behavior" association="A_behavior_callBehaviorAction"> |
| <ownedComment xmi:id="CallBehaviorAction-behavior-_ownedComment.0" annotatedElement="CallBehaviorAction-behavior"> |
| <body>The invoked behavior. It must be capable of accepting and returning control.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="CallEvent" name="CallEvent"> |
| <ownedComment xmi:id="CallEvent-_ownedComment.0" annotatedElement="CallEvent"> |
| <body>A call event models the receipt by an object of a message invoking a call of an operation.</body> |
| </ownedComment> |
| <generalization xmi:id="CallEvent-_generalization.0" general="MessageEvent"/> |
| <ownedAttribute xmi:id="CallEvent-operation" name="operation" visibility="public" type="Operation" association="A_operation_callEvent"> |
| <ownedComment xmi:id="CallEvent-operation-_ownedComment.0" annotatedElement="CallEvent-operation"> |
| <body>Designates the operation whose invocation raised the call event.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="CallOperationAction" name="CallOperationAction"> |
| <ownedComment xmi:id="CallOperationAction-_ownedComment.0" annotatedElement="CallOperationAction"> |
| <body>A call operation action is an action that transmits an operation call request to the target object, where it may cause the invocation of associated behavior. The argument values of the action are available to the execution of the invoked behavior. If the action is marked synchronous, the execution of the call operation action waits until the execution of the invoked behavior completes and a reply transmission is returned to the caller; otherwise execution of the action is complete when the invocation of the operation is established and the execution of the invoked operation proceeds concurrently with the execution of the calling behavior. Any values returned as part of the reply transmission are put on the result output pins of the call operation action. Upon receipt of the reply transmission, execution of the call operation action is complete.</body> |
| </ownedComment> |
| <ownedRule xmi:id="CallOperationAction-argument_pin_equal_parameter" name="argument_pin_equal_parameter" constrainedElement="CallOperationAction"> |
| <ownedComment xmi:id="CallOperationAction-argument_pin_equal_parameter-_ownedComment.0" annotatedElement="CallOperationAction-argument_pin_equal_parameter"> |
| <body>The number of argument pins and the number of owned parameters of the operation of type in and in-out must be equal.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CallOperationAction-argument_pin_equal_parameter-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CallOperationAction-result_pin_equal_parameter" name="result_pin_equal_parameter" constrainedElement="CallOperationAction"> |
| <ownedComment xmi:id="CallOperationAction-result_pin_equal_parameter-_ownedComment.0" annotatedElement="CallOperationAction-result_pin_equal_parameter"> |
| <body>The number of result pins and the number of owned parameters of the operation of type return, out, and in-out must be equal.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CallOperationAction-result_pin_equal_parameter-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CallOperationAction-type_target_pin" name="type_target_pin" constrainedElement="CallOperationAction"> |
| <ownedComment xmi:id="CallOperationAction-type_target_pin-_ownedComment.0" annotatedElement="CallOperationAction-type_target_pin"> |
| <body>The type of the target pin must be the same as the type that owns the operation.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CallOperationAction-type_target_pin-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CallOperationAction-type_ordering_multiplicity" name="type_ordering_multiplicity" constrainedElement="CallOperationAction"> |
| <ownedComment xmi:id="CallOperationAction-type_ordering_multiplicity-_ownedComment.0" annotatedElement="CallOperationAction-type_ordering_multiplicity"> |
| <body>The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding owned parameter of the operation.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CallOperationAction-type_ordering_multiplicity-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="CallOperationAction-_generalization.0" general="CallAction"/> |
| <ownedAttribute xmi:id="CallOperationAction-operation" name="operation" visibility="public" type="Operation" association="A_operation_callOperationAction"> |
| <ownedComment xmi:id="CallOperationAction-operation-_ownedComment.0" annotatedElement="CallOperationAction-operation"> |
| <body>The operation to be invoked by the action execution.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="CallOperationAction-target" name="target" visibility="public" type="InputPin" aggregation="composite" subsettedProperty="Action-input" association="A_target_callOperationAction"> |
| <ownedComment xmi:id="CallOperationAction-target-_ownedComment.0" annotatedElement="CallOperationAction-target"> |
| <body>The target object to which the request is sent. The classifier of the target object is used to dynamically determine a behavior to invoke. This object constitutes the context of the execution of the operation.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="CentralBufferNode" name="CentralBufferNode"> |
| <ownedComment xmi:id="CentralBufferNode-_ownedComment.0" annotatedElement="CentralBufferNode"> |
| <body>A central buffer node is an object node for managing flows from multiple sources and destinations.</body> |
| </ownedComment> |
| <generalization xmi:id="CentralBufferNode-_generalization.0" general="ObjectNode"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ChangeEvent" name="ChangeEvent"> |
| <ownedComment xmi:id="ChangeEvent-_ownedComment.0" annotatedElement="ChangeEvent"> |
| <body>A change event models a change in the system configuration that makes a condition true.</body> |
| </ownedComment> |
| <generalization xmi:id="ChangeEvent-_generalization.0" general="Event"/> |
| <ownedAttribute xmi:id="ChangeEvent-changeExpression" name="changeExpression" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_changeExpression_changeEvent"> |
| <ownedComment xmi:id="ChangeEvent-changeExpression-_ownedComment.0" annotatedElement="ChangeEvent-changeExpression"> |
| <body>A Boolean-valued expression that will result in a change event whenever its value changes from false to true.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Class" name="Class"> |
| <ownedComment xmi:id="Class-_ownedComment.0" annotatedElement="Class"> |
| <body>A class may be designated as active (i.e., each of its instances having its own thread of control) or passive (i.e., each of its instances executing within the context of some other object). A class may also specify which signals the instances of this class handle.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Class-_ownedComment.1" annotatedElement="Class"> |
| <body>A class describes a set of objects that share the same specifications of features, constraints, and semantics.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Class-_ownedComment.2" annotatedElement="Class"> |
| <body>A class has the capability to have an internal structure and ports.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Class-_ownedComment.3" annotatedElement="Class"> |
| <body>Class has derived association that indicates how it may be extended through one or more stereotypes. Stereotype is the only kind of metaclass that cannot be extended by stereotypes.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Class-passive_class" name="passive_class" constrainedElement="Class"> |
| <ownedComment xmi:id="Class-passive_class-_ownedComment.0" annotatedElement="Class-passive_class"> |
| <body>A passive class may not own receptions.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Class-passive_class-_specification"> |
| <language>OCL</language> |
| <body>not self.isActive implies self.ownedReception.isEmpty()</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Class-_generalization.0" general="EncapsulatedClassifier"/> |
| <generalization xmi:id="Class-_generalization.1" general="BehavioredClassifier"/> |
| <ownedAttribute xmi:id="Class-extension" name="extension" visibility="public" type="Extension" isReadOnly="true" isDerived="true" association="A_extension_metaclass"> |
| <ownedComment xmi:id="Class-extension-_ownedComment.0" annotatedElement="Class-extension"> |
| <body>References the Extensions that specify additional properties of the metaclass. The property is derived from the extensions whose memberEnds are typed by the Class.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Class-extension-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Class-extension-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Class-isAbstract" name="isAbstract" visibility="public" redefinedProperty="Classifier-isAbstract"> |
| <ownedComment xmi:id="Class-isAbstract-_ownedComment.0" annotatedElement="Class-isAbstract"> |
| <body>If true, the Classifier does not provide a complete declaration and can typically not be instantiated. An abstract classifier is intended to be used by other classifiers e.g. as the target of general metarelationships or generalization relationships.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Class-isAbstract-_ownedComment.1" annotatedElement="Class-isAbstract"> |
| <body>True when a class is abstract.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Class-isAbstract-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Class-isActive" name="isActive" visibility="public"> |
| <ownedComment xmi:id="Class-isActive-_ownedComment.0" annotatedElement="Class-isActive"> |
| <body>Determines whether an object specified by this class is active or not. If true, then the owning class is referred to as an active class. If false, then such a class is referred to as a passive class.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Class-isActive-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Class-nestedClassifier" name="nestedClassifier" visibility="public" type="Classifier" isOrdered="true" aggregation="composite" subsettedProperty="A_redefinitionContext_redefinableElement-redefinableElement Namespace-ownedMember" association="A_nestedClassifier_class"> |
| <ownedComment xmi:id="Class-nestedClassifier-_ownedComment.0" annotatedElement="Class-nestedClassifier"> |
| <body>References all the Classifiers that are defined (nested) within the Class.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Class-nestedClassifier-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Class-nestedClassifier-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Class-ownedAttribute" name="ownedAttribute" visibility="public" type="Property" isOrdered="true" aggregation="composite" redefinedProperty="StructuredClassifier-ownedAttribute" subsettedProperty="Namespace-ownedMember Classifier-attribute" association="A_ownedAttribute_class"> |
| <ownedComment xmi:id="Class-ownedAttribute-_ownedComment.0" annotatedElement="Class-ownedAttribute"> |
| <body>The attributes (i.e. the properties) owned by the class.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Class-ownedAttribute-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Class-ownedAttribute-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Class-ownedOperation" name="ownedOperation" visibility="public" type="Operation" isOrdered="true" aggregation="composite" subsettedProperty="Classifier-feature A_redefinitionContext_redefinableElement-redefinableElement Namespace-ownedMember" association="A_ownedOperation_class"> |
| <ownedComment xmi:id="Class-ownedOperation-_ownedComment.0" annotatedElement="Class-ownedOperation"> |
| <body>The operations owned by the class.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Class-ownedOperation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Class-ownedOperation-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Class-ownedReception" name="ownedReception" visibility="public" type="Reception" aggregation="composite" subsettedProperty="Classifier-feature Namespace-ownedMember" association="A_ownedReception_class"> |
| <ownedComment xmi:id="Class-ownedReception-_ownedComment.0" annotatedElement="Class-ownedReception"> |
| <body>Receptions that objects of this class are willing to accept.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Class-ownedReception-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Class-ownedReception-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Class-superClass" name="superClass" visibility="public" type="Class" isDerived="true" redefinedProperty="Classifier-general" association="A_superClass_class"> |
| <ownedComment xmi:id="Class-superClass-_ownedComment.0" annotatedElement="Class-superClass"> |
| <body>This gives the superclasses of a class.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Class-superClass-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Class-superClass-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Class-extension.1" name="extension" visibility="public" bodyCondition="Class-extension.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Class-extension.1-_ownedComment.0" annotatedElement="Class-extension.1"> |
| <body>Missing derivation for Class::/extension : Extension</body> |
| </ownedComment> |
| <ownedRule xmi:id="Class-extension.1-spec" name="spec" constrainedElement="Class-extension.1 Class-extension"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Class-extension.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Class-extension.1-result" name="result" visibility="public" type="Extension" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Class-extension.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Class-extension.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Class-inherit" name="inherit" visibility="public" bodyCondition="Class-inherit-spec" isQuery="true" redefinedOperation="Classifier-inherit"> |
| <ownedComment xmi:id="Class-inherit-_ownedComment.0" annotatedElement="Class-inherit"> |
| <body>The inherit operation is overridden to exclude redefined properties.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Class-inherit-spec" name="spec" constrainedElement="Class-inherit"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Class-inherit-spec-_specification"> |
| <language>OCL</language> |
| <body>result = inhs->excluding(inh | ownedMember->select(oclIsKindOf(RedefinableElement))->select(redefinedElement->includes(inh)))</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Class-inherit-result" name="result" visibility="public" type="NamedElement" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Class-inherit-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Class-inherit-result-_upperValue" value="*"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="Class-inherit-inhs" name="inhs" visibility="public" type="NamedElement"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Class-inherit-inhs-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Class-inherit-inhs-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Class-superClass.1" name="superClass" visibility="public" bodyCondition="Class-superClass.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Class-superClass.1-_ownedComment.0" annotatedElement="Class-superClass.1"> |
| <body>Missing derivation for Class::/superClass : Class</body> |
| </ownedComment> |
| <ownedRule xmi:id="Class-superClass.1-spec" name="spec" constrainedElement="Class-superClass.1 Class-superClass"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Class-superClass.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Class-superClass.1-result" name="result" visibility="public" type="Class" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Class-superClass.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Class-superClass.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Classifier" name="Classifier" isAbstract="true"> |
| <ownedComment xmi:id="Classifier-_ownedComment.0" annotatedElement="Classifier"> |
| <body>A classifier is a classification of instances - it describes a set of instances that have features in common. A classifier can specify a generalization hierarchy by referencing its general classifiers.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Classifier-_ownedComment.1" annotatedElement="Classifier"> |
| <body>A classifier has the capability to own use cases. Although the owning classifier typically represents the subject to which the owned use cases apply, this is not necessarily the case. In principle, the same use case can be applied to multiple subjects, as identified by the subject association role of a use case.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Classifier-_ownedComment.2" annotatedElement="Classifier"> |
| <body>Classifier is defined to be a kind of templateable element so that a classifier can be parameterized. It is also defined to be a kind of parameterable element so that a classifier can be a formal template parameter.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Classifier-_ownedComment.3" annotatedElement="Classifier"> |
| <body>A classifier has the capability to own collaboration uses. These collaboration uses link a collaboration with the classifier to give a description of the workings of the classifier.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Classifier-non_final_parents" name="non_final_parents" constrainedElement="Classifier"> |
| <ownedComment xmi:id="Classifier-non_final_parents-_ownedComment.0" annotatedElement="Classifier-non_final_parents"> |
| <body>The parents of a classifier must be non-final.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-non_final_parents-_specification"> |
| <language>OCL</language> |
| <body>self.parents()->forAll(not isFinalSpecialization)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Classifier-no_cycles_in_generalization" name="no_cycles_in_generalization" constrainedElement="Classifier"> |
| <ownedComment xmi:id="Classifier-no_cycles_in_generalization-_ownedComment.0" annotatedElement="Classifier-no_cycles_in_generalization"> |
| <body>Generalization hierarchies must be directed and acyclical. A classifier can not be both a transitively general and transitively specific classifier of the same classifier.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-no_cycles_in_generalization-_specification"> |
| <language>OCL</language> |
| <body>not self.allParents()->includes(self)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Classifier-specialize_type" name="specialize_type" constrainedElement="Classifier"> |
| <ownedComment xmi:id="Classifier-specialize_type-_ownedComment.0" annotatedElement="Classifier-specialize_type"> |
| <body>A classifier may only specialize classifiers of a valid type.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-specialize_type-_specification"> |
| <language>OCL</language> |
| <body>self.parents()->forAll(c | self.maySpecializeType(c))</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Classifier-maps_to_generalization_set" name="maps_to_generalization_set" constrainedElement="Classifier"> |
| <ownedComment xmi:id="Classifier-maps_to_generalization_set-_ownedComment.0" annotatedElement="Classifier-maps_to_generalization_set"> |
| <body>The Classifier that maps to a GeneralizationSet may neither be a specific nor a general Classifier in any of the Generalization relationships defined for that GeneralizationSet. In other words, a power type may not be an instance of itself nor may its instances also be its subclasses.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-maps_to_generalization_set-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Classifier-_generalization.0" general="Namespace"/> |
| <generalization xmi:id="Classifier-_generalization.1" general="Type"/> |
| <generalization xmi:id="Classifier-_generalization.2" general="RedefinableElement"/> |
| <generalization xmi:id="Classifier-_generalization.3" general="TemplateableElement"/> |
| <ownedAttribute xmi:id="Classifier-attribute" name="attribute" visibility="public" type="Property" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="Classifier-feature A_redefinitionContext_redefinableElement-redefinableElement" association="A_attribute_classifier"> |
| <ownedComment xmi:id="Classifier-attribute-_ownedComment.0" annotatedElement="Classifier-attribute"> |
| <body>Refers to all of the Properties that are direct (i.e. not inherited or imported) attributes of the classifier.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-attribute-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-attribute-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-collaborationUse" name="collaborationUse" visibility="public" type="CollaborationUse" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_collaborationUse_classifier"> |
| <ownedComment xmi:id="Classifier-collaborationUse-_ownedComment.0" annotatedElement="Classifier-collaborationUse"> |
| <body>References the collaboration uses owned by the classifier.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-collaborationUse-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-collaborationUse-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-feature" name="feature" visibility="public" type="Feature" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="Namespace-member" association="A_feature_featuringClassifier"> |
| <ownedComment xmi:id="Classifier-feature-_ownedComment.0" annotatedElement="Classifier-feature"> |
| <body>Specifies each feature defined in the classifier.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Classifier-feature-_ownedComment.1" annotatedElement="Classifier-feature"> |
| <body>Note that there may be members of the Classifier that are of the type Feature but are not included in this association, e.g. inherited features.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-feature-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-feature-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-general" name="general" visibility="public" type="Classifier" isDerived="true" association="A_general_classifier"> |
| <ownedComment xmi:id="Classifier-general-_ownedComment.0" annotatedElement="Classifier-general"> |
| <body>Specifies the general Classifiers for this Classifier.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Classifier-general-_ownedComment.1" annotatedElement="Classifier-general"> |
| <body>References the general classifier in the Generalization relationship.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-general-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-general-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-generalization" name="generalization" visibility="public" type="Generalization" aggregation="composite" subsettedProperty="A_source_directedRelationship-directedRelationship Element-ownedElement" association="A_generalization_specific"> |
| <ownedComment xmi:id="Classifier-generalization-_ownedComment.0" annotatedElement="Classifier-generalization"> |
| <body>Specifies the Generalization relationships for this Classifier. These Generalizations navigaten to more general classifiers in the generalization hierarchy.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-generalization-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-generalization-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-inheritedMember" name="inheritedMember" visibility="public" type="NamedElement" isReadOnly="true" isDerived="true" subsettedProperty="Namespace-member" association="A_inheritedMember_classifier"> |
| <ownedComment xmi:id="Classifier-inheritedMember-_ownedComment.0" annotatedElement="Classifier-inheritedMember"> |
| <body>Specifies all elements inherited by this classifier from the general classifiers.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-inheritedMember-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-inheritedMember-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-isAbstract" name="isAbstract" visibility="public"> |
| <ownedComment xmi:id="Classifier-isAbstract-_ownedComment.0" annotatedElement="Classifier-isAbstract"> |
| <body>If true, the Classifier does not provide a complete declaration and can typically not be instantiated. An abstract classifier is intended to be used by other classifiers e.g. as the target of general metarelationships or generalization relationships.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Classifier-isAbstract-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-isFinalSpecialization" name="isFinalSpecialization" visibility="public"> |
| <ownedComment xmi:id="Classifier-isFinalSpecialization-_ownedComment.0" annotatedElement="Classifier-isFinalSpecialization"> |
| <body>If true, the Classifier cannot be specialized by generalization. Note that this property is preserved through package merge operations; that is, the capability to specialize a Classifier (i.e., isFinalSpecialization =false) must be preserved in the resulting Classifier of a package merge operation where a Classifier with isFinalSpecialization =false is merged with a matching Classifier with isFinalSpecialization =true: the resulting Classifier will have isFinalSpecialization =false.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Classifier-isFinalSpecialization-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-ownedTemplateSignature" name="ownedTemplateSignature" visibility="public" type="RedefinableTemplateSignature" aggregation="composite" redefinedProperty="TemplateableElement-ownedTemplateSignature" subsettedProperty="A_redefinitionContext_redefinableElement-redefinableElement" association="A_ownedTemplateSignature_classifier"> |
| <ownedComment xmi:id="Classifier-ownedTemplateSignature-_ownedComment.0" annotatedElement="Classifier-ownedTemplateSignature"> |
| <body>The optional template signature specifying the formal template parameters.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-ownedTemplateSignature-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-ownedUseCase" name="ownedUseCase" visibility="public" type="UseCase" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_ownedUseCase_classifier"> |
| <ownedComment xmi:id="Classifier-ownedUseCase-_ownedComment.0" annotatedElement="Classifier-ownedUseCase"> |
| <body>References the use cases owned by this classifier.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-ownedUseCase-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-ownedUseCase-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-powertypeExtent" name="powertypeExtent" visibility="public" type="GeneralizationSet" association="A_powertypeExtent_powertype"> |
| <ownedComment xmi:id="Classifier-powertypeExtent-_ownedComment.0" annotatedElement="Classifier-powertypeExtent"> |
| <body>Designates the GeneralizationSet of which the associated Classifier is a power type.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-powertypeExtent-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-powertypeExtent-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-redefinedClassifier" name="redefinedClassifier" visibility="public" type="Classifier" subsettedProperty="RedefinableElement-redefinedElement" association="A_redefinedClassifier_classifier"> |
| <ownedComment xmi:id="Classifier-redefinedClassifier-_ownedComment.0" annotatedElement="Classifier-redefinedClassifier"> |
| <body>References the Classifiers that are redefined by this Classifier.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-redefinedClassifier-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-redefinedClassifier-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-representation" name="representation" visibility="public" type="CollaborationUse" subsettedProperty="Classifier-collaborationUse" association="A_representation_classifier"> |
| <ownedComment xmi:id="Classifier-representation-_ownedComment.0" annotatedElement="Classifier-representation"> |
| <body>References a collaboration use which indicates the collaboration that represents this classifier.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-representation-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-substitution" name="substitution" visibility="public" type="Substitution" aggregation="composite" subsettedProperty="Element-ownedElement NamedElement-clientDependency" association="A_substitution_substitutingClassifier"> |
| <ownedComment xmi:id="Classifier-substitution-_ownedComment.0" annotatedElement="Classifier-substitution"> |
| <body>References the substitutions that are owned by this Classifier.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-substitution-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-substitution-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-templateParameter" name="templateParameter" visibility="public" type="ClassifierTemplateParameter" redefinedProperty="ParameterableElement-templateParameter" association="A_classifier_templateParameter_parameteredElement"> |
| <ownedComment xmi:id="Classifier-templateParameter-_ownedComment.0" annotatedElement="Classifier-templateParameter"> |
| <body>The template parameter that exposes this element as a formal parameter.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-templateParameter-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Classifier-useCase" name="useCase" visibility="public" type="UseCase" association="A_subject_useCase"> |
| <ownedComment xmi:id="Classifier-useCase-_ownedComment.0" annotatedElement="Classifier-useCase"> |
| <body>The set of use cases for which this Classifier is the subject.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-useCase-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-useCase-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Classifier-allFeatures" name="allFeatures" visibility="public" bodyCondition="Classifier-allFeatures-spec" isQuery="true"> |
| <ownedComment xmi:id="Classifier-allFeatures-_ownedComment.0" annotatedElement="Classifier-allFeatures"> |
| <body>The query allFeatures() gives all of the features in the namespace of the classifier. In general, through mechanisms such as inheritance, this will be a larger set than feature.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Classifier-allFeatures-spec" name="spec" constrainedElement="Classifier-allFeatures"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-allFeatures-spec-_specification"> |
| <language>OCL</language> |
| <body>result = member->select(oclIsKindOf(Feature))</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Classifier-allFeatures-result" name="result" visibility="public" type="Feature" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-allFeatures-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-allFeatures-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Classifier-allParents" name="allParents" visibility="public" bodyCondition="Classifier-allParents-spec" isQuery="true"> |
| <ownedComment xmi:id="Classifier-allParents-_ownedComment.0" annotatedElement="Classifier-allParents"> |
| <body>The query allParents() gives all of the direct and indirect ancestors of a generalized Classifier.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Classifier-allParents-spec" name="spec" constrainedElement="Classifier-allParents"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-allParents-spec-_specification"> |
| <language>OCL</language> |
| <body>result = self.parents()->union(self.parents()->collect(p | p.allParents())</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Classifier-allParents-result" name="result" visibility="public" type="Classifier" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-allParents-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-allParents-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Classifier-conformsTo" name="conformsTo" visibility="public" bodyCondition="Classifier-conformsTo-spec" isQuery="true" redefinedOperation="Type-conformsTo"> |
| <ownedComment xmi:id="Classifier-conformsTo-_ownedComment.0" annotatedElement="Classifier-conformsTo"> |
| <body>The query conformsTo() gives true for a classifier that defines a type that conforms to another. This is used, for example, in the specification of signature conformance for operations.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Classifier-conformsTo-spec" name="spec" constrainedElement="Classifier-conformsTo"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-conformsTo-spec-_specification"> |
| <language>OCL</language> |
| <body>result = (self=other) or (self.allParents()->includes(other))</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Classifier-conformsTo-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="Classifier-conformsTo-other" name="other" visibility="public" type="Classifier"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="Classifier-general.1" name="general" visibility="public" bodyCondition="Classifier-general.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Classifier-general.1-_ownedComment.0" annotatedElement="Classifier-general.1"> |
| <body>The general classifiers are the classifiers referenced by the generalization relationships.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Classifier-general.1-spec" name="spec" constrainedElement="Classifier-general.1 Classifier-general"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-general.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = self.parents()</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Classifier-general.1-result" name="result" visibility="public" type="Classifier" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-general.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-general.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Classifier-hasVisibilityOf" name="hasVisibilityOf" visibility="public" bodyCondition="Classifier-hasVisibilityOf-spec" isQuery="true" precondition="Classifier-hasVisibilityOf-pre"> |
| <ownedComment xmi:id="Classifier-hasVisibilityOf-_ownedComment.0" annotatedElement="Classifier-hasVisibilityOf"> |
| <body>The query hasVisibilityOf() determines whether a named element is visible in the classifier. By default all are visible. It is only called when the argument is something owned by a parent.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Classifier-hasVisibilityOf-pre" name="pre" constrainedElement="Classifier-hasVisibilityOf"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-hasVisibilityOf-pre-_specification"> |
| <language>OCL</language> |
| <body>self.allParents()->including(self)->collect(c | c.member)->includes(n)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Classifier-hasVisibilityOf-spec" name="spec" constrainedElement="Classifier-hasVisibilityOf"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-hasVisibilityOf-spec-_specification"> |
| <language>OCL</language> |
| <body>result = (n.visibility <> VisibilityKind::private)</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Classifier-hasVisibilityOf-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="Classifier-hasVisibilityOf-n" name="n" visibility="public" type="NamedElement"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="Classifier-inherit" name="inherit" visibility="public" bodyCondition="Classifier-inherit-spec" isQuery="true"> |
| <ownedComment xmi:id="Classifier-inherit-_ownedComment.0" annotatedElement="Classifier-inherit"> |
| <body>The inherit operation is overridden to exclude redefined properties.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Classifier-inherit-_ownedComment.1" annotatedElement="Classifier-inherit"> |
| <body>The query inherit() defines how to inherit a set of elements. Here the operation is defined to inherit them all. It is intended to be redefined in circumstances where inheritance is affected by redefinition.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Classifier-inherit-spec" name="spec" constrainedElement="Classifier-inherit"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-inherit-spec-_specification"> |
| <language>OCL</language> |
| <body>result = inhs</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Classifier-inherit-result" name="result" visibility="public" type="NamedElement" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-inherit-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-inherit-result-_upperValue" value="*"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="Classifier-inherit-inhs" name="inhs" visibility="public" type="NamedElement"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-inherit-inhs-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-inherit-inhs-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Classifier-inheritableMembers" name="inheritableMembers" visibility="public" bodyCondition="Classifier-inheritableMembers-spec" isQuery="true" precondition="Classifier-inheritableMembers-pre"> |
| <ownedComment xmi:id="Classifier-inheritableMembers-_ownedComment.0" annotatedElement="Classifier-inheritableMembers"> |
| <body>The query inheritableMembers() gives all of the members of a classifier that may be inherited in one of its descendants, subject to whatever visibility restrictions apply.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Classifier-inheritableMembers-pre" name="pre" constrainedElement="Classifier-inheritableMembers"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-inheritableMembers-pre-_specification"> |
| <language>OCL</language> |
| <body>c.allParents()->includes(self)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Classifier-inheritableMembers-spec" name="spec" constrainedElement="Classifier-inheritableMembers"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-inheritableMembers-spec-_specification"> |
| <language>OCL</language> |
| <body>result = member->select(m | c.hasVisibilityOf(m))</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Classifier-inheritableMembers-result" name="result" visibility="public" type="NamedElement" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-inheritableMembers-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-inheritableMembers-result-_upperValue" value="*"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="Classifier-inheritableMembers-c" name="c" visibility="public" type="Classifier"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="Classifier-inheritedMember.1" name="inheritedMember" visibility="public" bodyCondition="Classifier-inheritedMember.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Classifier-inheritedMember.1-_ownedComment.0" annotatedElement="Classifier-inheritedMember.1"> |
| <body>The inheritedMember association is derived by inheriting the inheritable members of the parents.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Classifier-inheritedMember.1-spec" name="spec" constrainedElement="Classifier-inheritedMember.1 Classifier-inheritedMember"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-inheritedMember.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = self.inherit(self.parents()->collect(p|p.inheritableMembers(self))->asSet())</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Classifier-inheritedMember.1-result" name="result" visibility="public" type="NamedElement" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-inheritedMember.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-inheritedMember.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Classifier-isTemplate" name="isTemplate" visibility="public" bodyCondition="Classifier-isTemplate-spec" isQuery="true" redefinedOperation="TemplateableElement-isTemplate"> |
| <ownedComment xmi:id="Classifier-isTemplate-_ownedComment.0" annotatedElement="Classifier-isTemplate"> |
| <body>The query isTemplate() returns whether this templateable element is actually a template.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Classifier-isTemplate-spec" name="spec" constrainedElement="Classifier-isTemplate"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-isTemplate-spec-_specification"> |
| <language>OCL</language> |
| <body>result = oclAsType(TemplatableElement).isTemplate() or general->exists(g | g.isTemplate())</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Classifier-isTemplate-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Classifier-maySpecializeType" name="maySpecializeType" visibility="public" bodyCondition="Classifier-maySpecializeType-spec" isQuery="true"> |
| <ownedComment xmi:id="Classifier-maySpecializeType-_ownedComment.0" annotatedElement="Classifier-maySpecializeType"> |
| <body>The query maySpecializeType() determines whether this classifier may have a generalization relationship to classifiers of the specified type. By default a classifier may specialize classifiers of the same or a more general type. It is intended to be redefined by classifiers that have different specialization constraints.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Classifier-maySpecializeType-spec" name="spec" constrainedElement="Classifier-maySpecializeType"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-maySpecializeType-spec-_specification"> |
| <language>OCL</language> |
| <body>result = self.oclIsKindOf(c.oclType)</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Classifier-maySpecializeType-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="Classifier-maySpecializeType-c" name="c" visibility="public" type="Classifier"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="Classifier-parents" name="parents" visibility="public" bodyCondition="Classifier-parents-spec" isQuery="true"> |
| <ownedComment xmi:id="Classifier-parents-_ownedComment.0" annotatedElement="Classifier-parents"> |
| <body>The query parents() gives all of the immediate ancestors of a generalized Classifier.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Classifier-parents-spec" name="spec" constrainedElement="Classifier-parents"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Classifier-parents-spec-_specification"> |
| <language>OCL</language> |
| <body>result = generalization.general</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Classifier-parents-result" name="result" visibility="public" type="Classifier" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Classifier-parents-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Classifier-parents-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ClassifierTemplateParameter" name="ClassifierTemplateParameter"> |
| <ownedComment xmi:id="ClassifierTemplateParameter-_ownedComment.0" annotatedElement="ClassifierTemplateParameter"> |
| <body>A classifier template parameter exposes a classifier as a formal template parameter.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ClassifierTemplateParameter-has_constraining_classifier" name="has_constraining_classifier" constrainedElement="ClassifierTemplateParameter"> |
| <ownedComment xmi:id="ClassifierTemplateParameter-has_constraining_classifier-_ownedComment.0" annotatedElement="ClassifierTemplateParameter-has_constraining_classifier"> |
| <body>If "allowSubstitutable" is true, then there must be a constrainingClassifier.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ClassifierTemplateParameter-has_constraining_classifier-_specification"> |
| <language>OCL</language> |
| <body>allowSubstitutable implies constrainingClassifier->notEmpty()</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ClassifierTemplateParameter-_generalization.0" general="TemplateParameter"/> |
| <ownedAttribute xmi:id="ClassifierTemplateParameter-allowSubstitutable" name="allowSubstitutable" visibility="public"> |
| <ownedComment xmi:id="ClassifierTemplateParameter-allowSubstitutable-_ownedComment.0" annotatedElement="ClassifierTemplateParameter-allowSubstitutable"> |
| <body>Constrains the required relationship between an actual parameter and the parameteredElement for this formal parameter.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="ClassifierTemplateParameter-allowSubstitutable-_defaultValue" value="true"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ClassifierTemplateParameter-constrainingClassifier" name="constrainingClassifier" visibility="public" type="Classifier" association="A_constrainingClassifier_classifierTemplateParameter"> |
| <ownedComment xmi:id="ClassifierTemplateParameter-constrainingClassifier-_ownedComment.0" annotatedElement="ClassifierTemplateParameter-constrainingClassifier"> |
| <body>The classifiers that constrain the argument that can be used for the parameter. If the allowSubstitutable attribute is true, then any classifier that is compatible with this constraining classifier can be substituted; otherwise, it must be either this classifier or one of its subclasses. If this property is empty, there are no constraints on the classifier that can be used as an argument.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ClassifierTemplateParameter-constrainingClassifier-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ClassifierTemplateParameter-constrainingClassifier-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ClassifierTemplateParameter-parameteredElement" name="parameteredElement" visibility="public" type="Classifier" redefinedProperty="TemplateParameter-parameteredElement" association="A_classifier_templateParameter_parameteredElement"> |
| <ownedComment xmi:id="ClassifierTemplateParameter-parameteredElement-_ownedComment.0" annotatedElement="ClassifierTemplateParameter-parameteredElement"> |
| <body>The parameterable classifier for this template parameter.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Clause" name="Clause"> |
| <ownedComment xmi:id="Clause-_ownedComment.0" annotatedElement="Clause"> |
| <body>A clause is an element that represents a single branch of a conditional construct, including a test and a body section. The body section is executed only if (but not necessarily if) the test section evaluates true.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Clause-test_and_body" name="test_and_body" constrainedElement="Clause"> |
| <ownedComment xmi:id="Clause-test_and_body-_ownedComment.0" annotatedElement="Clause-test_and_body"> |
| <body>The test and body parts must be disjoint.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Clause-test_and_body-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Clause-body_output_pins" name="body_output_pins" constrainedElement="Clause"> |
| <ownedComment xmi:id="Clause-body_output_pins-_ownedComment.0" annotatedElement="Clause-body_output_pins"> |
| <body>The bodyOutput pins are output pins on actions in the body of the clause.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Clause-body_output_pins-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Clause-decider_output" name="decider_output" constrainedElement="Clause"> |
| <ownedComment xmi:id="Clause-decider_output-_ownedComment.0" annotatedElement="Clause-decider_output"> |
| <body>The decider output pin must be for the test body or a node contained by the test body as a structured node.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Clause-decider_output-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Clause-_generalization.0" general="Element"/> |
| <ownedAttribute xmi:id="Clause-body" name="body" visibility="public" type="ExecutableNode" association="A_body_clause"> |
| <ownedComment xmi:id="Clause-body-_ownedComment.0" annotatedElement="Clause-body"> |
| <body>A nested activity fragment that is executed if the test evaluates to true and the clause is chosen over any concurrent clauses that also evaluate to true.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Clause-body-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Clause-body-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Clause-bodyOutput" name="bodyOutput" visibility="public" type="OutputPin" isOrdered="true" association="A_bodyOutput_clause"> |
| <ownedComment xmi:id="Clause-bodyOutput-_ownedComment.0" annotatedElement="Clause-bodyOutput"> |
| <body>A list of output pins within the body fragment whose values are moved to the result pins of the containing conditional node after execution of the clause body.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Clause-bodyOutput-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Clause-bodyOutput-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Clause-decider" name="decider" visibility="public" type="OutputPin" association="A_decider_clause"> |
| <ownedComment xmi:id="Clause-decider-_ownedComment.0" annotatedElement="Clause-decider"> |
| <body>An output pin within the test fragment the value of which is examined after execution of the test to determine whether the body should be executed.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Clause-predecessorClause" name="predecessorClause" visibility="public" type="Clause" association="A_predecessorClause_successorClause"> |
| <ownedComment xmi:id="Clause-predecessorClause-_ownedComment.0" annotatedElement="Clause-predecessorClause"> |
| <body>A set of clauses whose tests must all evaluate false before the current clause can be tested.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Clause-predecessorClause-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Clause-predecessorClause-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Clause-successorClause" name="successorClause" visibility="public" type="Clause" association="A_predecessorClause_successorClause"> |
| <ownedComment xmi:id="Clause-successorClause-_ownedComment.0" annotatedElement="Clause-successorClause"> |
| <body>A set of clauses which may not be tested unless the current clause tests false.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Clause-successorClause-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Clause-successorClause-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Clause-test" name="test" visibility="public" type="ExecutableNode" association="A_test_clause"> |
| <ownedComment xmi:id="Clause-test-_ownedComment.0" annotatedElement="Clause-test"> |
| <body>A nested activity fragment with a designated output pin that specifies the result of the test.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Clause-test-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ClearAssociationAction" name="ClearAssociationAction"> |
| <ownedComment xmi:id="ClearAssociationAction-_ownedComment.0" annotatedElement="ClearAssociationAction"> |
| <body>A clear association action is an action that destroys all links of an association in which a particular object participates.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ClearAssociationAction-multiplicity" name="multiplicity" constrainedElement="ClearAssociationAction"> |
| <ownedComment xmi:id="ClearAssociationAction-multiplicity-_ownedComment.0" annotatedElement="ClearAssociationAction-multiplicity"> |
| <body>The multiplicity of the input pin is 1..1.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ClearAssociationAction-multiplicity-_specification"> |
| <language>OCL</language> |
| <body>self.object.multiplicity.is(1,1)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ClearAssociationAction-same_type" name="same_type" constrainedElement="ClearAssociationAction"> |
| <ownedComment xmi:id="ClearAssociationAction-same_type-_ownedComment.0" annotatedElement="ClearAssociationAction-same_type"> |
| <body>The type of the input pin must be the same as the type of at least one of the association ends of the association.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ClearAssociationAction-same_type-_specification"> |
| <language>OCL</language> |
| <body>self.association->exists(end.type = self.object.type)</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ClearAssociationAction-_generalization.0" general="Action"/> |
| <ownedAttribute xmi:id="ClearAssociationAction-association" name="association" visibility="public" type="Association" association="A_association_clearAssociationAction"> |
| <ownedComment xmi:id="ClearAssociationAction-association-_ownedComment.0" annotatedElement="ClearAssociationAction-association"> |
| <body>Association to be cleared.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ClearAssociationAction-object" name="object" visibility="public" type="InputPin" aggregation="composite" subsettedProperty="Action-input" association="A_object_clearAssociationAction"> |
| <ownedComment xmi:id="ClearAssociationAction-object-_ownedComment.0" annotatedElement="ClearAssociationAction-object"> |
| <body>Gives the input pin from which is obtained the object whose participation in the association is to be cleared.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ClearStructuralFeatureAction" name="ClearStructuralFeatureAction"> |
| <ownedComment xmi:id="ClearStructuralFeatureAction-_ownedComment.0" annotatedElement="ClearStructuralFeatureAction"> |
| <body>A clear structural feature action is a structural feature action that removes all values of a structural feature.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ClearStructuralFeatureAction-multiplicity_of_result" name="multiplicity_of_result" constrainedElement="ClearStructuralFeatureAction"> |
| <ownedComment xmi:id="ClearStructuralFeatureAction-multiplicity_of_result-_ownedComment.0" annotatedElement="ClearStructuralFeatureAction-multiplicity_of_result"> |
| <body>The multiplicity of the result output pin must be 1..1.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ClearStructuralFeatureAction-multiplicity_of_result-_specification"> |
| <language>OCL</language> |
| <body>result->notEmpty() implies self.result.multiplicity.is(1,1)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ClearStructuralFeatureAction-type_of_result" name="type_of_result" constrainedElement="ClearStructuralFeatureAction"> |
| <ownedComment xmi:id="ClearStructuralFeatureAction-type_of_result-_ownedComment.0" annotatedElement="ClearStructuralFeatureAction-type_of_result"> |
| <body>The type of the result output pin is the same as the type of the inherited object input pin.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ClearStructuralFeatureAction-type_of_result-_specification"> |
| <language>OCL</language> |
| <body>result->notEmpty() implies self.result.type = self.object.type</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ClearStructuralFeatureAction-_generalization.0" general="StructuralFeatureAction"/> |
| <ownedAttribute xmi:id="ClearStructuralFeatureAction-result" name="result" visibility="public" type="OutputPin" aggregation="composite" subsettedProperty="Action-output" association="A_result_clearStructuralFeatureAction"> |
| <ownedComment xmi:id="ClearStructuralFeatureAction-result-_ownedComment.0" annotatedElement="ClearStructuralFeatureAction-result"> |
| <body>Gives the output pin on which the result is put.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ClearStructuralFeatureAction-result-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ClearVariableAction" name="ClearVariableAction"> |
| <ownedComment xmi:id="ClearVariableAction-_ownedComment.0" annotatedElement="ClearVariableAction"> |
| <body>A clear variable action is a variable action that removes all values of a variable.</body> |
| </ownedComment> |
| <generalization xmi:id="ClearVariableAction-_generalization.0" general="VariableAction"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Collaboration" name="Collaboration"> |
| <ownedComment xmi:id="Collaboration-_ownedComment.0" annotatedElement="Collaboration"> |
| <body>A collaboration use represents the application of the pattern described by a collaboration to a specific situation involving specific classes or instances playing the roles of the collaboration.</body> |
| </ownedComment> |
| <generalization xmi:id="Collaboration-_generalization.0" general="StructuredClassifier"/> |
| <generalization xmi:id="Collaboration-_generalization.1" general="BehavioredClassifier"/> |
| <ownedAttribute xmi:id="Collaboration-collaborationRole" name="collaborationRole" visibility="public" type="ConnectableElement" subsettedProperty="StructuredClassifier-role" association="A_collaborationRole_collaboration"> |
| <ownedComment xmi:id="Collaboration-collaborationRole-_ownedComment.0" annotatedElement="Collaboration-collaborationRole"> |
| <body>References connectable elements (possibly owned by other classifiers) which represent roles that instances may play in this collaboration.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Collaboration-collaborationRole-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Collaboration-collaborationRole-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="CollaborationUse" name="CollaborationUse"> |
| <ownedComment xmi:id="CollaborationUse-_ownedComment.0" annotatedElement="CollaborationUse"> |
| <body>A collaboration use represents one particular use of a collaboration to explain the relationships between the properties of a classifier. A collaboration use shows how the pattern described by a collaboration is applied in a given context, by binding specific entities from that context to the roles of the collaboration. Depending on the context, these entities could be structural features of a classifier, instance specifications, or even roles in some containing collaboration. There may be multiple occurrences of a given collaboration within a classifier, each involving a different set of roles and connectors. A given role or connector may be involved in multiple occurrences of the same or different collaborations. Associated dependencies map features of the collaboration type to features in the classifier. These dependencies indicate which role in the classifier plays which role in the collaboration.</body> |
| </ownedComment> |
| <ownedRule xmi:id="CollaborationUse-connectors" name="connectors" constrainedElement="CollaborationUse"> |
| <ownedComment xmi:id="CollaborationUse-connectors-_ownedComment.0" annotatedElement="CollaborationUse-connectors"> |
| <body>The connectors in the classifier connect according to the connectors in the collaboration</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CollaborationUse-connectors-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CollaborationUse-every_role" name="every_role" constrainedElement="CollaborationUse"> |
| <ownedComment xmi:id="CollaborationUse-every_role-_ownedComment.0" annotatedElement="CollaborationUse-every_role"> |
| <body>Every role in the collaboration is bound within the collaboration use to a connectable element within the owning classifier.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CollaborationUse-every_role-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CollaborationUse-client_elements" name="client_elements" constrainedElement="CollaborationUse"> |
| <ownedComment xmi:id="CollaborationUse-client_elements-_ownedComment.0" annotatedElement="CollaborationUse-client_elements"> |
| <body>All the client elements of a roleBinding are in one classifier and all supplier elements of a roleBinding are in one collaboration and they are compatible.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CollaborationUse-client_elements-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="CollaborationUse-_generalization.0" general="NamedElement"/> |
| <ownedAttribute xmi:id="CollaborationUse-roleBinding" name="roleBinding" visibility="public" type="Dependency" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_roleBinding_collaborationUse"> |
| <ownedComment xmi:id="CollaborationUse-roleBinding-_ownedComment.0" annotatedElement="CollaborationUse-roleBinding"> |
| <body>A mapping between features of the collaboration type and features of the owning classifier. This mapping indicates which connectable element of the classifier plays which role(s) in the collaboration. A connectable element may be bound to multiple roles in the same collaboration use (that is, it may play multiple roles).</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="CollaborationUse-roleBinding-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="CollaborationUse-roleBinding-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="CollaborationUse-type" name="type" visibility="public" type="Collaboration" association="A_type_collaborationUse"> |
| <ownedComment xmi:id="CollaborationUse-type-_ownedComment.0" annotatedElement="CollaborationUse-type"> |
| <body>The collaboration which is used in this occurrence. The collaboration defines the cooperation between its roles which are mapped to properties of the classifier owning the collaboration use.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="CombinedFragment" name="CombinedFragment"> |
| <ownedComment xmi:id="CombinedFragment-_ownedComment.0" annotatedElement="CombinedFragment"> |
| <body>A combined fragment defines an expression of interaction fragments. A combined fragment is defined by an interaction operator and corresponding interaction operands. Through the use of combined fragments the user will be able to describe a number of traces in a compact and concise manner.</body> |
| </ownedComment> |
| <ownedRule xmi:id="CombinedFragment-break" name="break" constrainedElement="CombinedFragment"> |
| <ownedComment xmi:id="CombinedFragment-break-_ownedComment.0" annotatedElement="CombinedFragment-break"> |
| <body>If the interactionOperator is break, the corresponding InteractionOperand must cover all Lifelines within the enclosing InteractionFragment.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CombinedFragment-break-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CombinedFragment-opt_loop_break_neg" name="opt_loop_break_neg" constrainedElement="CombinedFragment"> |
| <ownedComment xmi:id="CombinedFragment-opt_loop_break_neg-_ownedComment.0" annotatedElement="CombinedFragment-opt_loop_break_neg"> |
| <body>If the interactionOperator is opt, loop, break, assert or neg, there must be exactly one operand.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CombinedFragment-opt_loop_break_neg-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CombinedFragment-consider_and_ignore" name="consider_and_ignore" constrainedElement="CombinedFragment"> |
| <ownedComment xmi:id="CombinedFragment-consider_and_ignore-_ownedComment.0" annotatedElement="CombinedFragment-consider_and_ignore"> |
| <body>The interaction operators 'consider' and 'ignore' can only be used for the CombineIgnoreFragment subtype of CombinedFragment</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CombinedFragment-consider_and_ignore-_specification"> |
| <language>OCL</language> |
| <body>((interactionOperator = #consider) or (interactionOperator = #ignore)) implies oclsisTypeOf(CombineIgnoreFragment)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CombinedFragment-minint_and_maxint" name="minint_and_maxint" constrainedElement="CombinedFragment"> |
| <ownedComment xmi:id="CombinedFragment-minint_and_maxint-_ownedComment.0" annotatedElement="CombinedFragment-minint_and_maxint"> |
| <body>The InteractionConstraint with minint and maxint only apply when attached to an InteractionOperand where the interactionOperator is loop.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CombinedFragment-minint_and_maxint-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="CombinedFragment-_generalization.0" general="InteractionFragment"/> |
| <ownedAttribute xmi:id="CombinedFragment-cfragmentGate" name="cfragmentGate" visibility="public" type="Gate" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_cfragmentGate_combinedFragment"> |
| <ownedComment xmi:id="CombinedFragment-cfragmentGate-_ownedComment.0" annotatedElement="CombinedFragment-cfragmentGate"> |
| <body>Specifies the gates that form the interface between this CombinedFragment and its surroundings</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="CombinedFragment-cfragmentGate-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="CombinedFragment-cfragmentGate-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="CombinedFragment-interactionOperator" name="interactionOperator" visibility="public" type="InteractionOperatorKind"> |
| <ownedComment xmi:id="CombinedFragment-interactionOperator-_ownedComment.0" annotatedElement="CombinedFragment-interactionOperator"> |
| <body>Specifies the operation which defines the semantics of this combination of InteractionFragments.</body> |
| </ownedComment> |
| <defaultValue xmi:type="uml:InstanceValue" xmi:id="CombinedFragment-interactionOperator-_defaultValue" type="InteractionOperatorKind" instance="InteractionOperatorKind-seq"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="CombinedFragment-operand" name="operand" visibility="public" type="InteractionOperand" isOrdered="true" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_operand_combinedFragment"> |
| <ownedComment xmi:id="CombinedFragment-operand-_ownedComment.0" annotatedElement="CombinedFragment-operand"> |
| <body>The set of operands of the combined fragment.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="CombinedFragment-operand-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Comment" name="Comment"> |
| <ownedComment xmi:id="Comment-_ownedComment.0" annotatedElement="Comment"> |
| <body>A comment is a textual annotation that can be attached to a set of elements.</body> |
| </ownedComment> |
| <generalization xmi:id="Comment-_generalization.0" general="Element"/> |
| <ownedAttribute xmi:id="Comment-annotatedElement" name="annotatedElement" visibility="public" type="Element" association="A_annotatedElement_comment"> |
| <ownedComment xmi:id="Comment-annotatedElement-_ownedComment.0" annotatedElement="Comment-annotatedElement"> |
| <body>References the Element(s) being commented.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Comment-annotatedElement-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Comment-annotatedElement-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Comment-body" name="body" visibility="public"> |
| <ownedComment xmi:id="Comment-body-_ownedComment.0" annotatedElement="Comment-body"> |
| <body>Specifies a string that is the comment.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Comment-body-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="CommunicationPath" name="CommunicationPath"> |
| <ownedComment xmi:id="CommunicationPath-_ownedComment.0" annotatedElement="CommunicationPath"> |
| <body>A communication path is an association between two deployment targets, through which they are able to exchange signals and messages.</body> |
| </ownedComment> |
| <ownedRule xmi:id="CommunicationPath-association_ends" name="association_ends" constrainedElement="CommunicationPath"> |
| <ownedComment xmi:id="CommunicationPath-association_ends-_ownedComment.0" annotatedElement="CommunicationPath-association_ends"> |
| <body>The association ends of a CommunicationPath are typed by DeploymentTargets.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CommunicationPath-association_ends-_specification"> |
| <language>OCL</language> |
| <body>self.endType->forAll (t | t.oclIsKindOf(DeploymentTarget))</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="CommunicationPath-_generalization.0" general="Association"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Component" name="Component"> |
| <ownedComment xmi:id="Component-_ownedComment.0" annotatedElement="Component"> |
| <body>In the namespace of a component, all model elements that are involved in or related to its definition are either owned or imported explicitly. This may include, for example, use cases and dependencies (e.g. mappings), packages, components, and artifacts.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Component-_ownedComment.1" annotatedElement="Component"> |
| <body>A component represents a modular part of a system that encapsulates its contents and whose manifestation is replaceable within its environment.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Component-no_packaged_elements" name="no_packaged_elements" constrainedElement="Component"> |
| <ownedComment xmi:id="Component-no_packaged_elements-_ownedComment.0" annotatedElement="Component-no_packaged_elements"> |
| <body>component nested in a Class cannot have any packaged elements.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Component-no_packaged_elements-_specification"> |
| <language>OCL</language> |
| <body>(not self.class->isEmpty()) implies self.packagedElement->isEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Component-no_nested_classifiers" name="no_nested_classifiers" constrainedElement="Component"> |
| <ownedComment xmi:id="Component-no_nested_classifiers-_ownedComment.0" annotatedElement="Component-no_nested_classifiers"> |
| <body>A component cannot nest classifiers.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Component-no_nested_classifiers-_specification"> |
| <language>OCL</language> |
| <body>self.nestedClassifier->isEmpty()</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Component-_generalization.0" general="Class"/> |
| <ownedAttribute xmi:id="Component-isIndirectlyInstantiated" name="isIndirectlyInstantiated" visibility="public"> |
| <ownedComment xmi:id="Component-isIndirectlyInstantiated-_ownedComment.0" annotatedElement="Component-isIndirectlyInstantiated"> |
| <body>isIndirectlyInstantiated : Boolean {default = true} The kind of instantiation that applies to a Component. If false, the component is instantiated as an addressable object. If true, the Component is defined at design-time, but at run-time (or execution-time) an object specified by the Component does not exist, that is, the component is instantiated indirectly, through the instantiation of its realizing classifiers or parts. Several standard stereotypes use this meta attribute (e.g., «specification», «focus», «subsystem»).</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Component-isIndirectlyInstantiated-_defaultValue" value="true"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Component-packagedElement" name="packagedElement" visibility="public" type="PackageableElement" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_packagedElement_component"> |
| <ownedComment xmi:id="Component-packagedElement-_ownedComment.0" annotatedElement="Component-packagedElement"> |
| <body>The set of PackageableElements that a Component owns. In the namespace of a component, all model elements that are involved in or related to its definition may be owned or imported explicitly. These may include e.g. Classes, Interfaces, Components, Packages, Use cases, Dependencies (e.g. mappings), and Artifacts.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Component-packagedElement-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Component-packagedElement-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Component-provided" name="provided" visibility="public" type="Interface" isReadOnly="true" isDerived="true" association="A_provided_component"> |
| <ownedComment xmi:id="Component-provided-_ownedComment.0" annotatedElement="Component-provided"> |
| <body>The interfaces that the component exposes to its environment. These interfaces may be Realized by the Component or any of its realizingClassifiers, or they may be the Interfaces that are provided by its public Ports.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Component-provided-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Component-provided-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Component-realization" name="realization" visibility="public" type="ComponentRealization" aggregation="composite" subsettedProperty="A_supplier_supplierDependency-supplierDependency Element-ownedElement" association="A_realization_abstraction_component"> |
| <ownedComment xmi:id="Component-realization-_ownedComment.0" annotatedElement="Component-realization"> |
| <body>The set of Realizations owned by the Component. Realizations reference the Classifiers of which the Component is an abstraction; i.e., that realize its behavior.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Component-realization-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Component-realization-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Component-required" name="required" visibility="public" type="Interface" isReadOnly="true" isDerived="true" association="A_required_component"> |
| <ownedComment xmi:id="Component-required-_ownedComment.0" annotatedElement="Component-required"> |
| <body>The interfaces that the component requires from other components in its environment in order to be able to offer its full set of provided functionality. These interfaces may be used by the Component or any of its realizingClassifiers, or they may be the Interfaces that are required by its public Ports.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Component-required-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Component-required-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Component-provided.1" name="provided" visibility="public" bodyCondition="Component-provided.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Component-provided.1-_ownedComment.0" annotatedElement="Component-provided.1"> |
| <body>Missing derivation for Component::/provided : Interface</body> |
| </ownedComment> |
| <ownedRule xmi:id="Component-provided.1-spec" name="spec" constrainedElement="Component-provided.1 Component-provided"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Component-provided.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = |
| let realizedInterfaces : Set(Interface) = RealizedInterfaces(self) , |
| realizingClassifiers : Set(Classifier) = Set{self.realizingClassifier}->union(self.allParents().realizingClassifier), |
| allRealizingClassifiers : Set(Classifier) = realizingClassifiers->union(realizingClassifiers.allParents()) , |
| realizingClassifierInterfaces : Set(Interface) = allRealizingClassifiers->iterate(c; rci : Set(Interface) = Set{} | rci->union(RealizedInterfaces(c))) , |
| ports : Set(Port) = self.ownedPort->union(allParents.oclAsType(Set(EncapsulatedClassifier)).ownedPort) , |
| providedByPorts : Set(Interface) = ports.provided |
| in realizedInterfaces->union(realizingClassifierInterfaces) ->union(providedByPorts)->asSet() |
| </body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Component-provided.1-result" name="result" visibility="public" type="Interface" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Component-provided.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Component-provided.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Component-realizedInterfaces" name="realizedInterfaces" visibility="public" bodyCondition="Component-realizedInterfaces-spec" isQuery="true"> |
| <ownedComment xmi:id="Component-realizedInterfaces-_ownedComment.0" annotatedElement="Component-realizedInterfaces"> |
| <body>Utility returning the set of realized interfaces of a component.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Component-realizedInterfaces-spec" name="spec" constrainedElement="Component-realizedInterfaces"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Component-realizedInterfaces-spec-_specification"> |
| <language>OCL</language> |
| <body>result = (classifier.clientDependency-> |
| select(dependency|dependency.oclIsKindOf(Realization) and dependency.supplier.oclIsKindOf(Interface)))-> |
| collect(dependency|dependency.client)</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Component-realizedInterfaces-result" name="result" visibility="public" type="Interface" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Component-realizedInterfaces-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Component-realizedInterfaces-result-_upperValue" value="*"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="Component-realizedInterfaces-classifier" name="classifier" visibility="public" type="Classifier"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="Component-required.1" name="required" visibility="public" bodyCondition="Component-required.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Component-required.1-_ownedComment.0" annotatedElement="Component-required.1"> |
| <body>Missing derivation for Component::/required : Interface</body> |
| </ownedComment> |
| <ownedRule xmi:id="Component-required.1-spec" name="spec" constrainedElement="Component-required.1 Component-required"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Component-required.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = |
| let usedInterfaces : Set(Interface) = UsedInterfaces(self), |
| realizingClassifiers : Set(Classifier) = Set{self.realizingClassifier}->union(self.allParents().realizingClassifier), |
| allRealizingClassifiers : Set(Classifier) = realizingClassifiers->union(realizingClassifiers.allParents()), |
| realizingClassifierInterfaces : Set(Interface) = allRealizingClassifiers->iterate(c; rci : Set(Interface) = Set{} | rci->union(UsedInterfaces(c))), |
| ports : Set(Port) = self.ownedPort->union(allParents.oclAsType(Set(EncapsulatedClassifier)).ownedPort), |
| usedByPorts : Set(Interface) = ports.required |
| in usedInterfaces->union(realizingClassifierInterfaces) ->union(usedByPorts)->asSet() |
| </body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Component-required.1-result" name="result" visibility="public" type="Interface" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Component-required.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Component-required.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Component-usedInterfaces" name="usedInterfaces" visibility="public" bodyCondition="Component-usedInterfaces-spec" isQuery="true"> |
| <ownedComment xmi:id="Component-usedInterfaces-_ownedComment.0" annotatedElement="Component-usedInterfaces"> |
| <body>Utility returning the set of used interfaces of a component.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Component-usedInterfaces-spec" name="spec" constrainedElement="Component-usedInterfaces"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Component-usedInterfaces-spec-_specification"> |
| <language>OCL</language> |
| <body>result = (classifier.supplierDependency-> |
| select(dependency|dependency.oclIsKindOf(Usage) and dependency.supplier.oclIsKindOf(interface)))-> |
| collect(dependency|dependency.supplier)</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Component-usedInterfaces-result" name="result" visibility="public" type="Interface" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Component-usedInterfaces-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Component-usedInterfaces-result-_upperValue" value="*"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="Component-usedInterfaces-classifier" name="classifier" visibility="public" type="Classifier"/> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ComponentRealization" name="ComponentRealization"> |
| <ownedComment xmi:id="ComponentRealization-_ownedComment.0" annotatedElement="ComponentRealization"> |
| <body>The realization concept is specialized to (optionally) define the classifiers that realize the contract offered by a component in terms of its provided and required interfaces. The component forms an abstraction from these various classifiers.</body> |
| </ownedComment> |
| <generalization xmi:id="ComponentRealization-_generalization.0" general="Realization"/> |
| <ownedAttribute xmi:id="ComponentRealization-abstraction" name="abstraction" visibility="public" type="Component" subsettedProperty="Dependency-supplier Element-owner" association="A_realization_abstraction_component"> |
| <ownedComment xmi:id="ComponentRealization-abstraction-_ownedComment.0" annotatedElement="ComponentRealization-abstraction"> |
| <body>The Component that owns this ComponentRealization and which is implemented by its realizing classifiers.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ComponentRealization-abstraction-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ComponentRealization-realizingClassifier" name="realizingClassifier" visibility="public" type="Classifier" subsettedProperty="Dependency-client" association="A_realizingClassifier_componentRealization"> |
| <ownedComment xmi:id="ComponentRealization-realizingClassifier-_ownedComment.0" annotatedElement="ComponentRealization-realizingClassifier"> |
| <body>The classifiers that are involved in the implementation of the Component that owns this Realization.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ComponentRealization-realizingClassifier-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ConditionalNode" name="ConditionalNode"> |
| <ownedComment xmi:id="ConditionalNode-_ownedComment.0" annotatedElement="ConditionalNode"> |
| <body>A conditional node is a structured activity node that represents an exclusive choice among some number of alternatives.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ConditionalNode-executable_nodes" name="executable_nodes" constrainedElement="ConditionalNode"> |
| <ownedComment xmi:id="ConditionalNode-executable_nodes-_ownedComment.0" annotatedElement="ConditionalNode-executable_nodes"> |
| <body>The union of the ExecutabledNodes in the test and body parts of all clauses must be the same as the subset of nodes contained in the ConditionalNode (considered as a StructuredActivityNode) that are ExecutableNodes.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConditionalNode-executable_nodes-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ConditionalNode-clause_no_predecessor" name="clause_no_predecessor" constrainedElement="ConditionalNode"> |
| <ownedComment xmi:id="ConditionalNode-clause_no_predecessor-_ownedComment.0" annotatedElement="ConditionalNode-clause_no_predecessor"> |
| <body>No two clauses within a ConditionalNode maybe predecessor clauses of each other, either directly or indirectly.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConditionalNode-clause_no_predecessor-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ConditionalNode-matching_output_pins" name="matching_output_pins" constrainedElement="ConditionalNode"> |
| <ownedComment xmi:id="ConditionalNode-matching_output_pins-_ownedComment.0" annotatedElement="ConditionalNode-matching_output_pins"> |
| <body>Each clause of a conditional node must have the same number of bodyOutput pins as the conditional node has result output pins, and each clause bodyOutput pin must be compatible with the corresponding result pin (by positional order) in type, multiplicity, ordering and uniqueness.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConditionalNode-matching_output_pins-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ConditionalNode-one_clause_with_executable_node" name="one_clause_with_executable_node" constrainedElement="ConditionalNode"> |
| <ownedComment xmi:id="ConditionalNode-one_clause_with_executable_node-_ownedComment.0" annotatedElement="ConditionalNode-one_clause_with_executable_node"> |
| <body>No ExecutableNode may appear in the test or body part of more than one clause of a conditional node.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConditionalNode-one_clause_with_executable_node-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ConditionalNode-result_no_incoming" name="result_no_incoming" constrainedElement="ConditionalNode"> |
| <ownedComment xmi:id="ConditionalNode-result_no_incoming-_ownedComment.0" annotatedElement="ConditionalNode-result_no_incoming"> |
| <body>The result output pins have no incoming edges.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConditionalNode-result_no_incoming-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ConditionalNode-no_input_pins" name="no_input_pins" constrainedElement="ConditionalNode"> |
| <ownedComment xmi:id="ConditionalNode-no_input_pins-_ownedComment.0" annotatedElement="ConditionalNode-no_input_pins"> |
| <body>A conditional node has no input pins.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConditionalNode-no_input_pins-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ConditionalNode-_generalization.0" general="StructuredActivityNode"/> |
| <ownedAttribute xmi:id="ConditionalNode-clause" name="clause" visibility="public" type="Clause" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_clause_conditionalNode"> |
| <ownedComment xmi:id="ConditionalNode-clause-_ownedComment.0" annotatedElement="ConditionalNode-clause"> |
| <body>Set of clauses composing the conditional.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ConditionalNode-clause-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ConditionalNode-isAssured" name="isAssured" visibility="public"> |
| <ownedComment xmi:id="ConditionalNode-isAssured-_ownedComment.0" annotatedElement="ConditionalNode-isAssured"> |
| <body>If true, the modeler asserts that at least one test will succeed.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="ConditionalNode-isAssured-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ConditionalNode-isDeterminate" name="isDeterminate" visibility="public"> |
| <ownedComment xmi:id="ConditionalNode-isDeterminate-_ownedComment.0" annotatedElement="ConditionalNode-isDeterminate"> |
| <body>If true, the modeler asserts that at most one test will succeed.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="ConditionalNode-isDeterminate-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ConditionalNode-result" name="result" visibility="public" type="OutputPin" isOrdered="true" aggregation="composite" redefinedProperty="StructuredActivityNode-structuredNodeOutput" association="A_result_conditionalNode"> |
| <ownedComment xmi:id="ConditionalNode-result-_ownedComment.0" annotatedElement="ConditionalNode-result"> |
| <body>A list of output pins that constitute the data flow outputs of the conditional.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ConditionalNode-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ConditionalNode-result-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ConnectableElement" name="ConnectableElement" isAbstract="true"> |
| <ownedComment xmi:id="ConnectableElement-_ownedComment.0" annotatedElement="ConnectableElement"> |
| <body>ConnectableElement is an abstract metaclass representing a set of instances that play roles of a classifier. Connectable elements may be joined by attached connectors and specify configurations of linked instances to be created within an instance of the containing classifier.</body> |
| </ownedComment> |
| <ownedComment xmi:id="ConnectableElement-_ownedComment.1" annotatedElement="ConnectableElement"> |
| <body>A connectable element may be exposed as a connectable element template parameter.</body> |
| </ownedComment> |
| <generalization xmi:id="ConnectableElement-_generalization.0" general="TypedElement"/> |
| <generalization xmi:id="ConnectableElement-_generalization.1" general="ParameterableElement"/> |
| <ownedAttribute xmi:id="ConnectableElement-end" name="end" visibility="public" type="ConnectorEnd" isOrdered="true" isReadOnly="true" isDerived="true" association="A_end_role"> |
| <ownedComment xmi:id="ConnectableElement-end-_ownedComment.0" annotatedElement="ConnectableElement-end"> |
| <body>Denotes a set of connector ends that attaches to this connectable element.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ConnectableElement-end-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ConnectableElement-end-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ConnectableElement-templateParameter" name="templateParameter" visibility="public" type="ConnectableElementTemplateParameter" redefinedProperty="ParameterableElement-templateParameter" association="A_connectableElement_templateParameter_parameteredElement"> |
| <ownedComment xmi:id="ConnectableElement-templateParameter-_ownedComment.0" annotatedElement="ConnectableElement-templateParameter"> |
| <body>The ConnectableElementTemplateParameter for this ConnectableElement parameter.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ConnectableElement-templateParameter-_lowerValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="ConnectableElement-end.1" name="end" visibility="public" bodyCondition="ConnectableElement-end.1-spec" isQuery="true"> |
| <ownedComment xmi:id="ConnectableElement-end.1-_ownedComment.0" annotatedElement="ConnectableElement-end.1"> |
| <body>Missing derivation for ConnectableElement::/end : ConnectorEnd</body> |
| </ownedComment> |
| <ownedRule xmi:id="ConnectableElement-end.1-spec" name="spec" constrainedElement="ConnectableElement-end.1 ConnectableElement-end"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConnectableElement-end.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="ConnectableElement-end.1-result" name="result" visibility="public" type="ConnectorEnd" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ConnectableElement-end.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ConnectableElement-end.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ConnectableElementTemplateParameter" name="ConnectableElementTemplateParameter"> |
| <ownedComment xmi:id="ConnectableElementTemplateParameter-_ownedComment.0" annotatedElement="ConnectableElementTemplateParameter"> |
| <body>A connectable element template parameter exposes a connectable element as a formal parameter for a template.</body> |
| </ownedComment> |
| <generalization xmi:id="ConnectableElementTemplateParameter-_generalization.0" general="TemplateParameter"/> |
| <ownedAttribute xmi:id="ConnectableElementTemplateParameter-parameteredElement" name="parameteredElement" visibility="public" type="ConnectableElement" redefinedProperty="TemplateParameter-parameteredElement" association="A_connectableElement_templateParameter_parameteredElement"> |
| <ownedComment xmi:id="ConnectableElementTemplateParameter-parameteredElement-_ownedComment.0" annotatedElement="ConnectableElementTemplateParameter-parameteredElement"> |
| <body>The ConnectableElement for this template parameter.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ConnectionPointReference" name="ConnectionPointReference"> |
| <ownedComment xmi:id="ConnectionPointReference-_ownedComment.0" annotatedElement="ConnectionPointReference"> |
| <body>A connection point reference represents a usage (as part of a submachine state) of an entry/exit point defined in the statemachine reference by the submachine state.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ConnectionPointReference-entry_pseudostates" name="entry_pseudostates" constrainedElement="ConnectionPointReference"> |
| <ownedComment xmi:id="ConnectionPointReference-entry_pseudostates-_ownedComment.0" annotatedElement="ConnectionPointReference-entry_pseudostates"> |
| <body>The entry Pseudostates must be Pseudostates with kind entryPoint.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConnectionPointReference-entry_pseudostates-_specification"> |
| <language>OCL</language> |
| <body>entry->notEmpty() implies entry->forAll(e | e.kind = #entryPoint)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ConnectionPointReference-exit_pseudostates" name="exit_pseudostates" constrainedElement="ConnectionPointReference"> |
| <ownedComment xmi:id="ConnectionPointReference-exit_pseudostates-_ownedComment.0" annotatedElement="ConnectionPointReference-exit_pseudostates"> |
| <body>The exit Pseudostates must be Pseudostates with kind exitPoint.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConnectionPointReference-exit_pseudostates-_specification"> |
| <language>OCL</language> |
| <body>exit->notEmpty() implies exit->forAll(e | e.kind = #exitPoint)</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ConnectionPointReference-_generalization.0" general="Vertex"/> |
| <ownedAttribute xmi:id="ConnectionPointReference-entry" name="entry" visibility="public" type="Pseudostate" association="A_entry_connectionPointReference"> |
| <ownedComment xmi:id="ConnectionPointReference-entry-_ownedComment.0" annotatedElement="ConnectionPointReference-entry"> |
| <body>The entryPoint kind pseudo states corresponding to this connection point.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ConnectionPointReference-entry-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ConnectionPointReference-entry-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ConnectionPointReference-exit" name="exit" visibility="public" type="Pseudostate" association="A_exit_connectionPointReference"> |
| <ownedComment xmi:id="ConnectionPointReference-exit-_ownedComment.0" annotatedElement="ConnectionPointReference-exit"> |
| <body>The exitPoints kind pseudo states corresponding to this connection point.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ConnectionPointReference-exit-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ConnectionPointReference-exit-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ConnectionPointReference-state" name="state" visibility="public" type="State" subsettedProperty="NamedElement-namespace" association="A_connection_state"> |
| <ownedComment xmi:id="ConnectionPointReference-state-_ownedComment.0" annotatedElement="ConnectionPointReference-state"> |
| <body>The State in which the connection point refreshens are defined.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ConnectionPointReference-state-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Connector" name="Connector"> |
| <ownedComment xmi:id="Connector-_ownedComment.0" annotatedElement="Connector"> |
| <body>A delegation connector is a connector that links the external contract of a component (as specified by its ports) to the realization of that behavior. It represents the forwarding of events (operation requests and events): a signal that arrives at a port that has a delegation connector to one or more parts or ports on parts will be passed on to those targets for handling. An assembly connector is a connector between two or more parts or ports on parts that defines that one or more parts provide the services that other parts use.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Connector-_ownedComment.1" annotatedElement="Connector"> |
| <body>Specifies a link that enables communication between two or more instances. This link may be an instance of an association, or it may represent the possibility of the instances being able to communicate because their identities are known by virtue of being passed in as parameters, held in variables or slots, or because the communicating instances are the same instance. The link may be realized by something as simple as a pointer or by something as complex as a network connection. In contrast to associations, which specify links between any instance of the associated classifiers, connectors specify links between instances playing the connected parts only.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Connector-compatible" name="compatible" constrainedElement="Connector"> |
| <ownedComment xmi:id="Connector-compatible-_ownedComment.0" annotatedElement="Connector-compatible"> |
| <body>The connectable elements attached to the ends of a connector must be compatible.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Connector-compatible-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Connector-roles" name="roles" constrainedElement="Connector"> |
| <ownedComment xmi:id="Connector-roles-_ownedComment.0" annotatedElement="Connector-roles"> |
| <body>The ConnectableElements attached as roles to each ConnectorEnd owned by a Connector must be roles of the Classifier that owned the Connector, or they must be ports of such roles.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Connector-roles-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Connector-between_interfaces_ports" name="between_interfaces_ports" constrainedElement="Connector"> |
| <ownedComment xmi:id="Connector-between_interfaces_ports-_ownedComment.0" annotatedElement="Connector-between_interfaces_ports"> |
| <body>Each feature of each of the required interfaces of each Port or Part at the end of a connector must have at least one compatible feature among the features of the provided interfaces of Ports or Parts at the other ends, where the required set of (interface) features of a delegating port from the context of the delegating connector is the set of features that exist in the port's provided interfaces, and the provided set of (interface) features of a delegating port from the context of the delegating connector is the set of features that exist in the port's required interfaces.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Connector-between_interfaces_ports-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Connector-types" name="types" constrainedElement="Connector"> |
| <ownedComment xmi:id="Connector-types-_ownedComment.0" annotatedElement="Connector-types"> |
| <body>The types of the connectable elements that the ends of a connector are attached to must conform to the types of the association ends of the association that types the connector, if any.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Connector-types-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Connector-_generalization.0" general="Feature"/> |
| <ownedAttribute xmi:id="Connector-contract" name="contract" visibility="public" type="Behavior" association="A_contract_connector"> |
| <ownedComment xmi:id="Connector-contract-_ownedComment.0" annotatedElement="Connector-contract"> |
| <body>The set of Behaviors that specify the valid interaction patterns across the connector.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Connector-contract-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Connector-contract-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Connector-end" name="end" visibility="public" type="ConnectorEnd" isOrdered="true" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_end_connector"> |
| <ownedComment xmi:id="Connector-end-_ownedComment.0" annotatedElement="Connector-end"> |
| <body>A connector consists of at least two connector ends, each representing the participation of instances of the classifiers typing the connectable elements attached to this end. The set of connector ends is ordered.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Connector-end-_lowerValue" value="2"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Connector-end-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Connector-kind" name="kind" visibility="public" type="ConnectorKind" isReadOnly="true" isDerived="true"> |
| <ownedComment xmi:id="Connector-kind-_ownedComment.0" annotatedElement="Connector-kind"> |
| <body>Indicates the kind of connector. This is derived: a connector with one or more ends connected to a Port which is not on a Part and which is not a behavior port is a delegation; otherwise it is an assembly.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Connector-redefinedConnector" name="redefinedConnector" visibility="public" type="Connector" subsettedProperty="RedefinableElement-redefinedElement" association="A_redefinedConnector_connector"> |
| <ownedComment xmi:id="Connector-redefinedConnector-_ownedComment.0" annotatedElement="Connector-redefinedConnector"> |
| <body>A connector may be redefined when its containing classifier is specialized. The redefining connector may have a type that specializes the type of the redefined connector. The types of the connector ends of the redefining connector may specialize the types of the connector ends of the redefined connector. The properties of the connector ends of the redefining connector may be replaced.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Connector-redefinedConnector-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Connector-redefinedConnector-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Connector-type" name="type" visibility="public" type="Association" association="A_type_connector"> |
| <ownedComment xmi:id="Connector-type-_ownedComment.0" annotatedElement="Connector-type"> |
| <body>An optional association that specifies the link corresponding to this connector.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Connector-type-_lowerValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Connector-kind.1" name="kind" visibility="public" bodyCondition="Connector-kind.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Connector-kind.1-_ownedComment.0" annotatedElement="Connector-kind.1"> |
| <body>Missing derivation for Connector::/kind : ConnectorKind</body> |
| </ownedComment> |
| <ownedRule xmi:id="Connector-kind.1-spec" name="spec" constrainedElement="Connector-kind.1 Connector-kind"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Connector-kind.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = |
| if end->exists( |
| role.oclIsKindOf(Port) |
| and partWithPort->isEmpty() |
| and not role.oclAsType(Port).isBehavior) |
| then ConnectorKind::delegation |
| else ConnectorKind::assembly |
| endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Connector-kind.1-result" name="result" visibility="public" type="ConnectorKind" direction="return"/> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ConnectorEnd" name="ConnectorEnd"> |
| <ownedComment xmi:id="ConnectorEnd-_ownedComment.0" annotatedElement="ConnectorEnd"> |
| <body>A connector end is an endpoint of a connector, which attaches the connector to a connectable element. Each connector end is part of one connector.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ConnectorEnd-role_and_part_with_port" name="role_and_part_with_port" constrainedElement="ConnectorEnd"> |
| <ownedComment xmi:id="ConnectorEnd-role_and_part_with_port-_ownedComment.0" annotatedElement="ConnectorEnd-role_and_part_with_port"> |
| <body>If a connector end references a partWithPort, then the role must be a port that is defined by the type of the partWithPort.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConnectorEnd-role_and_part_with_port-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ConnectorEnd-self_part_with_port" name="self_part_with_port" constrainedElement="ConnectorEnd"> |
| <ownedComment xmi:id="ConnectorEnd-self_part_with_port-_ownedComment.0" annotatedElement="ConnectorEnd-self_part_with_port"> |
| <body>The property held in self.partWithPort must not be a Port.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConnectorEnd-self_part_with_port-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ConnectorEnd-multiplicity" name="multiplicity" constrainedElement="ConnectorEnd"> |
| <ownedComment xmi:id="ConnectorEnd-multiplicity-_ownedComment.0" annotatedElement="ConnectorEnd-multiplicity"> |
| <body>The multiplicity of the connector end may not be more general than the multiplicity of the association typing the owning connector.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConnectorEnd-multiplicity-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ConnectorEnd-part_with_port_empty" name="part_with_port_empty" constrainedElement="ConnectorEnd"> |
| <ownedComment xmi:id="ConnectorEnd-part_with_port_empty-_ownedComment.0" annotatedElement="ConnectorEnd-part_with_port_empty"> |
| <body>If a connector end is attached to a port of the containing classifier, partWithPort will be empty.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConnectorEnd-part_with_port_empty-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ConnectorEnd-_generalization.0" general="MultiplicityElement"/> |
| <ownedAttribute xmi:id="ConnectorEnd-definingEnd" name="definingEnd" visibility="public" type="Property" isReadOnly="true" isDerived="true" association="A_definingEnd_connectorEnd"> |
| <ownedComment xmi:id="ConnectorEnd-definingEnd-_ownedComment.0" annotatedElement="ConnectorEnd-definingEnd"> |
| <body>A derived association referencing the corresponding association end on the association which types the connector owing this connector end. This association is derived by selecting the association end at the same place in the ordering of association ends as this connector end.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ConnectorEnd-definingEnd-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ConnectorEnd-partWithPort" name="partWithPort" visibility="public" type="Property" association="A_partWithPort_connectorEnd"> |
| <ownedComment xmi:id="ConnectorEnd-partWithPort-_ownedComment.0" annotatedElement="ConnectorEnd-partWithPort"> |
| <body>Indicates the role of the internal structure of a classifier with the port to which the connector end is attached.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ConnectorEnd-partWithPort-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ConnectorEnd-role" name="role" visibility="public" type="ConnectableElement" association="A_end_role"> |
| <ownedComment xmi:id="ConnectorEnd-role-_ownedComment.0" annotatedElement="ConnectorEnd-role"> |
| <body>The connectable element attached at this connector end. When an instance of the containing classifier is created, a link may (depending on the multiplicities) be created to an instance of the classifier that types this connectable element.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedOperation xmi:id="ConnectorEnd-definingEnd.1" name="definingEnd" visibility="public" bodyCondition="ConnectorEnd-definingEnd.1-spec" isQuery="true"> |
| <ownedComment xmi:id="ConnectorEnd-definingEnd.1-_ownedComment.0" annotatedElement="ConnectorEnd-definingEnd.1"> |
| <body>Missing derivation for ConnectorEnd::/definingEnd : Property</body> |
| </ownedComment> |
| <ownedRule xmi:id="ConnectorEnd-definingEnd.1-spec" name="spec" constrainedElement="ConnectorEnd-definingEnd.1 ConnectorEnd-definingEnd"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConnectorEnd-definingEnd.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="ConnectorEnd-definingEnd.1-result" name="result" visibility="public" type="Property" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ConnectorEnd-definingEnd.1-result-_lowerValue"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ConsiderIgnoreFragment" name="ConsiderIgnoreFragment"> |
| <ownedComment xmi:id="ConsiderIgnoreFragment-_ownedComment.0" annotatedElement="ConsiderIgnoreFragment"> |
| <body>A consider ignore fragment is a kind of combined fragment that is used for the consider and ignore cases, which require lists of pertinent messages to be specified.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ConsiderIgnoreFragment-type" name="type" constrainedElement="ConsiderIgnoreFragment"> |
| <ownedComment xmi:id="ConsiderIgnoreFragment-type-_ownedComment.0" annotatedElement="ConsiderIgnoreFragment-type"> |
| <body>The NamedElements must be of a type of element that identifies a message (e.g., an Operation, Reception, or a Signal).</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConsiderIgnoreFragment-type-_specification"> |
| <language>OCL</language> |
| <body>message->forAll(m | m.oclIsKindOf(Operation) or m.oclIsKindOf(Reception) or m.oclIsKindOf(Signal))</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ConsiderIgnoreFragment-consider_or_ignore" name="consider_or_ignore" constrainedElement="ConsiderIgnoreFragment"> |
| <ownedComment xmi:id="ConsiderIgnoreFragment-consider_or_ignore-_ownedComment.0" annotatedElement="ConsiderIgnoreFragment-consider_or_ignore"> |
| <body>The interaction operator of a ConsiderIgnoreFragment must be either 'consider' or 'ignore'.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ConsiderIgnoreFragment-consider_or_ignore-_specification"> |
| <language>OCL</language> |
| <body>(interactionOperator = #consider) or (interactionOperator = #ignore)</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ConsiderIgnoreFragment-_generalization.0" general="CombinedFragment"/> |
| <ownedAttribute xmi:id="ConsiderIgnoreFragment-message" name="message" visibility="public" type="NamedElement" association="A_message_considerIgnoreFragment"> |
| <ownedComment xmi:id="ConsiderIgnoreFragment-message-_ownedComment.0" annotatedElement="ConsiderIgnoreFragment-message"> |
| <body>The set of messages that apply to this fragment</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ConsiderIgnoreFragment-message-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ConsiderIgnoreFragment-message-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Constraint" name="Constraint"> |
| <ownedComment xmi:id="Constraint-_ownedComment.0" annotatedElement="Constraint"> |
| <body>A constraint is a condition or restriction expressed in natural language text or in a machine readable language for the purpose of declaring some of the semantics of an element.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Constraint-not_apply_to_self" name="not_apply_to_self" constrainedElement="Constraint"> |
| <ownedComment xmi:id="Constraint-not_apply_to_self-_ownedComment.0" annotatedElement="Constraint-not_apply_to_self"> |
| <body>A constraint cannot be applied to itself.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Constraint-not_apply_to_self-_specification"> |
| <language>OCL</language> |
| <body>not constrainedElement->includes(self)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Constraint-no_side_effects" name="no_side_effects" constrainedElement="Constraint"> |
| <ownedComment xmi:id="Constraint-no_side_effects-_ownedComment.0" annotatedElement="Constraint-no_side_effects"> |
| <body>Evaluating the value specification for a constraint must not have side effects.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Constraint-no_side_effects-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Constraint-boolean_value" name="boolean_value" constrainedElement="Constraint"> |
| <ownedComment xmi:id="Constraint-boolean_value-_ownedComment.0" annotatedElement="Constraint-boolean_value"> |
| <body>The value specification for a constraint must evaluate to a Boolean value.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Constraint-boolean_value-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Constraint-value_specification_boolean" name="value_specification_boolean" constrainedElement="Constraint"> |
| <ownedComment xmi:id="Constraint-value_specification_boolean-_ownedComment.0" annotatedElement="Constraint-value_specification_boolean"> |
| <body>The value specification for a constraint must evaluate to a Boolean value.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Constraint-value_specification_boolean-_specification"> |
| <language>OCL</language> |
| <body>self.specification().booleanValue().isOclKindOf(Boolean)</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Constraint-_generalization.0" general="PackageableElement"/> |
| <ownedAttribute xmi:id="Constraint-constrainedElement" name="constrainedElement" visibility="public" type="Element" isOrdered="true" association="A_constrainedElement_constraint"> |
| <ownedComment xmi:id="Constraint-constrainedElement-_ownedComment.0" annotatedElement="Constraint-constrainedElement"> |
| <body>The ordered set of Elements referenced by this Constraint.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Constraint-constrainedElement-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Constraint-constrainedElement-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Constraint-context" name="context" visibility="public" type="Namespace" subsettedProperty="NamedElement-namespace" association="A_ownedRule_context"> |
| <ownedComment xmi:id="Constraint-context-_ownedComment.0" annotatedElement="Constraint-context"> |
| <body>Specifies the namespace that owns the NamedElement.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Constraint-context-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Constraint-specification" name="specification" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_specification_owningConstraint"> |
| <ownedComment xmi:id="Constraint-specification-_ownedComment.0" annotatedElement="Constraint-specification"> |
| <body>A condition that must be true when evaluated in order for the constraint to be satisfied.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Continuation" name="Continuation"> |
| <ownedComment xmi:id="Continuation-_ownedComment.0" annotatedElement="Continuation"> |
| <body>A continuation is a syntactic way to define continuations of different branches of an alternative combined fragment. Continuations is intuitively similar to labels representing intermediate points in a flow of control.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Continuation-same_name" name="same_name" constrainedElement="Continuation"> |
| <ownedComment xmi:id="Continuation-same_name-_ownedComment.0" annotatedElement="Continuation-same_name"> |
| <body>Continuations with the same name may only cover the same set of Lifelines (within one Classifier).</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Continuation-same_name-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Continuation-first_or_last_interaction_fragment" name="first_or_last_interaction_fragment" constrainedElement="Continuation"> |
| <ownedComment xmi:id="Continuation-first_or_last_interaction_fragment-_ownedComment.0" annotatedElement="Continuation-first_or_last_interaction_fragment"> |
| <body>Continuations always occur as the very first InteractionFragment or the very last InteractionFragment of the enclosing InteractionFragment.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Continuation-first_or_last_interaction_fragment-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Continuation-global" name="global" constrainedElement="Continuation"> |
| <ownedComment xmi:id="Continuation-global-_ownedComment.0" annotatedElement="Continuation-global"> |
| <body>Continuations are always global in the enclosing InteractionFragment e.g. it always covers all Lifelines covered by the enclosing InteractionFragment.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Continuation-global-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Continuation-_generalization.0" general="InteractionFragment"/> |
| <ownedAttribute xmi:id="Continuation-setting" name="setting" visibility="public"> |
| <ownedComment xmi:id="Continuation-setting-_ownedComment.0" annotatedElement="Continuation-setting"> |
| <body>True: when the Continuation is at the end of the enclosing InteractionFragment and False when it is in the beginning.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Continuation-setting-_defaultValue" value="true"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ControlFlow" name="ControlFlow"> |
| <ownedComment xmi:id="ControlFlow-_ownedComment.0" annotatedElement="ControlFlow"> |
| <body>A control flow is an edge that starts an activity node after the previous one is finished.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ControlFlow-object_nodes" name="object_nodes" constrainedElement="ControlFlow"> |
| <ownedComment xmi:id="ControlFlow-object_nodes-_ownedComment.0" annotatedElement="ControlFlow-object_nodes"> |
| <body>Control flows may not have object nodes at either end, except for object nodes with control type.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ControlFlow-object_nodes-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ControlFlow-_generalization.0" general="ActivityEdge"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ControlNode" name="ControlNode" isAbstract="true"> |
| <ownedComment xmi:id="ControlNode-_ownedComment.0" annotatedElement="ControlNode"> |
| <body>A control node is an abstract activity node that coordinates flows in an activity.</body> |
| </ownedComment> |
| <generalization xmi:id="ControlNode-_generalization.0" general="ActivityNode"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="CreateLinkAction" name="CreateLinkAction"> |
| <ownedComment xmi:id="CreateLinkAction-_ownedComment.0" annotatedElement="CreateLinkAction"> |
| <body>A create link action is a write link action for creating links.</body> |
| </ownedComment> |
| <ownedRule xmi:id="CreateLinkAction-association_not_abstract" name="association_not_abstract" constrainedElement="CreateLinkAction"> |
| <ownedComment xmi:id="CreateLinkAction-association_not_abstract-_ownedComment.0" annotatedElement="CreateLinkAction-association_not_abstract"> |
| <body>The association cannot be an abstract classifier.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CreateLinkAction-association_not_abstract-_specification"> |
| <language>OCL</language> |
| <body>self.association().isAbstract = #false</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="CreateLinkAction-_generalization.0" general="WriteLinkAction"/> |
| <ownedAttribute xmi:id="CreateLinkAction-endData" name="endData" visibility="public" type="LinkEndCreationData" aggregation="composite" redefinedProperty="LinkAction-endData" association="A_endData_createLinkAction"> |
| <ownedComment xmi:id="CreateLinkAction-endData-_ownedComment.0" annotatedElement="CreateLinkAction-endData"> |
| <body>Specifies ends of association and inputs.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="CreateLinkAction-endData-_lowerValue" value="2"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="CreateLinkAction-endData-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="CreateLinkObjectAction" name="CreateLinkObjectAction"> |
| <ownedComment xmi:id="CreateLinkObjectAction-_ownedComment.0" annotatedElement="CreateLinkObjectAction"> |
| <body>A create link object action creates a link object.</body> |
| </ownedComment> |
| <ownedRule xmi:id="CreateLinkObjectAction-association_class" name="association_class" constrainedElement="CreateLinkObjectAction"> |
| <ownedComment xmi:id="CreateLinkObjectAction-association_class-_ownedComment.0" annotatedElement="CreateLinkObjectAction-association_class"> |
| <body>The association must be an association class.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CreateLinkObjectAction-association_class-_specification"> |
| <language>OCL</language> |
| <body>self.association().oclIsKindOf(Class)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CreateLinkObjectAction-type_of_result" name="type_of_result" constrainedElement="CreateLinkObjectAction"> |
| <ownedComment xmi:id="CreateLinkObjectAction-type_of_result-_ownedComment.0" annotatedElement="CreateLinkObjectAction-type_of_result"> |
| <body>The type of the result pin must be the same as the association of the action.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CreateLinkObjectAction-type_of_result-_specification"> |
| <language>OCL</language> |
| <body>self.result.type = self.association()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CreateLinkObjectAction-multiplicity" name="multiplicity" constrainedElement="CreateLinkObjectAction"> |
| <ownedComment xmi:id="CreateLinkObjectAction-multiplicity-_ownedComment.0" annotatedElement="CreateLinkObjectAction-multiplicity"> |
| <body>The multiplicity of the output pin is 1..1.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CreateLinkObjectAction-multiplicity-_specification"> |
| <language>OCL</language> |
| <body>self.result.multiplicity.is(1,1)</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="CreateLinkObjectAction-_generalization.0" general="CreateLinkAction"/> |
| <ownedAttribute xmi:id="CreateLinkObjectAction-result" name="result" visibility="public" type="OutputPin" aggregation="composite" subsettedProperty="Action-output" association="A_result_createLinkObjectAction"> |
| <ownedComment xmi:id="CreateLinkObjectAction-result-_ownedComment.0" annotatedElement="CreateLinkObjectAction-result"> |
| <body>Gives the output pin on which the result is put.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="CreateObjectAction" name="CreateObjectAction"> |
| <ownedComment xmi:id="CreateObjectAction-_ownedComment.0" annotatedElement="CreateObjectAction"> |
| <body>A create object action is an action that creates an object that conforms to a statically specified classifier and puts it on an output pin at runtime.</body> |
| </ownedComment> |
| <ownedRule xmi:id="CreateObjectAction-classifier_not_association_class" name="classifier_not_association_class" constrainedElement="CreateObjectAction"> |
| <ownedComment xmi:id="CreateObjectAction-classifier_not_association_class-_ownedComment.0" annotatedElement="CreateObjectAction-classifier_not_association_class"> |
| <body>The classifier cannot be an association class</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CreateObjectAction-classifier_not_association_class-_specification"> |
| <language>OCL</language> |
| <body>not self.classifier.oclIsKindOf(AssociationClass)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CreateObjectAction-classifier_not_abstract" name="classifier_not_abstract" constrainedElement="CreateObjectAction"> |
| <ownedComment xmi:id="CreateObjectAction-classifier_not_abstract-_ownedComment.0" annotatedElement="CreateObjectAction-classifier_not_abstract"> |
| <body>The classifier cannot be abstract.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CreateObjectAction-classifier_not_abstract-_specification"> |
| <language>OCL</language> |
| <body>not (self.classifier.isAbstract = #true)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CreateObjectAction-same_type" name="same_type" constrainedElement="CreateObjectAction"> |
| <ownedComment xmi:id="CreateObjectAction-same_type-_ownedComment.0" annotatedElement="CreateObjectAction-same_type"> |
| <body>The type of the result pin must be the same as the classifier of the action.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CreateObjectAction-same_type-_specification"> |
| <language>OCL</language> |
| <body>self.result.type = self.classifier</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="CreateObjectAction-multiplicity" name="multiplicity" constrainedElement="CreateObjectAction"> |
| <ownedComment xmi:id="CreateObjectAction-multiplicity-_ownedComment.0" annotatedElement="CreateObjectAction-multiplicity"> |
| <body>The multiplicity of the output pin is 1..1.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="CreateObjectAction-multiplicity-_specification"> |
| <language>OCL</language> |
| <body>self.result.multiplicity.is(1,1)</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="CreateObjectAction-_generalization.0" general="Action"/> |
| <ownedAttribute xmi:id="CreateObjectAction-classifier" name="classifier" visibility="public" type="Classifier" association="A_classifier_createObjectAction"> |
| <ownedComment xmi:id="CreateObjectAction-classifier-_ownedComment.0" annotatedElement="CreateObjectAction-classifier"> |
| <body>Classifier to be instantiated.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="CreateObjectAction-result" name="result" visibility="public" type="OutputPin" aggregation="composite" subsettedProperty="Action-output" association="A_result_createObjectAction"> |
| <ownedComment xmi:id="CreateObjectAction-result-_ownedComment.0" annotatedElement="CreateObjectAction-result"> |
| <body>Gives the output pin on which the result is put.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="DataStoreNode" name="DataStoreNode"> |
| <ownedComment xmi:id="DataStoreNode-_ownedComment.0" annotatedElement="DataStoreNode"> |
| <body>A data store node is a central buffer node for non-transient information.</body> |
| </ownedComment> |
| <generalization xmi:id="DataStoreNode-_generalization.0" general="CentralBufferNode"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="DataType" name="DataType"> |
| <ownedComment xmi:id="DataType-_ownedComment.0" annotatedElement="DataType"> |
| <body>A data type is a type whose instances are identified only by their value. A data type may contain attributes to support the modeling of structured data types.</body> |
| </ownedComment> |
| <generalization xmi:id="DataType-_generalization.0" general="Classifier"/> |
| <ownedAttribute xmi:id="DataType-ownedAttribute" name="ownedAttribute" visibility="public" type="Property" isOrdered="true" aggregation="composite" subsettedProperty="Namespace-ownedMember Classifier-attribute" association="A_ownedAttribute_datatype"> |
| <ownedComment xmi:id="DataType-ownedAttribute-_ownedComment.0" annotatedElement="DataType-ownedAttribute"> |
| <body>The Attributes owned by the DataType.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DataType-ownedAttribute-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="DataType-ownedAttribute-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="DataType-ownedOperation" name="ownedOperation" visibility="public" type="Operation" isOrdered="true" aggregation="composite" subsettedProperty="Classifier-feature A_redefinitionContext_redefinableElement-redefinableElement Namespace-ownedMember" association="A_ownedOperation_datatype"> |
| <ownedComment xmi:id="DataType-ownedOperation-_ownedComment.0" annotatedElement="DataType-ownedOperation"> |
| <body>The Operations owned by the DataType.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DataType-ownedOperation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="DataType-ownedOperation-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="DataType-inherit" name="inherit" visibility="public" bodyCondition="DataType-inherit-spec" isQuery="true" redefinedOperation="Classifier-inherit"> |
| <ownedComment xmi:id="DataType-inherit-_ownedComment.0" annotatedElement="DataType-inherit"> |
| <body>The inherit operation is overridden to exclude redefined properties.</body> |
| </ownedComment> |
| <ownedRule xmi:id="DataType-inherit-spec" name="spec" constrainedElement="DataType-inherit"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DataType-inherit-spec-_specification"> |
| <language>OCL</language> |
| <body>result = inhs->excluding(inh | ownedMember->select(oclIsKindOf(RedefinableElement))->select(redefinedElement->includes(inh)))</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="DataType-inherit-result" name="result" visibility="public" type="NamedElement" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DataType-inherit-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="DataType-inherit-result-_upperValue" value="*"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="DataType-inherit-inhs" name="inhs" visibility="public" type="NamedElement"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DataType-inherit-inhs-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="DataType-inherit-inhs-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="DecisionNode" name="DecisionNode"> |
| <ownedComment xmi:id="DecisionNode-_ownedComment.0" annotatedElement="DecisionNode"> |
| <body>A decision node is a control node that chooses between outgoing flows.</body> |
| </ownedComment> |
| <ownedRule xmi:id="DecisionNode-parameters" name="parameters" constrainedElement="DecisionNode"> |
| <ownedComment xmi:id="DecisionNode-parameters-_ownedComment.0" annotatedElement="DecisionNode-parameters"> |
| <body>A decision input behavior has no output parameters, no in-out parameters and one return parameter.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DecisionNode-parameters-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="DecisionNode-incoming_object_one_input_parameter" name="incoming_object_one_input_parameter" constrainedElement="DecisionNode"> |
| <ownedComment xmi:id="DecisionNode-incoming_object_one_input_parameter-_ownedComment.0" annotatedElement="DecisionNode-incoming_object_one_input_parameter"> |
| <body>If the decision node has no decision input flow and an incoming object flow, then a decision input behavior has one input parameter whose type is the same as or a supertype of the type of object tokens offered on the incoming edge.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DecisionNode-incoming_object_one_input_parameter-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="DecisionNode-incoming_outgoing_edges" name="incoming_outgoing_edges" constrainedElement="DecisionNode"> |
| <ownedComment xmi:id="DecisionNode-incoming_outgoing_edges-_ownedComment.0" annotatedElement="DecisionNode-incoming_outgoing_edges"> |
| <body>A decision node has one or two incoming edges and at least one outgoing edge.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DecisionNode-incoming_outgoing_edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="DecisionNode-incoming_control_one_input_parameter" name="incoming_control_one_input_parameter" constrainedElement="DecisionNode"> |
| <ownedComment xmi:id="DecisionNode-incoming_control_one_input_parameter-_ownedComment.0" annotatedElement="DecisionNode-incoming_control_one_input_parameter"> |
| <body>If the decision node has a decision input flow and an incoming control flow, then a decision input behavior has one input parameter whose type is the same as or a supertype of the type of object tokens offered on the decision input flow.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DecisionNode-incoming_control_one_input_parameter-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="DecisionNode-two_input_parameters" name="two_input_parameters" constrainedElement="DecisionNode"> |
| <ownedComment xmi:id="DecisionNode-two_input_parameters-_ownedComment.0" annotatedElement="DecisionNode-two_input_parameters"> |
| <body>If the decision node has a decision input flow and an second incoming object flow, then a decision input behavior has two input parameters, the first of which has a type that is the same as or a supertype of the type of the type of object tokens offered on the nondecision input flow and the second of which has a type that is the same as or a supertype of the type of object tokens offered on the decision input flow.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DecisionNode-two_input_parameters-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="DecisionNode-decision_input_flow_incoming" name="decision_input_flow_incoming" constrainedElement="DecisionNode"> |
| <ownedComment xmi:id="DecisionNode-decision_input_flow_incoming-_ownedComment.0" annotatedElement="DecisionNode-decision_input_flow_incoming"> |
| <body>The decisionInputFlow of a decision node must be an incoming edge of the decision node.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DecisionNode-decision_input_flow_incoming-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="DecisionNode-zero_input_parameters" name="zero_input_parameters" constrainedElement="DecisionNode"> |
| <ownedComment xmi:id="DecisionNode-zero_input_parameters-_ownedComment.0" annotatedElement="DecisionNode-zero_input_parameters"> |
| <body>If the decision node has no decision input flow and an incoming control flow, then a decision input behavior has zero input parameters.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DecisionNode-zero_input_parameters-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="DecisionNode-edges" name="edges" constrainedElement="DecisionNode"> |
| <ownedComment xmi:id="DecisionNode-edges-_ownedComment.0" annotatedElement="DecisionNode-edges"> |
| <body>The edges coming into and out of a decision node, other than the decision input flow (if any), must be either all object flows or all control flows.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DecisionNode-edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="DecisionNode-_generalization.0" general="ControlNode"/> |
| <ownedAttribute xmi:id="DecisionNode-decisionInput" name="decisionInput" visibility="public" type="Behavior" association="A_decisionInput_decisionNode"> |
| <ownedComment xmi:id="DecisionNode-decisionInput-_ownedComment.0" annotatedElement="DecisionNode-decisionInput"> |
| <body>Provides input to guard specifications on edges outgoing from the decision node.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DecisionNode-decisionInput-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="DecisionNode-decisionInputFlow" name="decisionInputFlow" visibility="public" type="ObjectFlow" association="A_decisionInputFlow_decisionNode"> |
| <ownedComment xmi:id="DecisionNode-decisionInputFlow-_ownedComment.0" annotatedElement="DecisionNode-decisionInputFlow"> |
| <body>An additional edge incoming to the decision node that provides a decision input value.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DecisionNode-decisionInputFlow-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Dependency" name="Dependency"> |
| <ownedComment xmi:id="Dependency-_ownedComment.0" annotatedElement="Dependency"> |
| <body>A dependency is a relationship that signifies that a single or a set of model elements requires other model elements for their specification or implementation. This means that the complete semantics of the depending elements is either semantically or structurally dependent on the definition of the supplier element(s).</body> |
| </ownedComment> |
| <generalization xmi:id="Dependency-_generalization.0" general="PackageableElement"/> |
| <generalization xmi:id="Dependency-_generalization.1" general="DirectedRelationship"/> |
| <ownedAttribute xmi:id="Dependency-client" name="client" visibility="public" type="NamedElement" subsettedProperty="DirectedRelationship-source" association="A_clientDependency_client"> |
| <ownedComment xmi:id="Dependency-client-_ownedComment.0" annotatedElement="Dependency-client"> |
| <body>The element(s) dependent on the supplier element(s). In some cases (such as a Trace Abstraction) the assignment of direction (that is, the designation of the client element) is at the discretion of the modeler, and is a stipulation.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Dependency-client-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Dependency-supplier" name="supplier" visibility="public" type="NamedElement" subsettedProperty="DirectedRelationship-target" association="A_supplier_supplierDependency"> |
| <ownedComment xmi:id="Dependency-supplier-_ownedComment.0" annotatedElement="Dependency-supplier"> |
| <body>The element(s) independent of the client element(s), in the same respect and the same dependency relationship. In some directed dependency relationships (such as Refinement Abstractions), a common convention in the domain of class-based OO software is to put the more abstract element in this role. Despite this convention, users of UML may stipulate a sense of dependency suitable for their domain, which makes a more abstract element dependent on that which is more specific.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Dependency-supplier-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="DeployedArtifact" name="DeployedArtifact" isAbstract="true"> |
| <ownedComment xmi:id="DeployedArtifact-_ownedComment.0" annotatedElement="DeployedArtifact"> |
| <body>A deployed artifact is an artifact or artifact instance that has been deployed to a deployment target.</body> |
| </ownedComment> |
| <generalization xmi:id="DeployedArtifact-_generalization.0" general="NamedElement"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Deployment" name="Deployment"> |
| <ownedComment xmi:id="Deployment-_ownedComment.0" annotatedElement="Deployment"> |
| <body>A deployment is the allocation of an artifact or artifact instance to a deployment target.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Deployment-_ownedComment.1" annotatedElement="Deployment"> |
| <body>A component deployment is the deployment of one or more artifacts or artifact instances to a deployment target, optionally parameterized by a deployment specification. Examples are executables and configuration files.</body> |
| </ownedComment> |
| <generalization xmi:id="Deployment-_generalization.0" general="Dependency"/> |
| <ownedAttribute xmi:id="Deployment-configuration" name="configuration" visibility="public" type="DeploymentSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_configuration_deployment"> |
| <ownedComment xmi:id="Deployment-configuration-_ownedComment.0" annotatedElement="Deployment-configuration"> |
| <body>The specification of properties that parameterize the deployment and execution of one or more Artifacts.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Deployment-configuration-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Deployment-configuration-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Deployment-deployedArtifact" name="deployedArtifact" visibility="public" type="DeployedArtifact" subsettedProperty="Dependency-supplier" association="A_deployedArtifact_deployment"> |
| <ownedComment xmi:id="Deployment-deployedArtifact-_ownedComment.0" annotatedElement="Deployment-deployedArtifact"> |
| <body>The Artifacts that are deployed onto a Node. This association specializes the supplier association.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Deployment-deployedArtifact-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Deployment-deployedArtifact-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Deployment-location" name="location" visibility="public" type="DeploymentTarget" subsettedProperty="Element-owner Dependency-client" association="A_deployment_location"> |
| <ownedComment xmi:id="Deployment-location-_ownedComment.0" annotatedElement="Deployment-location"> |
| <body>The DeployedTarget which is the target of a Deployment.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="DeploymentSpecification" name="DeploymentSpecification"> |
| <ownedComment xmi:id="DeploymentSpecification-_ownedComment.0" annotatedElement="DeploymentSpecification"> |
| <body>A deployment specification specifies a set of properties that determine execution parameters of a component artifact that is deployed on a node. A deployment specification can be aimed at a specific type of container. An artifact that reifies or implements deployment specification properties is a deployment descriptor.</body> |
| </ownedComment> |
| <ownedRule xmi:id="DeploymentSpecification-deployed_elements" name="deployed_elements" constrainedElement="DeploymentSpecification"> |
| <ownedComment xmi:id="DeploymentSpecification-deployed_elements-_ownedComment.0" annotatedElement="DeploymentSpecification-deployed_elements"> |
| <body>The deployedElements of a DeploymentTarget that are involved in a Deployment that has an associated Deployment-Specification is a kind of Component (i.e. the configured components).</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DeploymentSpecification-deployed_elements-_specification"> |
| <language>OCL</language> |
| <body>self.deployment->forAll (d | d.location.deployedElements->forAll (de | |
| de.oclIsKindOf(Component)))</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="DeploymentSpecification-deployment_target" name="deployment_target" constrainedElement="DeploymentSpecification"> |
| <ownedComment xmi:id="DeploymentSpecification-deployment_target-_ownedComment.0" annotatedElement="DeploymentSpecification-deployment_target"> |
| <body>The DeploymentTarget of a DeploymentSpecification is a kind of ExecutionEnvironment.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DeploymentSpecification-deployment_target-_specification"> |
| <language>OCL</language> |
| <body>self.deployment->forAll (d | d.location.oclIsKindOf(ExecutionEnvironment))</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="DeploymentSpecification-_generalization.0" general="Artifact"/> |
| <ownedAttribute xmi:id="DeploymentSpecification-deployment" name="deployment" visibility="public" type="Deployment" subsettedProperty="Element-owner" association="A_configuration_deployment"> |
| <ownedComment xmi:id="DeploymentSpecification-deployment-_ownedComment.0" annotatedElement="DeploymentSpecification-deployment"> |
| <body>The deployment with which the DeploymentSpecification is associated.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DeploymentSpecification-deployment-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="DeploymentSpecification-deploymentLocation" name="deploymentLocation" visibility="public"> |
| <ownedComment xmi:id="DeploymentSpecification-deploymentLocation-_ownedComment.0" annotatedElement="DeploymentSpecification-deploymentLocation"> |
| <body>The location where an Artifact is deployed onto a Node. This is typically a 'directory' or 'memory address'.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DeploymentSpecification-deploymentLocation-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="DeploymentSpecification-executionLocation" name="executionLocation" visibility="public"> |
| <ownedComment xmi:id="DeploymentSpecification-executionLocation-_ownedComment.0" annotatedElement="DeploymentSpecification-executionLocation"> |
| <body>The location where a component Artifact executes. This may be a local or remote location.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DeploymentSpecification-executionLocation-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="DeploymentTarget" name="DeploymentTarget" isAbstract="true"> |
| <ownedComment xmi:id="DeploymentTarget-_ownedComment.0" annotatedElement="DeploymentTarget"> |
| <body>A deployment target is the location for a deployed artifact.</body> |
| </ownedComment> |
| <generalization xmi:id="DeploymentTarget-_generalization.0" general="NamedElement"/> |
| <ownedAttribute xmi:id="DeploymentTarget-deployedElement" name="deployedElement" visibility="public" type="PackageableElement" isReadOnly="true" isDerived="true" association="A_deployedElement_deploymentTarget"> |
| <ownedComment xmi:id="DeploymentTarget-deployedElement-_ownedComment.0" annotatedElement="DeploymentTarget-deployedElement"> |
| <body>The set of elements that are manifested in an Artifact that is involved in Deployment to a DeploymentTarget.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DeploymentTarget-deployedElement-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="DeploymentTarget-deployedElement-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="DeploymentTarget-deployment" name="deployment" visibility="public" type="Deployment" aggregation="composite" subsettedProperty="Element-ownedElement NamedElement-clientDependency" association="A_deployment_location"> |
| <ownedComment xmi:id="DeploymentTarget-deployment-_ownedComment.0" annotatedElement="DeploymentTarget-deployment"> |
| <body>The set of Deployments for a DeploymentTarget.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DeploymentTarget-deployment-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="DeploymentTarget-deployment-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="DeploymentTarget-deployedElement.1" name="deployedElement" visibility="public" bodyCondition="DeploymentTarget-deployedElement.1-spec" isQuery="true"> |
| <ownedComment xmi:id="DeploymentTarget-deployedElement.1-_ownedComment.0" annotatedElement="DeploymentTarget-deployedElement.1"> |
| <body>Missing derivation for DeploymentTarget::/deployedElement : PackageableElement</body> |
| </ownedComment> |
| <ownedRule xmi:id="DeploymentTarget-deployedElement.1-spec" name="spec" constrainedElement="DeploymentTarget-deployedElement.1 DeploymentTarget-deployedElement"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DeploymentTarget-deployedElement.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = ((self.deployment->collect(deployedArtifact))->collect(manifestation))->collect(utilizedElement)</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="DeploymentTarget-deployedElement.1-result" name="result" visibility="public" type="PackageableElement" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DeploymentTarget-deployedElement.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="DeploymentTarget-deployedElement.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="DestroyLinkAction" name="DestroyLinkAction"> |
| <ownedComment xmi:id="DestroyLinkAction-_ownedComment.0" annotatedElement="DestroyLinkAction"> |
| <body>A destroy link action is a write link action that destroys links and link objects.</body> |
| </ownedComment> |
| <generalization xmi:id="DestroyLinkAction-_generalization.0" general="WriteLinkAction"/> |
| <ownedAttribute xmi:id="DestroyLinkAction-endData" name="endData" visibility="public" type="LinkEndDestructionData" aggregation="composite" redefinedProperty="LinkAction-endData" association="A_endData_destroyLinkAction"> |
| <ownedComment xmi:id="DestroyLinkAction-endData-_ownedComment.0" annotatedElement="DestroyLinkAction-endData"> |
| <body>Specifies ends of association and inputs.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DestroyLinkAction-endData-_lowerValue" value="2"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="DestroyLinkAction-endData-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="DestroyObjectAction" name="DestroyObjectAction"> |
| <ownedComment xmi:id="DestroyObjectAction-_ownedComment.0" annotatedElement="DestroyObjectAction"> |
| <body>A destroy object action is an action that destroys objects.</body> |
| </ownedComment> |
| <ownedRule xmi:id="DestroyObjectAction-multiplicity" name="multiplicity" constrainedElement="DestroyObjectAction"> |
| <ownedComment xmi:id="DestroyObjectAction-multiplicity-_ownedComment.0" annotatedElement="DestroyObjectAction-multiplicity"> |
| <body>The multiplicity of the input pin is 1..1.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DestroyObjectAction-multiplicity-_specification"> |
| <language>OCL</language> |
| <body>self.target.multiplicity.is(1,1)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="DestroyObjectAction-no_type" name="no_type" constrainedElement="DestroyObjectAction"> |
| <ownedComment xmi:id="DestroyObjectAction-no_type-_ownedComment.0" annotatedElement="DestroyObjectAction-no_type"> |
| <body>The input pin has no type.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DestroyObjectAction-no_type-_specification"> |
| <language>OCL</language> |
| <body>self.target.type->size() = 0</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="DestroyObjectAction-_generalization.0" general="Action"/> |
| <ownedAttribute xmi:id="DestroyObjectAction-isDestroyLinks" name="isDestroyLinks" visibility="public"> |
| <ownedComment xmi:id="DestroyObjectAction-isDestroyLinks-_ownedComment.0" annotatedElement="DestroyObjectAction-isDestroyLinks"> |
| <body>Specifies whether links in which the object participates are destroyed along with the object.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="DestroyObjectAction-isDestroyLinks-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="DestroyObjectAction-isDestroyOwnedObjects" name="isDestroyOwnedObjects" visibility="public"> |
| <ownedComment xmi:id="DestroyObjectAction-isDestroyOwnedObjects-_ownedComment.0" annotatedElement="DestroyObjectAction-isDestroyOwnedObjects"> |
| <body>Specifies whether objects owned by the object are destroyed along with the object.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="DestroyObjectAction-isDestroyOwnedObjects-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="DestroyObjectAction-target" name="target" visibility="public" type="InputPin" aggregation="composite" subsettedProperty="Action-input" association="A_target_destroyObjectAction"> |
| <ownedComment xmi:id="DestroyObjectAction-target-_ownedComment.0" annotatedElement="DestroyObjectAction-target"> |
| <body>The input pin providing the object to be destroyed.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="DestructionOccurrenceSpecification" name="DestructionOccurrenceSpecification"> |
| <ownedComment xmi:id="DestructionOccurrenceSpecification-_ownedComment.0" annotatedElement="DestructionOccurrenceSpecification"> |
| <body>A destruction event models the destruction of an object.</body> |
| </ownedComment> |
| <ownedRule xmi:id="DestructionOccurrenceSpecification-no_occurrence_specifications_below" name="no_occurrence_specifications_below" constrainedElement="DestructionOccurrenceSpecification"> |
| <ownedComment xmi:id="DestructionOccurrenceSpecification-no_occurrence_specifications_below-_ownedComment.0" annotatedElement="DestructionOccurrenceSpecification-no_occurrence_specifications_below"> |
| <body>No other OccurrenceSpecifications on a given Lifeline in an InteractionOperand may appear below a DestructionOccurrenceSpecification.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DestructionOccurrenceSpecification-no_occurrence_specifications_below-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="DestructionOccurrenceSpecification-_generalization.0" general="MessageOccurrenceSpecification"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Device" name="Device"> |
| <ownedComment xmi:id="Device-_ownedComment.0" annotatedElement="Device"> |
| <body>A device is a physical computational resource with processing capability upon which artifacts may be deployed for execution. Devices may be complex (i.e., they may consist of other devices).</body> |
| </ownedComment> |
| <generalization xmi:id="Device-_generalization.0" general="Node"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="DirectedRelationship" name="DirectedRelationship" isAbstract="true"> |
| <ownedComment xmi:id="DirectedRelationship-_ownedComment.0" annotatedElement="DirectedRelationship"> |
| <body>A directed relationship represents a relationship between a collection of source model elements and a collection of target model elements.</body> |
| </ownedComment> |
| <generalization xmi:id="DirectedRelationship-_generalization.0" general="Relationship"/> |
| <ownedAttribute xmi:id="DirectedRelationship-source" name="source" visibility="public" type="Element" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="Relationship-relatedElement" association="A_source_directedRelationship"> |
| <ownedComment xmi:id="DirectedRelationship-source-_ownedComment.0" annotatedElement="DirectedRelationship-source"> |
| <body>Specifies the sources of the DirectedRelationship.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="DirectedRelationship-source-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="DirectedRelationship-target" name="target" visibility="public" type="Element" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="Relationship-relatedElement" association="A_target_directedRelationship"> |
| <ownedComment xmi:id="DirectedRelationship-target-_ownedComment.0" annotatedElement="DirectedRelationship-target"> |
| <body>Specifies the targets of the DirectedRelationship.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="DirectedRelationship-target-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Duration" name="Duration"> |
| <ownedComment xmi:id="Duration-_ownedComment.0" annotatedElement="Duration"> |
| <body>Duration defines a value specification that specifies the temporal distance between two time instants.</body> |
| </ownedComment> |
| <generalization xmi:id="Duration-_generalization.0" general="ValueSpecification"/> |
| <ownedAttribute xmi:id="Duration-expr" name="expr" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_expr_duration"> |
| <ownedComment xmi:id="Duration-expr-_ownedComment.0" annotatedElement="Duration-expr"> |
| <body>The value of the Duration.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Duration-expr-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Duration-observation" name="observation" visibility="public" type="Observation" association="A_observation_duration"> |
| <ownedComment xmi:id="Duration-observation-_ownedComment.0" annotatedElement="Duration-observation"> |
| <body>Refers to the time and duration observations that are involved in expr.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Duration-observation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Duration-observation-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="DurationConstraint" name="DurationConstraint"> |
| <ownedComment xmi:id="DurationConstraint-_ownedComment.0" annotatedElement="DurationConstraint"> |
| <body>A duration constraint is a constraint that refers to a duration interval.</body> |
| </ownedComment> |
| <ownedRule xmi:id="DurationConstraint-first_event_multiplicity" name="first_event_multiplicity" constrainedElement="DurationConstraint"> |
| <ownedComment xmi:id="DurationConstraint-first_event_multiplicity-_ownedComment.0" annotatedElement="DurationConstraint-first_event_multiplicity"> |
| <body>The multiplicity of firstEvent must be 2 if the multiplicity of constrainedElement is 2. Otherwise the multiplicity of firstEvent is 0.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DurationConstraint-first_event_multiplicity-_specification"> |
| <language>OCL</language> |
| <body>if (constrainedElement->size() =2) |
| then (firstEvent->size() = 2) else (firstEvent->size() = 0)</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="DurationConstraint-_generalization.0" general="IntervalConstraint"/> |
| <ownedAttribute xmi:id="DurationConstraint-firstEvent" name="firstEvent" visibility="public"> |
| <ownedComment xmi:id="DurationConstraint-firstEvent-_ownedComment.0" annotatedElement="DurationConstraint-firstEvent"> |
| <body>The value of firstEvent[i] is related to constrainedElement[i] (where i is 1 or 2). If firstEvent[i] is true, then the corresponding observation event is the first time instant the execution enters constrainedElement[i]. If firstEvent[i] is false, then the corresponding observation event is the last time instant the execution is within constrainedElement[i]. Default value is true applied when constrainedElement[i] refers an element that represents only one time instant.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DurationConstraint-firstEvent-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="DurationConstraint-firstEvent-_upperValue" value="2"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="DurationConstraint-specification" name="specification" visibility="public" type="DurationInterval" aggregation="composite" redefinedProperty="IntervalConstraint-specification Constraint-specification" association="A_specification_durationConstraint"> |
| <ownedComment xmi:id="DurationConstraint-specification-_ownedComment.0" annotatedElement="DurationConstraint-specification"> |
| <body>The interval constraining the duration.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="DurationInterval" name="DurationInterval"> |
| <ownedComment xmi:id="DurationInterval-_ownedComment.0" annotatedElement="DurationInterval"> |
| <body>A duration interval defines the range between two durations.</body> |
| </ownedComment> |
| <generalization xmi:id="DurationInterval-_generalization.0" general="Interval"/> |
| <ownedAttribute xmi:id="DurationInterval-max" name="max" visibility="public" type="Duration" redefinedProperty="Interval-max" association="A_max_durationInterval"> |
| <ownedComment xmi:id="DurationInterval-max-_ownedComment.0" annotatedElement="DurationInterval-max"> |
| <body>Refers to the Duration denoting the maximum value of the range.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="DurationInterval-min" name="min" visibility="public" type="Duration" redefinedProperty="Interval-min" association="A_min_durationInterval"> |
| <ownedComment xmi:id="DurationInterval-min-_ownedComment.0" annotatedElement="DurationInterval-min"> |
| <body>Refers to the Duration denoting the minimum value of the range.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="DurationObservation" name="DurationObservation"> |
| <ownedComment xmi:id="DurationObservation-_ownedComment.0" annotatedElement="DurationObservation"> |
| <body>A duration observation is a reference to a duration during an execution. It points out the element(s) in the model to observe and whether the observations are when this model element is entered or when it is exited.</body> |
| </ownedComment> |
| <ownedRule xmi:id="DurationObservation-first_event_multiplicity" name="first_event_multiplicity" constrainedElement="DurationObservation"> |
| <ownedComment xmi:id="DurationObservation-first_event_multiplicity-_ownedComment.0" annotatedElement="DurationObservation-first_event_multiplicity"> |
| <body>The multiplicity of firstEvent must be 2 if the multiplicity of event is 2. Otherwise the multiplicity of firstEvent is 0.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="DurationObservation-first_event_multiplicity-_specification"> |
| <language>OCL</language> |
| <body>if (event->size() = 2) |
| then (firstEvent->size() = 2) else (firstEvent->size() = 0)</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="DurationObservation-_generalization.0" general="Observation"/> |
| <ownedAttribute xmi:id="DurationObservation-event" name="event" visibility="public" type="NamedElement" association="A_event_durationObservation"> |
| <ownedComment xmi:id="DurationObservation-event-_ownedComment.0" annotatedElement="DurationObservation-event"> |
| <body>The observation is determined by the entering or exiting of the event element during execution.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="DurationObservation-event-_upperValue" value="2"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="DurationObservation-firstEvent" name="firstEvent" visibility="public"> |
| <ownedComment xmi:id="DurationObservation-firstEvent-_ownedComment.0" annotatedElement="DurationObservation-firstEvent"> |
| <body>The value of firstEvent[i] is related to event[i] (where i is 1 or 2). If firstEvent[i] is true, then the corresponding observation event is the first time instant the execution enters event[i]. If firstEvent[i] is false, then the corresponding observation event is the time instant the execution exits event[i]. Default value is true applied when event[i] refers an element that represents only one time instant.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="DurationObservation-firstEvent-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="DurationObservation-firstEvent-_upperValue" value="2"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Element" name="Element" isAbstract="true"> |
| <ownedComment xmi:id="Element-_ownedComment.0" annotatedElement="Element"> |
| <body>An element is a constituent of a model. As such, it has the capability of owning other elements.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Element-has_owner" name="has_owner" constrainedElement="Element"> |
| <ownedComment xmi:id="Element-has_owner-_ownedComment.0" annotatedElement="Element-has_owner"> |
| <body>Elements that must be owned must have an owner.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Element-has_owner-_specification"> |
| <language>OCL</language> |
| <body>self.mustBeOwned() implies owner->notEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Element-not_own_self" name="not_own_self" constrainedElement="Element"> |
| <ownedComment xmi:id="Element-not_own_self-_ownedComment.0" annotatedElement="Element-not_own_self"> |
| <body>An element may not directly or indirectly own itself.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Element-not_own_self-_specification"> |
| <language>OCL</language> |
| <body>not self.allOwnedElements()->includes(self)</body> |
| </specification> |
| </ownedRule> |
| <ownedAttribute xmi:id="Element-ownedComment" name="ownedComment" visibility="public" type="Comment" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_ownedComment_owningElement"> |
| <ownedComment xmi:id="Element-ownedComment-_ownedComment.0" annotatedElement="Element-ownedComment"> |
| <body>The Comments owned by this element.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Element-ownedComment-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Element-ownedComment-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Element-ownedElement" name="ownedElement" visibility="public" type="Element" isReadOnly="true" aggregation="composite" isDerived="true" isDerivedUnion="true" association="A_ownedElement_owner"> |
| <ownedComment xmi:id="Element-ownedElement-_ownedComment.0" annotatedElement="Element-ownedElement"> |
| <body>The Elements owned by this element.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Element-ownedElement-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Element-ownedElement-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Element-owner" name="owner" visibility="public" type="Element" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="A_ownedElement_owner"> |
| <ownedComment xmi:id="Element-owner-_ownedComment.0" annotatedElement="Element-owner"> |
| <body>The Element that owns this element.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Element-owner-_lowerValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Element-allOwnedElements" name="allOwnedElements" visibility="public" bodyCondition="Element-allOwnedElements-spec" isQuery="true"> |
| <ownedComment xmi:id="Element-allOwnedElements-_ownedComment.0" annotatedElement="Element-allOwnedElements"> |
| <body>The query allOwnedElements() gives all of the direct and indirect owned elements of an element.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Element-allOwnedElements-spec" name="spec" constrainedElement="Element-allOwnedElements"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Element-allOwnedElements-spec-_specification"> |
| <language>OCL</language> |
| <body>result = ownedElement->union(ownedElement->collect(e | e.allOwnedElements()))</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Element-allOwnedElements-result" name="result" visibility="public" type="Element" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Element-allOwnedElements-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Element-allOwnedElements-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Element-mustBeOwned" name="mustBeOwned" visibility="public" bodyCondition="Element-mustBeOwned-spec" isQuery="true"> |
| <ownedComment xmi:id="Element-mustBeOwned-_ownedComment.0" annotatedElement="Element-mustBeOwned"> |
| <body>The query mustBeOwned() indicates whether elements of this type must have an owner. Subclasses of Element that do not require an owner must override this operation.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Element-mustBeOwned-spec" name="spec" constrainedElement="Element-mustBeOwned"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Element-mustBeOwned-spec-_specification"> |
| <language>OCL</language> |
| <body>result = true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Element-mustBeOwned-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ElementImport" name="ElementImport"> |
| <ownedComment xmi:id="ElementImport-_ownedComment.0" annotatedElement="ElementImport"> |
| <body>An element import identifies an element in another package, and allows the element to be referenced using its name without a qualifier.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ElementImport-visibility_public_or_private" name="visibility_public_or_private" constrainedElement="ElementImport"> |
| <ownedComment xmi:id="ElementImport-visibility_public_or_private-_ownedComment.0" annotatedElement="ElementImport-visibility_public_or_private"> |
| <body>The visibility of an ElementImport is either public or private.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ElementImport-visibility_public_or_private-_specification"> |
| <language>OCL</language> |
| <body>self.visibility = #public or self.visibility = #private</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ElementImport-imported_element_is_public" name="imported_element_is_public" constrainedElement="ElementImport"> |
| <ownedComment xmi:id="ElementImport-imported_element_is_public-_ownedComment.0" annotatedElement="ElementImport-imported_element_is_public"> |
| <body>An importedElement has either public visibility or no visibility at all.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ElementImport-imported_element_is_public-_specification"> |
| <language>OCL</language> |
| <body>self.importedElement.visibility.notEmpty() implies self.importedElement.visibility = #public</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ElementImport-_generalization.0" general="DirectedRelationship"/> |
| <ownedAttribute xmi:id="ElementImport-alias" name="alias" visibility="public"> |
| <ownedComment xmi:id="ElementImport-alias-_ownedComment.0" annotatedElement="ElementImport-alias"> |
| <body>Specifies the name that should be added to the namespace of the importing package in lieu of the name of the imported packagable element. The aliased name must not clash with any other member name in the importing package. By default, no alias is used.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ElementImport-alias-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ElementImport-importedElement" name="importedElement" visibility="public" type="PackageableElement" subsettedProperty="DirectedRelationship-target" association="A_importedElement_elementImport"> |
| <ownedComment xmi:id="ElementImport-importedElement-_ownedComment.0" annotatedElement="ElementImport-importedElement"> |
| <body>Specifies the PackageableElement whose name is to be added to a Namespace.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ElementImport-importingNamespace" name="importingNamespace" visibility="public" type="Namespace" subsettedProperty="Element-owner DirectedRelationship-source" association="A_elementImport_importingNamespace"> |
| <ownedComment xmi:id="ElementImport-importingNamespace-_ownedComment.0" annotatedElement="ElementImport-importingNamespace"> |
| <body>Specifies the Namespace that imports a PackageableElement from another Package.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ElementImport-visibility" name="visibility" visibility="public" type="VisibilityKind"> |
| <ownedComment xmi:id="ElementImport-visibility-_ownedComment.0" annotatedElement="ElementImport-visibility"> |
| <body>Specifies the visibility of the imported PackageableElement within the importing Package. The default visibility is the same as that of the imported element. If the imported element does not have a visibility, it is possible to add visibility to the element import.</body> |
| </ownedComment> |
| <defaultValue xmi:type="uml:InstanceValue" xmi:id="ElementImport-visibility-_defaultValue" type="VisibilityKind" instance="VisibilityKind-public"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="ElementImport-getName" name="getName" visibility="public" bodyCondition="ElementImport-getName-spec" isQuery="true"> |
| <ownedComment xmi:id="ElementImport-getName-_ownedComment.0" annotatedElement="ElementImport-getName"> |
| <body>The query getName() returns the name under which the imported PackageableElement will be known in the importing namespace.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ElementImport-getName-spec" name="spec" constrainedElement="ElementImport-getName"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ElementImport-getName-spec-_specification"> |
| <language>OCL</language> |
| <body>result = if self.alias->notEmpty() then |
| self.alias |
| else |
| self.importedElement.name |
| endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="ElementImport-getName-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="EncapsulatedClassifier" name="EncapsulatedClassifier" isAbstract="true"> |
| <ownedComment xmi:id="EncapsulatedClassifier-_ownedComment.0" annotatedElement="EncapsulatedClassifier"> |
| <body>A classifier has the ability to own ports as specific and type checked interaction points.</body> |
| </ownedComment> |
| <generalization xmi:id="EncapsulatedClassifier-_generalization.0" general="StructuredClassifier"/> |
| <ownedAttribute xmi:id="EncapsulatedClassifier-ownedPort" name="ownedPort" visibility="public" type="Port" isReadOnly="true" aggregation="composite" isDerived="true" subsettedProperty="StructuredClassifier-ownedAttribute" association="A_ownedPort_encapsulatedClassifier"> |
| <ownedComment xmi:id="EncapsulatedClassifier-ownedPort-_ownedComment.0" annotatedElement="EncapsulatedClassifier-ownedPort"> |
| <body>References a set of ports that an encapsulated classifier owns.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="EncapsulatedClassifier-ownedPort-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="EncapsulatedClassifier-ownedPort-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="EncapsulatedClassifier-ownedPort.1" name="ownedPort" visibility="public" bodyCondition="EncapsulatedClassifier-ownedPort.1-spec" isQuery="true"> |
| <ownedComment xmi:id="EncapsulatedClassifier-ownedPort.1-_ownedComment.0" annotatedElement="EncapsulatedClassifier-ownedPort.1"> |
| <body>Missing derivation for EncapsulatedClassifier::/ownedPort : Port</body> |
| </ownedComment> |
| <ownedRule xmi:id="EncapsulatedClassifier-ownedPort.1-spec" name="spec" constrainedElement="EncapsulatedClassifier-ownedPort.1 EncapsulatedClassifier-ownedPort"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="EncapsulatedClassifier-ownedPort.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="EncapsulatedClassifier-ownedPort.1-result" name="result" visibility="public" type="Port" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="EncapsulatedClassifier-ownedPort.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="EncapsulatedClassifier-ownedPort.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Enumeration" name="Enumeration"> |
| <ownedComment xmi:id="Enumeration-_ownedComment.0" annotatedElement="Enumeration"> |
| <body>An enumeration is a data type whose values are enumerated in the model as enumeration literals.</body> |
| </ownedComment> |
| <generalization xmi:id="Enumeration-_generalization.0" general="DataType"/> |
| <ownedAttribute xmi:id="Enumeration-ownedLiteral" name="ownedLiteral" visibility="public" type="EnumerationLiteral" isOrdered="true" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_ownedLiteral_enumeration"> |
| <ownedComment xmi:id="Enumeration-ownedLiteral-_ownedComment.0" annotatedElement="Enumeration-ownedLiteral"> |
| <body>The ordered set of literals for this Enumeration.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Enumeration-ownedLiteral-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Enumeration-ownedLiteral-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="EnumerationLiteral" name="EnumerationLiteral"> |
| <ownedComment xmi:id="EnumerationLiteral-_ownedComment.0" annotatedElement="EnumerationLiteral"> |
| <body>An enumeration literal is a user-defined data value for an enumeration.</body> |
| </ownedComment> |
| <ownedRule xmi:id="EnumerationLiteral-classifier_equals_owning_enumeration" name="classifier_equals_owning_enumeration" constrainedElement="EnumerationLiteral"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="EnumerationLiteral-classifier_equals_owning_enumeration-_specification"> |
| <language>OCL</language> |
| <body>classifier = enumeration</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="EnumerationLiteral-_generalization.0" general="InstanceSpecification"/> |
| <ownedAttribute xmi:id="EnumerationLiteral-classifier" name="classifier" visibility="public" type="Enumeration" isReadOnly="true" isDerived="true" redefinedProperty="InstanceSpecification-classifier" association="A_classifier_enumerationLiteral"> |
| <ownedComment xmi:id="EnumerationLiteral-classifier-_ownedComment.0" annotatedElement="EnumerationLiteral-classifier"> |
| <body>The classifier of this EnumerationLiteral derived to be equal to its enumeration.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="EnumerationLiteral-enumeration" name="enumeration" visibility="public" type="Enumeration" subsettedProperty="NamedElement-namespace" association="A_ownedLiteral_enumeration"> |
| <ownedComment xmi:id="EnumerationLiteral-enumeration-_ownedComment.0" annotatedElement="EnumerationLiteral-enumeration"> |
| <body>The Enumeration that this EnumerationLiteral is a member of.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="EnumerationLiteral-enumeration-_lowerValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="EnumerationLiteral-classifier.1" name="classifier" visibility="public" bodyCondition="EnumerationLiteral-classifier.1-spec" isQuery="true"> |
| <ownedComment xmi:id="EnumerationLiteral-classifier.1-_ownedComment.0" annotatedElement="EnumerationLiteral-classifier.1"> |
| <body>Missing derivation for EnumerationLiteral::/classifier : Enumeration</body> |
| </ownedComment> |
| <ownedRule xmi:id="EnumerationLiteral-classifier.1-spec" name="spec" constrainedElement="EnumerationLiteral-classifier.1 EnumerationLiteral-classifier"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="EnumerationLiteral-classifier.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="EnumerationLiteral-classifier.1-result" name="result" visibility="public" type="Enumeration" direction="return"/> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Event" name="Event" isAbstract="true"> |
| <ownedComment xmi:id="Event-_ownedComment.0" annotatedElement="Event"> |
| <body>An event is the specification of some occurrence that may potentially trigger effects by an object.</body> |
| </ownedComment> |
| <generalization xmi:id="Event-_generalization.0" general="PackageableElement"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ExceptionHandler" name="ExceptionHandler"> |
| <ownedComment xmi:id="ExceptionHandler-_ownedComment.0" annotatedElement="ExceptionHandler"> |
| <body>An exception handler is an element that specifies a body to execute in case the specified exception occurs during the execution of the protected node.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ExceptionHandler-one_input" name="one_input" constrainedElement="ExceptionHandler"> |
| <ownedComment xmi:id="ExceptionHandler-one_input-_ownedComment.0" annotatedElement="ExceptionHandler-one_input"> |
| <body>The handler body has one input, and that input is the same as the exception input.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ExceptionHandler-one_input-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ExceptionHandler-edge_source_target" name="edge_source_target" constrainedElement="ExceptionHandler"> |
| <ownedComment xmi:id="ExceptionHandler-edge_source_target-_ownedComment.0" annotatedElement="ExceptionHandler-edge_source_target"> |
| <body>An edge that has a source in an exception handler structured node must have its target in the handler also, and vice versa.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ExceptionHandler-edge_source_target-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ExceptionHandler-result_pins" name="result_pins" constrainedElement="ExceptionHandler"> |
| <ownedComment xmi:id="ExceptionHandler-result_pins-_ownedComment.0" annotatedElement="ExceptionHandler-result_pins"> |
| <body>If the protected node is a StructuredActivityNode with output pins, then the exception handler body must also be a StructuredActivityNode with output pins that correspond in number and types to those of the protected node.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ExceptionHandler-result_pins-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ExceptionHandler-exception_body" name="exception_body" constrainedElement="ExceptionHandler"> |
| <ownedComment xmi:id="ExceptionHandler-exception_body-_ownedComment.0" annotatedElement="ExceptionHandler-exception_body"> |
| <body>The exception handler and its input object node are not the source or target of any edge.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ExceptionHandler-exception_body-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ExceptionHandler-_generalization.0" general="Element"/> |
| <ownedAttribute xmi:id="ExceptionHandler-exceptionInput" name="exceptionInput" visibility="public" type="ObjectNode" association="A_exceptionInput_exceptionHandler"> |
| <ownedComment xmi:id="ExceptionHandler-exceptionInput-_ownedComment.0" annotatedElement="ExceptionHandler-exceptionInput"> |
| <body>An object node within the handler body. When the handler catches an exception, the exception token is placed in this node, causing the body to execute.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ExceptionHandler-exceptionType" name="exceptionType" visibility="public" type="Classifier" association="A_exceptionType_exceptionHandler"> |
| <ownedComment xmi:id="ExceptionHandler-exceptionType-_ownedComment.0" annotatedElement="ExceptionHandler-exceptionType"> |
| <body>The kind of instances that the handler catches. If an exception occurs whose type is any of the classifiers in the set, the handler catches the exception and executes its body.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ExceptionHandler-exceptionType-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ExceptionHandler-handlerBody" name="handlerBody" visibility="public" type="ExecutableNode" association="A_handlerBody_exceptionHandler"> |
| <ownedComment xmi:id="ExceptionHandler-handlerBody-_ownedComment.0" annotatedElement="ExceptionHandler-handlerBody"> |
| <body>A node that is executed if the handler satisfies an uncaught exception.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ExceptionHandler-protectedNode" name="protectedNode" visibility="public" type="ExecutableNode" subsettedProperty="Element-owner" association="A_handler_protectedNode"> |
| <ownedComment xmi:id="ExceptionHandler-protectedNode-_ownedComment.0" annotatedElement="ExceptionHandler-protectedNode"> |
| <body>The node protected by the handler. The handler is examined if an exception propagates to the outside of the node.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ExecutableNode" name="ExecutableNode" isAbstract="true"> |
| <ownedComment xmi:id="ExecutableNode-_ownedComment.0" annotatedElement="ExecutableNode"> |
| <body>An executable node is an abstract class for activity nodes that may be executed. It is used as an attachment point for exception handlers.</body> |
| </ownedComment> |
| <ownedComment xmi:id="ExecutableNode-_ownedComment.1" annotatedElement="ExecutableNode"> |
| <body>An executable node is an abstract class for activity nodes that may be executed. It is used as an attachment point for exception handlers.</body> |
| </ownedComment> |
| <generalization xmi:id="ExecutableNode-_generalization.0" general="ActivityNode"/> |
| <ownedAttribute xmi:id="ExecutableNode-handler" name="handler" visibility="public" type="ExceptionHandler" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_handler_protectedNode"> |
| <ownedComment xmi:id="ExecutableNode-handler-_ownedComment.0" annotatedElement="ExecutableNode-handler"> |
| <body>A set of exception handlers that are examined if an uncaught exception propagates to the outer level of the executable node.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ExecutableNode-handler-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ExecutableNode-handler-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ExecutionEnvironment" name="ExecutionEnvironment"> |
| <ownedComment xmi:id="ExecutionEnvironment-_ownedComment.0" annotatedElement="ExecutionEnvironment"> |
| <body>An execution environment is a node that offers an execution environment for specific types of components that are deployed on it in the form of executable artifacts.</body> |
| </ownedComment> |
| <generalization xmi:id="ExecutionEnvironment-_generalization.0" general="Node"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ExecutionOccurrenceSpecification" name="ExecutionOccurrenceSpecification"> |
| <ownedComment xmi:id="ExecutionOccurrenceSpecification-_ownedComment.0" annotatedElement="ExecutionOccurrenceSpecification"> |
| <body>An execution occurrence specification represents moments in time at which actions or behaviors start or finish.</body> |
| </ownedComment> |
| <generalization xmi:id="ExecutionOccurrenceSpecification-_generalization.0" general="OccurrenceSpecification"/> |
| <ownedAttribute xmi:id="ExecutionOccurrenceSpecification-execution" name="execution" visibility="public" type="ExecutionSpecification" association="A_execution_executionOccurrenceSpecification"> |
| <ownedComment xmi:id="ExecutionOccurrenceSpecification-execution-_ownedComment.0" annotatedElement="ExecutionOccurrenceSpecification-execution"> |
| <body>References the execution specification describing the execution that is started or finished at this execution event.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ExecutionSpecification" name="ExecutionSpecification" isAbstract="true"> |
| <ownedComment xmi:id="ExecutionSpecification-_ownedComment.0" annotatedElement="ExecutionSpecification"> |
| <body>An execution specification is a specification of the execution of a unit of behavior or action within the lifeline. The duration of an execution specification is represented by two cccurrence specifications, the start occurrence specification and the finish occurrence specification.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ExecutionSpecification-same_lifeline" name="same_lifeline" constrainedElement="ExecutionSpecification"> |
| <ownedComment xmi:id="ExecutionSpecification-same_lifeline-_ownedComment.0" annotatedElement="ExecutionSpecification-same_lifeline"> |
| <body>The startEvent and the finishEvent must be on the same Lifeline</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ExecutionSpecification-same_lifeline-_specification"> |
| <language>OCL</language> |
| <body>start.lifeline = finish.lifeline</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ExecutionSpecification-_generalization.0" general="InteractionFragment"/> |
| <ownedAttribute xmi:id="ExecutionSpecification-finish" name="finish" visibility="public" type="OccurrenceSpecification" association="A_finish_executionSpecification"> |
| <ownedComment xmi:id="ExecutionSpecification-finish-_ownedComment.0" annotatedElement="ExecutionSpecification-finish"> |
| <body>References the OccurrenceSpecification that designates the finish of the Action or Behavior.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ExecutionSpecification-start" name="start" visibility="public" type="OccurrenceSpecification" association="A_start_executionSpecification"> |
| <ownedComment xmi:id="ExecutionSpecification-start-_ownedComment.0" annotatedElement="ExecutionSpecification-start"> |
| <body>References the OccurrenceSpecification that designates the start of the Action or Behavior</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ExpansionNode" name="ExpansionNode"> |
| <ownedComment xmi:id="ExpansionNode-_ownedComment.0" annotatedElement="ExpansionNode"> |
| <body>An expansion node is an object node used to indicate a flow across the boundary of an expansion region. A flow into a region contains a collection that is broken into its individual elements inside the region, which is executed once per element. A flow out of a region combines individual elements into a collection for use outside the region.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ExpansionNode-region_as_input_or_output" name="region_as_input_or_output" constrainedElement="ExpansionNode"> |
| <ownedComment xmi:id="ExpansionNode-region_as_input_or_output-_ownedComment.0" annotatedElement="ExpansionNode-region_as_input_or_output"> |
| <body>One of regionAsInput or regionAsOutput must be non-empty, but not both.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ExpansionNode-region_as_input_or_output-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ExpansionNode-_generalization.0" general="ObjectNode"/> |
| <ownedAttribute xmi:id="ExpansionNode-regionAsInput" name="regionAsInput" visibility="public" type="ExpansionRegion" association="A_inputElement_regionAsInput"> |
| <ownedComment xmi:id="ExpansionNode-regionAsInput-_ownedComment.0" annotatedElement="ExpansionNode-regionAsInput"> |
| <body>The expansion region for which the node is an input.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ExpansionNode-regionAsInput-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ExpansionNode-regionAsOutput" name="regionAsOutput" visibility="public" type="ExpansionRegion" association="A_outputElement_regionAsOutput"> |
| <ownedComment xmi:id="ExpansionNode-regionAsOutput-_ownedComment.0" annotatedElement="ExpansionNode-regionAsOutput"> |
| <body>The expansion region for which the node is an output.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ExpansionNode-regionAsOutput-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ExpansionRegion" name="ExpansionRegion"> |
| <ownedComment xmi:id="ExpansionRegion-_ownedComment.0" annotatedElement="ExpansionRegion"> |
| <body>An expansion region is a structured activity region that executes multiple times corresponding to elements of an input collection.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ExpansionRegion-expansion_nodes" name="expansion_nodes" constrainedElement="ExpansionRegion"> |
| <ownedComment xmi:id="ExpansionRegion-expansion_nodes-_ownedComment.0" annotatedElement="ExpansionRegion-expansion_nodes"> |
| <body>An ExpansionRegion must have one or more argument ExpansionNodes and zero or more result ExpansionNodes.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ExpansionRegion-expansion_nodes-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ExpansionRegion-_generalization.0" general="StructuredActivityNode"/> |
| <ownedAttribute xmi:id="ExpansionRegion-inputElement" name="inputElement" visibility="public" type="ExpansionNode" association="A_inputElement_regionAsInput"> |
| <ownedComment xmi:id="ExpansionRegion-inputElement-_ownedComment.0" annotatedElement="ExpansionRegion-inputElement"> |
| <body>An object node that holds a separate element of the input collection during each of the multiple executions of the region.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ExpansionRegion-inputElement-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ExpansionRegion-mode" name="mode" visibility="public" type="ExpansionKind"> |
| <ownedComment xmi:id="ExpansionRegion-mode-_ownedComment.0" annotatedElement="ExpansionRegion-mode"> |
| <body>The way in which the executions interact: parallel: all interactions are independent iterative: the interactions occur in order of the elements stream: a stream of values flows into a single execution</body> |
| </ownedComment> |
| <defaultValue xmi:type="uml:InstanceValue" xmi:id="ExpansionRegion-mode-_defaultValue" type="ExpansionKind" instance="ExpansionKind-iterative"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ExpansionRegion-outputElement" name="outputElement" visibility="public" type="ExpansionNode" association="A_outputElement_regionAsOutput"> |
| <ownedComment xmi:id="ExpansionRegion-outputElement-_ownedComment.0" annotatedElement="ExpansionRegion-outputElement"> |
| <body>An object node that accepts a separate element of the output collection during each of the multiple executions of the region. The values are formed into a collection that is available when the execution of the region is complete.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ExpansionRegion-outputElement-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ExpansionRegion-outputElement-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Expression" name="Expression"> |
| <ownedComment xmi:id="Expression-_ownedComment.0" annotatedElement="Expression"> |
| <body>An expression is a structured tree of symbols that denotes a (possibly empty) set of values when evaluated in a context.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Expression-_ownedComment.1" annotatedElement="Expression"> |
| <body>An expression represents a node in an expression tree, which may be non-terminal or terminal. It defines a symbol, and has a possibly empty sequence of operands which are value specifications.</body> |
| </ownedComment> |
| <generalization xmi:id="Expression-_generalization.0" general="ValueSpecification"/> |
| <ownedAttribute xmi:id="Expression-operand" name="operand" visibility="public" type="ValueSpecification" isOrdered="true" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_operand_expression"> |
| <ownedComment xmi:id="Expression-operand-_ownedComment.0" annotatedElement="Expression-operand"> |
| <body>Specifies a sequence of operands.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Expression-operand-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Expression-operand-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Expression-symbol" name="symbol" visibility="public"> |
| <ownedComment xmi:id="Expression-symbol-_ownedComment.0" annotatedElement="Expression-symbol"> |
| <body>The symbol associated with the node in the expression tree.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Expression-symbol-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Extend" name="Extend"> |
| <ownedComment xmi:id="Extend-_ownedComment.0" annotatedElement="Extend"> |
| <body>A relationship from an extending use case to an extended use case that specifies how and when the behavior defined in the extending use case can be inserted into the behavior defined in the extended use case.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Extend-extension_points" name="extension_points" constrainedElement="Extend"> |
| <ownedComment xmi:id="Extend-extension_points-_ownedComment.0" annotatedElement="Extend-extension_points"> |
| <body>The extension points referenced by the extend relationship must belong to the use case that is being extended.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Extend-extension_points-_specification"> |
| <language>OCL</language> |
| <body>extensionLocation->forAll (xp | extendedCase.extensionPoint->includes(xp))</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Extend-_generalization.0" general="DirectedRelationship"/> |
| <generalization xmi:id="Extend-_generalization.1" general="NamedElement"/> |
| <ownedAttribute xmi:id="Extend-condition" name="condition" visibility="public" type="Constraint" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_condition_extend"> |
| <ownedComment xmi:id="Extend-condition-_ownedComment.0" annotatedElement="Extend-condition"> |
| <body>References the condition that must hold when the first extension point is reached for the extension to take place. If no constraint is associated with the extend relationship, the extension is unconditional.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Extend-condition-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Extend-extendedCase" name="extendedCase" visibility="public" type="UseCase" subsettedProperty="DirectedRelationship-target" association="A_extendedCase_extend"> |
| <ownedComment xmi:id="Extend-extendedCase-_ownedComment.0" annotatedElement="Extend-extendedCase"> |
| <body>References the use case that is being extended.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Extend-extension" name="extension" visibility="public" type="UseCase" subsettedProperty="DirectedRelationship-source NamedElement-namespace" association="A_extend_extension"> |
| <ownedComment xmi:id="Extend-extension-_ownedComment.0" annotatedElement="Extend-extension"> |
| <body>References the use case that represents the extension and owns the extend relationship.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Extend-extensionLocation" name="extensionLocation" visibility="public" type="ExtensionPoint" isOrdered="true" association="A_extensionLocation_extension"> |
| <ownedComment xmi:id="Extend-extensionLocation-_ownedComment.0" annotatedElement="Extend-extensionLocation"> |
| <body>An ordered list of extension points belonging to the extended use case, specifying where the respective behavioral fragments of the extending use case are to be inserted. The first fragment in the extending use case is associated with the first extension point in the list, the second fragment with the second point, and so on. (Note that, in most practical cases, the extending use case has just a single behavior fragment, so that the list of extension points is trivial.)</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Extend-extensionLocation-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Extension" name="Extension"> |
| <ownedComment xmi:id="Extension-_ownedComment.0" annotatedElement="Extension"> |
| <body>An extension is used to indicate that the properties of a metaclass are extended through a stereotype, and gives the ability to flexibly add (and later remove) stereotypes to classes.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Extension-non_owned_end" name="non_owned_end" constrainedElement="Extension"> |
| <ownedComment xmi:id="Extension-non_owned_end-_ownedComment.0" annotatedElement="Extension-non_owned_end"> |
| <body>The non-owned end of an Extension is typed by a Class.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Extension-non_owned_end-_specification"> |
| <language>OCL</language> |
| <body>metaclassEnd()->notEmpty() and metaclass()->oclIsKindOf(Class)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Extension-is_binary" name="is_binary" constrainedElement="Extension"> |
| <ownedComment xmi:id="Extension-is_binary-_ownedComment.0" annotatedElement="Extension-is_binary"> |
| <body>An Extension is binary, i.e., it has only two memberEnds.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Extension-is_binary-_specification"> |
| <language>OCL</language> |
| <body>memberEnd->size() = 2</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Extension-_generalization.0" general="Association"/> |
| <ownedAttribute xmi:id="Extension-isRequired" name="isRequired" visibility="public" isReadOnly="true" isDerived="true"> |
| <ownedComment xmi:id="Extension-isRequired-_ownedComment.0" annotatedElement="Extension-isRequired"> |
| <body>Indicates whether an instance of the extending stereotype must be created when an instance of the extended class is created. The attribute value is derived from the value of the lower property of the ExtensionEnd referenced by Extension::ownedEnd; a lower value of 1 means that isRequired is true, but otherwise it is false. Since the default value of ExtensionEnd::lower is 0, the default value of isRequired is false.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Extension-isRequired-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Extension-metaclass" name="metaclass" visibility="public" type="Class" isReadOnly="true" isDerived="true" association="A_extension_metaclass"> |
| <ownedComment xmi:id="Extension-metaclass-_ownedComment.0" annotatedElement="Extension-metaclass"> |
| <body>References the Class that is extended through an Extension. The property is derived from the type of the memberEnd that is not the ownedEnd.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Extension-ownedEnd" name="ownedEnd" visibility="public" type="ExtensionEnd" aggregation="composite" redefinedProperty="Association-ownedEnd" association="A_ownedEnd_extension"> |
| <ownedComment xmi:id="Extension-ownedEnd-_ownedComment.0" annotatedElement="Extension-ownedEnd"> |
| <body>References the end of the extension that is typed by a Stereotype.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Extension-isRequired.1" name="isRequired" visibility="public" bodyCondition="Extension-isRequired.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Extension-isRequired.1-_ownedComment.0" annotatedElement="Extension-isRequired.1"> |
| <body>The query isRequired() is true if the owned end has a multiplicity with the lower bound of 1.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Extension-isRequired.1-spec" name="spec" constrainedElement="Extension-isRequired.1 Extension-isRequired"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Extension-isRequired.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = (ownedEnd->lowerBound() = 1)</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Extension-isRequired.1-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Extension-metaclass.1" name="metaclass" visibility="public" bodyCondition="Extension-metaclass.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Extension-metaclass.1-_ownedComment.0" annotatedElement="Extension-metaclass.1"> |
| <body>The query metaclass() returns the metaclass that is being extended (as opposed to the extending stereotype).</body> |
| </ownedComment> |
| <ownedRule xmi:id="Extension-metaclass.1-spec" name="spec" constrainedElement="Extension-metaclass.1 Extension-metaclass"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Extension-metaclass.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = metaclassEnd().type</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Extension-metaclass.1-result" name="result" visibility="public" type="Class" direction="return"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="Extension-metaclassEnd" name="metaclassEnd" visibility="public" bodyCondition="Extension-metaclassEnd-spec" isQuery="true"> |
| <ownedComment xmi:id="Extension-metaclassEnd-_ownedComment.0" annotatedElement="Extension-metaclassEnd"> |
| <body>The query metaclassEnd() returns the Property that is typed by a metaclass (as opposed to a stereotype).</body> |
| </ownedComment> |
| <ownedRule xmi:id="Extension-metaclassEnd-spec" name="spec" constrainedElement="Extension-metaclassEnd"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Extension-metaclassEnd-spec-_specification"> |
| <language>OCL</language> |
| <body>result = memberEnd->reject(ownedEnd)</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Extension-metaclassEnd-result" name="result" visibility="public" type="Property" direction="return"/> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ExtensionEnd" name="ExtensionEnd"> |
| <ownedComment xmi:id="ExtensionEnd-_ownedComment.0" annotatedElement="ExtensionEnd"> |
| <body>An extension end is used to tie an extension to a stereotype when extending a metaclass.</body> |
| </ownedComment> |
| <ownedComment xmi:id="ExtensionEnd-_ownedComment.1" annotatedElement="ExtensionEnd"> |
| <body>The default multiplicity of an extension end is 0..1.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ExtensionEnd-multiplicity" name="multiplicity" constrainedElement="ExtensionEnd"> |
| <ownedComment xmi:id="ExtensionEnd-multiplicity-_ownedComment.0" annotatedElement="ExtensionEnd-multiplicity"> |
| <body>The multiplicity of ExtensionEnd is 0..1 or 1.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ExtensionEnd-multiplicity-_specification"> |
| <language>OCL</language> |
| <body>(self->lowerBound() = 0 or self->lowerBound() = 1) and self->upperBound() = 1</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ExtensionEnd-aggregation" name="aggregation" constrainedElement="ExtensionEnd"> |
| <ownedComment xmi:id="ExtensionEnd-aggregation-_ownedComment.0" annotatedElement="ExtensionEnd-aggregation"> |
| <body>The aggregation of an ExtensionEnd is composite.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ExtensionEnd-aggregation-_specification"> |
| <language>OCL</language> |
| <body>self.aggregation = #composite</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ExtensionEnd-_generalization.0" general="Property"/> |
| <ownedAttribute xmi:id="ExtensionEnd-lower" name="lower" visibility="public" isDerived="true" redefinedProperty="MultiplicityElement-lower"> |
| <ownedComment xmi:id="ExtensionEnd-lower-_ownedComment.0" annotatedElement="ExtensionEnd-lower"> |
| <body>This redefinition changes the default multiplicity of association ends, since model elements are usually extended by 0 or 1 instance of the extension stereotype.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ExtensionEnd-lower-_lowerValue"/> |
| <defaultValue xmi:type="uml:LiteralInteger" xmi:id="ExtensionEnd-lower-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ExtensionEnd-type" name="type" visibility="public" type="Stereotype" redefinedProperty="TypedElement-type" association="A_type_extensionEnd"> |
| <ownedComment xmi:id="ExtensionEnd-type-_ownedComment.0" annotatedElement="ExtensionEnd-type"> |
| <body>References the type of the ExtensionEnd. Note that this association restricts the possible types of an ExtensionEnd to only be Stereotypes.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedOperation xmi:id="ExtensionEnd-lowerBound" name="lowerBound" visibility="public" bodyCondition="ExtensionEnd-lowerBound-spec" isQuery="true" redefinedOperation="MultiplicityElement-lowerBound"> |
| <ownedComment xmi:id="ExtensionEnd-lowerBound-_ownedComment.0" annotatedElement="ExtensionEnd-lowerBound"> |
| <body>The query lowerBound() returns the lower bound of the multiplicity as an Integer. This is a redefinition of the default lower bound, which normally, for MultiplicityElements, evaluates to 1 if empty.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ExtensionEnd-lowerBound-spec" name="spec" constrainedElement="ExtensionEnd-lowerBound"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ExtensionEnd-lowerBound-spec-_specification"> |
| <language>OCL</language> |
| <body>result = lowerBound = if lowerValue->isEmpty() then 0 else lowerValue->IntegerValue() endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="ExtensionEnd-lowerBound-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ExtensionEnd-lowerBound-result-_lowerValue"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ExtensionPoint" name="ExtensionPoint"> |
| <ownedComment xmi:id="ExtensionPoint-_ownedComment.0" annotatedElement="ExtensionPoint"> |
| <body>An extension point identifies a point in the behavior of a use case where that behavior can be extended by the behavior of some other (extending) use case, as specified by an extend relationship.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ExtensionPoint-must_have_name" name="must_have_name" constrainedElement="ExtensionPoint"> |
| <ownedComment xmi:id="ExtensionPoint-must_have_name-_ownedComment.0" annotatedElement="ExtensionPoint-must_have_name"> |
| <body>An ExtensionPoint must have a name.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ExtensionPoint-must_have_name-_specification"> |
| <language>OCL</language> |
| <body>self.name->notEmpty ()</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ExtensionPoint-_generalization.0" general="RedefinableElement"/> |
| <ownedAttribute xmi:id="ExtensionPoint-useCase" name="useCase" visibility="public" type="UseCase" subsettedProperty="NamedElement-namespace" association="A_extensionPoint_useCase"> |
| <ownedComment xmi:id="ExtensionPoint-useCase-_ownedComment.0" annotatedElement="ExtensionPoint-useCase"> |
| <body>References the use case that owns this extension point.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Feature" name="Feature" isAbstract="true"> |
| <ownedComment xmi:id="Feature-_ownedComment.0" annotatedElement="Feature"> |
| <body>A feature declares a behavioral or structural characteristic of instances of classifiers.</body> |
| </ownedComment> |
| <generalization xmi:id="Feature-_generalization.0" general="RedefinableElement"/> |
| <ownedAttribute xmi:id="Feature-featuringClassifier" name="featuringClassifier" visibility="public" type="Classifier" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="A_member_memberNamespace-memberNamespace" association="A_feature_featuringClassifier"> |
| <ownedComment xmi:id="Feature-featuringClassifier-_ownedComment.0" annotatedElement="Feature-featuringClassifier"> |
| <body>The Classifiers that have this Feature as a feature.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Feature-featuringClassifier-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Feature-featuringClassifier-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Feature-isStatic" name="isStatic" visibility="public"> |
| <ownedComment xmi:id="Feature-isStatic-_ownedComment.0" annotatedElement="Feature-isStatic"> |
| <body>Specifies whether this feature characterizes individual instances classified by the classifier (false) or the classifier itself (true).</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Feature-isStatic-_defaultValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="FinalNode" name="FinalNode" isAbstract="true"> |
| <ownedComment xmi:id="FinalNode-_ownedComment.0" annotatedElement="FinalNode"> |
| <body>A final node is an abstract control node at which a flow in an activity stops.</body> |
| </ownedComment> |
| <ownedRule xmi:id="FinalNode-no_outgoing_edges" name="no_outgoing_edges" constrainedElement="FinalNode"> |
| <ownedComment xmi:id="FinalNode-no_outgoing_edges-_ownedComment.0" annotatedElement="FinalNode-no_outgoing_edges"> |
| <body>A final node has no outgoing edges.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="FinalNode-no_outgoing_edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="FinalNode-_generalization.0" general="ControlNode"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="FinalState" name="FinalState"> |
| <ownedComment xmi:id="FinalState-_ownedComment.0" annotatedElement="FinalState"> |
| <body>A special kind of state signifying that the enclosing region is completed. If the enclosing region is directly contained in a state machine and all other regions in the state machine also are completed, then it means that the entire state machine is completed.</body> |
| </ownedComment> |
| <ownedRule xmi:id="FinalState-no_outgoing_transitions" name="no_outgoing_transitions" constrainedElement="FinalState"> |
| <ownedComment xmi:id="FinalState-no_outgoing_transitions-_ownedComment.0" annotatedElement="FinalState-no_outgoing_transitions"> |
| <body>A final state cannot have any outgoing transitions.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="FinalState-no_outgoing_transitions-_specification"> |
| <language>OCL</language> |
| <body>self.outgoing->size() = 0</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="FinalState-cannot_reference_submachine" name="cannot_reference_submachine" constrainedElement="FinalState"> |
| <ownedComment xmi:id="FinalState-cannot_reference_submachine-_ownedComment.0" annotatedElement="FinalState-cannot_reference_submachine"> |
| <body>A final state cannot reference a submachine.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="FinalState-cannot_reference_submachine-_specification"> |
| <language>OCL</language> |
| <body>self.submachine->isEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="FinalState-no_exit_behavior" name="no_exit_behavior" constrainedElement="FinalState"> |
| <ownedComment xmi:id="FinalState-no_exit_behavior-_ownedComment.0" annotatedElement="FinalState-no_exit_behavior"> |
| <body>A final state has no exit behavior.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="FinalState-no_exit_behavior-_specification"> |
| <language>OCL</language> |
| <body>self.exit->isEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="FinalState-no_entry_behavior" name="no_entry_behavior" constrainedElement="FinalState"> |
| <ownedComment xmi:id="FinalState-no_entry_behavior-_ownedComment.0" annotatedElement="FinalState-no_entry_behavior"> |
| <body>A final state has no entry behavior.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="FinalState-no_entry_behavior-_specification"> |
| <language>OCL</language> |
| <body>self.entry->isEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="FinalState-no_state_behavior" name="no_state_behavior" constrainedElement="FinalState"> |
| <ownedComment xmi:id="FinalState-no_state_behavior-_ownedComment.0" annotatedElement="FinalState-no_state_behavior"> |
| <body>A final state has no state (doActivity) behavior.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="FinalState-no_state_behavior-_specification"> |
| <language>OCL</language> |
| <body>self.doActivity->isEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="FinalState-no_regions" name="no_regions" constrainedElement="FinalState"> |
| <ownedComment xmi:id="FinalState-no_regions-_ownedComment.0" annotatedElement="FinalState-no_regions"> |
| <body>A final state cannot have regions.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="FinalState-no_regions-_specification"> |
| <language>OCL</language> |
| <body>self.region->size() = 0</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="FinalState-_generalization.0" general="State"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="FlowFinalNode" name="FlowFinalNode"> |
| <ownedComment xmi:id="FlowFinalNode-_ownedComment.0" annotatedElement="FlowFinalNode"> |
| <body>A flow final node is a final node that terminates a flow.</body> |
| </ownedComment> |
| <generalization xmi:id="FlowFinalNode-_generalization.0" general="FinalNode"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ForkNode" name="ForkNode"> |
| <ownedComment xmi:id="ForkNode-_ownedComment.0" annotatedElement="ForkNode"> |
| <body>A fork node is a control node that splits a flow into multiple concurrent flows.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ForkNode-edges" name="edges" constrainedElement="ForkNode"> |
| <ownedComment xmi:id="ForkNode-edges-_ownedComment.0" annotatedElement="ForkNode-edges"> |
| <body>The edges coming into and out of a fork node must be either all object flows or all control flows.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ForkNode-edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ForkNode-one_incoming_edge" name="one_incoming_edge" constrainedElement="ForkNode"> |
| <ownedComment xmi:id="ForkNode-one_incoming_edge-_ownedComment.0" annotatedElement="ForkNode-one_incoming_edge"> |
| <body>A fork node has one incoming edge.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ForkNode-one_incoming_edge-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ForkNode-_generalization.0" general="ControlNode"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="FunctionBehavior" name="FunctionBehavior"> |
| <ownedComment xmi:id="FunctionBehavior-_ownedComment.0" annotatedElement="FunctionBehavior"> |
| <body>A function behavior is an opaque behavior that does not access or modify any objects or other external data.</body> |
| </ownedComment> |
| <ownedRule xmi:id="FunctionBehavior-one_output_parameter" name="one_output_parameter" constrainedElement="FunctionBehavior"> |
| <ownedComment xmi:id="FunctionBehavior-one_output_parameter-_ownedComment.0" annotatedElement="FunctionBehavior-one_output_parameter"> |
| <body>A function behavior has at least one output parameter.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="FunctionBehavior-one_output_parameter-_specification"> |
| <language>OCL</language> |
| <body>self.ownedParameters-> |
| select(p | p.direction=#out or p.direction=#inout or p.direction=#return)->size() >= 1</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="FunctionBehavior-types_of_parameters" name="types_of_parameters" constrainedElement="FunctionBehavior"> |
| <ownedComment xmi:id="FunctionBehavior-types_of_parameters-_ownedComment.0" annotatedElement="FunctionBehavior-types_of_parameters"> |
| <body>The types of parameters are all data types, which may not nest anything but other datatypes.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="FunctionBehavior-types_of_parameters-_specification"> |
| <language>OCL</language> |
| <body>def: hasAllDataTypeAttributes(d : DataType) : Boolean = |
| d.ownedAttribute->forAll(a | |
| a.type.oclIsTypeOf(DataType) and |
| hasAllDataTypeAttributes(a.type)) |
| self.ownedParameters->forAll(p | p.type.notEmpty() and |
| p.oclIsTypeOf(DataType) and hasAllDataTypeAttributes(p))</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="FunctionBehavior-_generalization.0" general="OpaqueBehavior"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Gate" name="Gate"> |
| <ownedComment xmi:id="Gate-_ownedComment.0" annotatedElement="Gate"> |
| <body>A gate is a connection point for relating a message outside an interaction fragment with a message inside the interaction fragment.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Gate-messages_combined_fragment" name="messages_combined_fragment" constrainedElement="Gate"> |
| <ownedComment xmi:id="Gate-messages_combined_fragment-_ownedComment.0" annotatedElement="Gate-messages_combined_fragment"> |
| <body>The message leading to/from an (expression) Gate within a CombinedFragment must correspond to the message leading from/to the CombinedFragment on its outside.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Gate-messages_combined_fragment-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Gate-messages_actual_gate" name="messages_actual_gate" constrainedElement="Gate"> |
| <ownedComment xmi:id="Gate-messages_actual_gate-_ownedComment.0" annotatedElement="Gate-messages_actual_gate"> |
| <body>The message leading to/from an actualGate of an InteractionUse must correspond to the message leading from/to the formalGate with the same name of the Interaction referenced by the InteractionUse.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Gate-messages_actual_gate-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Gate-_generalization.0" general="MessageEnd"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="GeneralOrdering" name="GeneralOrdering"> |
| <ownedComment xmi:id="GeneralOrdering-_ownedComment.0" annotatedElement="GeneralOrdering"> |
| <body>A general ordering represents a binary relation between two occurrence specifications, to describe that one occurrence specification must occur before the other in a valid trace. This mechanism provides the ability to define partial orders of occurrence cpecifications that may otherwise not have a specified order.</body> |
| </ownedComment> |
| <ownedRule xmi:id="GeneralOrdering-irreflexsive_transitive_closure" name="irreflexsive_transitive_closure" constrainedElement="GeneralOrdering"> |
| <ownedComment xmi:id="GeneralOrdering-irreflexsive_transitive_closure-_ownedComment.0" annotatedElement="GeneralOrdering-irreflexsive_transitive_closure"> |
| <body>An occurrence specification must not be ordered relative to itself through a series of general orderings. (In other words, the transitive closure of the general orderings is irreflexive.)</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="GeneralOrdering-irreflexsive_transitive_closure-_specification"> |
| <language>OCL</language> |
| <body>start.lifeline = finish.lifeline</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="GeneralOrdering-_generalization.0" general="NamedElement"/> |
| <ownedAttribute xmi:id="GeneralOrdering-after" name="after" visibility="public" type="OccurrenceSpecification" association="A_toBefore_after"> |
| <ownedComment xmi:id="GeneralOrdering-after-_ownedComment.0" annotatedElement="GeneralOrdering-after"> |
| <body>The OccurrenceSpecification referenced comes after the OccurrenceSpecification referenced by before.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="GeneralOrdering-before" name="before" visibility="public" type="OccurrenceSpecification" association="A_before_toAfter"> |
| <ownedComment xmi:id="GeneralOrdering-before-_ownedComment.0" annotatedElement="GeneralOrdering-before"> |
| <body>The OccurrenceSpecification referenced comes before the OccurrenceSpecification referenced by after.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Generalization" name="Generalization"> |
| <ownedComment xmi:id="Generalization-_ownedComment.0" annotatedElement="Generalization"> |
| <body>A generalization is a taxonomic relationship between a more general classifier and a more specific classifier. Each instance of the specific classifier is also an indirect instance of the general classifier. Thus, the specific classifier inherits the features of the more general classifier.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Generalization-_ownedComment.1" annotatedElement="Generalization"> |
| <body>A generalization relates a specific classifier to a more general classifier, and is owned by the specific classifier.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Generalization-generalization_same_classifier" name="generalization_same_classifier" constrainedElement="Generalization"> |
| <ownedComment xmi:id="Generalization-generalization_same_classifier-_ownedComment.0" annotatedElement="Generalization-generalization_same_classifier"> |
| <body>Every Generalization associated with a given GeneralizationSet must have the same general Classifier. That is, all Generalizations for a particular GeneralizationSet must have the same superclass.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Generalization-generalization_same_classifier-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Generalization-_generalization.0" general="DirectedRelationship"/> |
| <ownedAttribute xmi:id="Generalization-general" name="general" visibility="public" type="Classifier" subsettedProperty="DirectedRelationship-target" association="A_general_generalization"> |
| <ownedComment xmi:id="Generalization-general-_ownedComment.0" annotatedElement="Generalization-general"> |
| <body>References the general classifier in the Generalization relationship.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Generalization-generalizationSet" name="generalizationSet" visibility="public" type="GeneralizationSet" association="A_generalizationSet_generalization"> |
| <ownedComment xmi:id="Generalization-generalizationSet-_ownedComment.0" annotatedElement="Generalization-generalizationSet"> |
| <body>Designates a set in which instances of Generalization is considered members.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Generalization-generalizationSet-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Generalization-generalizationSet-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Generalization-isSubstitutable" name="isSubstitutable" visibility="public"> |
| <ownedComment xmi:id="Generalization-isSubstitutable-_ownedComment.0" annotatedElement="Generalization-isSubstitutable"> |
| <body>Indicates whether the specific classifier can be used wherever the general classifier can be used. If true, the execution traces of the specific classifier will be a superset of the execution traces of the general classifier.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Generalization-isSubstitutable-_lowerValue"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Generalization-isSubstitutable-_defaultValue" value="true"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Generalization-specific" name="specific" visibility="public" type="Classifier" subsettedProperty="Element-owner DirectedRelationship-source" association="A_generalization_specific"> |
| <ownedComment xmi:id="Generalization-specific-_ownedComment.0" annotatedElement="Generalization-specific"> |
| <body>References the specializing classifier in the Generalization relationship.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="GeneralizationSet" name="GeneralizationSet"> |
| <ownedComment xmi:id="GeneralizationSet-_ownedComment.0" annotatedElement="GeneralizationSet"> |
| <body>A generalization set is a packageable element whose instances define collections of subsets of generalization relationships.</body> |
| </ownedComment> |
| <ownedRule xmi:id="GeneralizationSet-maps_to_generalization_set" name="maps_to_generalization_set" constrainedElement="GeneralizationSet"> |
| <ownedComment xmi:id="GeneralizationSet-maps_to_generalization_set-_ownedComment.0" annotatedElement="GeneralizationSet-maps_to_generalization_set"> |
| <body>The Classifier that maps to a GeneralizationSet may neither be a specific nor a general Classifier in any of the Generalization relationships defined for that GeneralizationSet. In other words, a power type may not be an instance of itself nor may its instances be its subclasses.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="GeneralizationSet-maps_to_generalization_set-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="GeneralizationSet-generalization_same_classifier" name="generalization_same_classifier" constrainedElement="GeneralizationSet"> |
| <ownedComment xmi:id="GeneralizationSet-generalization_same_classifier-_ownedComment.0" annotatedElement="GeneralizationSet-generalization_same_classifier"> |
| <body>Every Generalization associated with a particular GeneralizationSet must have the same general Classifier.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="GeneralizationSet-generalization_same_classifier-_specification"> |
| <language>OCL</language> |
| <body>generalization->collect(g | g.general)->asSet()->size() <= 1</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="GeneralizationSet-_generalization.0" general="PackageableElement"/> |
| <ownedAttribute xmi:id="GeneralizationSet-generalization" name="generalization" visibility="public" type="Generalization" association="A_generalizationSet_generalization"> |
| <ownedComment xmi:id="GeneralizationSet-generalization-_ownedComment.0" annotatedElement="GeneralizationSet-generalization"> |
| <body>Designates the instances of Generalization which are members of a given GeneralizationSet.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="GeneralizationSet-generalization-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="GeneralizationSet-generalization-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="GeneralizationSet-isCovering" name="isCovering" visibility="public"> |
| <ownedComment xmi:id="GeneralizationSet-isCovering-_ownedComment.0" annotatedElement="GeneralizationSet-isCovering"> |
| <body>Indicates (via the associated Generalizations) whether or not the set of specific Classifiers are covering for a particular general classifier. When isCovering is true, every instance of a particular general Classifier is also an instance of at least one of its specific Classifiers for the GeneralizationSet. When isCovering is false, there are one or more instances of the particular general Classifier that are not instances of at least one of its specific Classifiers defined for the GeneralizationSet.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="GeneralizationSet-isCovering-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="GeneralizationSet-isDisjoint" name="isDisjoint" visibility="public"> |
| <ownedComment xmi:id="GeneralizationSet-isDisjoint-_ownedComment.0" annotatedElement="GeneralizationSet-isDisjoint"> |
| <body>Indicates whether or not the set of specific Classifiers in a Generalization relationship have instance in common. If isDisjoint is true, the specific Classifiers for a particular GeneralizationSet have no members in common; that is, their intersection is empty. If isDisjoint is false, the specific Classifiers in a particular GeneralizationSet have one or more members in common; that is, their intersection is not empty. For example, Person could have two Generalization relationships, each with the different specific Classifier: Manager or Staff. This would be disjoint because every instance of Person must either be a Manager or Staff. In contrast, Person could have two Generalization relationships involving two specific (and non-covering) Classifiers: Sales Person and Manager. This GeneralizationSet would not be disjoint because there are instances of Person which can be a Sales Person and a Manager.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="GeneralizationSet-isDisjoint-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="GeneralizationSet-powertype" name="powertype" visibility="public" type="Classifier" association="A_powertypeExtent_powertype"> |
| <ownedComment xmi:id="GeneralizationSet-powertype-_ownedComment.0" annotatedElement="GeneralizationSet-powertype"> |
| <body>Designates the Classifier that is defined as the power type for the associated GeneralizationSet.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="GeneralizationSet-powertype-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Image" name="Image"> |
| <ownedComment xmi:id="Image-_ownedComment.0" annotatedElement="Image"> |
| <body>Physical definition of a graphical image.</body> |
| </ownedComment> |
| <generalization xmi:id="Image-_generalization.0" general="Element"/> |
| <ownedAttribute xmi:id="Image-content" name="content" visibility="public"> |
| <ownedComment xmi:id="Image-content-_ownedComment.0" annotatedElement="Image-content"> |
| <body>This contains the serialization of the image according to the format. The value could represent a bitmap, image such as a GIF file, or drawing 'instructions' using a standard such as Scalable Vector Graphic (SVG) (which is XML based).</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Image-content-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Image-format" name="format" visibility="public"> |
| <ownedComment xmi:id="Image-format-_ownedComment.0" annotatedElement="Image-format"> |
| <body>This indicates the format of the content - which is how the string content should be interpreted. The following values are reserved: SVG, GIF, PNG, JPG, WMF, EMF, BMP. In addition the prefix 'MIME: ' is also reserved. This option can be used as an alternative to express the reserved values above, for example "SVG" could instead be expressed as "MIME: image/svg+xml".</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Image-format-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Image-location" name="location" visibility="public"> |
| <ownedComment xmi:id="Image-location-_ownedComment.0" annotatedElement="Image-location"> |
| <body>This contains a location that can be used by a tool to locate the image as an alternative to embedding it in the stereotype.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Image-location-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Include" name="Include"> |
| <ownedComment xmi:id="Include-_ownedComment.0" annotatedElement="Include"> |
| <body>An include relationship defines that a use case contains the behavior defined in another use case.</body> |
| </ownedComment> |
| <generalization xmi:id="Include-_generalization.0" general="DirectedRelationship"/> |
| <generalization xmi:id="Include-_generalization.1" general="NamedElement"/> |
| <ownedAttribute xmi:id="Include-addition" name="addition" visibility="public" type="UseCase" subsettedProperty="DirectedRelationship-target" association="A_addition_include"> |
| <ownedComment xmi:id="Include-addition-_ownedComment.0" annotatedElement="Include-addition"> |
| <body>References the use case that is to be included.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Include-includingCase" name="includingCase" visibility="public" type="UseCase" subsettedProperty="DirectedRelationship-source NamedElement-namespace" association="A_include_includingCase"> |
| <ownedComment xmi:id="Include-includingCase-_ownedComment.0" annotatedElement="Include-includingCase"> |
| <body>References the use case which will include the addition and owns the include relationship.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="InformationFlow" name="InformationFlow"> |
| <ownedComment xmi:id="InformationFlow-_ownedComment.0" annotatedElement="InformationFlow"> |
| <body>An information flow specifies that one or more information items circulates from its sources to its targets. Information flows require some kind of information channel for transmitting information items from the source to the destination. An information channel is represented in various ways depending on the nature of its sources and targets. It may be represented by connectors, links, associations, or even dependencies. For example, if the source and destination are parts in some composite structure such as a collaboration, then the information channel is likely to be represented by a connector between them. Or, if the source and target are objects (which are a kind of instance specification), they may be represented by a link that joins the two, and so on.</body> |
| </ownedComment> |
| <ownedRule xmi:id="InformationFlow-sources_and_targets_kind" name="sources_and_targets_kind" constrainedElement="InformationFlow"> |
| <ownedComment xmi:id="InformationFlow-sources_and_targets_kind-_ownedComment.0" annotatedElement="InformationFlow-sources_and_targets_kind"> |
| <body>The sources and targets of the information flow can only be one of the following kind: Actor, Node, UseCase, Artifact, Class, Component, Port, Property, Interface, Package, ActivityNode, ActivityPartition and InstanceSpecification except when its classifier is a relationship (i.e. it represents a link).</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InformationFlow-sources_and_targets_kind-_specification"> |
| <language>OCL</language> |
| <body>(self.informationSource->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or |
| oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or |
| oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or |
| oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or |
| oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification))) and |
| (self.informationTarget->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or |
| oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or |
| oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or |
| oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or |
| oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification)))</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InformationFlow-must_conform" name="must_conform" constrainedElement="InformationFlow"> |
| <ownedComment xmi:id="InformationFlow-must_conform-_ownedComment.0" annotatedElement="InformationFlow-must_conform"> |
| <body>The sources and targets of the information flow must conform with the sources and targets or conversely the targets and sources of the realization relationships.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InformationFlow-must_conform-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InformationFlow-convey_classifiers" name="convey_classifiers" constrainedElement="InformationFlow"> |
| <ownedComment xmi:id="InformationFlow-convey_classifiers-_ownedComment.0" annotatedElement="InformationFlow-convey_classifiers"> |
| <body>An information flow can only convey classifiers that are allowed to represent an information item.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InformationFlow-convey_classifiers-_specification"> |
| <language>OCL</language> |
| <body>self.conveyed.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface) |
| or oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component))</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="InformationFlow-_generalization.0" general="DirectedRelationship"/> |
| <generalization xmi:id="InformationFlow-_generalization.1" general="PackageableElement"/> |
| <ownedAttribute xmi:id="InformationFlow-conveyed" name="conveyed" visibility="public" type="Classifier" association="A_conveyed_informationFlow"> |
| <ownedComment xmi:id="InformationFlow-conveyed-_ownedComment.0" annotatedElement="InformationFlow-conveyed"> |
| <body>Specifies the information items that may circulate on this information flow.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InformationFlow-conveyed-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InformationFlow-informationSource" name="informationSource" visibility="public" type="NamedElement" subsettedProperty="DirectedRelationship-source" association="A_informationSource_informationFlow"> |
| <ownedComment xmi:id="InformationFlow-informationSource-_ownedComment.0" annotatedElement="InformationFlow-informationSource"> |
| <body>Defines from which source the conveyed InformationItems are initiated.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InformationFlow-informationSource-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InformationFlow-informationTarget" name="informationTarget" visibility="public" type="NamedElement" subsettedProperty="DirectedRelationship-target" association="A_informationTarget_informationFlow"> |
| <ownedComment xmi:id="InformationFlow-informationTarget-_ownedComment.0" annotatedElement="InformationFlow-informationTarget"> |
| <body>Defines to which target the conveyed InformationItems are directed.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InformationFlow-informationTarget-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InformationFlow-realization" name="realization" visibility="public" type="Relationship" association="A_realization_abstraction_flow"> |
| <ownedComment xmi:id="InformationFlow-realization-_ownedComment.0" annotatedElement="InformationFlow-realization"> |
| <body>Determines which Relationship will realize the specified flow</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InformationFlow-realization-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InformationFlow-realization-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InformationFlow-realizingActivityEdge" name="realizingActivityEdge" visibility="public" type="ActivityEdge" association="A_realizingActivityEdge_informationFlow"> |
| <ownedComment xmi:id="InformationFlow-realizingActivityEdge-_ownedComment.0" annotatedElement="InformationFlow-realizingActivityEdge"> |
| <body>Determines which ActivityEdges will realize the specified flow.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InformationFlow-realizingActivityEdge-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InformationFlow-realizingActivityEdge-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InformationFlow-realizingConnector" name="realizingConnector" visibility="public" type="Connector" association="A_realizingConnector_informationFlow"> |
| <ownedComment xmi:id="InformationFlow-realizingConnector-_ownedComment.0" annotatedElement="InformationFlow-realizingConnector"> |
| <body>Determines which Connectors will realize the specified flow.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InformationFlow-realizingConnector-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InformationFlow-realizingConnector-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InformationFlow-realizingMessage" name="realizingMessage" visibility="public" type="Message" association="A_realizingMessage_informationFlow"> |
| <ownedComment xmi:id="InformationFlow-realizingMessage-_ownedComment.0" annotatedElement="InformationFlow-realizingMessage"> |
| <body>Determines which Messages will realize the specified flow.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InformationFlow-realizingMessage-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InformationFlow-realizingMessage-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="InformationItem" name="InformationItem"> |
| <ownedComment xmi:id="InformationItem-_ownedComment.0" annotatedElement="InformationItem"> |
| <body>An information item is an abstraction of all kinds of information that can be exchanged between objects. It is a kind of classifier intended for representing information in a very abstract way, one which cannot be instantiated.</body> |
| </ownedComment> |
| <ownedRule xmi:id="InformationItem-has_no" name="has_no" constrainedElement="InformationItem"> |
| <ownedComment xmi:id="InformationItem-has_no-_ownedComment.0" annotatedElement="InformationItem-has_no"> |
| <body>An informationItem has no feature, no generalization, and no associations.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InformationItem-has_no-_specification"> |
| <language>OCL</language> |
| <body>self.generalization->isEmpty() and self.feature->isEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InformationItem-not_instantiable" name="not_instantiable" constrainedElement="InformationItem"> |
| <ownedComment xmi:id="InformationItem-not_instantiable-_ownedComment.0" annotatedElement="InformationItem-not_instantiable"> |
| <body>It is not instantiable.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InformationItem-not_instantiable-_specification"> |
| <language>OCL</language> |
| <body>isAbstract</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InformationItem-sources_and_targets" name="sources_and_targets" constrainedElement="InformationItem"> |
| <ownedComment xmi:id="InformationItem-sources_and_targets-_ownedComment.0" annotatedElement="InformationItem-sources_and_targets"> |
| <body>The sources and targets of an information item (its related information flows) must designate subsets of the sources and targets of the representation information item, if any.The Classifiers that can realize an information item can only be of the following kind: Class, Interface, InformationItem, Signal, Component.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InformationItem-sources_and_targets-_specification"> |
| <language>OCL</language> |
| <body>(self.represented->select(p | p->oclIsKindOf(InformationItem))->forAll(p | |
| p.informationFlow.source->forAll(q | self.informationFlow.source->include(q)) and |
| p.informationFlow.target->forAll(q | self.informationFlow.target->include(q)))) and |
| (self.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface) or |
| oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component)))</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="InformationItem-_generalization.0" general="Classifier"/> |
| <ownedAttribute xmi:id="InformationItem-represented" name="represented" visibility="public" type="Classifier" association="A_represented_representation"> |
| <ownedComment xmi:id="InformationItem-represented-_ownedComment.0" annotatedElement="InformationItem-represented"> |
| <body>Determines the classifiers that will specify the structure and nature of the information. An information item represents all its represented classifiers.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InformationItem-represented-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InformationItem-represented-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="InitialNode" name="InitialNode"> |
| <ownedComment xmi:id="InitialNode-_ownedComment.0" annotatedElement="InitialNode"> |
| <body>An initial node is a control node at which flow starts when the activity is invoked.</body> |
| </ownedComment> |
| <ownedRule xmi:id="InitialNode-no_incoming_edges" name="no_incoming_edges" constrainedElement="InitialNode"> |
| <ownedComment xmi:id="InitialNode-no_incoming_edges-_ownedComment.0" annotatedElement="InitialNode-no_incoming_edges"> |
| <body>An initial node has no incoming edges.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InitialNode-no_incoming_edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InitialNode-control_edges" name="control_edges" constrainedElement="InitialNode"> |
| <ownedComment xmi:id="InitialNode-control_edges-_ownedComment.0" annotatedElement="InitialNode-control_edges"> |
| <body>Only control edges can have initial nodes as source.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InitialNode-control_edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="InitialNode-_generalization.0" general="ControlNode"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="InputPin" name="InputPin"> |
| <ownedComment xmi:id="InputPin-_ownedComment.0" annotatedElement="InputPin"> |
| <body>An input pin is a pin that holds input values to be consumed by an action.</body> |
| </ownedComment> |
| <ownedRule xmi:id="InputPin-outgoing_edges_structured_only" name="outgoing_edges_structured_only" constrainedElement="InputPin"> |
| <ownedComment xmi:id="InputPin-outgoing_edges_structured_only-_ownedComment.0" annotatedElement="InputPin-outgoing_edges_structured_only"> |
| <body>Input pins may have outgoing edges only when they are on actions that are structured nodes, and these edges must target a node contained by the structured node.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InputPin-outgoing_edges_structured_only-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="InputPin-_generalization.0" general="Pin"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="InstanceSpecification" name="InstanceSpecification"> |
| <ownedComment xmi:id="InstanceSpecification-_ownedComment.0" annotatedElement="InstanceSpecification"> |
| <body>An instance specification has the capability of being a deployment target in a deployment relationship, in the case that it is an instance of a node. It is also has the capability of being a deployed artifact, if it is an instance of an artifact.</body> |
| </ownedComment> |
| <ownedComment xmi:id="InstanceSpecification-_ownedComment.1" annotatedElement="InstanceSpecification"> |
| <body>An instance specification is a model element that represents an instance in a modeled system.</body> |
| </ownedComment> |
| <ownedRule xmi:id="InstanceSpecification-structural_feature" name="structural_feature" constrainedElement="InstanceSpecification"> |
| <ownedComment xmi:id="InstanceSpecification-structural_feature-_ownedComment.0" annotatedElement="InstanceSpecification-structural_feature"> |
| <body>One structural feature (including the same feature inherited from multiple classifiers) is the defining feature of at most one slot in an instance specification.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InstanceSpecification-structural_feature-_specification"> |
| <language>OCL</language> |
| <body>classifier->forAll(c | (c.allFeatures()->forAll(f | slot->select(s | s.definingFeature = f)->size() <= 1)))</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InstanceSpecification-defining_feature" name="defining_feature" constrainedElement="InstanceSpecification"> |
| <ownedComment xmi:id="InstanceSpecification-defining_feature-_ownedComment.0" annotatedElement="InstanceSpecification-defining_feature"> |
| <body>The defining feature of each slot is a structural feature (directly or inherited) of a classifier of the instance specification.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InstanceSpecification-defining_feature-_specification"> |
| <language>OCL</language> |
| <body>slot->forAll(s | classifier->exists (c | c.allFeatures()->includes (s.definingFeature)))</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InstanceSpecification-deployment_target" name="deployment_target" constrainedElement="InstanceSpecification"> |
| <ownedComment xmi:id="InstanceSpecification-deployment_target-_ownedComment.0" annotatedElement="InstanceSpecification-deployment_target"> |
| <body>An InstanceSpecification can be a DeploymentTarget if it is the instance specification of a Node and functions as a part in the internal structure of an encompassing Node.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InstanceSpecification-deployment_target-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InstanceSpecification-deployment_artifact" name="deployment_artifact" constrainedElement="InstanceSpecification"> |
| <ownedComment xmi:id="InstanceSpecification-deployment_artifact-_ownedComment.0" annotatedElement="InstanceSpecification-deployment_artifact"> |
| <body>An InstanceSpecification can be a DeployedArtifact if it is the instance specification of an Artifact.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InstanceSpecification-deployment_artifact-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="InstanceSpecification-_generalization.0" general="DeployedArtifact"/> |
| <generalization xmi:id="InstanceSpecification-_generalization.1" general="PackageableElement"/> |
| <generalization xmi:id="InstanceSpecification-_generalization.2" general="DeploymentTarget"/> |
| <ownedAttribute xmi:id="InstanceSpecification-classifier" name="classifier" visibility="public" type="Classifier" association="A_classifier_instanceSpecification"> |
| <ownedComment xmi:id="InstanceSpecification-classifier-_ownedComment.0" annotatedElement="InstanceSpecification-classifier"> |
| <body>The classifier or classifiers of the represented instance. If multiple classifiers are specified, the instance is classified by all of them.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InstanceSpecification-classifier-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InstanceSpecification-classifier-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InstanceSpecification-slot" name="slot" visibility="public" type="Slot" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_slot_owningInstance"> |
| <ownedComment xmi:id="InstanceSpecification-slot-_ownedComment.0" annotatedElement="InstanceSpecification-slot"> |
| <body>A slot giving the value or values of a structural feature of the instance. An instance specification can have one slot per structural feature of its classifiers, including inherited features. It is not necessary to model a slot for each structural feature, in which case the instance specification is a partial description.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InstanceSpecification-slot-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InstanceSpecification-slot-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InstanceSpecification-specification" name="specification" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_specification_owningInstanceSpec"> |
| <ownedComment xmi:id="InstanceSpecification-specification-_ownedComment.0" annotatedElement="InstanceSpecification-specification"> |
| <body>A specification of how to compute, derive, or construct the instance.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InstanceSpecification-specification-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="InstanceValue" name="InstanceValue"> |
| <ownedComment xmi:id="InstanceValue-_ownedComment.0" annotatedElement="InstanceValue"> |
| <body>An instance value is a value specification that identifies an instance.</body> |
| </ownedComment> |
| <generalization xmi:id="InstanceValue-_generalization.0" general="ValueSpecification"/> |
| <ownedAttribute xmi:id="InstanceValue-instance" name="instance" visibility="public" type="InstanceSpecification" association="A_instance_instanceValue"> |
| <ownedComment xmi:id="InstanceValue-instance-_ownedComment.0" annotatedElement="InstanceValue-instance"> |
| <body>The instance that is the specified value.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Interaction" name="Interaction"> |
| <ownedComment xmi:id="Interaction-_ownedComment.0" annotatedElement="Interaction"> |
| <body>An interaction is a unit of behavior that focuses on the observable exchange of information between connectable elements.</body> |
| </ownedComment> |
| <generalization xmi:id="Interaction-_generalization.0" general="Behavior"/> |
| <generalization xmi:id="Interaction-_generalization.1" general="InteractionFragment"/> |
| <ownedAttribute xmi:id="Interaction-action" name="action" visibility="public" type="Action" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_action_interaction"> |
| <ownedComment xmi:id="Interaction-action-_ownedComment.0" annotatedElement="Interaction-action"> |
| <body>Actions owned by the Interaction.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Interaction-action-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Interaction-action-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Interaction-formalGate" name="formalGate" visibility="public" type="Gate" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_formalGate_interaction"> |
| <ownedComment xmi:id="Interaction-formalGate-_ownedComment.0" annotatedElement="Interaction-formalGate"> |
| <body>Specifies the gates that form the message interface between this Interaction and any InteractionUses which reference it.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Interaction-formalGate-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Interaction-formalGate-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Interaction-fragment" name="fragment" visibility="public" type="InteractionFragment" isOrdered="true" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_fragment_enclosingInteraction"> |
| <ownedComment xmi:id="Interaction-fragment-_ownedComment.0" annotatedElement="Interaction-fragment"> |
| <body>The ordered set of fragments in the Interaction.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Interaction-fragment-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Interaction-fragment-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Interaction-lifeline" name="lifeline" visibility="public" type="Lifeline" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_lifeline_interaction"> |
| <ownedComment xmi:id="Interaction-lifeline-_ownedComment.0" annotatedElement="Interaction-lifeline"> |
| <body>Specifies the participants in this Interaction.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Interaction-lifeline-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Interaction-lifeline-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Interaction-message" name="message" visibility="public" type="Message" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_message_interaction"> |
| <ownedComment xmi:id="Interaction-message-_ownedComment.0" annotatedElement="Interaction-message"> |
| <body>The Messages contained in this Interaction.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Interaction-message-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Interaction-message-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="InteractionConstraint" name="InteractionConstraint"> |
| <ownedComment xmi:id="InteractionConstraint-_ownedComment.0" annotatedElement="InteractionConstraint"> |
| <body>An interaction constraint is a Boolean expression that guards an operand in a combined fragment.</body> |
| </ownedComment> |
| <ownedRule xmi:id="InteractionConstraint-maxint_positive" name="maxint_positive" constrainedElement="InteractionConstraint"> |
| <ownedComment xmi:id="InteractionConstraint-maxint_positive-_ownedComment.0" annotatedElement="InteractionConstraint-maxint_positive"> |
| <body>If maxint is specified, then the expression must evaluate to a positive integer.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionConstraint-maxint_positive-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InteractionConstraint-minint_maxint" name="minint_maxint" constrainedElement="InteractionConstraint"> |
| <ownedComment xmi:id="InteractionConstraint-minint_maxint-_ownedComment.0" annotatedElement="InteractionConstraint-minint_maxint"> |
| <body>Minint/maxint can only be present if the InteractionConstraint is associated with the operand of a loop CombinedFragment.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionConstraint-minint_maxint-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InteractionConstraint-minint_non_negative" name="minint_non_negative" constrainedElement="InteractionConstraint"> |
| <ownedComment xmi:id="InteractionConstraint-minint_non_negative-_ownedComment.0" annotatedElement="InteractionConstraint-minint_non_negative"> |
| <body>If minint is specified, then the expression must evaluate to a non-negative integer.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionConstraint-minint_non_negative-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InteractionConstraint-global_data" name="global_data" constrainedElement="InteractionConstraint"> |
| <ownedComment xmi:id="InteractionConstraint-global_data-_ownedComment.0" annotatedElement="InteractionConstraint-global_data"> |
| <body>The constraint may contain references to global data or write-once data.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionConstraint-global_data-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InteractionConstraint-maxint_greater_equal_minint" name="maxint_greater_equal_minint" constrainedElement="InteractionConstraint"> |
| <ownedComment xmi:id="InteractionConstraint-maxint_greater_equal_minint-_ownedComment.0" annotatedElement="InteractionConstraint-maxint_greater_equal_minint"> |
| <body>If maxint is specified, then minint must be specified and the evaluation of maxint must be >= the evaluation of minint</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionConstraint-maxint_greater_equal_minint-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InteractionConstraint-dynamic_variables" name="dynamic_variables" constrainedElement="InteractionConstraint"> |
| <ownedComment xmi:id="InteractionConstraint-dynamic_variables-_ownedComment.0" annotatedElement="InteractionConstraint-dynamic_variables"> |
| <body>The dynamic variables that take part in the constraint must be owned by the ConnectableElement corresponding to the covered Lifeline.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionConstraint-dynamic_variables-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="InteractionConstraint-_generalization.0" general="Constraint"/> |
| <ownedAttribute xmi:id="InteractionConstraint-maxint" name="maxint" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_maxint_interactionConstraint"> |
| <ownedComment xmi:id="InteractionConstraint-maxint-_ownedComment.0" annotatedElement="InteractionConstraint-maxint"> |
| <body>The maximum number of iterations of a loop</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InteractionConstraint-maxint-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InteractionConstraint-minint" name="minint" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_minint_interactionConstraint"> |
| <ownedComment xmi:id="InteractionConstraint-minint-_ownedComment.0" annotatedElement="InteractionConstraint-minint"> |
| <body>The minimum number of iterations of a loop</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InteractionConstraint-minint-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="InteractionFragment" name="InteractionFragment" isAbstract="true"> |
| <ownedComment xmi:id="InteractionFragment-_ownedComment.0" annotatedElement="InteractionFragment"> |
| <body>InteractionFragment is an abstract notion of the most general interaction unit. An interaction fragment is a piece of an interaction. Each interaction fragment is conceptually like an interaction by itself.</body> |
| </ownedComment> |
| <generalization xmi:id="InteractionFragment-_generalization.0" general="NamedElement"/> |
| <ownedAttribute xmi:id="InteractionFragment-covered" name="covered" visibility="public" type="Lifeline" association="A_covered_coveredBy"> |
| <ownedComment xmi:id="InteractionFragment-covered-_ownedComment.0" annotatedElement="InteractionFragment-covered"> |
| <body>References the Lifelines that the InteractionFragment involves.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InteractionFragment-covered-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InteractionFragment-covered-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InteractionFragment-enclosingInteraction" name="enclosingInteraction" visibility="public" type="Interaction" subsettedProperty="NamedElement-namespace" association="A_fragment_enclosingInteraction"> |
| <ownedComment xmi:id="InteractionFragment-enclosingInteraction-_ownedComment.0" annotatedElement="InteractionFragment-enclosingInteraction"> |
| <body>The Interaction enclosing this InteractionFragment.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InteractionFragment-enclosingInteraction-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InteractionFragment-enclosingOperand" name="enclosingOperand" visibility="public" type="InteractionOperand" subsettedProperty="NamedElement-namespace" association="A_fragment_enclosingOperand"> |
| <ownedComment xmi:id="InteractionFragment-enclosingOperand-_ownedComment.0" annotatedElement="InteractionFragment-enclosingOperand"> |
| <body>The operand enclosing this InteractionFragment (they may nest recursively)</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InteractionFragment-enclosingOperand-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InteractionFragment-generalOrdering" name="generalOrdering" visibility="public" type="GeneralOrdering" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_generalOrdering_interactionFragment"> |
| <ownedComment xmi:id="InteractionFragment-generalOrdering-_ownedComment.0" annotatedElement="InteractionFragment-generalOrdering"> |
| <body>The general ordering relationships contained in this fragment.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InteractionFragment-generalOrdering-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InteractionFragment-generalOrdering-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="InteractionOperand" name="InteractionOperand"> |
| <ownedComment xmi:id="InteractionOperand-_ownedComment.0" annotatedElement="InteractionOperand"> |
| <body>An interaction operand is contained in a combined fragment. An interaction operand represents one operand of the expression given by the enclosing combined fragment.</body> |
| </ownedComment> |
| <ownedRule xmi:id="InteractionOperand-guard_directly_prior" name="guard_directly_prior" constrainedElement="InteractionOperand"> |
| <ownedComment xmi:id="InteractionOperand-guard_directly_prior-_ownedComment.0" annotatedElement="InteractionOperand-guard_directly_prior"> |
| <body>The guard must be placed directly prior to (above) the OccurrenceSpecification that will become the first OccurrenceSpecification within this InteractionOperand.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionOperand-guard_directly_prior-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InteractionOperand-guard_contain_references" name="guard_contain_references" constrainedElement="InteractionOperand"> |
| <ownedComment xmi:id="InteractionOperand-guard_contain_references-_ownedComment.0" annotatedElement="InteractionOperand-guard_contain_references"> |
| <body>The guard must contain only references to values local to the Lifeline on which it resides, or values global to the whole Interaction.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionOperand-guard_contain_references-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="InteractionOperand-_generalization.0" general="InteractionFragment"/> |
| <generalization xmi:id="InteractionOperand-_generalization.1" general="Namespace"/> |
| <ownedAttribute xmi:id="InteractionOperand-fragment" name="fragment" visibility="public" type="InteractionFragment" isOrdered="true" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_fragment_enclosingOperand"> |
| <ownedComment xmi:id="InteractionOperand-fragment-_ownedComment.0" annotatedElement="InteractionOperand-fragment"> |
| <body>The fragments of the operand.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InteractionOperand-fragment-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InteractionOperand-fragment-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InteractionOperand-guard" name="guard" visibility="public" type="InteractionConstraint" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_guard_interactionOperand"> |
| <ownedComment xmi:id="InteractionOperand-guard-_ownedComment.0" annotatedElement="InteractionOperand-guard"> |
| <body>Constraint of the operand.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InteractionOperand-guard-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="InteractionUse" name="InteractionUse"> |
| <ownedComment xmi:id="InteractionUse-_ownedComment.0" annotatedElement="InteractionUse"> |
| <body>An interaction use refers to an interaction. The interaction use is a shorthand for copying the contents of the referenced interaction where the interaction use is. To be accurate the copying must take into account substituting parameters with arguments and connect the formal gates with the actual ones.</body> |
| </ownedComment> |
| <ownedRule xmi:id="InteractionUse-all_lifelines" name="all_lifelines" constrainedElement="InteractionUse"> |
| <ownedComment xmi:id="InteractionUse-all_lifelines-_ownedComment.0" annotatedElement="InteractionUse-all_lifelines"> |
| <body>The InteractionUse must cover all Lifelines of the enclosing Interaction that represent the same properties as lifelines within the referred Interaction.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionUse-all_lifelines-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InteractionUse-returnValueRecipient_coverage" name="returnValueRecipient_coverage" constrainedElement="InteractionUse"> |
| <ownedComment xmi:id="InteractionUse-returnValueRecipient_coverage-_ownedComment.0" annotatedElement="InteractionUse-returnValueRecipient_coverage"> |
| <body>The returnValueRecipient must be a Property of a ConnectableElement that is represented by a Lifeline covered by this InteractionUse.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionUse-returnValueRecipient_coverage-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InteractionUse-arguments_correspond_to_parameters" name="arguments_correspond_to_parameters" constrainedElement="InteractionUse"> |
| <ownedComment xmi:id="InteractionUse-arguments_correspond_to_parameters-_ownedComment.0" annotatedElement="InteractionUse-arguments_correspond_to_parameters"> |
| <body>The arguments of the InteractionUse must correspond to parameters of the referred Interaction</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionUse-arguments_correspond_to_parameters-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InteractionUse-gates_match" name="gates_match" constrainedElement="InteractionUse"> |
| <ownedComment xmi:id="InteractionUse-gates_match-_ownedComment.0" annotatedElement="InteractionUse-gates_match"> |
| <body>Actual Gates of the InteractionUse must match Formal Gates of the referred Interaction. Gates match when their names are equal.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionUse-gates_match-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InteractionUse-arguments_are_constants" name="arguments_are_constants" constrainedElement="InteractionUse"> |
| <ownedComment xmi:id="InteractionUse-arguments_are_constants-_ownedComment.0" annotatedElement="InteractionUse-arguments_are_constants"> |
| <body>The arguments must only be constants, parameters of the enclosing Interaction or attributes of the classifier owning the enclosing Interaction.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionUse-arguments_are_constants-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="InteractionUse-returnValue_type_recipient_correspondence" name="returnValue_type_recipient_correspondence" constrainedElement="InteractionUse"> |
| <ownedComment xmi:id="InteractionUse-returnValue_type_recipient_correspondence-_ownedComment.0" annotatedElement="InteractionUse-returnValue_type_recipient_correspondence"> |
| <body>The type of the returnValue must correspond to the type of the returnValueRecipient.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InteractionUse-returnValue_type_recipient_correspondence-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="InteractionUse-_generalization.0" general="InteractionFragment"/> |
| <ownedAttribute xmi:id="InteractionUse-actualGate" name="actualGate" visibility="public" type="Gate" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_actualGate_interactionUse"> |
| <ownedComment xmi:id="InteractionUse-actualGate-_ownedComment.0" annotatedElement="InteractionUse-actualGate"> |
| <body>The actual gates of the InteractionUse</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InteractionUse-actualGate-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InteractionUse-actualGate-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InteractionUse-argument" name="argument" visibility="public" type="ValueSpecification" isOrdered="true" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_argument_interactionUse"> |
| <ownedComment xmi:id="InteractionUse-argument-_ownedComment.0" annotatedElement="InteractionUse-argument"> |
| <body>The actual arguments of the Interaction</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InteractionUse-argument-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InteractionUse-argument-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InteractionUse-refersTo" name="refersTo" visibility="public" type="Interaction" association="A_refersTo_interactionUse"> |
| <ownedComment xmi:id="InteractionUse-refersTo-_ownedComment.0" annotatedElement="InteractionUse-refersTo"> |
| <body>Refers to the Interaction that defines its meaning</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InteractionUse-returnValue" name="returnValue" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_returnValue_interactionUse"> |
| <ownedComment xmi:id="InteractionUse-returnValue-_ownedComment.0" annotatedElement="InteractionUse-returnValue"> |
| <body>The value of the executed Interaction.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InteractionUse-returnValue-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InteractionUse-returnValueRecipient" name="returnValueRecipient" visibility="public" type="Property" association="A_returnValueRecipient_interactionUse"> |
| <ownedComment xmi:id="InteractionUse-returnValueRecipient-_ownedComment.0" annotatedElement="InteractionUse-returnValueRecipient"> |
| <body>The recipient of the return value.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InteractionUse-returnValueRecipient-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Interface" name="Interface"> |
| <ownedComment xmi:id="Interface-_ownedComment.0" annotatedElement="Interface"> |
| <body>Since an interface specifies conformance characteristics, it does not own detailed behavior specifications. Instead, interfaces may own a protocol state machine that specifies event sequences and pre/post conditions for the operations and receptions described by the interface.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Interface-_ownedComment.1" annotatedElement="Interface"> |
| <body>Interfaces may include receptions (in addition to operations).</body> |
| </ownedComment> |
| <ownedComment xmi:id="Interface-_ownedComment.2" annotatedElement="Interface"> |
| <body>An interface is a kind of classifier that represents a declaration of a set of coherent public features and obligations. An interface specifies a contract; any instance of a classifier that realizes the interface must fulfill that contract. The obligations that may be associated with an interface are in the form of various kinds of constraints (such as pre- and post-conditions) or protocol specifications, which may impose ordering restrictions on interactions through the interface.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Interface-visibility" name="visibility" constrainedElement="Interface"> |
| <ownedComment xmi:id="Interface-visibility-_ownedComment.0" annotatedElement="Interface-visibility"> |
| <body>The visibility of all features owned by an interface must be public.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Interface-visibility-_specification"> |
| <language>OCL</language> |
| <body>self.feature->forAll(f | f.visibility = #public)</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Interface-_generalization.0" general="Classifier"/> |
| <ownedAttribute xmi:id="Interface-nestedClassifier" name="nestedClassifier" visibility="public" type="Classifier" isOrdered="true" aggregation="composite" subsettedProperty="A_redefinitionContext_redefinableElement-redefinableElement Namespace-ownedMember" association="A_nestedClassifier_interface"> |
| <ownedComment xmi:id="Interface-nestedClassifier-_ownedComment.0" annotatedElement="Interface-nestedClassifier"> |
| <body>References all the Classifiers that are defined (nested) within the Class.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Interface-nestedClassifier-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Interface-nestedClassifier-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Interface-ownedAttribute" name="ownedAttribute" visibility="public" type="Property" isOrdered="true" aggregation="composite" subsettedProperty="Namespace-ownedMember Classifier-attribute" association="A_ownedAttribute_interface"> |
| <ownedComment xmi:id="Interface-ownedAttribute-_ownedComment.0" annotatedElement="Interface-ownedAttribute"> |
| <body>The attributes (i.e. the properties) owned by the class.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Interface-ownedAttribute-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Interface-ownedAttribute-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Interface-ownedOperation" name="ownedOperation" visibility="public" type="Operation" isOrdered="true" aggregation="composite" subsettedProperty="Classifier-feature A_redefinitionContext_redefinableElement-redefinableElement Namespace-ownedMember" association="A_ownedOperation_interface"> |
| <ownedComment xmi:id="Interface-ownedOperation-_ownedComment.0" annotatedElement="Interface-ownedOperation"> |
| <body>The operations owned by the class.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Interface-ownedOperation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Interface-ownedOperation-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Interface-ownedReception" name="ownedReception" visibility="public" type="Reception" aggregation="composite" subsettedProperty="Classifier-feature Namespace-ownedMember" association="A_ownedReception_interface"> |
| <ownedComment xmi:id="Interface-ownedReception-_ownedComment.0" annotatedElement="Interface-ownedReception"> |
| <body>Receptions that objects providing this interface are willing to accept.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Interface-ownedReception-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Interface-ownedReception-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Interface-protocol" name="protocol" visibility="public" type="ProtocolStateMachine" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_protocol_interface"> |
| <ownedComment xmi:id="Interface-protocol-_ownedComment.0" annotatedElement="Interface-protocol"> |
| <body>References a protocol state machine specifying the legal sequences of the invocation of the behavioral features described in the interface.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Interface-protocol-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Interface-redefinedInterface" name="redefinedInterface" visibility="public" type="Interface" subsettedProperty="Classifier-redefinedClassifier" association="A_redefinedInterface_interface"> |
| <ownedComment xmi:id="Interface-redefinedInterface-_ownedComment.0" annotatedElement="Interface-redefinedInterface"> |
| <body>References all the Interfaces redefined by this Interface.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Interface-redefinedInterface-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Interface-redefinedInterface-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="InterfaceRealization" name="InterfaceRealization"> |
| <ownedComment xmi:id="InterfaceRealization-_ownedComment.0" annotatedElement="InterfaceRealization"> |
| <body>An interface realization is a specialized realization relationship between a classifier and an interface. This relationship signifies that the realizing classifier conforms to the contract specified by the interface.</body> |
| </ownedComment> |
| <generalization xmi:id="InterfaceRealization-_generalization.0" general="Realization"/> |
| <ownedAttribute xmi:id="InterfaceRealization-contract" name="contract" visibility="public" type="Interface" subsettedProperty="Dependency-supplier" association="A_contract_interfaceRealization"> |
| <ownedComment xmi:id="InterfaceRealization-contract-_ownedComment.0" annotatedElement="InterfaceRealization-contract"> |
| <body>References the Interface specifying the conformance contract.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InterfaceRealization-implementingClassifier" name="implementingClassifier" visibility="public" type="BehavioredClassifier" subsettedProperty="Element-owner Dependency-client" association="A_interfaceRealization_implementingClassifier"> |
| <ownedComment xmi:id="InterfaceRealization-implementingClassifier-_ownedComment.0" annotatedElement="InterfaceRealization-implementingClassifier"> |
| <body>References the BehavioredClassifier that owns this Interfacerealization (i.e., the classifier that realizes the Interface to which it points).</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="InterruptibleActivityRegion" name="InterruptibleActivityRegion"> |
| <ownedComment xmi:id="InterruptibleActivityRegion-_ownedComment.0" annotatedElement="InterruptibleActivityRegion"> |
| <body>An interruptible activity region is an activity group that supports termination of tokens flowing in the portions of an activity.</body> |
| </ownedComment> |
| <ownedRule xmi:id="InterruptibleActivityRegion-interrupting_edges" name="interrupting_edges" constrainedElement="InterruptibleActivityRegion"> |
| <ownedComment xmi:id="InterruptibleActivityRegion-interrupting_edges-_ownedComment.0" annotatedElement="InterruptibleActivityRegion-interrupting_edges"> |
| <body>Interrupting edges of a region must have their source node in the region and their target node outside the region in the same activity containing the region.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InterruptibleActivityRegion-interrupting_edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="InterruptibleActivityRegion-_generalization.0" general="ActivityGroup"/> |
| <ownedAttribute xmi:id="InterruptibleActivityRegion-interruptingEdge" name="interruptingEdge" visibility="public" type="ActivityEdge" association="A_interruptingEdge_interrupts"> |
| <ownedComment xmi:id="InterruptibleActivityRegion-interruptingEdge-_ownedComment.0" annotatedElement="InterruptibleActivityRegion-interruptingEdge"> |
| <body>The edges leaving the region that will abort other tokens flowing in the region.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InterruptibleActivityRegion-interruptingEdge-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InterruptibleActivityRegion-interruptingEdge-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InterruptibleActivityRegion-node" name="node" visibility="public" type="ActivityNode" subsettedProperty="ActivityGroup-containedNode" association="A_inInterruptibleRegion_node"> |
| <ownedComment xmi:id="InterruptibleActivityRegion-node-_ownedComment.0" annotatedElement="InterruptibleActivityRegion-node"> |
| <body>Nodes immediately contained in the group.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InterruptibleActivityRegion-node-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InterruptibleActivityRegion-node-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Interval" name="Interval"> |
| <ownedComment xmi:id="Interval-_ownedComment.0" annotatedElement="Interval"> |
| <body>An interval defines the range between two value specifications.</body> |
| </ownedComment> |
| <generalization xmi:id="Interval-_generalization.0" general="ValueSpecification"/> |
| <ownedAttribute xmi:id="Interval-max" name="max" visibility="public" type="ValueSpecification" association="A_max_interval"> |
| <ownedComment xmi:id="Interval-max-_ownedComment.0" annotatedElement="Interval-max"> |
| <body>Refers to the ValueSpecification denoting the maximum value of the range.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Interval-min" name="min" visibility="public" type="ValueSpecification" association="A_min_interval"> |
| <ownedComment xmi:id="Interval-min-_ownedComment.0" annotatedElement="Interval-min"> |
| <body>Refers to the ValueSpecification denoting the minimum value of the range.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="IntervalConstraint" name="IntervalConstraint"> |
| <ownedComment xmi:id="IntervalConstraint-_ownedComment.0" annotatedElement="IntervalConstraint"> |
| <body>An interval constraint is a constraint that refers to an interval.</body> |
| </ownedComment> |
| <generalization xmi:id="IntervalConstraint-_generalization.0" general="Constraint"/> |
| <ownedAttribute xmi:id="IntervalConstraint-specification" name="specification" visibility="public" type="Interval" aggregation="composite" redefinedProperty="Constraint-specification" association="A_specification_intervalConstraint"> |
| <ownedComment xmi:id="IntervalConstraint-specification-_ownedComment.0" annotatedElement="IntervalConstraint-specification"> |
| <body>A condition that must be true when evaluated in order for the constraint to be satisfied.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="InvocationAction" name="InvocationAction" isAbstract="true"> |
| <ownedComment xmi:id="InvocationAction-_ownedComment.0" annotatedElement="InvocationAction"> |
| <body>InvocationAction is an abstract class for the various actions that invoke behavior.</body> |
| </ownedComment> |
| <ownedComment xmi:id="InvocationAction-_ownedComment.1" annotatedElement="InvocationAction"> |
| <body>In addition to targeting an object, invocation actions can also invoke behavioral features on ports from where the invocation requests are routed onwards on links deriving from attached connectors. Invocation actions may also be sent to a target via a given port, either on the sending object or on another object.</body> |
| </ownedComment> |
| <ownedRule xmi:id="InvocationAction-on_port_receiver" name="on_port_receiver" constrainedElement="InvocationAction"> |
| <ownedComment xmi:id="InvocationAction-on_port_receiver-_ownedComment.0" annotatedElement="InvocationAction-on_port_receiver"> |
| <body>The onPort must be a port on the receiver object.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="InvocationAction-on_port_receiver-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="InvocationAction-_generalization.0" general="Action"/> |
| <ownedAttribute xmi:id="InvocationAction-argument" name="argument" visibility="public" type="InputPin" isOrdered="true" aggregation="composite" subsettedProperty="Action-input" association="A_argument_invocationAction"> |
| <ownedComment xmi:id="InvocationAction-argument-_ownedComment.0" annotatedElement="InvocationAction-argument"> |
| <body>Specification of the ordered set of argument values that appears during execution.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InvocationAction-argument-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="InvocationAction-argument-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="InvocationAction-onPort" name="onPort" visibility="public" type="Port" association="A_onPort_invocationAction"> |
| <ownedComment xmi:id="InvocationAction-onPort-_ownedComment.0" annotatedElement="InvocationAction-onPort"> |
| <body>A optional port of the receiver object on which the behavioral feature is invoked.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="InvocationAction-onPort-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="JoinNode" name="JoinNode"> |
| <ownedComment xmi:id="JoinNode-_ownedComment.0" annotatedElement="JoinNode"> |
| <body>A join node is a control node that synchronizes multiple flows.</body> |
| </ownedComment> |
| <ownedComment xmi:id="JoinNode-_ownedComment.1" annotatedElement="JoinNode"> |
| <body>Join nodes have a Boolean value specification using the names of the incoming edges to specify the conditions under which the join will emit a token.</body> |
| </ownedComment> |
| <ownedRule xmi:id="JoinNode-one_outgoing_edge" name="one_outgoing_edge" constrainedElement="JoinNode"> |
| <ownedComment xmi:id="JoinNode-one_outgoing_edge-_ownedComment.0" annotatedElement="JoinNode-one_outgoing_edge"> |
| <body>A join node has one outgoing edge.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="JoinNode-one_outgoing_edge-_specification"> |
| <language>OCL</language> |
| <body>self.outgoing->size() = 1</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="JoinNode-incoming_object_flow" name="incoming_object_flow" constrainedElement="JoinNode"> |
| <ownedComment xmi:id="JoinNode-incoming_object_flow-_ownedComment.0" annotatedElement="JoinNode-incoming_object_flow"> |
| <body>If a join node has an incoming object flow, it must have an outgoing object flow, otherwise, it must have an outgoing control flow.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="JoinNode-incoming_object_flow-_specification"> |
| <language>OCL</language> |
| <body>(self.incoming.select(e | e.isTypeOf(ObjectFlow)->notEmpty() implies |
| self.outgoing.isTypeOf(ObjectFlow)) and |
| (self.incoming.select(e | e.isTypeOf(ObjectFlow)->empty() implies |
| self.outgoing.isTypeOf(ControlFlow))</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="JoinNode-_generalization.0" general="ControlNode"/> |
| <ownedAttribute xmi:id="JoinNode-isCombineDuplicate" name="isCombineDuplicate" visibility="public"> |
| <ownedComment xmi:id="JoinNode-isCombineDuplicate-_ownedComment.0" annotatedElement="JoinNode-isCombineDuplicate"> |
| <body>Tells whether tokens having objects with the same identity are combined into one by the join.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="JoinNode-isCombineDuplicate-_defaultValue" value="true"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="JoinNode-joinSpec" name="joinSpec" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_joinSpec_joinNode"> |
| <ownedComment xmi:id="JoinNode-joinSpec-_ownedComment.0" annotatedElement="JoinNode-joinSpec"> |
| <body>A specification giving the conditions under which the join with emit a token. Default is "and".</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Lifeline" name="Lifeline"> |
| <ownedComment xmi:id="Lifeline-_ownedComment.0" annotatedElement="Lifeline"> |
| <body>A lifeline represents an individual participant in the interaction. While parts and structural features may have multiplicity greater than 1, lifelines represent only one interacting entity.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Lifeline-interaction_uses_share_lifeline" name="interaction_uses_share_lifeline" constrainedElement="Lifeline"> |
| <ownedComment xmi:id="Lifeline-interaction_uses_share_lifeline-_ownedComment.0" annotatedElement="Lifeline-interaction_uses_share_lifeline"> |
| <body>If two (or more) InteractionUses within one Interaction, refer to Interactions with 'common Lifelines,' those Lifelines must also appear in the Interaction with the InteractionUses. By common Lifelines we mean Lifelines with the same selector and represents associations.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Lifeline-interaction_uses_share_lifeline-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Lifeline-same_classifier" name="same_classifier" constrainedElement="Lifeline"> |
| <ownedComment xmi:id="Lifeline-same_classifier-_ownedComment.0" annotatedElement="Lifeline-same_classifier"> |
| <body>The classifier containing the referenced ConnectableElement must be the same classifier, or an ancestor, of the classifier that contains the interaction enclosing this lifeline.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Lifeline-same_classifier-_specification"> |
| <language>OCL</language> |
| <body>if (represents->notEmpty()) then |
| (if selector->notEmpty() then represents.isMultivalued() else not represents.isMultivalued()) |
| </body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Lifeline-selector_specified" name="selector_specified" constrainedElement="Lifeline"> |
| <ownedComment xmi:id="Lifeline-selector_specified-_ownedComment.0" annotatedElement="Lifeline-selector_specified"> |
| <body>The selector for a Lifeline must only be specified if the referenced Part is multivalued.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Lifeline-selector_specified-_specification"> |
| <language>OCL</language> |
| <body>(self.selector->isEmpty() implies not self.represents.isMultivalued()) or |
| (not self.selector->isEmpty() implies self.represents.isMultivalued()) |
| </body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Lifeline-_generalization.0" general="NamedElement"/> |
| <ownedAttribute xmi:id="Lifeline-coveredBy" name="coveredBy" visibility="public" type="InteractionFragment" association="A_covered_coveredBy"> |
| <ownedComment xmi:id="Lifeline-coveredBy-_ownedComment.0" annotatedElement="Lifeline-coveredBy"> |
| <body>References the InteractionFragments in which this Lifeline takes part.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Lifeline-coveredBy-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Lifeline-coveredBy-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Lifeline-decomposedAs" name="decomposedAs" visibility="public" type="PartDecomposition" association="A_decomposedAs_lifeline"> |
| <ownedComment xmi:id="Lifeline-decomposedAs-_ownedComment.0" annotatedElement="Lifeline-decomposedAs"> |
| <body>References the Interaction that represents the decomposition.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Lifeline-decomposedAs-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Lifeline-interaction" name="interaction" visibility="public" type="Interaction" subsettedProperty="NamedElement-namespace" association="A_lifeline_interaction"> |
| <ownedComment xmi:id="Lifeline-interaction-_ownedComment.0" annotatedElement="Lifeline-interaction"> |
| <body>References the Interaction enclosing this Lifeline.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Lifeline-represents" name="represents" visibility="public" type="ConnectableElement" association="A_represents_lifeline"> |
| <ownedComment xmi:id="Lifeline-represents-_ownedComment.0" annotatedElement="Lifeline-represents"> |
| <body>References the ConnectableElement within the classifier that contains the enclosing interaction.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Lifeline-represents-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Lifeline-selector" name="selector" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_selector_lifeline"> |
| <ownedComment xmi:id="Lifeline-selector-_ownedComment.0" annotatedElement="Lifeline-selector"> |
| <body>If the referenced ConnectableElement is multivalued, then this specifies the specific individual part within that set.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Lifeline-selector-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="LinkAction" name="LinkAction" isAbstract="true"> |
| <ownedComment xmi:id="LinkAction-_ownedComment.0" annotatedElement="LinkAction"> |
| <body>LinkAction is an abstract class for all link actions that identify their links by the objects at the ends of the links and by the qualifiers at ends of the links.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LinkAction-same_pins" name="same_pins" constrainedElement="LinkAction"> |
| <ownedComment xmi:id="LinkAction-same_pins-_ownedComment.0" annotatedElement="LinkAction-same_pins"> |
| <body>The input pins of the action are the same as the pins of the link end data and insertion pins.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LinkAction-same_pins-_specification"> |
| <language>OCL</language> |
| <body>self.input->asSet() = |
| let ledpins : Set = self.endData->collect(value) in |
| if self.oclIsKindOf(LinkEndCreationData) |
| then ledpins->union(self.endData.oclAsType(LinkEndCreationData).insertAt) |
| else ledpins |
| </body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="LinkAction-same_association" name="same_association" constrainedElement="LinkAction"> |
| <ownedComment xmi:id="LinkAction-same_association-_ownedComment.0" annotatedElement="LinkAction-same_association"> |
| <body>The association ends of the link end data must all be from the same association and include all and only the association ends of that association.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LinkAction-same_association-_specification"> |
| <language>OCL</language> |
| <body>self.endData->collect(end) = self.association()->collect(connection))</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="LinkAction-not_static" name="not_static" constrainedElement="LinkAction"> |
| <ownedComment xmi:id="LinkAction-not_static-_ownedComment.0" annotatedElement="LinkAction-not_static"> |
| <body>The association ends of the link end data must not be static.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LinkAction-not_static-_specification"> |
| <language>OCL</language> |
| <body>self.endData->forall(end.oclisKindOf(NavigableEnd) implies end.isStatic = #false</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="LinkAction-_generalization.0" general="Action"/> |
| <ownedAttribute xmi:id="LinkAction-endData" name="endData" visibility="public" type="LinkEndData" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_endData_linkAction"> |
| <ownedComment xmi:id="LinkAction-endData-_ownedComment.0" annotatedElement="LinkAction-endData"> |
| <body>Data identifying one end of a link by the objects on its ends and qualifiers.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="LinkAction-endData-_lowerValue" value="2"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="LinkAction-endData-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="LinkAction-inputValue" name="inputValue" visibility="public" type="InputPin" aggregation="composite" subsettedProperty="Action-input" association="A_inputValue_linkAction"> |
| <ownedComment xmi:id="LinkAction-inputValue-_ownedComment.0" annotatedElement="LinkAction-inputValue"> |
| <body>Pins taking end objects and qualifier values as input.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="LinkAction-inputValue-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="LinkAction-association" name="association" visibility="public" bodyCondition="LinkAction-association-spec" isQuery="true"> |
| <ownedComment xmi:id="LinkAction-association-_ownedComment.0" annotatedElement="LinkAction-association"> |
| <body>The association operates on LinkAction. It returns the association of the action.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LinkAction-association-spec" name="spec" constrainedElement="LinkAction-association"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LinkAction-association-spec-_specification"> |
| <language>OCL</language> |
| <body>result = self.endData->asSequence().first().end.association</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="LinkAction-association-result" name="result" visibility="public" type="Association" direction="return"/> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="LinkEndCreationData" name="LinkEndCreationData"> |
| <ownedComment xmi:id="LinkEndCreationData-_ownedComment.0" annotatedElement="LinkEndCreationData"> |
| <body>A link end creation data is not an action. It is an element that identifies links. It identifies one end of a link to be created by a create link action.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LinkEndCreationData-create_link_action" name="create_link_action" constrainedElement="LinkEndCreationData"> |
| <ownedComment xmi:id="LinkEndCreationData-create_link_action-_ownedComment.0" annotatedElement="LinkEndCreationData-create_link_action"> |
| <body>LinkEndCreationData can only be end data for CreateLinkAction or one of its specializations.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LinkEndCreationData-create_link_action-_specification"> |
| <language>OCL</language> |
| <body>self.LinkAction.oclIsKindOf(CreateLinkAction)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="LinkEndCreationData-single_input_pin" name="single_input_pin" constrainedElement="LinkEndCreationData"> |
| <ownedComment xmi:id="LinkEndCreationData-single_input_pin-_ownedComment.0" annotatedElement="LinkEndCreationData-single_input_pin"> |
| <body>Link end creation data for ordered association ends must have a single input pin for the insertion point with type UnlimitedNatural and multiplicity of 1..1, otherwise the action has no input pin for the insertion point.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LinkEndCreationData-single_input_pin-_specification"> |
| <language>OCL</language> |
| <body>let insertAtPins : Collection = self.insertAt in |
| if self.end.ordering = #unordered |
| then insertAtPins->size() = 0 |
| else let insertAtPin : InputPin = insertAts->asSequence()->first() in |
| insertAtPins->size() = 1 |
| and insertAtPin.type = UnlimitedNatural |
| and insertAtPin.multiplicity.is(1,1)) |
| endif |
| </body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="LinkEndCreationData-_generalization.0" general="LinkEndData"/> |
| <ownedAttribute xmi:id="LinkEndCreationData-insertAt" name="insertAt" visibility="public" type="InputPin" association="A_insertAt_linkEndCreationData"> |
| <ownedComment xmi:id="LinkEndCreationData-insertAt-_ownedComment.0" annotatedElement="LinkEndCreationData-insertAt"> |
| <body>Specifies where the new link should be inserted for ordered association ends, or where an existing link should be moved to. The type of the input is UnlimitedNatural, but the input cannot be zero. This pin is omitted for association ends that are not ordered.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="LinkEndCreationData-insertAt-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="LinkEndCreationData-isReplaceAll" name="isReplaceAll" visibility="public"> |
| <ownedComment xmi:id="LinkEndCreationData-isReplaceAll-_ownedComment.0" annotatedElement="LinkEndCreationData-isReplaceAll"> |
| <body>Specifies whether the existing links emanating from the object on this end should be destroyed before creating a new link.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="LinkEndCreationData-isReplaceAll-_defaultValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="LinkEndData" name="LinkEndData"> |
| <ownedComment xmi:id="LinkEndData-_ownedComment.0" annotatedElement="LinkEndData"> |
| <body>A link end data is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of a link action. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the statically-specified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around a link end data. Each association end is identified separately with an instance of the LinkEndData class.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LinkEndData-property_is_association_end" name="property_is_association_end" constrainedElement="LinkEndData"> |
| <ownedComment xmi:id="LinkEndData-property_is_association_end-_ownedComment.0" annotatedElement="LinkEndData-property_is_association_end"> |
| <body>The property must be an association end.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LinkEndData-property_is_association_end-_specification"> |
| <language>OCL</language> |
| <body>self.end.association->size() = 1</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="LinkEndData-end_object_input_pin" name="end_object_input_pin" constrainedElement="LinkEndData"> |
| <ownedComment xmi:id="LinkEndData-end_object_input_pin-_ownedComment.0" annotatedElement="LinkEndData-end_object_input_pin"> |
| <body>The end object input pin is not also a qualifier value input pin.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LinkEndData-end_object_input_pin-_specification"> |
| <language>OCL</language> |
| <body>self.value->excludesAll(self.qualifier.value)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="LinkEndData-same_type" name="same_type" constrainedElement="LinkEndData"> |
| <ownedComment xmi:id="LinkEndData-same_type-_ownedComment.0" annotatedElement="LinkEndData-same_type"> |
| <body>The type of the end object input pin is the same as the type of the association end.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LinkEndData-same_type-_specification"> |
| <language>OCL</language> |
| <body>self.value.type = self.end.type</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="LinkEndData-multiplicity" name="multiplicity" constrainedElement="LinkEndData"> |
| <ownedComment xmi:id="LinkEndData-multiplicity-_ownedComment.0" annotatedElement="LinkEndData-multiplicity"> |
| <body>The multiplicity of the end object input pin must be 1..1.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LinkEndData-multiplicity-_specification"> |
| <language>OCL</language> |
| <body>self.value.multiplicity.is(1,1)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="LinkEndData-qualifiers" name="qualifiers" constrainedElement="LinkEndData"> |
| <ownedComment xmi:id="LinkEndData-qualifiers-_ownedComment.0" annotatedElement="LinkEndData-qualifiers"> |
| <body>The qualifiers include all and only the qualifiers of the association end.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LinkEndData-qualifiers-_specification"> |
| <language>OCL</language> |
| <body>self.qualifier->collect(qualifier) = self.end.qualifier</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="LinkEndData-_generalization.0" general="Element"/> |
| <ownedAttribute xmi:id="LinkEndData-end" name="end" visibility="public" type="Property" association="A_end_linkEndData"> |
| <ownedComment xmi:id="LinkEndData-end-_ownedComment.0" annotatedElement="LinkEndData-end"> |
| <body>Association end for which this link-end data specifies values.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="LinkEndData-qualifier" name="qualifier" visibility="public" type="QualifierValue" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_qualifier_linkEndData"> |
| <ownedComment xmi:id="LinkEndData-qualifier-_ownedComment.0" annotatedElement="LinkEndData-qualifier"> |
| <body>List of qualifier values</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="LinkEndData-qualifier-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="LinkEndData-qualifier-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="LinkEndData-value" name="value" visibility="public" type="InputPin" association="A_value_linkEndData"> |
| <ownedComment xmi:id="LinkEndData-value-_ownedComment.0" annotatedElement="LinkEndData-value"> |
| <body>Input pin that provides the specified object for the given end. This pin is omitted if the link-end data specifies an 'open' end for reading.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="LinkEndData-value-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="LinkEndDestructionData" name="LinkEndDestructionData"> |
| <ownedComment xmi:id="LinkEndDestructionData-_ownedComment.0" annotatedElement="LinkEndDestructionData"> |
| <body>A link end destruction data is not an action. It is an element that identifies links. It identifies one end of a link to be destroyed by destroy link action.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LinkEndDestructionData-destroy_link_action" name="destroy_link_action" constrainedElement="LinkEndDestructionData"> |
| <ownedComment xmi:id="LinkEndDestructionData-destroy_link_action-_ownedComment.0" annotatedElement="LinkEndDestructionData-destroy_link_action"> |
| <body>LinkEndDestructionData can only be end data for DestroyLinkAction or one of its specializations.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LinkEndDestructionData-destroy_link_action-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="LinkEndDestructionData-unlimited_natural_and_multiplicity" name="unlimited_natural_and_multiplicity" constrainedElement="LinkEndDestructionData"> |
| <ownedComment xmi:id="LinkEndDestructionData-unlimited_natural_and_multiplicity-_ownedComment.0" annotatedElement="LinkEndDestructionData-unlimited_natural_and_multiplicity"> |
| <body>LinkEndDestructionData for ordered nonunique association ends must have a single destroyAt input pin if isDestroyDuplicates is false. It must be of type UnlimitedNatural and have a multiplicity of 1..1. Otherwise, the action has no input pin for the removal position.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LinkEndDestructionData-unlimited_natural_and_multiplicity-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="LinkEndDestructionData-_generalization.0" general="LinkEndData"/> |
| <ownedAttribute xmi:id="LinkEndDestructionData-destroyAt" name="destroyAt" visibility="public" type="InputPin" association="A_destroyAt_linkEndDestructionData"> |
| <ownedComment xmi:id="LinkEndDestructionData-destroyAt-_ownedComment.0" annotatedElement="LinkEndDestructionData-destroyAt"> |
| <body>Specifies the position of an existing link to be destroyed in ordered nonunique association ends. The type of the pin is UnlimitedNatural, but the value cannot be zero or unlimited.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="LinkEndDestructionData-destroyAt-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="LinkEndDestructionData-isDestroyDuplicates" name="isDestroyDuplicates" visibility="public"> |
| <ownedComment xmi:id="LinkEndDestructionData-isDestroyDuplicates-_ownedComment.0" annotatedElement="LinkEndDestructionData-isDestroyDuplicates"> |
| <body>Specifies whether to destroy duplicates of the value in nonunique association ends.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="LinkEndDestructionData-isDestroyDuplicates-_defaultValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="LiteralBoolean" name="LiteralBoolean"> |
| <ownedComment xmi:id="LiteralBoolean-_ownedComment.0" annotatedElement="LiteralBoolean"> |
| <body>A literal Boolean is a specification of a Boolean value.</body> |
| </ownedComment> |
| <generalization xmi:id="LiteralBoolean-_generalization.0" general="LiteralSpecification"/> |
| <ownedAttribute xmi:id="LiteralBoolean-value" name="value" visibility="public"> |
| <ownedComment xmi:id="LiteralBoolean-value-_ownedComment.0" annotatedElement="LiteralBoolean-value"> |
| <body>The specified Boolean value.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="LiteralBoolean-value-_defaultValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="LiteralBoolean-booleanValue" name="booleanValue" visibility="public" bodyCondition="LiteralBoolean-booleanValue-spec" isQuery="true" redefinedOperation="ValueSpecification-booleanValue"> |
| <ownedComment xmi:id="LiteralBoolean-booleanValue-_ownedComment.0" annotatedElement="LiteralBoolean-booleanValue"> |
| <body>The query booleanValue() gives the value.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LiteralBoolean-booleanValue-spec" name="spec" constrainedElement="LiteralBoolean-booleanValue"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LiteralBoolean-booleanValue-spec-_specification"> |
| <language>OCL</language> |
| <body>result = value</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="LiteralBoolean-booleanValue-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="LiteralBoolean-isComputable" name="isComputable" visibility="public" bodyCondition="LiteralBoolean-isComputable-spec" isQuery="true" redefinedOperation="ValueSpecification-isComputable"> |
| <ownedComment xmi:id="LiteralBoolean-isComputable-_ownedComment.0" annotatedElement="LiteralBoolean-isComputable"> |
| <body>The query isComputable() is redefined to be true.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LiteralBoolean-isComputable-spec" name="spec" constrainedElement="LiteralBoolean-isComputable"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LiteralBoolean-isComputable-spec-_specification"> |
| <language>OCL</language> |
| <body>result = true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="LiteralBoolean-isComputable-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="LiteralInteger" name="LiteralInteger"> |
| <ownedComment xmi:id="LiteralInteger-_ownedComment.0" annotatedElement="LiteralInteger"> |
| <body>A literal integer is a specification of an integer value.</body> |
| </ownedComment> |
| <generalization xmi:id="LiteralInteger-_generalization.0" general="LiteralSpecification"/> |
| <ownedAttribute xmi:id="LiteralInteger-value" name="value" visibility="public"> |
| <ownedComment xmi:id="LiteralInteger-value-_ownedComment.0" annotatedElement="LiteralInteger-value"> |
| <body>The specified Integer value.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> |
| <defaultValue xmi:type="uml:LiteralInteger" xmi:id="LiteralInteger-value-_defaultValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="LiteralInteger-integerValue" name="integerValue" visibility="public" bodyCondition="LiteralInteger-integerValue-spec" isQuery="true" redefinedOperation="ValueSpecification-integerValue"> |
| <ownedComment xmi:id="LiteralInteger-integerValue-_ownedComment.0" annotatedElement="LiteralInteger-integerValue"> |
| <body>The query integerValue() gives the value.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LiteralInteger-integerValue-spec" name="spec" constrainedElement="LiteralInteger-integerValue"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LiteralInteger-integerValue-spec-_specification"> |
| <language>OCL</language> |
| <body>result = value</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="LiteralInteger-integerValue-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="LiteralInteger-isComputable" name="isComputable" visibility="public" bodyCondition="LiteralInteger-isComputable-spec" isQuery="true" redefinedOperation="ValueSpecification-isComputable"> |
| <ownedComment xmi:id="LiteralInteger-isComputable-_ownedComment.0" annotatedElement="LiteralInteger-isComputable"> |
| <body>The query isComputable() is redefined to be true.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LiteralInteger-isComputable-spec" name="spec" constrainedElement="LiteralInteger-isComputable"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LiteralInteger-isComputable-spec-_specification"> |
| <language>OCL</language> |
| <body>result = true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="LiteralInteger-isComputable-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="LiteralNull" name="LiteralNull"> |
| <ownedComment xmi:id="LiteralNull-_ownedComment.0" annotatedElement="LiteralNull"> |
| <body>A literal null specifies the lack of a value.</body> |
| </ownedComment> |
| <generalization xmi:id="LiteralNull-_generalization.0" general="LiteralSpecification"/> |
| <ownedOperation xmi:id="LiteralNull-isComputable" name="isComputable" visibility="public" bodyCondition="LiteralNull-isComputable-spec" isQuery="true" redefinedOperation="ValueSpecification-isComputable"> |
| <ownedComment xmi:id="LiteralNull-isComputable-_ownedComment.0" annotatedElement="LiteralNull-isComputable"> |
| <body>The query isComputable() is redefined to be true.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LiteralNull-isComputable-spec" name="spec" constrainedElement="LiteralNull-isComputable"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LiteralNull-isComputable-spec-_specification"> |
| <language>OCL</language> |
| <body>result = true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="LiteralNull-isComputable-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="LiteralNull-isNull" name="isNull" visibility="public" bodyCondition="LiteralNull-isNull-spec" isQuery="true" redefinedOperation="ValueSpecification-isNull"> |
| <ownedComment xmi:id="LiteralNull-isNull-_ownedComment.0" annotatedElement="LiteralNull-isNull"> |
| <body>The query isNull() returns true.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LiteralNull-isNull-spec" name="spec" constrainedElement="LiteralNull-isNull"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LiteralNull-isNull-spec-_specification"> |
| <language>OCL</language> |
| <body>result = true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="LiteralNull-isNull-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="LiteralReal" name="LiteralReal"> |
| <ownedComment xmi:id="LiteralReal-_ownedComment.0" annotatedElement="LiteralReal"> |
| <body>A literal real is a specification of a real value.</body> |
| </ownedComment> |
| <generalization xmi:id="LiteralReal-_generalization.0" general="LiteralSpecification"/> |
| <ownedAttribute xmi:id="LiteralReal-value" name="value" visibility="public"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="LiteralReal-isComputable" name="isComputable" visibility="public" bodyCondition="LiteralReal-isComputable-spec" isQuery="true" redefinedOperation="ValueSpecification-isComputable"> |
| <ownedComment xmi:id="LiteralReal-isComputable-_ownedComment.0" annotatedElement="LiteralReal-isComputable"> |
| <body>The query isComputable() is redefined to be true.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LiteralReal-isComputable-spec" name="spec" constrainedElement="LiteralReal-isComputable"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LiteralReal-isComputable-spec-_specification"> |
| <language>OCL</language> |
| <body>result = true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="LiteralReal-isComputable-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="LiteralReal-realValue" name="realValue" visibility="public" bodyCondition="LiteralReal-realValue-spec" isQuery="true" redefinedOperation="ValueSpecification-realValue"> |
| <ownedComment xmi:id="LiteralReal-realValue-_ownedComment.0" annotatedElement="LiteralReal-realValue"> |
| <body>The query realValue() gives the value.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LiteralReal-realValue-spec" name="spec" constrainedElement="LiteralReal-realValue"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LiteralReal-realValue-spec-_specification"> |
| <language>OCL</language> |
| <body>result = value</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="LiteralReal-realValue-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="LiteralSpecification" name="LiteralSpecification" isAbstract="true"> |
| <ownedComment xmi:id="LiteralSpecification-_ownedComment.0" annotatedElement="LiteralSpecification"> |
| <body>A literal specification identifies a literal constant being modeled.</body> |
| </ownedComment> |
| <generalization xmi:id="LiteralSpecification-_generalization.0" general="ValueSpecification"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="LiteralString" name="LiteralString"> |
| <ownedComment xmi:id="LiteralString-_ownedComment.0" annotatedElement="LiteralString"> |
| <body>A literal string is a specification of a string value.</body> |
| </ownedComment> |
| <generalization xmi:id="LiteralString-_generalization.0" general="LiteralSpecification"/> |
| <ownedAttribute xmi:id="LiteralString-value" name="value" visibility="public"> |
| <ownedComment xmi:id="LiteralString-value-_ownedComment.0" annotatedElement="LiteralString-value"> |
| <body>The specified String value.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="LiteralString-value-_lowerValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="LiteralString-isComputable" name="isComputable" visibility="public" bodyCondition="LiteralString-isComputable-spec" isQuery="true" redefinedOperation="ValueSpecification-isComputable"> |
| <ownedComment xmi:id="LiteralString-isComputable-_ownedComment.0" annotatedElement="LiteralString-isComputable"> |
| <body>The query isComputable() is redefined to be true.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LiteralString-isComputable-spec" name="spec" constrainedElement="LiteralString-isComputable"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LiteralString-isComputable-spec-_specification"> |
| <language>OCL</language> |
| <body>result = true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="LiteralString-isComputable-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="LiteralString-stringValue" name="stringValue" visibility="public" bodyCondition="LiteralString-stringValue-spec" isQuery="true" redefinedOperation="ValueSpecification-stringValue"> |
| <ownedComment xmi:id="LiteralString-stringValue-_ownedComment.0" annotatedElement="LiteralString-stringValue"> |
| <body>The query stringValue() gives the value.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LiteralString-stringValue-spec" name="spec" constrainedElement="LiteralString-stringValue"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LiteralString-stringValue-spec-_specification"> |
| <language>OCL</language> |
| <body>result = value</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="LiteralString-stringValue-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="LiteralUnlimitedNatural" name="LiteralUnlimitedNatural"> |
| <ownedComment xmi:id="LiteralUnlimitedNatural-_ownedComment.0" annotatedElement="LiteralUnlimitedNatural"> |
| <body>A literal unlimited natural is a specification of an unlimited natural number.</body> |
| </ownedComment> |
| <generalization xmi:id="LiteralUnlimitedNatural-_generalization.0" general="LiteralSpecification"/> |
| <ownedAttribute xmi:id="LiteralUnlimitedNatural-value" name="value" visibility="public"> |
| <ownedComment xmi:id="LiteralUnlimitedNatural-value-_ownedComment.0" annotatedElement="LiteralUnlimitedNatural-value"> |
| <body>The specified UnlimitedNatural value.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#UnlimitedNatural"/> |
| <defaultValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="LiteralUnlimitedNatural-value-_defaultValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="LiteralUnlimitedNatural-isComputable" name="isComputable" visibility="public" bodyCondition="LiteralUnlimitedNatural-isComputable-spec" isQuery="true" redefinedOperation="ValueSpecification-isComputable"> |
| <ownedComment xmi:id="LiteralUnlimitedNatural-isComputable-_ownedComment.0" annotatedElement="LiteralUnlimitedNatural-isComputable"> |
| <body>The query isComputable() is redefined to be true.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LiteralUnlimitedNatural-isComputable-spec" name="spec" constrainedElement="LiteralUnlimitedNatural-isComputable"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LiteralUnlimitedNatural-isComputable-spec-_specification"> |
| <language>OCL</language> |
| <body>result = true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="LiteralUnlimitedNatural-isComputable-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="LiteralUnlimitedNatural-unlimitedValue" name="unlimitedValue" visibility="public" bodyCondition="LiteralUnlimitedNatural-unlimitedValue-spec" isQuery="true" redefinedOperation="ValueSpecification-unlimitedValue"> |
| <ownedComment xmi:id="LiteralUnlimitedNatural-unlimitedValue-_ownedComment.0" annotatedElement="LiteralUnlimitedNatural-unlimitedValue"> |
| <body>The query unlimitedValue() gives the value.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LiteralUnlimitedNatural-unlimitedValue-spec" name="spec" constrainedElement="LiteralUnlimitedNatural-unlimitedValue"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LiteralUnlimitedNatural-unlimitedValue-spec-_specification"> |
| <language>OCL</language> |
| <body>result = value</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="LiteralUnlimitedNatural-unlimitedValue-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#UnlimitedNatural"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="LoopNode" name="LoopNode"> |
| <ownedComment xmi:id="LoopNode-_ownedComment.0" annotatedElement="LoopNode"> |
| <body>A loop node is a structured activity node that represents a loop with setup, test, and body sections.</body> |
| </ownedComment> |
| <ownedRule xmi:id="LoopNode-executable_nodes" name="executable_nodes" constrainedElement="LoopNode"> |
| <ownedComment xmi:id="LoopNode-executable_nodes-_ownedComment.0" annotatedElement="LoopNode-executable_nodes"> |
| <body>The union of the ExecutableNodes in the setupPart, test and bodyPart of a LoopNode must be the same as the subset of nodes contained in the LoopNode (considered as a StructuredActivityNode) that are ExecutableNodes.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LoopNode-executable_nodes-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="LoopNode-body_output_pins" name="body_output_pins" constrainedElement="LoopNode"> |
| <ownedComment xmi:id="LoopNode-body_output_pins-_ownedComment.0" annotatedElement="LoopNode-body_output_pins"> |
| <body>The bodyOutput pins are output pins on actions in the body of the loop node.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LoopNode-body_output_pins-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="LoopNode-result_no_incoming" name="result_no_incoming" constrainedElement="LoopNode"> |
| <ownedComment xmi:id="LoopNode-result_no_incoming-_ownedComment.0" annotatedElement="LoopNode-result_no_incoming"> |
| <body>The result output pins have no incoming edges.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LoopNode-result_no_incoming-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="LoopNode-input_edges" name="input_edges" constrainedElement="LoopNode"> |
| <ownedComment xmi:id="LoopNode-input_edges-_ownedComment.0" annotatedElement="LoopNode-input_edges"> |
| <body>Loop variable inputs must not have outgoing edges.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="LoopNode-input_edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="LoopNode-_generalization.0" general="StructuredActivityNode"/> |
| <ownedAttribute xmi:id="LoopNode-bodyOutput" name="bodyOutput" visibility="public" type="OutputPin" isOrdered="true" association="A_bodyOutput_loopNode"> |
| <ownedComment xmi:id="LoopNode-bodyOutput-_ownedComment.0" annotatedElement="LoopNode-bodyOutput"> |
| <body>A list of output pins within the body fragment the values of which are moved to the loop variable pins after completion of execution of the body, before the next iteration of the loop begins or before the loop exits.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="LoopNode-bodyOutput-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="LoopNode-bodyOutput-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="LoopNode-bodyPart" name="bodyPart" visibility="public" type="ExecutableNode" association="A_bodyPart_loopNode"> |
| <ownedComment xmi:id="LoopNode-bodyPart-_ownedComment.0" annotatedElement="LoopNode-bodyPart"> |
| <body>The set of nodes and edges that perform the repetitive computations of the loop. The body section is executed as long as the test section produces a true value.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="LoopNode-bodyPart-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="LoopNode-bodyPart-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="LoopNode-decider" name="decider" visibility="public" type="OutputPin" association="A_decider_loopNode"> |
| <ownedComment xmi:id="LoopNode-decider-_ownedComment.0" annotatedElement="LoopNode-decider"> |
| <body>An output pin within the test fragment the value of which is examined after execution of the test to determine whether to execute the loop body.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="LoopNode-isTestedFirst" name="isTestedFirst" visibility="public"> |
| <ownedComment xmi:id="LoopNode-isTestedFirst-_ownedComment.0" annotatedElement="LoopNode-isTestedFirst"> |
| <body>If true, the test is performed before the first execution of the body. If false, the body is executed once before the test is performed.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="LoopNode-isTestedFirst-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="LoopNode-loopVariable" name="loopVariable" visibility="public" type="OutputPin" isOrdered="true" association="A_loopVariable_loopNode"> |
| <ownedComment xmi:id="LoopNode-loopVariable-_ownedComment.0" annotatedElement="LoopNode-loopVariable"> |
| <body>A list of output pins that hold the values of the loop variables during an execution of the loop. When the test fails, the values are movied to the result pins of the loop.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="LoopNode-loopVariable-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="LoopNode-loopVariable-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="LoopNode-loopVariableInput" name="loopVariableInput" visibility="public" type="InputPin" isOrdered="true" aggregation="composite" redefinedProperty="StructuredActivityNode-structuredNodeInput" association="A_loopVariableInput_loopNode"> |
| <ownedComment xmi:id="LoopNode-loopVariableInput-_ownedComment.0" annotatedElement="LoopNode-loopVariableInput"> |
| <body>A list of values that are moved into the loop variable pins before the first iteration of the loop.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="LoopNode-loopVariableInput-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="LoopNode-loopVariableInput-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="LoopNode-result" name="result" visibility="public" type="OutputPin" isOrdered="true" aggregation="composite" redefinedProperty="StructuredActivityNode-structuredNodeOutput" association="A_result_loopNode"> |
| <ownedComment xmi:id="LoopNode-result-_ownedComment.0" annotatedElement="LoopNode-result"> |
| <body>A list of output pins that constitute the data flow output of the entire loop.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="LoopNode-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="LoopNode-result-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="LoopNode-setupPart" name="setupPart" visibility="public" type="ExecutableNode" association="A_setupPart_loopNode"> |
| <ownedComment xmi:id="LoopNode-setupPart-_ownedComment.0" annotatedElement="LoopNode-setupPart"> |
| <body>The set of nodes and edges that initialize values or perform other setup computations for the loop.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="LoopNode-setupPart-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="LoopNode-setupPart-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="LoopNode-test" name="test" visibility="public" type="ExecutableNode" association="A_test_loopNode"> |
| <ownedComment xmi:id="LoopNode-test-_ownedComment.0" annotatedElement="LoopNode-test"> |
| <body>The set of nodes, edges, and designated value that compute a Boolean value to determine if another execution of the body will be performed.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="LoopNode-test-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Manifestation" name="Manifestation"> |
| <ownedComment xmi:id="Manifestation-_ownedComment.0" annotatedElement="Manifestation"> |
| <body>A manifestation is the concrete physical rendering of one or more model elements by an artifact.</body> |
| </ownedComment> |
| <generalization xmi:id="Manifestation-_generalization.0" general="Abstraction"/> |
| <ownedAttribute xmi:id="Manifestation-utilizedElement" name="utilizedElement" visibility="public" type="PackageableElement" subsettedProperty="Dependency-supplier" association="A_utilizedElement_manifestation"> |
| <ownedComment xmi:id="Manifestation-utilizedElement-_ownedComment.0" annotatedElement="Manifestation-utilizedElement"> |
| <body>The model element that is utilized in the manifestation in an Artifact.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="MergeNode" name="MergeNode"> |
| <ownedComment xmi:id="MergeNode-_ownedComment.0" annotatedElement="MergeNode"> |
| <body>A merge node is a control node that brings together multiple alternate flows. It is not used to synchronize concurrent flows but to accept one among several alternate flows.</body> |
| </ownedComment> |
| <ownedRule xmi:id="MergeNode-one_outgoing_edge" name="one_outgoing_edge" constrainedElement="MergeNode"> |
| <ownedComment xmi:id="MergeNode-one_outgoing_edge-_ownedComment.0" annotatedElement="MergeNode-one_outgoing_edge"> |
| <body>A merge node has one outgoing edge.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MergeNode-one_outgoing_edge-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="MergeNode-edges" name="edges" constrainedElement="MergeNode"> |
| <ownedComment xmi:id="MergeNode-edges-_ownedComment.0" annotatedElement="MergeNode-edges"> |
| <body>The edges coming into and out of a merge node must be either all object flows or all control flows.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MergeNode-edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="MergeNode-_generalization.0" general="ControlNode"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Message" name="Message"> |
| <ownedComment xmi:id="Message-_ownedComment.0" annotatedElement="Message"> |
| <body>A message defines a particular communication between lifelines of an interaction.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Message-sending_receiving_message_event" name="sending_receiving_message_event" constrainedElement="Message"> |
| <ownedComment xmi:id="Message-sending_receiving_message_event-_ownedComment.0" annotatedElement="Message-sending_receiving_message_event"> |
| <body>If the sendEvent and the receiveEvent of the same Message are on the same Lifeline, the sendEvent must be ordered before the receiveEvent.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Message-sending_receiving_message_event-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Message-occurrence_specifications" name="occurrence_specifications" constrainedElement="Message"> |
| <ownedComment xmi:id="Message-occurrence_specifications-_ownedComment.0" annotatedElement="Message-occurrence_specifications"> |
| <body>If the MessageEnds are both OccurrenceSpecifications then the connector must go between the Parts represented by the Lifelines of the two MessageEnds.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Message-occurrence_specifications-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Message-signature_is_signal" name="signature_is_signal" constrainedElement="Message"> |
| <ownedComment xmi:id="Message-signature_is_signal-_ownedComment.0" annotatedElement="Message-signature_is_signal"> |
| <body>In the case when the Message signature is a Signal, the arguments of the Message must correspond to the attributes of the Signal. A Message Argument corresponds to a Signal Attribute if the Arguement is of the same Class or a specialization of that of the Attribute.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Message-signature_is_signal-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Message-signature_is_operation" name="signature_is_operation" constrainedElement="Message"> |
| <ownedComment xmi:id="Message-signature_is_operation-_ownedComment.0" annotatedElement="Message-signature_is_operation"> |
| <body>In the case when the Message signature is an Operation, the arguments of the Message must correspond to the parameters of the Operation. A Parameter corresponds to an Argument if the Argument is of the same Class or a specialization of that of the Parameter.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Message-signature_is_operation-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Message-arguments" name="arguments" constrainedElement="Message"> |
| <ownedComment xmi:id="Message-arguments-_ownedComment.0" annotatedElement="Message-arguments"> |
| <body>Arguments of a Message must only be: i) attributes of the sending lifeline ii) constants iii) symbolic values (which are wildcard values representing any legal value) iv) explicit parameters of the enclosing Interaction v) attributes of the class owning the Interaction</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Message-arguments-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Message-cannot_cross_boundaries" name="cannot_cross_boundaries" constrainedElement="Message"> |
| <ownedComment xmi:id="Message-cannot_cross_boundaries-_ownedComment.0" annotatedElement="Message-cannot_cross_boundaries"> |
| <body>Messages cannot cross bounderies of CombinedFragments or their operands.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Message-cannot_cross_boundaries-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Message-signature_refer_to" name="signature_refer_to" constrainedElement="Message"> |
| <ownedComment xmi:id="Message-signature_refer_to-_ownedComment.0" annotatedElement="Message-signature_refer_to"> |
| <body>The signature must either refer an Operation (in which case messageSort is either synchCall or asynchCall) or a Signal (in which case messageSort is asynchSignal). The name of the NamedElement referenced by signature must be the same as that of the Message.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Message-signature_refer_to-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Message-_generalization.0" general="NamedElement"/> |
| <ownedAttribute xmi:id="Message-argument" name="argument" visibility="public" type="ValueSpecification" isOrdered="true" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_argument_message"> |
| <ownedComment xmi:id="Message-argument-_ownedComment.0" annotatedElement="Message-argument"> |
| <body>The arguments of the Message</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Message-argument-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Message-argument-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Message-connector" name="connector" visibility="public" type="Connector" association="A_connector_message"> |
| <ownedComment xmi:id="Message-connector-_ownedComment.0" annotatedElement="Message-connector"> |
| <body>The Connector on which this Message is sent.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Message-connector-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Message-interaction" name="interaction" visibility="public" type="Interaction" subsettedProperty="NamedElement-namespace" association="A_message_interaction"> |
| <ownedComment xmi:id="Message-interaction-_ownedComment.0" annotatedElement="Message-interaction"> |
| <body>The enclosing Interaction owning the Message</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Message-messageKind" name="messageKind" visibility="public" type="MessageKind" isReadOnly="true" isDerived="true"> |
| <ownedComment xmi:id="Message-messageKind-_ownedComment.0" annotatedElement="Message-messageKind"> |
| <body>The derived kind of the Message (complete, lost, found or unknown)</body> |
| </ownedComment> |
| <defaultValue xmi:type="uml:InstanceValue" xmi:id="Message-messageKind-_defaultValue" type="MessageKind" instance="MessageKind-unknown"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Message-messageSort" name="messageSort" visibility="public" type="MessageSort"> |
| <ownedComment xmi:id="Message-messageSort-_ownedComment.0" annotatedElement="Message-messageSort"> |
| <body>The sort of communication reflected by the Message</body> |
| </ownedComment> |
| <defaultValue xmi:type="uml:InstanceValue" xmi:id="Message-messageSort-_defaultValue" type="MessageSort" instance="MessageSort-synchCall"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Message-receiveEvent" name="receiveEvent" visibility="public" type="MessageEnd" subsettedProperty="A_message_messageEnd-messageEnd" association="A_receiveEvent_endMessage"> |
| <ownedComment xmi:id="Message-receiveEvent-_ownedComment.0" annotatedElement="Message-receiveEvent"> |
| <body>References the Receiving of the Message</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Message-receiveEvent-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Message-sendEvent" name="sendEvent" visibility="public" type="MessageEnd" subsettedProperty="A_message_messageEnd-messageEnd" association="A_sendEvent_endMessage"> |
| <ownedComment xmi:id="Message-sendEvent-_ownedComment.0" annotatedElement="Message-sendEvent"> |
| <body>References the Sending of the Message.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Message-sendEvent-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Message-signature" name="signature" visibility="public" type="NamedElement" association="A_signature_message"> |
| <ownedComment xmi:id="Message-signature-_ownedComment.0" annotatedElement="Message-signature"> |
| <body>The signature of the Message is the specification of its content. It refers either an Operation or a Signal.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Message-signature-_lowerValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Message-messageKind.1" name="messageKind" visibility="public" bodyCondition="Message-messageKind.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Message-messageKind.1-_ownedComment.0" annotatedElement="Message-messageKind.1"> |
| <body>Missing derivation for Message::/messageKind : MessageKind</body> |
| </ownedComment> |
| <ownedRule xmi:id="Message-messageKind.1-spec" name="spec" constrainedElement="Message-messageKind.1 Message-messageKind"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Message-messageKind.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Message-messageKind.1-result" name="result" visibility="public" type="MessageKind" direction="return"/> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="MessageEnd" name="MessageEnd" isAbstract="true"> |
| <ownedComment xmi:id="MessageEnd-_ownedComment.0" annotatedElement="MessageEnd"> |
| <body>MessageEnd is an abstract specialization of NamedElement that represents what can occur at the end of a message.</body> |
| </ownedComment> |
| <generalization xmi:id="MessageEnd-_generalization.0" general="NamedElement"/> |
| <ownedAttribute xmi:id="MessageEnd-message" name="message" visibility="public" type="Message" association="A_message_messageEnd"> |
| <ownedComment xmi:id="MessageEnd-message-_ownedComment.0" annotatedElement="MessageEnd-message"> |
| <body>References a Message.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="MessageEnd-message-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="MessageEvent" name="MessageEvent" isAbstract="true"> |
| <ownedComment xmi:id="MessageEvent-_ownedComment.0" annotatedElement="MessageEvent"> |
| <body>A message event specifies the receipt by an object of either a call or a signal.</body> |
| </ownedComment> |
| <generalization xmi:id="MessageEvent-_generalization.0" general="Event"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="MessageOccurrenceSpecification" name="MessageOccurrenceSpecification"> |
| <ownedComment xmi:id="MessageOccurrenceSpecification-_ownedComment.0" annotatedElement="MessageOccurrenceSpecification"> |
| <body>A message occurrence specification pecifies the occurrence of message events, such as sending and receiving of signals or invoking or receiving of operation calls. A message occurrence specification is a kind of message end. Messages are generated either by synchronous operation calls or asynchronous signal sends. They are received by the execution of corresponding accept event actions.</body> |
| </ownedComment> |
| <generalization xmi:id="MessageOccurrenceSpecification-_generalization.0" general="OccurrenceSpecification"/> |
| <generalization xmi:id="MessageOccurrenceSpecification-_generalization.1" general="MessageEnd"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Model" name="Model"> |
| <ownedComment xmi:id="Model-_ownedComment.0" annotatedElement="Model"> |
| <body>A model captures a view of a physical system. It is an abstraction of the physical system, with a certain purpose. This purpose determines what is to be included in the model and what is irrelevant. Thus the model completely describes those aspects of the physical system that are relevant to the purpose of the model, at the appropriate level of detail.</body> |
| </ownedComment> |
| <generalization xmi:id="Model-_generalization.0" general="Package"/> |
| <ownedAttribute xmi:id="Model-viewpoint" name="viewpoint" visibility="public"> |
| <ownedComment xmi:id="Model-viewpoint-_ownedComment.0" annotatedElement="Model-viewpoint"> |
| <body>The name of the viewpoint that is expressed by a model (This name may refer to a profile definition).</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Model-viewpoint-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="MultiplicityElement" name="MultiplicityElement" isAbstract="true"> |
| <ownedComment xmi:id="MultiplicityElement-_ownedComment.0" annotatedElement="MultiplicityElement"> |
| <body>A multiplicity is a definition of an inclusive interval of non-negative integers beginning with a lower bound and ending with a (possibly infinite) upper bound. A multiplicity element embeds this information to specify the allowable cardinalities for an instantiation of this element.</body> |
| </ownedComment> |
| <ownedRule xmi:id="MultiplicityElement-lower_ge_0" name="lower_ge_0" constrainedElement="MultiplicityElement"> |
| <ownedComment xmi:id="MultiplicityElement-lower_ge_0-_ownedComment.0" annotatedElement="MultiplicityElement-lower_ge_0"> |
| <body>The lower bound must be a non-negative integer literal.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-lower_ge_0-_specification"> |
| <language>OCL</language> |
| <body>lowerBound()->notEmpty() implies lowerBound() >= 0</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="MultiplicityElement-upper_ge_lower" name="upper_ge_lower" constrainedElement="MultiplicityElement"> |
| <ownedComment xmi:id="MultiplicityElement-upper_ge_lower-_ownedComment.0" annotatedElement="MultiplicityElement-upper_ge_lower"> |
| <body>The upper bound must be greater than or equal to the lower bound.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-upper_ge_lower-_specification"> |
| <language>OCL</language> |
| <body>(upperBound()->notEmpty() and lowerBound()->notEmpty()) implies upperBound() >= lowerBound()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="MultiplicityElement-value_specification_constant" name="value_specification_constant" constrainedElement="MultiplicityElement"> |
| <ownedComment xmi:id="MultiplicityElement-value_specification_constant-_ownedComment.0" annotatedElement="MultiplicityElement-value_specification_constant"> |
| <body>If a non-literal ValueSpecification is used for the lower or upper bound, then that specification must be a constant expression.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-value_specification_constant-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="MultiplicityElement-value_specification_no_side_effects" name="value_specification_no_side_effects" constrainedElement="MultiplicityElement"> |
| <ownedComment xmi:id="MultiplicityElement-value_specification_no_side_effects-_ownedComment.0" annotatedElement="MultiplicityElement-value_specification_no_side_effects"> |
| <body>If a non-literal ValueSpecification is used for the lower or upper bound, then evaluating that specification must not have side effects.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-value_specification_no_side_effects-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="MultiplicityElement-_generalization.0" general="Element"/> |
| <ownedAttribute xmi:id="MultiplicityElement-isOrdered" name="isOrdered" visibility="public"> |
| <ownedComment xmi:id="MultiplicityElement-isOrdered-_ownedComment.0" annotatedElement="MultiplicityElement-isOrdered"> |
| <body>For a multivalued multiplicity, this attribute specifies whether the values in an instantiation of this element are sequentially ordered.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="MultiplicityElement-isOrdered-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="MultiplicityElement-isUnique" name="isUnique" visibility="public"> |
| <ownedComment xmi:id="MultiplicityElement-isUnique-_ownedComment.0" annotatedElement="MultiplicityElement-isUnique"> |
| <body>For a multivalued multiplicity, this attributes specifies whether the values in an instantiation of this element are unique.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="MultiplicityElement-isUnique-_defaultValue" value="true"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="MultiplicityElement-lower" name="lower" visibility="public" isDerived="true"> |
| <ownedComment xmi:id="MultiplicityElement-lower-_ownedComment.0" annotatedElement="MultiplicityElement-lower"> |
| <body>Specifies the lower bound of the multiplicity interval.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="MultiplicityElement-lower-_lowerValue"/> |
| <defaultValue xmi:type="uml:LiteralInteger" xmi:id="MultiplicityElement-lower-_defaultValue" value="1"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="MultiplicityElement-lowerValue" name="lowerValue" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_lowerValue_owningLower"> |
| <ownedComment xmi:id="MultiplicityElement-lowerValue-_ownedComment.0" annotatedElement="MultiplicityElement-lowerValue"> |
| <body>The specification of the lower bound for this multiplicity.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="MultiplicityElement-lowerValue-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="MultiplicityElement-upper" name="upper" visibility="public" isDerived="true"> |
| <ownedComment xmi:id="MultiplicityElement-upper-_ownedComment.0" annotatedElement="MultiplicityElement-upper"> |
| <body>Specifies the upper bound of the multiplicity interval.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#UnlimitedNatural"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="MultiplicityElement-upper-_lowerValue"/> |
| <defaultValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="MultiplicityElement-upper-_defaultValue" value="1"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="MultiplicityElement-upperValue" name="upperValue" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_upperValue_owningUpper"> |
| <ownedComment xmi:id="MultiplicityElement-upperValue-_ownedComment.0" annotatedElement="MultiplicityElement-upperValue"> |
| <body>The specification of the upper bound for this multiplicity.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="MultiplicityElement-upperValue-_lowerValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="MultiplicityElement-compatibleWith" name="compatibleWith" visibility="public" bodyCondition="MultiplicityElement-compatibleWith-spec" isQuery="true"> |
| <ownedComment xmi:id="MultiplicityElement-compatibleWith-_ownedComment.0" annotatedElement="MultiplicityElement-compatibleWith"> |
| <body>The operation compatibleWith takes another multiplicity as input. It checks if one multiplicity is compatible with another.</body> |
| </ownedComment> |
| <ownedRule xmi:id="MultiplicityElement-compatibleWith-spec" name="spec" constrainedElement="MultiplicityElement-compatibleWith"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-compatibleWith-spec-_specification"> |
| <language>OCL</language> |
| <body>result = Integer.allInstances()->forAll(i : Integer | self.includesCardinality(i) implies other.includesCardinality(i))</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="MultiplicityElement-compatibleWith-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="MultiplicityElement-compatibleWith-other" name="other" visibility="public" type="MultiplicityElement"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="MultiplicityElement-includesCardinality" name="includesCardinality" visibility="public" bodyCondition="MultiplicityElement-includesCardinality-spec" isQuery="true" precondition="MultiplicityElement-includesCardinality-pre"> |
| <ownedComment xmi:id="MultiplicityElement-includesCardinality-_ownedComment.0" annotatedElement="MultiplicityElement-includesCardinality"> |
| <body>The query includesCardinality() checks whether the specified cardinality is valid for this multiplicity.</body> |
| </ownedComment> |
| <ownedRule xmi:id="MultiplicityElement-includesCardinality-pre" name="pre" constrainedElement="MultiplicityElement-includesCardinality"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-includesCardinality-pre-_specification"> |
| <language>OCL</language> |
| <body>upperBound()->notEmpty() and lowerBound()->notEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="MultiplicityElement-includesCardinality-spec" name="spec" constrainedElement="MultiplicityElement-includesCardinality"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-includesCardinality-spec-_specification"> |
| <language>OCL</language> |
| <body>result = (lowerBound() <= C) and (upperBound() >= C)</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="MultiplicityElement-includesCardinality-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="MultiplicityElement-includesCardinality-C" name="C" visibility="public"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="MultiplicityElement-includesMultiplicity" name="includesMultiplicity" visibility="public" bodyCondition="MultiplicityElement-includesMultiplicity-spec" isQuery="true" precondition="MultiplicityElement-includesMultiplicity-pre"> |
| <ownedComment xmi:id="MultiplicityElement-includesMultiplicity-_ownedComment.0" annotatedElement="MultiplicityElement-includesMultiplicity"> |
| <body>The query includesMultiplicity() checks whether this multiplicity includes all the cardinalities allowed by the specified multiplicity.</body> |
| </ownedComment> |
| <ownedRule xmi:id="MultiplicityElement-includesMultiplicity-spec" name="spec" constrainedElement="MultiplicityElement-includesMultiplicity"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-includesMultiplicity-spec-_specification"> |
| <language>OCL</language> |
| <body>result = (self.lowerBound() <= M.lowerBound()) and (self.upperBound() >= M.upperBound())</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="MultiplicityElement-includesMultiplicity-pre" name="pre" constrainedElement="MultiplicityElement-includesMultiplicity"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-includesMultiplicity-pre-_specification"> |
| <language>OCL</language> |
| <body>self.upperBound()->notEmpty() and self.lowerBound()->notEmpty() and M.upperBound()->notEmpty() and M.lowerBound()->notEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="MultiplicityElement-includesMultiplicity-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="MultiplicityElement-includesMultiplicity-M" name="M" visibility="public" type="MultiplicityElement"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="MultiplicityElement-is" name="is" visibility="public" bodyCondition="MultiplicityElement-is-spec" isQuery="true"> |
| <ownedComment xmi:id="MultiplicityElement-is-_ownedComment.0" annotatedElement="MultiplicityElement-is"> |
| <body>The operation is determines if the upper and lower bound of the ranges are the ones given.</body> |
| </ownedComment> |
| <ownedRule xmi:id="MultiplicityElement-is-spec" name="spec" constrainedElement="MultiplicityElement-is"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-is-spec-_specification"> |
| <language>OCL</language> |
| <body>result = (lowerbound = self.lowerbound and upperbound = self.upperbound)</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="MultiplicityElement-is-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="MultiplicityElement-is-lowerbound" name="lowerbound" visibility="public"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="MultiplicityElement-is-upperbound" name="upperbound" visibility="public"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="MultiplicityElement-isMultivalued" name="isMultivalued" visibility="public" bodyCondition="MultiplicityElement-isMultivalued-spec" isQuery="true" precondition="MultiplicityElement-isMultivalued-pre"> |
| <ownedComment xmi:id="MultiplicityElement-isMultivalued-_ownedComment.0" annotatedElement="MultiplicityElement-isMultivalued"> |
| <body>The query isMultivalued() checks whether this multiplicity has an upper bound greater than one.</body> |
| </ownedComment> |
| <ownedRule xmi:id="MultiplicityElement-isMultivalued-spec" name="spec" constrainedElement="MultiplicityElement-isMultivalued"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-isMultivalued-spec-_specification"> |
| <language>OCL</language> |
| <body>result = upperBound() > 1</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="MultiplicityElement-isMultivalued-pre" name="pre" constrainedElement="MultiplicityElement-isMultivalued"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-isMultivalued-pre-_specification"> |
| <language>OCL</language> |
| <body>upperBound()->notEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="MultiplicityElement-isMultivalued-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="MultiplicityElement-lower.1" name="lower" visibility="public" bodyCondition="MultiplicityElement-lower.1-spec" isQuery="true"> |
| <ownedComment xmi:id="MultiplicityElement-lower.1-_ownedComment.0" annotatedElement="MultiplicityElement-lower.1"> |
| <body>The derived lower attribute must equal the lowerBound.</body> |
| </ownedComment> |
| <ownedRule xmi:id="MultiplicityElement-lower.1-spec" name="spec" constrainedElement="MultiplicityElement-lower.1 MultiplicityElement-lower"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-lower.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = lowerBound()</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="MultiplicityElement-lower.1-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="MultiplicityElement-lower.1-result-_lowerValue"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="MultiplicityElement-lowerBound" name="lowerBound" visibility="public" bodyCondition="MultiplicityElement-lowerBound-spec" isQuery="true"> |
| <ownedComment xmi:id="MultiplicityElement-lowerBound-_ownedComment.0" annotatedElement="MultiplicityElement-lowerBound"> |
| <body>The query lowerBound() returns the lower bound of the multiplicity as an integer.</body> |
| </ownedComment> |
| <ownedRule xmi:id="MultiplicityElement-lowerBound-spec" name="spec" constrainedElement="MultiplicityElement-lowerBound"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-lowerBound-spec-_specification"> |
| <language>OCL</language> |
| <body>result = if lowerValue->isEmpty() then 1 else lowerValue.integerValue() endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="MultiplicityElement-lowerBound-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="MultiplicityElement-lowerBound-result-_lowerValue"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="MultiplicityElement-upper.1" name="upper" visibility="public" bodyCondition="MultiplicityElement-upper.1-spec" isQuery="true"> |
| <ownedComment xmi:id="MultiplicityElement-upper.1-_ownedComment.0" annotatedElement="MultiplicityElement-upper.1"> |
| <body>The derived upper attribute must equal the upperBound.</body> |
| </ownedComment> |
| <ownedRule xmi:id="MultiplicityElement-upper.1-spec" name="spec" constrainedElement="MultiplicityElement-upper.1 MultiplicityElement-upper"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-upper.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = upperBound()</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="MultiplicityElement-upper.1-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#UnlimitedNatural"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="MultiplicityElement-upper.1-result-_lowerValue"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="MultiplicityElement-upperBound" name="upperBound" visibility="public" bodyCondition="MultiplicityElement-upperBound-spec" isQuery="true"> |
| <ownedComment xmi:id="MultiplicityElement-upperBound-_ownedComment.0" annotatedElement="MultiplicityElement-upperBound"> |
| <body>The query upperBound() returns the upper bound of the multiplicity for a bounded multiplicity as an unlimited natural.</body> |
| </ownedComment> |
| <ownedRule xmi:id="MultiplicityElement-upperBound-spec" name="spec" constrainedElement="MultiplicityElement-upperBound"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="MultiplicityElement-upperBound-spec-_specification"> |
| <language>OCL</language> |
| <body>result = if upperValue->isEmpty() then 1 else upperValue.unlimitedValue() endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="MultiplicityElement-upperBound-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#UnlimitedNatural"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="MultiplicityElement-upperBound-result-_lowerValue"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="NamedElement" name="NamedElement" isAbstract="true"> |
| <ownedComment xmi:id="NamedElement-_ownedComment.0" annotatedElement="NamedElement"> |
| <body>A named element supports using a string expression to specify its name. This allows names of model elements to involve template parameters. The actual name is evaluated from the string expression only when it is sensible to do so (e.g., when a template is bound).</body> |
| </ownedComment> |
| <ownedComment xmi:id="NamedElement-_ownedComment.1" annotatedElement="NamedElement"> |
| <body>A named element is an element in a model that may have a name.</body> |
| </ownedComment> |
| <ownedRule xmi:id="NamedElement-has_qualified_name" name="has_qualified_name" constrainedElement="NamedElement"> |
| <ownedComment xmi:id="NamedElement-has_qualified_name-_ownedComment.0" annotatedElement="NamedElement-has_qualified_name"> |
| <body>When there is a name, and all of the containing namespaces have a name, the qualified name is constructed from the names of the containing namespaces.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="NamedElement-has_qualified_name-_specification"> |
| <language>OCL</language> |
| <body>(self.name->notEmpty() and self.allNamespaces()->select(ns | ns.name->isEmpty())->isEmpty()) implies |
| self.qualifiedName = self.allNamespaces()->iterate( ns : Namespace; result: String = self.name | ns.name->union(self.separator())->union(result))</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="NamedElement-has_no_qualified_name" name="has_no_qualified_name" constrainedElement="NamedElement"> |
| <ownedComment xmi:id="NamedElement-has_no_qualified_name-_ownedComment.0" annotatedElement="NamedElement-has_no_qualified_name"> |
| <body>If there is no name, or one of the containing namespaces has no name, there is no qualified name.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="NamedElement-has_no_qualified_name-_specification"> |
| <language>OCL</language> |
| <body>(self.name->isEmpty() or self.allNamespaces()->select(ns | ns.name->isEmpty())->notEmpty()) |
| implies self.qualifiedName->isEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="NamedElement-visibility_needs_ownership" name="visibility_needs_ownership" constrainedElement="NamedElement"> |
| <ownedComment xmi:id="NamedElement-visibility_needs_ownership-_ownedComment.0" annotatedElement="NamedElement-visibility_needs_ownership"> |
| <body>If a NamedElement is not owned by a Namespace, it does not have a visibility.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="NamedElement-visibility_needs_ownership-_specification"> |
| <language>OCL</language> |
| <body>namespace->isEmpty() implies visibility->isEmpty()</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="NamedElement-_generalization.0" general="Element"/> |
| <ownedAttribute xmi:id="NamedElement-clientDependency" name="clientDependency" visibility="public" type="Dependency" subsettedProperty="A_source_directedRelationship-directedRelationship" association="A_clientDependency_client"> |
| <ownedComment xmi:id="NamedElement-clientDependency-_ownedComment.0" annotatedElement="NamedElement-clientDependency"> |
| <body>Indicates the dependencies that reference the client.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="NamedElement-clientDependency-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="NamedElement-clientDependency-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="NamedElement-name" name="name" visibility="public"> |
| <ownedComment xmi:id="NamedElement-name-_ownedComment.0" annotatedElement="NamedElement-name"> |
| <body>The name of the NamedElement.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="NamedElement-name-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="NamedElement-nameExpression" name="nameExpression" visibility="public" type="StringExpression" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_nameExpression_namedElement"> |
| <ownedComment xmi:id="NamedElement-nameExpression-_ownedComment.0" annotatedElement="NamedElement-nameExpression"> |
| <body>The string expression used to define the name of this named element.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="NamedElement-nameExpression-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="NamedElement-namespace" name="namespace" visibility="public" type="Namespace" isReadOnly="true" isDerived="true" isDerivedUnion="true" subsettedProperty="A_member_memberNamespace-memberNamespace Element-owner" association="A_ownedMember_namespace"> |
| <ownedComment xmi:id="NamedElement-namespace-_ownedComment.0" annotatedElement="NamedElement-namespace"> |
| <body>Specifies the namespace that owns the NamedElement.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="NamedElement-namespace-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="NamedElement-qualifiedName" name="qualifiedName" visibility="public" isReadOnly="true" isDerived="true"> |
| <ownedComment xmi:id="NamedElement-qualifiedName-_ownedComment.0" annotatedElement="NamedElement-qualifiedName"> |
| <body>A name which allows the NamedElement to be identified within a hierarchy of nested Namespaces. It is constructed from the names of the containing namespaces starting at the root of the hierarchy and ending with the name of the NamedElement itself.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="NamedElement-qualifiedName-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="NamedElement-visibility" name="visibility" visibility="public" type="VisibilityKind"> |
| <ownedComment xmi:id="NamedElement-visibility-_ownedComment.0" annotatedElement="NamedElement-visibility"> |
| <body>Determines where the NamedElement appears within different Namespaces within the overall model, and its accessibility.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="NamedElement-visibility-_lowerValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="NamedElement-allNamespaces" name="allNamespaces" visibility="public" bodyCondition="NamedElement-allNamespaces-spec" isQuery="true"> |
| <ownedComment xmi:id="NamedElement-allNamespaces-_ownedComment.0" annotatedElement="NamedElement-allNamespaces"> |
| <body>The query allNamespaces() gives the sequence of namespaces in which the NamedElement is nested, working outwards.</body> |
| </ownedComment> |
| <ownedRule xmi:id="NamedElement-allNamespaces-spec" name="spec" constrainedElement="NamedElement-allNamespaces"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="NamedElement-allNamespaces-spec-_specification"> |
| <language>OCL</language> |
| <body>result = if self.namespace->isEmpty() |
| then Sequence{} |
| else self.namespace.allNamespaces()->prepend(self.namespace) |
| endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="NamedElement-allNamespaces-result" name="result" visibility="public" type="Namespace" isOrdered="true" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="NamedElement-allNamespaces-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="NamedElement-allNamespaces-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="NamedElement-allOwningPackages" name="allOwningPackages" visibility="public" bodyCondition="NamedElement-allOwningPackages-spec" isQuery="true"> |
| <ownedComment xmi:id="NamedElement-allOwningPackages-_ownedComment.0" annotatedElement="NamedElement-allOwningPackages"> |
| <body>The query allOwningPackages() returns all the directly or indirectly owning packages.</body> |
| </ownedComment> |
| <ownedRule xmi:id="NamedElement-allOwningPackages-spec" name="spec" constrainedElement="NamedElement-allOwningPackages"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="NamedElement-allOwningPackages-spec-_specification"> |
| <language>OCL</language> |
| <body>result = self.namespace->select(p | p.oclIsKindOf(Package))->union(p.allOwningPackages())</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="NamedElement-allOwningPackages-result" name="result" visibility="public" type="Package" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="NamedElement-allOwningPackages-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="NamedElement-allOwningPackages-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="NamedElement-isDistinguishableFrom" name="isDistinguishableFrom" visibility="public" bodyCondition="NamedElement-isDistinguishableFrom-spec" isQuery="true"> |
| <ownedComment xmi:id="NamedElement-isDistinguishableFrom-_ownedComment.0" annotatedElement="NamedElement-isDistinguishableFrom"> |
| <body>The query isDistinguishableFrom() determines whether two NamedElements may logically co-exist within a Namespace. By default, two named elements are distinguishable if (a) they have unrelated types or (b) they have related types but different names.</body> |
| </ownedComment> |
| <ownedRule xmi:id="NamedElement-isDistinguishableFrom-spec" name="spec" constrainedElement="NamedElement-isDistinguishableFrom"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="NamedElement-isDistinguishableFrom-spec-_specification"> |
| <language>OCL</language> |
| <body>result = if self.oclIsKindOf(n.oclType) or n.oclIsKindOf(self.oclType) |
| then ns.getNamesOfMember(self)->intersection(ns.getNamesOfMember(n))->isEmpty() |
| else true |
| endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="NamedElement-isDistinguishableFrom-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="NamedElement-isDistinguishableFrom-n" name="n" visibility="public" type="NamedElement"/> |
| <ownedParameter xmi:id="NamedElement-isDistinguishableFrom-ns" name="ns" visibility="public" type="Namespace"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="NamedElement-namespace.1" name="namespace" visibility="public" bodyCondition="NamedElement-namespace.1-spec" isQuery="true"> |
| <ownedComment xmi:id="NamedElement-namespace.1-_ownedComment.0" annotatedElement="NamedElement-namespace.1"> |
| <body>Missing derivation for NamedElement::/namespace : Namespace</body> |
| </ownedComment> |
| <ownedRule xmi:id="NamedElement-namespace.1-spec" name="spec" constrainedElement="NamedElement-namespace.1 NamedElement-namespace"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="NamedElement-namespace.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="NamedElement-namespace.1-result" name="result" visibility="public" type="Namespace" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="NamedElement-namespace.1-result-_lowerValue"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="NamedElement-qualifiedName.1" name="qualifiedName" visibility="public" bodyCondition="NamedElement-qualifiedName.1-spec" isQuery="true"> |
| <ownedComment xmi:id="NamedElement-qualifiedName.1-_ownedComment.0" annotatedElement="NamedElement-qualifiedName.1"> |
| <body>When there is a name, and all of the containing namespaces have a name, the qualified name is constructed from the names of the containing namespaces.</body> |
| </ownedComment> |
| <ownedRule xmi:id="NamedElement-qualifiedName.1-spec" name="spec" constrainedElement="NamedElement-qualifiedName.1 NamedElement-qualifiedName"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="NamedElement-qualifiedName.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = if self.name->notEmpty() and self.allNamespaces()->select(ns | ns.name->isEmpty())->isEmpty() |
| then |
| self.allNamespaces()->iterate( ns : Namespace; result: String = self.name | ns.name->union(self.separator())->union(result)) |
| else |
| Set{} |
| endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="NamedElement-qualifiedName.1-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="NamedElement-separator" name="separator" visibility="public" bodyCondition="NamedElement-separator-spec" isQuery="true"> |
| <ownedComment xmi:id="NamedElement-separator-_ownedComment.0" annotatedElement="NamedElement-separator"> |
| <body>The query separator() gives the string that is used to separate names when constructing a qualified name.</body> |
| </ownedComment> |
| <ownedRule xmi:id="NamedElement-separator-spec" name="spec" constrainedElement="NamedElement-separator"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="NamedElement-separator-spec-_specification"> |
| <language>OCL</language> |
| <body>result = '::'</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="NamedElement-separator-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Namespace" name="Namespace" isAbstract="true"> |
| <ownedComment xmi:id="Namespace-_ownedComment.0" annotatedElement="Namespace"> |
| <body>A namespace is an element in a model that contains a set of named elements that can be identified by name.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Namespace-members_distinguishable" name="members_distinguishable" constrainedElement="Namespace"> |
| <ownedComment xmi:id="Namespace-members_distinguishable-_ownedComment.0" annotatedElement="Namespace-members_distinguishable"> |
| <body>All the members of a Namespace are distinguishable within it.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Namespace-members_distinguishable-_specification"> |
| <language>OCL</language> |
| <body>membersAreDistinguishable()</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Namespace-_generalization.0" general="NamedElement"/> |
| <ownedAttribute xmi:id="Namespace-elementImport" name="elementImport" visibility="public" type="ElementImport" aggregation="composite" subsettedProperty="A_source_directedRelationship-directedRelationship Element-ownedElement" association="A_elementImport_importingNamespace"> |
| <ownedComment xmi:id="Namespace-elementImport-_ownedComment.0" annotatedElement="Namespace-elementImport"> |
| <body>References the ElementImports owned by the Namespace.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Namespace-elementImport-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Namespace-elementImport-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Namespace-importedMember" name="importedMember" visibility="public" type="PackageableElement" isReadOnly="true" isDerived="true" subsettedProperty="Namespace-member" association="A_importedMember_namespace"> |
| <ownedComment xmi:id="Namespace-importedMember-_ownedComment.0" annotatedElement="Namespace-importedMember"> |
| <body>References the PackageableElements that are members of this Namespace as a result of either PackageImports or ElementImports.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Namespace-importedMember-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Namespace-importedMember-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Namespace-member" name="member" visibility="public" type="NamedElement" isReadOnly="true" isDerived="true" isDerivedUnion="true" association="A_member_memberNamespace"> |
| <ownedComment xmi:id="Namespace-member-_ownedComment.0" annotatedElement="Namespace-member"> |
| <body>A collection of NamedElements identifiable within the Namespace, either by being owned or by being introduced by importing or inheritance.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Namespace-member-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Namespace-member-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Namespace-ownedMember" name="ownedMember" visibility="public" type="NamedElement" isReadOnly="true" aggregation="composite" isDerived="true" isDerivedUnion="true" subsettedProperty="Namespace-member Element-ownedElement" association="A_ownedMember_namespace"> |
| <ownedComment xmi:id="Namespace-ownedMember-_ownedComment.0" annotatedElement="Namespace-ownedMember"> |
| <body>A collection of NamedElements owned by the Namespace.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Namespace-ownedMember-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Namespace-ownedMember-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Namespace-ownedRule" name="ownedRule" visibility="public" type="Constraint" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_ownedRule_context"> |
| <ownedComment xmi:id="Namespace-ownedRule-_ownedComment.0" annotatedElement="Namespace-ownedRule"> |
| <body>Specifies a set of Constraints owned by this Namespace.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Namespace-ownedRule-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Namespace-ownedRule-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Namespace-packageImport" name="packageImport" visibility="public" type="PackageImport" aggregation="composite" subsettedProperty="A_source_directedRelationship-directedRelationship Element-ownedElement" association="A_packageImport_importingNamespace"> |
| <ownedComment xmi:id="Namespace-packageImport-_ownedComment.0" annotatedElement="Namespace-packageImport"> |
| <body>References the PackageImports owned by the Namespace.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Namespace-packageImport-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Namespace-packageImport-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Namespace-excludeCollisions" name="excludeCollisions" visibility="public" bodyCondition="Namespace-excludeCollisions-spec" isQuery="true"> |
| <ownedComment xmi:id="Namespace-excludeCollisions-_ownedComment.0" annotatedElement="Namespace-excludeCollisions"> |
| <body>The query excludeCollisions() excludes from a set of PackageableElements any that would not be distinguishable from each other in this namespace.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Namespace-excludeCollisions-spec" name="spec" constrainedElement="Namespace-excludeCollisions"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Namespace-excludeCollisions-spec-_specification"> |
| <language>OCL</language> |
| <body>result = imps->reject(imp1 | imps.exists(imp2 | not imp1.isDistinguishableFrom(imp2, self)))</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Namespace-excludeCollisions-result" name="result" visibility="public" type="PackageableElement" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Namespace-excludeCollisions-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Namespace-excludeCollisions-result-_upperValue" value="*"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="Namespace-excludeCollisions-imps" name="imps" visibility="public" type="PackageableElement"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Namespace-excludeCollisions-imps-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Namespace-excludeCollisions-imps-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Namespace-getNamesOfMember" name="getNamesOfMember" visibility="public" bodyCondition="Namespace-getNamesOfMember-spec" isQuery="true"> |
| <ownedComment xmi:id="Namespace-getNamesOfMember-_ownedComment.0" annotatedElement="Namespace-getNamesOfMember"> |
| <body>The query getNamesOfMember() gives a set of all of the names that a member would have in a Namespace. In general a member can have multiple names in a Namespace if it is imported more than once with different aliases. The query takes account of importing. It gives back the set of names that an element would have in an importing namespace, either because it is owned, or if not owned then imported individually, or if not individually then from a package.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Namespace-getNamesOfMember-_ownedComment.1" annotatedElement="Namespace-getNamesOfMember"> |
| <body>The query getNamesOfMember() takes importing into account. It gives back the set of names that an element would have in an importing namespace, either because it is owned, or if not owned then imported individually, or if not individually then from a package.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Namespace-getNamesOfMember-spec" name="spec" constrainedElement="Namespace-getNamesOfMember"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Namespace-getNamesOfMember-spec-_specification"> |
| <language>OCL</language> |
| <body>result = if self.ownedMember ->includes(element) |
| then Set{}->include(element.name) |
| else let elementImports: ElementImport = self.elementImport->select(ei | ei.importedElement = element) in |
| if elementImports->notEmpty() |
| then elementImports->collect(el | el.getName()) |
| else self.packageImport->select(pi | pi.importedPackage.visibleMembers()->includes(element))-> collect(pi | pi.importedPackage.getNamesOfMember(element)) |
| endif |
| endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Namespace-getNamesOfMember-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Namespace-getNamesOfMember-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Namespace-getNamesOfMember-result-_upperValue" value="*"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="Namespace-getNamesOfMember-element" name="element" visibility="public" type="NamedElement"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="Namespace-importMembers" name="importMembers" visibility="public" bodyCondition="Namespace-importMembers-spec" isQuery="true"> |
| <ownedComment xmi:id="Namespace-importMembers-_ownedComment.0" annotatedElement="Namespace-importMembers"> |
| <body>The query importMembers() defines which of a set of PackageableElements are actually imported into the namespace. This excludes hidden ones, i.e., those which have names that conflict with names of owned members, and also excludes elements which would have the same name when imported.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Namespace-importMembers-spec" name="spec" constrainedElement="Namespace-importMembers"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Namespace-importMembers-spec-_specification"> |
| <language>OCL</language> |
| <body>result = self.excludeCollisions(imps)->select(imp | self.ownedMember->forAll(mem | |
| mem.imp.isDistinguishableFrom(mem, self)))</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Namespace-importMembers-result" name="result" visibility="public" type="PackageableElement" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Namespace-importMembers-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Namespace-importMembers-result-_upperValue" value="*"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="Namespace-importMembers-imps" name="imps" visibility="public" type="PackageableElement"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Namespace-importMembers-imps-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Namespace-importMembers-imps-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Namespace-importedMember.1" name="importedMember" visibility="public" bodyCondition="Namespace-importedMember.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Namespace-importedMember.1-_ownedComment.0" annotatedElement="Namespace-importedMember.1"> |
| <body>The importedMember property is derived from the ElementImports and the PackageImports. References the PackageableElements that are members of this Namespace as a result of either PackageImports or ElementImports.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Namespace-importedMember.1-spec" name="spec" constrainedElement="Namespace-importedMember.1 Namespace-importedMember"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Namespace-importedMember.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = self.importMembers(self.elementImport.importedElement.asSet()- |
| >union(self.packageImport.importedPackage->collect(p | p.visibleMembers())))</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Namespace-importedMember.1-result" name="result" visibility="public" type="PackageableElement" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Namespace-importedMember.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Namespace-importedMember.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Namespace-membersAreDistinguishable" name="membersAreDistinguishable" visibility="public" bodyCondition="Namespace-membersAreDistinguishable-spec" isQuery="true"> |
| <ownedComment xmi:id="Namespace-membersAreDistinguishable-_ownedComment.0" annotatedElement="Namespace-membersAreDistinguishable"> |
| <body>The Boolean query membersAreDistinguishable() determines whether all of the namespace's members are distinguishable within it.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Namespace-membersAreDistinguishable-spec" name="spec" constrainedElement="Namespace-membersAreDistinguishable"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Namespace-membersAreDistinguishable-spec-_specification"> |
| <language>OCL</language> |
| <body>result = self.member->forAll( memb | |
| self.member->excluding(memb)->forAll(other | |
| memb.isDistinguishableFrom(other, self)))</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Namespace-membersAreDistinguishable-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Namespace-ownedMember.1" name="ownedMember" visibility="public" bodyCondition="Namespace-ownedMember.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Namespace-ownedMember.1-_ownedComment.0" annotatedElement="Namespace-ownedMember.1"> |
| <body>Missing derivation for Namespace::/ownedMember : NamedElement</body> |
| </ownedComment> |
| <ownedRule xmi:id="Namespace-ownedMember.1-spec" name="spec" constrainedElement="Namespace-ownedMember.1 Namespace-ownedMember"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Namespace-ownedMember.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Namespace-ownedMember.1-result" name="result" visibility="public" type="NamedElement" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Namespace-ownedMember.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Namespace-ownedMember.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Node" name="Node"> |
| <ownedComment xmi:id="Node-_ownedComment.0" annotatedElement="Node"> |
| <body>A node is computational resource upon which artifacts may be deployed for execution. Nodes can be interconnected through communication paths to define network structures.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Node-internal_structure" name="internal_structure" constrainedElement="Node"> |
| <ownedComment xmi:id="Node-internal_structure-_ownedComment.0" annotatedElement="Node-internal_structure"> |
| <body>The internal structure of a Node (if defined) consists solely of parts of type Node.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Node-internal_structure-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Node-_generalization.0" general="Class"/> |
| <generalization xmi:id="Node-_generalization.1" general="DeploymentTarget"/> |
| <ownedAttribute xmi:id="Node-nestedNode" name="nestedNode" visibility="public" type="Node" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_nestedNode_node"> |
| <ownedComment xmi:id="Node-nestedNode-_ownedComment.0" annotatedElement="Node-nestedNode"> |
| <body>The Nodes that are defined (nested) within the Node.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Node-nestedNode-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Node-nestedNode-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ObjectFlow" name="ObjectFlow"> |
| <ownedComment xmi:id="ObjectFlow-_ownedComment.0" annotatedElement="ObjectFlow"> |
| <body>An object flow is an activity edge that can have objects or data passing along it.</body> |
| </ownedComment> |
| <ownedComment xmi:id="ObjectFlow-_ownedComment.1" annotatedElement="ObjectFlow"> |
| <body>Object flows have support for multicast/receive, token selection from object nodes, and transformation of tokens.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ObjectFlow-is_multicast_or_is_multireceive" name="is_multicast_or_is_multireceive" constrainedElement="ObjectFlow"> |
| <ownedComment xmi:id="ObjectFlow-is_multicast_or_is_multireceive-_ownedComment.0" annotatedElement="ObjectFlow-is_multicast_or_is_multireceive"> |
| <body>isMulticast and isMultireceive cannot both be true.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ObjectFlow-is_multicast_or_is_multireceive-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ObjectFlow-selection_behaviour" name="selection_behaviour" constrainedElement="ObjectFlow"> |
| <ownedComment xmi:id="ObjectFlow-selection_behaviour-_ownedComment.0" annotatedElement="ObjectFlow-selection_behaviour"> |
| <body>An object flow may have a selection behavior only if has an object node as a source.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ObjectFlow-selection_behaviour-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ObjectFlow-compatible_types" name="compatible_types" constrainedElement="ObjectFlow"> |
| <ownedComment xmi:id="ObjectFlow-compatible_types-_ownedComment.0" annotatedElement="ObjectFlow-compatible_types"> |
| <body>Object nodes connected by an object flow, with optionally intervening control nodes, must have compatible types. In particular, the downstream object node type must be the same or a supertype of the upstream object node type.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ObjectFlow-compatible_types-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ObjectFlow-no_actions" name="no_actions" constrainedElement="ObjectFlow"> |
| <ownedComment xmi:id="ObjectFlow-no_actions-_ownedComment.0" annotatedElement="ObjectFlow-no_actions"> |
| <body>Object flows may not have actions at either end.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ObjectFlow-no_actions-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ObjectFlow-input_and_output_parameter" name="input_and_output_parameter" constrainedElement="ObjectFlow"> |
| <ownedComment xmi:id="ObjectFlow-input_and_output_parameter-_ownedComment.0" annotatedElement="ObjectFlow-input_and_output_parameter"> |
| <body>A selection behavior has one input parameter and one output parameter. The input parameter must be a bag of elements of the same as or a supertype of the type of source object node. The output parameter must be the same or a subtype of the type of source object node. The behavior cannot have side effects.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ObjectFlow-input_and_output_parameter-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ObjectFlow-transformation_behaviour" name="transformation_behaviour" constrainedElement="ObjectFlow"> |
| <ownedComment xmi:id="ObjectFlow-transformation_behaviour-_ownedComment.0" annotatedElement="ObjectFlow-transformation_behaviour"> |
| <body>A transformation behavior has one input parameter and one output parameter. The input parameter must be the same as or a supertype of the type of object token coming from the source end. The output parameter must be the same or a subtype of the type of object token expected downstream. The behavior cannot have side effects.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ObjectFlow-transformation_behaviour-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ObjectFlow-target" name="target" constrainedElement="ObjectFlow"> |
| <ownedComment xmi:id="ObjectFlow-target-_ownedComment.0" annotatedElement="ObjectFlow-target"> |
| <body>An edge with constant weight may not target an object node, or lead to an object node downstream with no intervening actions, that has an upper bound less than the weight.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ObjectFlow-target-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ObjectFlow-same_upper_bounds" name="same_upper_bounds" constrainedElement="ObjectFlow"> |
| <ownedComment xmi:id="ObjectFlow-same_upper_bounds-_ownedComment.0" annotatedElement="ObjectFlow-same_upper_bounds"> |
| <body>Object nodes connected by an object flow, with optionally intervening control nodes, must have the same upper bounds.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ObjectFlow-same_upper_bounds-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ObjectFlow-_generalization.0" general="ActivityEdge"/> |
| <ownedAttribute xmi:id="ObjectFlow-isMulticast" name="isMulticast" visibility="public"> |
| <ownedComment xmi:id="ObjectFlow-isMulticast-_ownedComment.0" annotatedElement="ObjectFlow-isMulticast"> |
| <body>Tells whether the objects in the flow are passed by multicasting.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="ObjectFlow-isMulticast-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ObjectFlow-isMultireceive" name="isMultireceive" visibility="public"> |
| <ownedComment xmi:id="ObjectFlow-isMultireceive-_ownedComment.0" annotatedElement="ObjectFlow-isMultireceive"> |
| <body>Tells whether the objects in the flow are gathered from respondents to multicasting.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="ObjectFlow-isMultireceive-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ObjectFlow-selection" name="selection" visibility="public" type="Behavior" association="A_selection_objectFlow"> |
| <ownedComment xmi:id="ObjectFlow-selection-_ownedComment.0" annotatedElement="ObjectFlow-selection"> |
| <body>Selects tokens from a source object node.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ObjectFlow-selection-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ObjectFlow-transformation" name="transformation" visibility="public" type="Behavior" association="A_transformation_objectFlow"> |
| <ownedComment xmi:id="ObjectFlow-transformation-_ownedComment.0" annotatedElement="ObjectFlow-transformation"> |
| <body>Changes or replaces data tokens flowing along edge.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ObjectFlow-transformation-_lowerValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ObjectNode" name="ObjectNode" isAbstract="true"> |
| <ownedComment xmi:id="ObjectNode-_ownedComment.0" annotatedElement="ObjectNode"> |
| <body>An object node is an abstract activity node that is part of defining object flow in an activity.</body> |
| </ownedComment> |
| <ownedComment xmi:id="ObjectNode-_ownedComment.1" annotatedElement="ObjectNode"> |
| <body>Object nodes have support for token selection, limitation on the number of tokens, specifying the state required for tokens, and carrying control values.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ObjectNode-object_flow_edges" name="object_flow_edges" constrainedElement="ObjectNode"> |
| <ownedComment xmi:id="ObjectNode-object_flow_edges-_ownedComment.0" annotatedElement="ObjectNode-object_flow_edges"> |
| <body>All edges coming into or going out of object nodes must be object flow edges.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ObjectNode-object_flow_edges-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ObjectNode-selection_behavior" name="selection_behavior" constrainedElement="ObjectNode"> |
| <ownedComment xmi:id="ObjectNode-selection_behavior-_ownedComment.0" annotatedElement="ObjectNode-selection_behavior"> |
| <body>If an object node has a selection behavior, then the ordering of the object node is ordered, and vice versa.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ObjectNode-selection_behavior-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ObjectNode-input_output_parameter" name="input_output_parameter" constrainedElement="ObjectNode"> |
| <ownedComment xmi:id="ObjectNode-input_output_parameter-_ownedComment.0" annotatedElement="ObjectNode-input_output_parameter"> |
| <body>A selection behavior has one input parameter and one output parameter. The input parameter must be a bag of elements of the same type as the object node or a supertype of the type of object node. The output parameter must be the same or a subtype of the type of object node. The behavior cannot have side effects.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ObjectNode-input_output_parameter-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ObjectNode-_generalization.0" general="ActivityNode"/> |
| <generalization xmi:id="ObjectNode-_generalization.1" general="TypedElement"/> |
| <ownedAttribute xmi:id="ObjectNode-inState" name="inState" visibility="public" type="State" association="A_inState_objectNode"> |
| <ownedComment xmi:id="ObjectNode-inState-_ownedComment.0" annotatedElement="ObjectNode-inState"> |
| <body>The required states of the object available at this point in the activity.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ObjectNode-inState-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ObjectNode-inState-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ObjectNode-isControlType" name="isControlType" visibility="public"> |
| <ownedComment xmi:id="ObjectNode-isControlType-_ownedComment.0" annotatedElement="ObjectNode-isControlType"> |
| <body>Tells whether the type of the object node is to be treated as control.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="ObjectNode-isControlType-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ObjectNode-ordering" name="ordering" visibility="public" type="ObjectNodeOrderingKind"> |
| <ownedComment xmi:id="ObjectNode-ordering-_ownedComment.0" annotatedElement="ObjectNode-ordering"> |
| <body>Tells whether and how the tokens in the object node are ordered for selection to traverse edges outgoing from the object node.</body> |
| </ownedComment> |
| <defaultValue xmi:type="uml:InstanceValue" xmi:id="ObjectNode-ordering-_defaultValue" type="ObjectNodeOrderingKind" instance="ObjectNodeOrderingKind-FIFO"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ObjectNode-selection" name="selection" visibility="public" type="Behavior" association="A_selection_objectNode"> |
| <ownedComment xmi:id="ObjectNode-selection-_ownedComment.0" annotatedElement="ObjectNode-selection"> |
| <body>Selects tokens for outgoing edges.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ObjectNode-selection-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ObjectNode-upperBound" name="upperBound" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_upperBound_objectNode"> |
| <ownedComment xmi:id="ObjectNode-upperBound-_ownedComment.0" annotatedElement="ObjectNode-upperBound"> |
| <body>The maximum number of tokens allowed in the node. Objects cannot flow into the node if the upper bound is reached.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Observation" name="Observation" isAbstract="true"> |
| <ownedComment xmi:id="Observation-_ownedComment.0" annotatedElement="Observation"> |
| <body>Observation is a superclass of TimeObservation and DurationObservation in order for TimeExpression and Duration to refer to either in a simple way.</body> |
| </ownedComment> |
| <generalization xmi:id="Observation-_generalization.0" general="PackageableElement"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="OccurrenceSpecification" name="OccurrenceSpecification"> |
| <ownedComment xmi:id="OccurrenceSpecification-_ownedComment.0" annotatedElement="OccurrenceSpecification"> |
| <body>An occurrence specification is the basic semantic unit of interactions. The sequences of occurrences specified by them are the meanings of interactions.</body> |
| </ownedComment> |
| <generalization xmi:id="OccurrenceSpecification-_generalization.0" general="InteractionFragment"/> |
| <ownedAttribute xmi:id="OccurrenceSpecification-covered" name="covered" visibility="public" type="Lifeline" redefinedProperty="InteractionFragment-covered" association="A_covered_events"> |
| <ownedComment xmi:id="OccurrenceSpecification-covered-_ownedComment.0" annotatedElement="OccurrenceSpecification-covered"> |
| <body>References the Lifeline on which the OccurrenceSpecification appears.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="OccurrenceSpecification-toAfter" name="toAfter" visibility="public" type="GeneralOrdering" association="A_before_toAfter"> |
| <ownedComment xmi:id="OccurrenceSpecification-toAfter-_ownedComment.0" annotatedElement="OccurrenceSpecification-toAfter"> |
| <body>References the GeneralOrderings that specify EventOcurrences that must occur after this OccurrenceSpecification</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="OccurrenceSpecification-toAfter-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="OccurrenceSpecification-toAfter-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="OccurrenceSpecification-toBefore" name="toBefore" visibility="public" type="GeneralOrdering" association="A_toBefore_after"> |
| <ownedComment xmi:id="OccurrenceSpecification-toBefore-_ownedComment.0" annotatedElement="OccurrenceSpecification-toBefore"> |
| <body>References the GeneralOrderings that specify EventOcurrences that must occur before this OccurrenceSpecification</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="OccurrenceSpecification-toBefore-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="OccurrenceSpecification-toBefore-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="OpaqueAction" name="OpaqueAction"> |
| <ownedComment xmi:id="OpaqueAction-_ownedComment.0" annotatedElement="OpaqueAction"> |
| <body>An action with implementation-specific semantics.</body> |
| </ownedComment> |
| <generalization xmi:id="OpaqueAction-_generalization.0" general="Action"/> |
| <ownedAttribute xmi:id="OpaqueAction-body" name="body" visibility="public" isOrdered="true" isUnique="false"> |
| <ownedComment xmi:id="OpaqueAction-body-_ownedComment.0" annotatedElement="OpaqueAction-body"> |
| <body>Specifies the action in one or more languages.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="OpaqueAction-body-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="OpaqueAction-body-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="OpaqueAction-inputValue" name="inputValue" visibility="public" type="InputPin" aggregation="composite" subsettedProperty="Action-input" association="A_inputValue_opaqueAction"> |
| <ownedComment xmi:id="OpaqueAction-inputValue-_ownedComment.0" annotatedElement="OpaqueAction-inputValue"> |
| <body>Provides input to the action.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="OpaqueAction-inputValue-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="OpaqueAction-inputValue-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="OpaqueAction-language" name="language" visibility="public" isOrdered="true"> |
| <ownedComment xmi:id="OpaqueAction-language-_ownedComment.0" annotatedElement="OpaqueAction-language"> |
| <body>Languages the body strings use, in the same order as the body strings</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="OpaqueAction-language-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="OpaqueAction-language-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="OpaqueAction-outputValue" name="outputValue" visibility="public" type="OutputPin" aggregation="composite" subsettedProperty="Action-output" association="A_outputValue_opaqueAction"> |
| <ownedComment xmi:id="OpaqueAction-outputValue-_ownedComment.0" annotatedElement="OpaqueAction-outputValue"> |
| <body>Takes output from the action.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="OpaqueAction-outputValue-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="OpaqueAction-outputValue-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="OpaqueBehavior" name="OpaqueBehavior"> |
| <ownedComment xmi:id="OpaqueBehavior-_ownedComment.0" annotatedElement="OpaqueBehavior"> |
| <body>An behavior with implementation-specific semantics.</body> |
| </ownedComment> |
| <generalization xmi:id="OpaqueBehavior-_generalization.0" general="Behavior"/> |
| <ownedAttribute xmi:id="OpaqueBehavior-body" name="body" visibility="public" isOrdered="true" isUnique="false"> |
| <ownedComment xmi:id="OpaqueBehavior-body-_ownedComment.0" annotatedElement="OpaqueBehavior-body"> |
| <body>Specifies the behavior in one or more languages.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="OpaqueBehavior-body-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="OpaqueBehavior-body-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="OpaqueBehavior-language" name="language" visibility="public" isOrdered="true"> |
| <ownedComment xmi:id="OpaqueBehavior-language-_ownedComment.0" annotatedElement="OpaqueBehavior-language"> |
| <body>Languages the body strings use in the same order as the body strings.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="OpaqueBehavior-language-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="OpaqueBehavior-language-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="OpaqueExpression" name="OpaqueExpression"> |
| <ownedComment xmi:id="OpaqueExpression-_ownedComment.0" annotatedElement="OpaqueExpression"> |
| <body>An opaque expression is an uninterpreted textual statement that denotes a (possibly empty) set of values when evaluated in a context.</body> |
| </ownedComment> |
| <ownedComment xmi:id="OpaqueExpression-_ownedComment.1" annotatedElement="OpaqueExpression"> |
| <body>Provides a mechanism for precisely defining the behavior of an opaque expression. An opaque expression is defined by a behavior restricted to return one result.</body> |
| </ownedComment> |
| <ownedRule xmi:id="OpaqueExpression-only_return_result_parameters" name="only_return_result_parameters" constrainedElement="OpaqueExpression"> |
| <ownedComment xmi:id="OpaqueExpression-only_return_result_parameters-_ownedComment.0" annotatedElement="OpaqueExpression-only_return_result_parameters"> |
| <body>The behavior may only have return result parameters.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="OpaqueExpression-only_return_result_parameters-_specification"> |
| <language>OCL</language> |
| <body>self.behavior.notEmpty() implies |
| self.behavior.ownedParameters->select(p | p.direction<>#return)->isEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="OpaqueExpression-one_return_result_parameter" name="one_return_result_parameter" constrainedElement="OpaqueExpression"> |
| <ownedComment xmi:id="OpaqueExpression-one_return_result_parameter-_ownedComment.0" annotatedElement="OpaqueExpression-one_return_result_parameter"> |
| <body>The behavior must have exactly one return result parameter.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="OpaqueExpression-one_return_result_parameter-_specification"> |
| <language>OCL</language> |
| <body>self.behavior.notEmpty() implies |
| self.behavior.ownedParameter->select(p | p.direction=#return)->size() = 1</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="OpaqueExpression-language_body_size" name="language_body_size" constrainedElement="OpaqueExpression"> |
| <ownedComment xmi:id="OpaqueExpression-language_body_size-_ownedComment.0" annotatedElement="OpaqueExpression-language_body_size"> |
| <body>If the language attribute is not empty, then the size of the body and language arrays must be the same.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="OpaqueExpression-language_body_size-_specification"> |
| <language>OCL</language> |
| <body>language->notEmpty() implies (body->size() = language->size())</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="OpaqueExpression-_generalization.0" general="ValueSpecification"/> |
| <ownedAttribute xmi:id="OpaqueExpression-behavior" name="behavior" visibility="public" type="Behavior" association="A_behavior_opaqueExpression"> |
| <ownedComment xmi:id="OpaqueExpression-behavior-_ownedComment.0" annotatedElement="OpaqueExpression-behavior"> |
| <body>Specifies the behavior of the opaque expression.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="OpaqueExpression-behavior-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="OpaqueExpression-body" name="body" visibility="public" isOrdered="true" isUnique="false"> |
| <ownedComment xmi:id="OpaqueExpression-body-_ownedComment.0" annotatedElement="OpaqueExpression-body"> |
| <body>The text of the expression, possibly in multiple languages.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="OpaqueExpression-body-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="OpaqueExpression-body-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="OpaqueExpression-language" name="language" visibility="public" isOrdered="true"> |
| <ownedComment xmi:id="OpaqueExpression-language-_ownedComment.0" annotatedElement="OpaqueExpression-language"> |
| <body>Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the languages. If the languages are unspecified, they might be implicit from the expression body or the context. Languages are matched to body strings by order.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="OpaqueExpression-language-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="OpaqueExpression-language-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="OpaqueExpression-result" name="result" visibility="public" type="Parameter" isReadOnly="true" isDerived="true" association="A_result_opaqueExpression"> |
| <ownedComment xmi:id="OpaqueExpression-result-_ownedComment.0" annotatedElement="OpaqueExpression-result"> |
| <body>Restricts an opaque expression to return exactly one return result. When the invocation of the opaque expression completes, a single set of values is returned to its owner. This association is derived from the single return result parameter of the associated behavior.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="OpaqueExpression-result-_lowerValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="OpaqueExpression-isIntegral" name="isIntegral" visibility="public" bodyCondition="OpaqueExpression-isIntegral-spec" isQuery="true"> |
| <ownedComment xmi:id="OpaqueExpression-isIntegral-_ownedComment.0" annotatedElement="OpaqueExpression-isIntegral"> |
| <body>The query isIntegral() tells whether an expression is intended to produce an integer.</body> |
| </ownedComment> |
| <ownedRule xmi:id="OpaqueExpression-isIntegral-spec" name="spec" constrainedElement="OpaqueExpression-isIntegral"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="OpaqueExpression-isIntegral-spec-_specification"> |
| <language>OCL</language> |
| <body>result = false</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="OpaqueExpression-isIntegral-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="OpaqueExpression-isNonNegative" name="isNonNegative" visibility="public" bodyCondition="OpaqueExpression-isNonNegative-spec" isQuery="true" precondition="OpaqueExpression-isNonNegative-pre"> |
| <ownedComment xmi:id="OpaqueExpression-isNonNegative-_ownedComment.0" annotatedElement="OpaqueExpression-isNonNegative"> |
| <body>The query isNonNegative() tells whether an integer expression has a non-negative value.</body> |
| </ownedComment> |
| <ownedRule xmi:id="OpaqueExpression-isNonNegative-spec" name="spec" constrainedElement="OpaqueExpression-isNonNegative"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="OpaqueExpression-isNonNegative-spec-_specification"> |
| <language>OCL</language> |
| <body>result = false</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="OpaqueExpression-isNonNegative-pre" name="pre" constrainedElement="OpaqueExpression-isNonNegative"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="OpaqueExpression-isNonNegative-pre-_specification"> |
| <language>OCL</language> |
| <body>self.isIntegral()</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="OpaqueExpression-isNonNegative-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="OpaqueExpression-isPositive" name="isPositive" visibility="public" bodyCondition="OpaqueExpression-isPositive-spec" isQuery="true" precondition="OpaqueExpression-isPositive-pre"> |
| <ownedComment xmi:id="OpaqueExpression-isPositive-_ownedComment.0" annotatedElement="OpaqueExpression-isPositive"> |
| <body>The query isPositive() tells whether an integer expression has a positive value.</body> |
| </ownedComment> |
| <ownedRule xmi:id="OpaqueExpression-isPositive-spec" name="spec" constrainedElement="OpaqueExpression-isPositive"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="OpaqueExpression-isPositive-spec-_specification"> |
| <language>OCL</language> |
| <body>result = false</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="OpaqueExpression-isPositive-pre" name="pre" constrainedElement="OpaqueExpression-isPositive"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="OpaqueExpression-isPositive-pre-_specification"> |
| <language>OCL</language> |
| <body>self.isIntegral()</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="OpaqueExpression-isPositive-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="OpaqueExpression-result.1" name="result" visibility="public" bodyCondition="OpaqueExpression-result.1-spec" isQuery="true"> |
| <ownedComment xmi:id="OpaqueExpression-result.1-_ownedComment.0" annotatedElement="OpaqueExpression-result.1"> |
| <body>Missing derivation for OpaqueExpression::/result : Parameter</body> |
| </ownedComment> |
| <ownedRule xmi:id="OpaqueExpression-result.1-spec" name="spec" constrainedElement="OpaqueExpression-result.1 OpaqueExpression-result"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="OpaqueExpression-result.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="OpaqueExpression-result.1-result" name="result" visibility="public" type="Parameter" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="OpaqueExpression-result.1-result-_lowerValue"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="OpaqueExpression-value" name="value" visibility="public" bodyCondition="OpaqueExpression-value-spec" isQuery="true" precondition="OpaqueExpression-value-pre"> |
| <ownedComment xmi:id="OpaqueExpression-value-_ownedComment.0" annotatedElement="OpaqueExpression-value"> |
| <body>The query value() gives an integer value for an expression intended to produce one.</body> |
| </ownedComment> |
| <ownedRule xmi:id="OpaqueExpression-value-pre" name="pre" constrainedElement="OpaqueExpression-value"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="OpaqueExpression-value-pre-_specification"> |
| <language>OCL</language> |
| <body>self.isIntegral()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="OpaqueExpression-value-spec" name="spec" constrainedElement="OpaqueExpression-value"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="OpaqueExpression-value-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="OpaqueExpression-value-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Operation" name="Operation"> |
| <ownedComment xmi:id="Operation-_ownedComment.0" annotatedElement="Operation"> |
| <body>An operation is a behavioral feature of a classifier that specifies the name, type, parameters, and constraints for invoking an associated behavior.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Operation-_ownedComment.1" annotatedElement="Operation"> |
| <body>An operation may invoke both the execution of method behaviors as well as other behavioral responses.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Operation-_ownedComment.2" annotatedElement="Operation"> |
| <body>Operation specializes TemplateableElement in order to support specification of template operations and bound operations. Operation specializes ParameterableElement to specify that an operation can be exposed as a formal template parameter, and provided as an actual parameter in a binding of a template.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Operation-at_most_one_return" name="at_most_one_return" constrainedElement="Operation"> |
| <ownedComment xmi:id="Operation-at_most_one_return-_ownedComment.0" annotatedElement="Operation-at_most_one_return"> |
| <body>An operation can have at most one return parameter; i.e., an owned parameter with the direction set to 'return'</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Operation-at_most_one_return-_specification"> |
| <language>OCL</language> |
| <body>self.ownedParameter->select(par | par.direction = #return)->size() <= 1</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Operation-only_body_for_query" name="only_body_for_query" constrainedElement="Operation"> |
| <ownedComment xmi:id="Operation-only_body_for_query-_ownedComment.0" annotatedElement="Operation-only_body_for_query"> |
| <body>A bodyCondition can only be specified for a query operation.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Operation-only_body_for_query-_specification"> |
| <language>OCL</language> |
| <body>bodyCondition->notEmpty() implies isQuery</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Operation-_generalization.0" general="TemplateableElement"/> |
| <generalization xmi:id="Operation-_generalization.1" general="BehavioralFeature"/> |
| <generalization xmi:id="Operation-_generalization.2" general="ParameterableElement"/> |
| <ownedAttribute xmi:id="Operation-bodyCondition" name="bodyCondition" visibility="public" type="Constraint" aggregation="composite" subsettedProperty="Namespace-ownedRule" association="A_bodyCondition_bodyContext"> |
| <ownedComment xmi:id="Operation-bodyCondition-_ownedComment.0" annotatedElement="Operation-bodyCondition"> |
| <body>An optional Constraint on the result values of an invocation of this Operation.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-bodyCondition-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-class" name="class" visibility="public" type="Class" subsettedProperty="Feature-featuringClassifier RedefinableElement-redefinitionContext NamedElement-namespace" association="A_ownedOperation_class"> |
| <ownedComment xmi:id="Operation-class-_ownedComment.0" annotatedElement="Operation-class"> |
| <body>The class that owns the operation.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-class-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-datatype" name="datatype" visibility="public" type="DataType" subsettedProperty="Feature-featuringClassifier RedefinableElement-redefinitionContext NamedElement-namespace" association="A_ownedOperation_datatype"> |
| <ownedComment xmi:id="Operation-datatype-_ownedComment.0" annotatedElement="Operation-datatype"> |
| <body>The DataType that owns this Operation.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-datatype-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-interface" name="interface" visibility="public" type="Interface" subsettedProperty="Feature-featuringClassifier RedefinableElement-redefinitionContext NamedElement-namespace" association="A_ownedOperation_interface"> |
| <ownedComment xmi:id="Operation-interface-_ownedComment.0" annotatedElement="Operation-interface"> |
| <body>The Interface that owns this Operation.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-interface-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-isOrdered" name="isOrdered" visibility="public" isReadOnly="true" isDerived="true"> |
| <ownedComment xmi:id="Operation-isOrdered-_ownedComment.0" annotatedElement="Operation-isOrdered"> |
| <body>This information is derived from the return result for this Operation.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Operation-isOrdered-_ownedComment.1" annotatedElement="Operation-isOrdered"> |
| <body>Specifies whether the return parameter is ordered or not, if present.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Operation-isOrdered-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-isQuery" name="isQuery" visibility="public"> |
| <ownedComment xmi:id="Operation-isQuery-_ownedComment.0" annotatedElement="Operation-isQuery"> |
| <body>Specifies whether an execution of the BehavioralFeature leaves the state of the system unchanged (isQuery=true) or whether side effects may occur (isQuery=false).</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Operation-isQuery-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-isUnique" name="isUnique" visibility="public" isReadOnly="true" isDerived="true"> |
| <ownedComment xmi:id="Operation-isUnique-_ownedComment.0" annotatedElement="Operation-isUnique"> |
| <body>Specifies whether the return parameter is unique or not, if present.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Operation-isUnique-_ownedComment.1" annotatedElement="Operation-isUnique"> |
| <body>This information is derived from the return result for this Operation.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Operation-isUnique-_defaultValue" value="true"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-lower" name="lower" visibility="public" isReadOnly="true" isDerived="true"> |
| <ownedComment xmi:id="Operation-lower-_ownedComment.0" annotatedElement="Operation-lower"> |
| <body>This information is derived from the return result for this Operation.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Operation-lower-_ownedComment.1" annotatedElement="Operation-lower"> |
| <body>Specifies the lower multiplicity of the return parameter, if present.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-lower-_lowerValue"/> |
| <defaultValue xmi:type="uml:LiteralInteger" xmi:id="Operation-lower-_defaultValue" value="1"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-ownedParameter" name="ownedParameter" visibility="public" type="Parameter" isOrdered="true" aggregation="composite" redefinedProperty="BehavioralFeature-ownedParameter" association="A_ownedParameter_operation"> |
| <ownedComment xmi:id="Operation-ownedParameter-_ownedComment.0" annotatedElement="Operation-ownedParameter"> |
| <body>Specifies the ordered set of formal parameters of this BehavioralFeature.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Operation-ownedParameter-_ownedComment.1" annotatedElement="Operation-ownedParameter"> |
| <body>Specifies the parameters owned by this Operation.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-ownedParameter-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Operation-ownedParameter-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-postcondition" name="postcondition" visibility="public" type="Constraint" aggregation="composite" subsettedProperty="Namespace-ownedRule" association="A_postcondition_postContext"> |
| <ownedComment xmi:id="Operation-postcondition-_ownedComment.0" annotatedElement="Operation-postcondition"> |
| <body>An optional set of Constraints specifying the state of the system when the Operation is completed.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-postcondition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Operation-postcondition-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-precondition" name="precondition" visibility="public" type="Constraint" aggregation="composite" subsettedProperty="Namespace-ownedRule" association="A_precondition_preContext"> |
| <ownedComment xmi:id="Operation-precondition-_ownedComment.0" annotatedElement="Operation-precondition"> |
| <body>An optional set of Constraints on the state of the system when the Operation is invoked.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-precondition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Operation-precondition-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-raisedException" name="raisedException" visibility="public" type="Type" redefinedProperty="BehavioralFeature-raisedException" association="A_raisedException_operation"> |
| <ownedComment xmi:id="Operation-raisedException-_ownedComment.0" annotatedElement="Operation-raisedException"> |
| <body>References the Types representing exceptions that may be raised during an invocation of this operation.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-raisedException-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Operation-raisedException-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-redefinedOperation" name="redefinedOperation" visibility="public" type="Operation" subsettedProperty="RedefinableElement-redefinedElement" association="A_redefinedOperation_operation"> |
| <ownedComment xmi:id="Operation-redefinedOperation-_ownedComment.0" annotatedElement="Operation-redefinedOperation"> |
| <body>References the Operations that are redefined by this Operation.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-redefinedOperation-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Operation-redefinedOperation-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-templateParameter" name="templateParameter" visibility="public" type="OperationTemplateParameter" redefinedProperty="ParameterableElement-templateParameter" association="A_operation_templateParameter_parameteredElement"> |
| <ownedComment xmi:id="Operation-templateParameter-_ownedComment.0" annotatedElement="Operation-templateParameter"> |
| <body>The template parameter that exposes this element as a formal parameter.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-templateParameter-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-type" name="type" visibility="public" type="Type" isReadOnly="true" isDerived="true" association="A_type_operation"> |
| <ownedComment xmi:id="Operation-type-_ownedComment.0" annotatedElement="Operation-type"> |
| <body>This information is derived from the return result for this Operation.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Operation-type-_ownedComment.1" annotatedElement="Operation-type"> |
| <body>Specifies the return result of the operation, if present.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-type-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Operation-upper" name="upper" visibility="public" isReadOnly="true" isDerived="true"> |
| <ownedComment xmi:id="Operation-upper-_ownedComment.0" annotatedElement="Operation-upper"> |
| <body>This information is derived from the return result for this Operation.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Operation-upper-_ownedComment.1" annotatedElement="Operation-upper"> |
| <body>Specifies the upper multiplicity of the return parameter, if present.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#UnlimitedNatural"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-upper-_lowerValue"/> |
| <defaultValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Operation-upper-_defaultValue" value="1"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Operation-isConsistentWith" name="isConsistentWith" visibility="public" bodyCondition="Operation-isConsistentWith-spec" isQuery="true" precondition="Operation-isConsistentWith-pre" redefinedOperation="RedefinableElement-isConsistentWith"> |
| <ownedComment xmi:id="Operation-isConsistentWith-_ownedComment.0" annotatedElement="Operation-isConsistentWith"> |
| <body>A redefining operation is consistent with a redefined operation if it has the same number of owned parameters, and the type of each owned parameter conforms to the type of the corresponding redefined parameter.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Operation-isConsistentWith-_ownedComment.1" annotatedElement="Operation-isConsistentWith"> |
| <body>The query isConsistentWith() specifies, for any two Operations in a context in which redefinition is possible, whether redefinition would be consistent in the sense of maintaining type covariance. Other senses of consistency may be required, for example to determine consistency in the sense of contravariance. Users may define alternative queries under names different from 'isConsistentWith()', as for example, users may define a query named 'isContravariantWith()'.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Operation-isConsistentWith-pre" name="pre" constrainedElement="Operation-isConsistentWith"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Operation-isConsistentWith-pre-_specification"> |
| <language>OCL</language> |
| <body>redefinee.isRedefinitionContextValid(self)</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Operation-isConsistentWith-spec" name="spec" constrainedElement="Operation-isConsistentWith"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Operation-isConsistentWith-spec-_specification"> |
| <language>OCL</language> |
| <body>result = redefinee.oclIsKindOf(Operation) and |
| let op : Operation = redefinee.oclAsType(Operation) in |
| self.ownedParameter->size() = op.ownedParameter->size() and |
| Sequence{1..self.ownedParameter->size()}-> |
| forAll(i |op.ownedParameter->at(1).type.conformsTo(self.ownedParameter->at(i).type))</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Operation-isConsistentWith-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="Operation-isConsistentWith-redefinee" name="redefinee" visibility="public" type="RedefinableElement"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="Operation-isOrdered.1" name="isOrdered" visibility="public" bodyCondition="Operation-isOrdered.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Operation-isOrdered.1-_ownedComment.0" annotatedElement="Operation-isOrdered.1"> |
| <body>If this operation has a return parameter, isOrdered equals the value of isOrdered for that parameter. Otherwise isOrdered is false.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Operation-isOrdered.1-spec" name="spec" constrainedElement="Operation-isOrdered.1 Operation-isOrdered"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Operation-isOrdered.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = if returnResult()->notEmpty() then returnResult()->any().isOrdered else false endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Operation-isOrdered.1-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Operation-isUnique.1" name="isUnique" visibility="public" bodyCondition="Operation-isUnique.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Operation-isUnique.1-_ownedComment.0" annotatedElement="Operation-isUnique.1"> |
| <body>If this operation has a return parameter, isUnique equals the value of isUnique for that parameter. Otherwise isUnique is true.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Operation-isUnique.1-spec" name="spec" constrainedElement="Operation-isUnique.1 Operation-isUnique"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Operation-isUnique.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = if returnResult()->notEmpty() then returnResult()->any().isUnique else true endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Operation-isUnique.1-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Operation-lower.1" name="lower" visibility="public" bodyCondition="Operation-lower.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Operation-lower.1-_ownedComment.0" annotatedElement="Operation-lower.1"> |
| <body>If this operation has a return parameter, lower equals the value of lower for that parameter. Otherwise lower is not defined.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Operation-lower.1-spec" name="spec" constrainedElement="Operation-lower.1 Operation-lower"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Operation-lower.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = if returnResult()->notEmpty() then returnResult()->any().lower else Set{} endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Operation-lower.1-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Operation-returnResult" name="returnResult" visibility="public" bodyCondition="Operation-returnResult-spec" isQuery="true"> |
| <ownedComment xmi:id="Operation-returnResult-_ownedComment.0" annotatedElement="Operation-returnResult"> |
| <body>The query returnResult() returns the set containing the return parameter of the Operation if one exists, otherwise, it returns an empty set</body> |
| </ownedComment> |
| <ownedRule xmi:id="Operation-returnResult-spec" name="spec" constrainedElement="Operation-returnResult"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Operation-returnResult-spec-_specification"> |
| <language>OCL</language> |
| <body>result = ownedParameter->select (par | par.direction = #return)</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Operation-returnResult-result" name="result" visibility="public" type="Parameter" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Operation-returnResult-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Operation-returnResult-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Operation-type.1" name="type" visibility="public" bodyCondition="Operation-type.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Operation-type.1-_ownedComment.0" annotatedElement="Operation-type.1"> |
| <body>If this operation has a return parameter, type equals the value of type for that parameter. Otherwise type is not defined.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Operation-type.1-spec" name="spec" constrainedElement="Operation-type.1 Operation-type"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Operation-type.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = if returnResult()->notEmpty() then returnResult()->any().type else Set{} endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Operation-type.1-result" name="result" visibility="public" type="Type" direction="return"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="Operation-upper.1" name="upper" visibility="public" bodyCondition="Operation-upper.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Operation-upper.1-_ownedComment.0" annotatedElement="Operation-upper.1"> |
| <body>If this operation has a return parameter, upper equals the value of upper for that parameter. Otherwise upper is not defined.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Operation-upper.1-spec" name="spec" constrainedElement="Operation-upper.1 Operation-upper"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Operation-upper.1-spec-_specification"> |
| <language>OCL</language> |
| <body>result = if returnResult()->notEmpty() then returnResult()->any().upper else Set{} endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Operation-upper.1-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#UnlimitedNatural"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="OperationTemplateParameter" name="OperationTemplateParameter"> |
| <ownedComment xmi:id="OperationTemplateParameter-_ownedComment.0" annotatedElement="OperationTemplateParameter"> |
| <body>An operation template parameter exposes an operation as a formal parameter for a template.</body> |
| </ownedComment> |
| <generalization xmi:id="OperationTemplateParameter-_generalization.0" general="TemplateParameter"/> |
| <ownedAttribute xmi:id="OperationTemplateParameter-parameteredElement" name="parameteredElement" visibility="public" type="Operation" redefinedProperty="TemplateParameter-parameteredElement" association="A_operation_templateParameter_parameteredElement"> |
| <ownedComment xmi:id="OperationTemplateParameter-parameteredElement-_ownedComment.0" annotatedElement="OperationTemplateParameter-parameteredElement"> |
| <body>The operation for this template parameter.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="OutputPin" name="OutputPin"> |
| <ownedComment xmi:id="OutputPin-_ownedComment.0" annotatedElement="OutputPin"> |
| <body>An output pin is a pin that holds output values produced by an action.</body> |
| </ownedComment> |
| <ownedRule xmi:id="OutputPin-incoming_edges_structured_only" name="incoming_edges_structured_only" constrainedElement="OutputPin"> |
| <ownedComment xmi:id="OutputPin-incoming_edges_structured_only-_ownedComment.0" annotatedElement="OutputPin-incoming_edges_structured_only"> |
| <body>Output pins may have incoming edges only when they are on actions that are structured nodes, and these edges may not target a node contained by the structured node.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="OutputPin-incoming_edges_structured_only-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="OutputPin-_generalization.0" general="Pin"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Package" name="Package"> |
| <ownedComment xmi:id="Package-_ownedComment.0" annotatedElement="Package"> |
| <body>A package can have one or more profile applications to indicate which profiles have been applied. Because a profile is a package, it is possible to apply a profile not only to packages, but also to profiles.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Package-_ownedComment.1" annotatedElement="Package"> |
| <body>Package specializes TemplateableElement and PackageableElement specializes ParameterableElement to specify that a package can be used as a template and a PackageableElement as a template parameter.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Package-_ownedComment.2" annotatedElement="Package"> |
| <body>A package is used to group elements, and provides a namespace for the grouped elements.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Package-elements_public_or_private" name="elements_public_or_private" constrainedElement="Package"> |
| <ownedComment xmi:id="Package-elements_public_or_private-_ownedComment.0" annotatedElement="Package-elements_public_or_private"> |
| <body>If an element that is owned by a package has visibility, it is public or private.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Package-elements_public_or_private-_specification"> |
| <language>OCL</language> |
| <body>self.ownedElements->forAll(e | e.visibility->notEmpty() implies e.visbility = #public or e.visibility = #private)</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Package-_generalization.0" general="Namespace"/> |
| <generalization xmi:id="Package-_generalization.1" general="PackageableElement"/> |
| <generalization xmi:id="Package-_generalization.2" general="TemplateableElement"/> |
| <ownedAttribute xmi:id="Package-URI" name="URI" visibility="public"> |
| <ownedComment xmi:id="Package-URI-_ownedComment.0" annotatedElement="Package-URI"> |
| <body>Provides an identifier for the package that can be used for many purposes. A URI is the universally unique identification of the package following the IETF URI specification, RFC 2396 http://www.ietf.org/rfc/rfc2396.txt and it must comply with those syntax rules.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-URI-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Package-nestedPackage" name="nestedPackage" visibility="public" type="Package" aggregation="composite" isDerived="true" subsettedProperty="Package-packagedElement" association="A_nestedPackage_nestingPackage"> |
| <ownedComment xmi:id="Package-nestedPackage-_ownedComment.0" annotatedElement="Package-nestedPackage"> |
| <body>References the packaged elements that are Packages.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-nestedPackage-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Package-nestedPackage-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Package-nestingPackage" name="nestingPackage" visibility="public" type="Package" subsettedProperty="A_packagedElement_owningPackage-owningPackage" association="A_nestedPackage_nestingPackage"> |
| <ownedComment xmi:id="Package-nestingPackage-_ownedComment.0" annotatedElement="Package-nestingPackage"> |
| <body>References the Package that owns this Package.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-nestingPackage-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Package-ownedStereotype" name="ownedStereotype" visibility="public" type="Stereotype" isReadOnly="true" aggregation="composite" isDerived="true" subsettedProperty="Package-packagedElement" association="A_ownedStereotype_owningPackage"> |
| <ownedComment xmi:id="Package-ownedStereotype-_ownedComment.0" annotatedElement="Package-ownedStereotype"> |
| <body>References the Stereotypes that are owned by the Package</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-ownedStereotype-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Package-ownedStereotype-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Package-ownedType" name="ownedType" visibility="public" type="Type" aggregation="composite" isDerived="true" subsettedProperty="Package-packagedElement" association="A_ownedType_package"> |
| <ownedComment xmi:id="Package-ownedType-_ownedComment.0" annotatedElement="Package-ownedType"> |
| <body>References the packaged elements that are Types.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-ownedType-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Package-ownedType-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Package-packageMerge" name="packageMerge" visibility="public" type="PackageMerge" aggregation="composite" subsettedProperty="A_source_directedRelationship-directedRelationship Element-ownedElement" association="A_packageMerge_receivingPackage"> |
| <ownedComment xmi:id="Package-packageMerge-_ownedComment.0" annotatedElement="Package-packageMerge"> |
| <body>References the PackageMerges that are owned by this Package.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-packageMerge-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Package-packageMerge-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Package-packagedElement" name="packagedElement" visibility="public" type="PackageableElement" aggregation="composite" subsettedProperty="Namespace-ownedMember" association="A_packagedElement_owningPackage"> |
| <ownedComment xmi:id="Package-packagedElement-_ownedComment.0" annotatedElement="Package-packagedElement"> |
| <body>Specifies the packageable elements that are owned by this Package.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-packagedElement-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Package-packagedElement-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Package-profileApplication" name="profileApplication" visibility="public" type="ProfileApplication" aggregation="composite" subsettedProperty="A_source_directedRelationship-directedRelationship Element-ownedElement" association="A_profileApplication_applyingPackage"> |
| <ownedComment xmi:id="Package-profileApplication-_ownedComment.0" annotatedElement="Package-profileApplication"> |
| <body>References the ProfileApplications that indicate which profiles have been applied to the Package.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-profileApplication-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Package-profileApplication-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Package-allApplicableStereotypes" name="allApplicableStereotypes" visibility="public" bodyCondition="Package-allApplicableStereotypes-spec" isQuery="true"> |
| <ownedComment xmi:id="Package-allApplicableStereotypes-_ownedComment.0" annotatedElement="Package-allApplicableStereotypes"> |
| <body>The query allApplicableStereotypes() returns all the directly or indirectly owned stereotypes, including stereotypes contained in sub-profiles.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Package-allApplicableStereotypes-spec" name="spec" constrainedElement="Package-allApplicableStereotypes"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Package-allApplicableStereotypes-spec-_specification"> |
| <language>OCL</language> |
| <body>result = |
| self.ownedStereotype->union(self.ownedMember-> |
| select(oclIsKindOf(Package)).oclAsType(Package).allApplicableStereotypes()->flatten())->asSet()</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Package-allApplicableStereotypes-result" name="result" visibility="public" type="Stereotype" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-allApplicableStereotypes-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Package-allApplicableStereotypes-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Package-containingProfile" name="containingProfile" visibility="public" bodyCondition="Package-containingProfile-spec" isQuery="true"> |
| <ownedComment xmi:id="Package-containingProfile-_ownedComment.0" annotatedElement="Package-containingProfile"> |
| <body>The query containingProfile() returns the closest profile directly or indirectly containing this package (or this package itself, if it is a profile).</body> |
| </ownedComment> |
| <ownedRule xmi:id="Package-containingProfile-spec" name="spec" constrainedElement="Package-containingProfile"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Package-containingProfile-spec-_specification"> |
| <language>OCL</language> |
| <body>result = |
| if self.oclIsKindOf(Profile) then |
| self.oclAsType(Profile) |
| else |
| self.namespace.oclAsType(Package).containingProfile() |
| endif</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Package-containingProfile-result" name="result" visibility="public" type="Profile" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-containingProfile-result-_lowerValue"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Package-makesVisible" name="makesVisible" visibility="public" bodyCondition="Package-makesVisible-spec" isQuery="true" precondition="Package-makesVisible-pre"> |
| <ownedComment xmi:id="Package-makesVisible-_ownedComment.0" annotatedElement="Package-makesVisible"> |
| <body>The query makesVisible() defines whether a Package makes an element visible outside itself. Elements with no visibility and elements with public visibility are made visible.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Package-makesVisible-spec" name="spec" constrainedElement="Package-makesVisible"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Package-makesVisible-spec-_specification"> |
| <language>OCL</language> |
| <body>result = (ownedMember->includes(el)) or |
| (elementImport->select(ei|ei.importedElement = #public)->collect(ei|ei.importedElement)->includes(el)) or |
| (packageImport->select(pi|pi.visibility = #public)->collect(pi|pi.importedPackage.member->includes(el))->notEmpty())</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Package-makesVisible-pre" name="pre" constrainedElement="Package-makesVisible"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Package-makesVisible-pre-_specification"> |
| <language>OCL</language> |
| <body>self.member->includes(el)</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Package-makesVisible-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="Package-makesVisible-el" name="el" visibility="public" type="NamedElement"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="Package-mustBeOwned" name="mustBeOwned" visibility="public" bodyCondition="Package-mustBeOwned-spec" isQuery="true" redefinedOperation="Element-mustBeOwned"> |
| <ownedComment xmi:id="Package-mustBeOwned-_ownedComment.0" annotatedElement="Package-mustBeOwned"> |
| <body>The query mustBeOwned() indicates whether elements of this type must have an owner.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Package-mustBeOwned-spec" name="spec" constrainedElement="Package-mustBeOwned"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Package-mustBeOwned-spec-_specification"> |
| <language>OCL</language> |
| <body>result = false</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Package-mustBeOwned-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Package-nestedPackage.1" name="nestedPackage" visibility="public" bodyCondition="Package-nestedPackage.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Package-nestedPackage.1-_ownedComment.0" annotatedElement="Package-nestedPackage.1"> |
| <body>Missing derivation for Package::/nestedPackage : Package</body> |
| </ownedComment> |
| <ownedRule xmi:id="Package-nestedPackage.1-spec" name="spec" constrainedElement="Package-nestedPackage.1 Package-nestedPackage"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Package-nestedPackage.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Package-nestedPackage.1-result" name="result" visibility="public" type="Package" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-nestedPackage.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Package-nestedPackage.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Package-ownedStereotype.1" name="ownedStereotype" visibility="public" bodyCondition="Package-ownedStereotype.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Package-ownedStereotype.1-_ownedComment.0" annotatedElement="Package-ownedStereotype.1"> |
| <body>Missing derivation for Package::/ownedStereotype : Stereotype</body> |
| </ownedComment> |
| <ownedRule xmi:id="Package-ownedStereotype.1-spec" name="spec" constrainedElement="Package-ownedStereotype.1 Package-ownedStereotype"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Package-ownedStereotype.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Package-ownedStereotype.1-result" name="result" visibility="public" type="Stereotype" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-ownedStereotype.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Package-ownedStereotype.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Package-ownedType.1" name="ownedType" visibility="public" bodyCondition="Package-ownedType.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Package-ownedType.1-_ownedComment.0" annotatedElement="Package-ownedType.1"> |
| <body>Missing derivation for Package::/ownedType : Type</body> |
| </ownedComment> |
| <ownedRule xmi:id="Package-ownedType.1-spec" name="spec" constrainedElement="Package-ownedType.1 Package-ownedType"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Package-ownedType.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Package-ownedType.1-result" name="result" visibility="public" type="Type" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-ownedType.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Package-ownedType.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Package-visibleMembers" name="visibleMembers" visibility="public" bodyCondition="Package-visibleMembers-spec" isQuery="true"> |
| <ownedComment xmi:id="Package-visibleMembers-_ownedComment.0" annotatedElement="Package-visibleMembers"> |
| <body>The query visibleMembers() defines which members of a Package can be accessed outside it.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Package-visibleMembers-spec" name="spec" constrainedElement="Package-visibleMembers"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Package-visibleMembers-spec-_specification"> |
| <language>OCL</language> |
| <body>result = member->select( m | self.makesVisible(m))</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Package-visibleMembers-result" name="result" visibility="public" type="PackageableElement" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Package-visibleMembers-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Package-visibleMembers-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="PackageImport" name="PackageImport"> |
| <ownedComment xmi:id="PackageImport-_ownedComment.0" annotatedElement="PackageImport"> |
| <body>A package import is a relationship that allows the use of unqualified names to refer to package members from other namespaces.</body> |
| </ownedComment> |
| <ownedRule xmi:id="PackageImport-public_or_private" name="public_or_private" constrainedElement="PackageImport"> |
| <ownedComment xmi:id="PackageImport-public_or_private-_ownedComment.0" annotatedElement="PackageImport-public_or_private"> |
| <body>The visibility of a PackageImport is either public or private.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="PackageImport-public_or_private-_specification"> |
| <language>OCL</language> |
| <body>self.visibility = #public or self.visibility = #private</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="PackageImport-_generalization.0" general="DirectedRelationship"/> |
| <ownedAttribute xmi:id="PackageImport-importedPackage" name="importedPackage" visibility="public" type="Package" subsettedProperty="DirectedRelationship-target" association="A_importedPackage_packageImport"> |
| <ownedComment xmi:id="PackageImport-importedPackage-_ownedComment.0" annotatedElement="PackageImport-importedPackage"> |
| <body>Specifies the Package whose members are imported into a Namespace.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="PackageImport-importingNamespace" name="importingNamespace" visibility="public" type="Namespace" subsettedProperty="Element-owner DirectedRelationship-source" association="A_packageImport_importingNamespace"> |
| <ownedComment xmi:id="PackageImport-importingNamespace-_ownedComment.0" annotatedElement="PackageImport-importingNamespace"> |
| <body>Specifies the Namespace that imports the members from a Package.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="PackageImport-visibility" name="visibility" visibility="public" type="VisibilityKind"> |
| <ownedComment xmi:id="PackageImport-visibility-_ownedComment.0" annotatedElement="PackageImport-visibility"> |
| <body>Specifies the visibility of the imported PackageableElements within the importing Namespace, i.e., whether imported elements will in turn be visible to other packages that use that importingPackage as an importedPackage. If the PackageImport is public, the imported elements will be visible outside the package, while if it is private they will not.</body> |
| </ownedComment> |
| <defaultValue xmi:type="uml:InstanceValue" xmi:id="PackageImport-visibility-_defaultValue" type="VisibilityKind" instance="VisibilityKind-public"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="PackageMerge" name="PackageMerge"> |
| <ownedComment xmi:id="PackageMerge-_ownedComment.0" annotatedElement="PackageMerge"> |
| <body>A package merge defines how the contents of one package are extended by the contents of another package.</body> |
| </ownedComment> |
| <generalization xmi:id="PackageMerge-_generalization.0" general="DirectedRelationship"/> |
| <ownedAttribute xmi:id="PackageMerge-mergedPackage" name="mergedPackage" visibility="public" type="Package" subsettedProperty="DirectedRelationship-target" association="A_mergedPackage_packageMerge"> |
| <ownedComment xmi:id="PackageMerge-mergedPackage-_ownedComment.0" annotatedElement="PackageMerge-mergedPackage"> |
| <body>References the Package that is to be merged with the receiving package of the PackageMerge.</body> |
| </ownedComment> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="PackageMerge-receivingPackage" name="receivingPackage" visibility="public" type="Package" subsettedProperty="Element-owner DirectedRelationship-source" association="A_packageMerge_receivingPackage"> |
| <ownedComment xmi:id="PackageMerge-receivingPackage-_ownedComment.0" annotatedElement="PackageMerge-receivingPackage"> |
| <body>References the Package that is being extended with the contents of the merged package of the PackageMerge.</body> |
| </ownedComment> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="PackageableElement" name="PackageableElement" isAbstract="true"> |
| <ownedComment xmi:id="PackageableElement-_ownedComment.0" annotatedElement="PackageableElement"> |
| <body>Packageable elements are able to serve as a template parameter.</body> |
| </ownedComment> |
| <ownedComment xmi:id="PackageableElement-_ownedComment.1" annotatedElement="PackageableElement"> |
| <body>A packageable element indicates a named element that may be owned directly by a package.</body> |
| </ownedComment> |
| <generalization xmi:id="PackageableElement-_generalization.0" general="ParameterableElement"/> |
| <generalization xmi:id="PackageableElement-_generalization.1" general="NamedElement"/> |
| <ownedAttribute xmi:id="PackageableElement-visibility" name="visibility" visibility="public" type="VisibilityKind" redefinedProperty="NamedElement-visibility"> |
| <ownedComment xmi:id="PackageableElement-visibility-_ownedComment.0" annotatedElement="PackageableElement-visibility"> |
| <body>Indicates that packageable elements must always have a visibility, i.e., visibility is not optional.</body> |
| </ownedComment> |
| <defaultValue xmi:type="uml:InstanceValue" xmi:id="PackageableElement-visibility-_defaultValue" type="VisibilityKind" instance="VisibilityKind-public"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Parameter" name="Parameter"> |
| <ownedComment xmi:id="Parameter-_ownedComment.0" annotatedElement="Parameter"> |
| <body>Parameters are allowed to be treated as connectable elements.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Parameter-_ownedComment.1" annotatedElement="Parameter"> |
| <body>A parameter is a specification of an argument used to pass information into or out of an invocation of a behavioral feature.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Parameter-_ownedComment.2" annotatedElement="Parameter"> |
| <body>Parameters have support for streaming, exceptions, and parameter sets.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Parameter-reentrant_behaviors" name="reentrant_behaviors" constrainedElement="Parameter"> |
| <ownedComment xmi:id="Parameter-reentrant_behaviors-_ownedComment.0" annotatedElement="Parameter-reentrant_behaviors"> |
| <body>Reentrant behaviors cannot have stream parameters.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Parameter-reentrant_behaviors-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Parameter-connector_end" name="connector_end" constrainedElement="Parameter"> |
| <ownedComment xmi:id="Parameter-connector_end-_ownedComment.0" annotatedElement="Parameter-connector_end"> |
| <body>A parameter may only be associated with a connector end within the context of a collaboration.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Parameter-connector_end-_specification"> |
| <language>OCL</language> |
| <body>self.end.notEmpty() implies self.collaboration.notEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Parameter-not_exception" name="not_exception" constrainedElement="Parameter"> |
| <ownedComment xmi:id="Parameter-not_exception-_ownedComment.0" annotatedElement="Parameter-not_exception"> |
| <body>An input parameter cannot be an exception.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Parameter-not_exception-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Parameter-in_and_out" name="in_and_out" constrainedElement="Parameter"> |
| <ownedComment xmi:id="Parameter-in_and_out-_ownedComment.0" annotatedElement="Parameter-in_and_out"> |
| <body>Only in and inout parameters may have a delete effect. Only out, inout, and return parameters may have a create effect.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Parameter-in_and_out-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Parameter-stream_and_exception" name="stream_and_exception" constrainedElement="Parameter"> |
| <ownedComment xmi:id="Parameter-stream_and_exception-_ownedComment.0" annotatedElement="Parameter-stream_and_exception"> |
| <body>A parameter cannot be a stream and exception at the same time.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Parameter-stream_and_exception-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Parameter-_generalization.0" general="MultiplicityElement"/> |
| <generalization xmi:id="Parameter-_generalization.1" general="ConnectableElement"/> |
| <ownedAttribute xmi:id="Parameter-default" name="default" visibility="public" isDerived="true"> |
| <ownedComment xmi:id="Parameter-default-_ownedComment.0" annotatedElement="Parameter-default"> |
| <body>Specifies a String that represents a value to be used when no argument is supplied for the Parameter.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Parameter-default-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Parameter-defaultValue" name="defaultValue" visibility="public" type="ValueSpecification" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_defaultValue_owningParameter"> |
| <ownedComment xmi:id="Parameter-defaultValue-_ownedComment.0" annotatedElement="Parameter-defaultValue"> |
| <body>Specifies a ValueSpecification that represents a value to be used when no argument is supplied for the Parameter.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Parameter-defaultValue-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Parameter-direction" name="direction" visibility="public" type="ParameterDirectionKind"> |
| <ownedComment xmi:id="Parameter-direction-_ownedComment.0" annotatedElement="Parameter-direction"> |
| <body>Indicates whether a parameter is being sent into or out of a behavioral element.</body> |
| </ownedComment> |
| <defaultValue xmi:type="uml:InstanceValue" xmi:id="Parameter-direction-_defaultValue" type="ParameterDirectionKind" instance="ParameterDirectionKind-in"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Parameter-effect" name="effect" visibility="public" type="ParameterEffectKind"> |
| <ownedComment xmi:id="Parameter-effect-_ownedComment.0" annotatedElement="Parameter-effect"> |
| <body>Specifies the effect that the owner of the parameter has on values passed in or out of the parameter.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Parameter-effect-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Parameter-isException" name="isException" visibility="public"> |
| <ownedComment xmi:id="Parameter-isException-_ownedComment.0" annotatedElement="Parameter-isException"> |
| <body>Tells whether an output parameter may emit a value to the exclusion of the other outputs.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Parameter-isException-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Parameter-isStream" name="isStream" visibility="public"> |
| <ownedComment xmi:id="Parameter-isStream-_ownedComment.0" annotatedElement="Parameter-isStream"> |
| <body>Tells whether an input parameter may accept values while its behavior is executing, or whether an output parameter post values while the behavior is executing.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Parameter-isStream-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Parameter-operation" name="operation" visibility="public" type="Operation" subsettedProperty="A_ownedParameter_ownerFormalParam-ownerFormalParam" association="A_ownedParameter_operation"> |
| <ownedComment xmi:id="Parameter-operation-_ownedComment.0" annotatedElement="Parameter-operation"> |
| <body>References the Operation owning this parameter.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Parameter-operation-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Parameter-parameterSet" name="parameterSet" visibility="public" type="ParameterSet" association="A_parameterSet_parameter"> |
| <ownedComment xmi:id="Parameter-parameterSet-_ownedComment.0" annotatedElement="Parameter-parameterSet"> |
| <body>The parameter sets containing the parameter. See ParameterSet.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Parameter-parameterSet-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Parameter-parameterSet-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Parameter-default.1" name="default" visibility="public" bodyCondition="Parameter-default.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Parameter-default.1-_ownedComment.0" annotatedElement="Parameter-default.1"> |
| <body>Missing derivation for Parameter::/default : String</body> |
| </ownedComment> |
| <ownedRule xmi:id="Parameter-default.1-spec" name="spec" constrainedElement="Parameter-default.1 Parameter-default"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Parameter-default.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Parameter-default.1-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Parameter-default.1-result-_lowerValue"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ParameterSet" name="ParameterSet"> |
| <ownedComment xmi:id="ParameterSet-_ownedComment.0" annotatedElement="ParameterSet"> |
| <body>A parameter set is an element that provides alternative sets of inputs or outputs that a behavior may use.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ParameterSet-two_parameter_sets" name="two_parameter_sets" constrainedElement="ParameterSet"> |
| <ownedComment xmi:id="ParameterSet-two_parameter_sets-_ownedComment.0" annotatedElement="ParameterSet-two_parameter_sets"> |
| <body>Two parameter sets cannot have exactly the same set of parameters.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ParameterSet-two_parameter_sets-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ParameterSet-input" name="input" constrainedElement="ParameterSet"> |
| <ownedComment xmi:id="ParameterSet-input-_ownedComment.0" annotatedElement="ParameterSet-input"> |
| <body>If a behavior has input parameters that are in a parameter set, then any inputs that are not in a parameter set must be streaming. Same for output parameters.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ParameterSet-input-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="ParameterSet-same_parameterized_entity" name="same_parameterized_entity" constrainedElement="ParameterSet"> |
| <ownedComment xmi:id="ParameterSet-same_parameterized_entity-_ownedComment.0" annotatedElement="ParameterSet-same_parameterized_entity"> |
| <body>The parameters in a parameter set must all be inputs or all be outputs of the same parameterized entity, and the parameter set is owned by that entity.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ParameterSet-same_parameterized_entity-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="ParameterSet-_generalization.0" general="NamedElement"/> |
| <ownedAttribute xmi:id="ParameterSet-condition" name="condition" visibility="public" type="Constraint" aggregation="composite" subsettedProperty="Element-ownedElement" association="A_condition_parameterSet"> |
| <ownedComment xmi:id="ParameterSet-condition-_ownedComment.0" annotatedElement="ParameterSet-condition"> |
| <body>Constraint that should be satisfied for the owner of the parameters in an input parameter set to start execution using the values provided for those parameters, or the owner of the parameters in an output parameter set to end execution providing the values for those parameters, if all preconditions and conditions on input parameter sets were satisfied.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ParameterSet-condition-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ParameterSet-condition-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ParameterSet-parameter" name="parameter" visibility="public" type="Parameter" association="A_parameterSet_parameter"> |
| <ownedComment xmi:id="ParameterSet-parameter-_ownedComment.0" annotatedElement="ParameterSet-parameter"> |
| <body>Parameters in the parameter set.</body> |
| </ownedComment> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="ParameterSet-parameter-_upperValue" value="*"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="ParameterableElement" name="ParameterableElement" isAbstract="true"> |
| <ownedComment xmi:id="ParameterableElement-_ownedComment.0" annotatedElement="ParameterableElement"> |
| <body>A parameterable element is an element that can be exposed as a formal template parameter for a template, or specified as an actual parameter in a binding of a template.</body> |
| </ownedComment> |
| <generalization xmi:id="ParameterableElement-_generalization.0" general="Element"/> |
| <ownedAttribute xmi:id="ParameterableElement-owningTemplateParameter" name="owningTemplateParameter" visibility="public" type="TemplateParameter" subsettedProperty="ParameterableElement-templateParameter Element-owner" association="A_ownedParameteredElement_owningTemplateParameter"> |
| <ownedComment xmi:id="ParameterableElement-owningTemplateParameter-_ownedComment.0" annotatedElement="ParameterableElement-owningTemplateParameter"> |
| <body>The formal template parameter that owns this element.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ParameterableElement-owningTemplateParameter-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="ParameterableElement-templateParameter" name="templateParameter" visibility="public" type="TemplateParameter" association="A_parameteredElement_templateParameter"> |
| <ownedComment xmi:id="ParameterableElement-templateParameter-_ownedComment.0" annotatedElement="ParameterableElement-templateParameter"> |
| <body>The template parameter that exposes this element as a formal parameter.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="ParameterableElement-templateParameter-_lowerValue"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="ParameterableElement-isCompatibleWith" name="isCompatibleWith" visibility="public" bodyCondition="ParameterableElement-isCompatibleWith-spec" isQuery="true"> |
| <ownedComment xmi:id="ParameterableElement-isCompatibleWith-_ownedComment.0" annotatedElement="ParameterableElement-isCompatibleWith"> |
| <body>The query isCompatibleWith() determines if this parameterable element is compatible with the specified parameterable element. By default parameterable element P is compatible with parameterable element Q if the kind of P is the same or a subtype as the kind of Q. Subclasses should override this operation to specify different compatibility constraints.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ParameterableElement-isCompatibleWith-spec" name="spec" constrainedElement="ParameterableElement-isCompatibleWith"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ParameterableElement-isCompatibleWith-spec-_specification"> |
| <language>OCL</language> |
| <body>result = p->oclIsKindOf(self.oclType)</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="ParameterableElement-isCompatibleWith-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| <ownedParameter xmi:id="ParameterableElement-isCompatibleWith-p" name="p" visibility="public" type="ParameterableElement"/> |
| </ownedOperation> |
| <ownedOperation xmi:id="ParameterableElement-isTemplateParameter" name="isTemplateParameter" visibility="public" bodyCondition="ParameterableElement-isTemplateParameter-spec" isQuery="true"> |
| <ownedComment xmi:id="ParameterableElement-isTemplateParameter-_ownedComment.0" annotatedElement="ParameterableElement-isTemplateParameter"> |
| <body>The query isTemplateParameter() determines if this parameterable element is exposed as a formal template parameter.</body> |
| </ownedComment> |
| <ownedRule xmi:id="ParameterableElement-isTemplateParameter-spec" name="spec" constrainedElement="ParameterableElement-isTemplateParameter"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="ParameterableElement-isTemplateParameter-spec-_specification"> |
| <language>OCL</language> |
| <body>result = templateParameter->notEmpty()</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="ParameterableElement-isTemplateParameter-result" name="result" visibility="public" direction="return"> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="PartDecomposition" name="PartDecomposition"> |
| <ownedComment xmi:id="PartDecomposition-_ownedComment.0" annotatedElement="PartDecomposition"> |
| <body>A part decomposition is a description of the internal interactions of one lifeline relative to an interaction.</body> |
| </ownedComment> |
| <ownedRule xmi:id="PartDecomposition-parts_of_internal_structures" name="parts_of_internal_structures" constrainedElement="PartDecomposition"> |
| <ownedComment xmi:id="PartDecomposition-parts_of_internal_structures-_ownedComment.0" annotatedElement="PartDecomposition-parts_of_internal_structures"> |
| <body>PartDecompositions apply only to Parts that are Parts of Internal Structures not to Parts of Collaborations.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="PartDecomposition-parts_of_internal_structures-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="PartDecomposition-assume" name="assume" constrainedElement="PartDecomposition"> |
| <ownedComment xmi:id="PartDecomposition-assume-_ownedComment.0" annotatedElement="PartDecomposition-assume"> |
| <body>Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Within X there is a sequence of constructs along L (such constructs are CombinedFragments, InteractionUse and (plain) OccurrenceSpecifications). Then a corresponding sequence of constructs must appear within D, matched one-to-one in the same order. i) CombinedFragment covering L are matched with an extra-global CombinedFragment in D ii) An InteractionUse covering L are matched with a global (i.e. covering all Lifelines) InteractionUse in D. iii) A plain OccurrenceSpecification on L is considered an actualGate that must be matched by a formalGate of D</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="PartDecomposition-assume-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="PartDecomposition-commutativity_of_decomposition" name="commutativity_of_decomposition" constrainedElement="PartDecomposition"> |
| <ownedComment xmi:id="PartDecomposition-commutativity_of_decomposition-_ownedComment.0" annotatedElement="PartDecomposition-commutativity_of_decomposition"> |
| <body>Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Assume also that there is within X an InteractionUse (say) U that covers L. According to the constraint above U will have a counterpart CU within D. Within the Interaction referenced by U, L should also be decomposed, and the decomposition should reference CU. (This rule is called commutativity of decomposition)</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="PartDecomposition-commutativity_of_decomposition-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="PartDecomposition-_generalization.0" general="InteractionUse"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Pin" name="Pin" isAbstract="true"> |
| <ownedComment xmi:id="Pin-_ownedComment.0" annotatedElement="Pin"> |
| <body>A pin is a typed element and multiplicity element that provides values to actions and accept result values from them.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Pin-_ownedComment.1" annotatedElement="Pin"> |
| <body>A pin is an object node for inputs and outputs to actions.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Pin-control_pins" name="control_pins" constrainedElement="Pin"> |
| <ownedComment xmi:id="Pin-control_pins-_ownedComment.0" annotatedElement="Pin-control_pins"> |
| <body>Control pins have a control type</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Pin-control_pins-_specification"> |
| <language>OCL</language> |
| <body>isControl implies isControlType</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Pin-_generalization.0" general="MultiplicityElement"/> |
| <generalization xmi:id="Pin-_generalization.1" general="ObjectNode"/> |
| <ownedAttribute xmi:id="Pin-isControl" name="isControl" visibility="public"> |
| <ownedComment xmi:id="Pin-isControl-_ownedComment.0" annotatedElement="Pin-isControl"> |
| <body>Tells whether the pins provide data to the actions, or just controls when it executes it.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Pin-isControl-_defaultValue"/> |
| </ownedAttribute> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Port" name="Port"> |
| <ownedComment xmi:id="Port-_ownedComment.0" annotatedElement="Port"> |
| <body>A port has an associated protocol state machine.</body> |
| </ownedComment> |
| <ownedComment xmi:id="Port-_ownedComment.1" annotatedElement="Port"> |
| <body>A port is a property of a classifier that specifies a distinct interaction point between that classifier and its environment or between the (behavior of the) classifier and its internal parts. Ports are connected to properties of the classifier by connectors through which requests can be made to invoke the behavioral features of a classifier. A Port may specify the services a classifier provides (offers) to its environment as well as the services that a classifier expects (requires) of its environment.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Port-default_value" name="default_value" constrainedElement="Port"> |
| <ownedComment xmi:id="Port-default_value-_ownedComment.0" annotatedElement="Port-default_value"> |
| <body>A defaultValue for port cannot be specified when the type of the Port is an Interface</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Port-default_value-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Port-port_aggregation" name="port_aggregation" constrainedElement="Port"> |
| <ownedComment xmi:id="Port-port_aggregation-_ownedComment.0" annotatedElement="Port-port_aggregation"> |
| <body>Port.aggregation must be composite.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Port-port_aggregation-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedRule xmi:id="Port-port_destroyed" name="port_destroyed" constrainedElement="Port"> |
| <ownedComment xmi:id="Port-port_destroyed-_ownedComment.0" annotatedElement="Port-port_destroyed"> |
| <body>When a port is destroyed, all connectors attached to this port will be destroyed also.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Port-port_destroyed-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <generalization xmi:id="Port-_generalization.0" general="Property"/> |
| <ownedAttribute xmi:id="Port-isBehavior" name="isBehavior" visibility="public"> |
| <ownedComment xmi:id="Port-isBehavior-_ownedComment.0" annotatedElement="Port-isBehavior"> |
| <body>Specifies whether requests arriving at this port are sent to the classifier behavior of this classifier. Such ports are referred to as behavior port. Any invocation of a behavioral feature targeted at a behavior port will be handled by the instance of the owning classifier itself, rather than by any instances that this classifier may contain.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Port-isBehavior-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Port-isConjugated" name="isConjugated" visibility="public"> |
| <ownedComment xmi:id="Port-isConjugated-_ownedComment.0" annotatedElement="Port-isConjugated"> |
| <body>Specifies the way that the provided and required interfaces are derived from the Port’s Type. The default value is false.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Port-isConjugated-_defaultValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Port-isService" name="isService" visibility="public"> |
| <ownedComment xmi:id="Port-isService-_ownedComment.0" annotatedElement="Port-isService"> |
| <body>If true indicates that this port is used to provide the published functionality of a classifier; if false, this port is used to implement the classifier but is not part of the essential externally-visible functionality of the classifier and can, therefore, be altered or deleted along with the internal implementation of the classifier and other properties that are considered part of its implementation.</body> |
| </ownedComment> |
| <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> |
| <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="Port-isService-_defaultValue" value="true"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Port-protocol" name="protocol" visibility="public" type="ProtocolStateMachine" association="A_protocol_port"> |
| <ownedComment xmi:id="Port-protocol-_ownedComment.0" annotatedElement="Port-protocol"> |
| <body>References an optional protocol state machine which describes valid interactions at this interaction point.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Port-protocol-_lowerValue"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Port-provided" name="provided" visibility="public" type="Interface" isReadOnly="true" isDerived="true" association="A_provided_port"> |
| <ownedComment xmi:id="Port-provided-_ownedComment.0" annotatedElement="Port-provided"> |
| <body>References the interfaces specifying the set of operations and receptions that the classifier offers to its environment via this port, and which it will handle either directly or by forwarding it to a part of its internal structure. This association is derived according to the value of isConjugated. If isConjugated is false, provided is derived as the union of the sets of interfaces realized by the type of the port and its supertypes, or directly from the type of the port if the port is typed by an interface. If isConjugated is true, it is derived as the union of the sets of interfaces used by the type of the port and its supertypes.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Port-provided-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Port-provided-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Port-redefinedPort" name="redefinedPort" visibility="public" type="Port" subsettedProperty="Property-redefinedProperty" association="A_redefinedPort_port"> |
| <ownedComment xmi:id="Port-redefinedPort-_ownedComment.0" annotatedElement="Port-redefinedPort"> |
| <body>A port may be redefined when its containing classifier is specialized. The redefining port may have additional interfaces to those that are associated with the redefined port or it may replace an interface by one of its subtypes.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Port-redefinedPort-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Port-redefinedPort-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedAttribute xmi:id="Port-required" name="required" visibility="public" type="Interface" isReadOnly="true" isDerived="true" association="A_required_port"> |
| <ownedComment xmi:id="Port-required-_ownedComment.0" annotatedElement="Port-required"> |
| <body>References the interfaces specifying the set of operations and receptions that the classifier expects its environment to handle via this port. This association is derived according to the value of isConjugated. If isConjugated is false, required is derived as the union of the sets of interfaces used by the type of the port and its supertypes. If isConjugated is true, it is derived as the union of the sets of interfaces realized by the type of the port and its supertypes, or directly from the type of the port if the port is typed by an interface.</body> |
| </ownedComment> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Port-required-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Port-required-_upperValue" value="*"/> |
| </ownedAttribute> |
| <ownedOperation xmi:id="Port-provided.1" name="provided" visibility="public" bodyCondition="Port-provided.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Port-provided.1-_ownedComment.0" annotatedElement="Port-provided.1"> |
| <body>Missing derivation for Port::/provided : Interface</body> |
| </ownedComment> |
| <ownedRule xmi:id="Port-provided.1-spec" name="spec" constrainedElement="Port-provided.1 Port-provided"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Port-provided.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Port-provided.1-result" name="result" visibility="public" type="Interface" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Port-provided.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Port-provided.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| <ownedOperation xmi:id="Port-required.1" name="required" visibility="public" bodyCondition="Port-required.1-spec" isQuery="true"> |
| <ownedComment xmi:id="Port-required.1-_ownedComment.0" annotatedElement="Port-required.1"> |
| <body>Missing derivation for Port::/required : Interface</body> |
| </ownedComment> |
| <ownedRule xmi:id="Port-required.1-spec" name="spec" constrainedElement="Port-required.1 Port-required"> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Port-required.1-spec-_specification"> |
| <language>OCL</language> |
| <body>true</body> |
| </specification> |
| </ownedRule> |
| <ownedParameter xmi:id="Port-required.1-result" name="result" visibility="public" type="Interface" direction="return"> |
| <lowerValue xmi:type="uml:LiteralInteger" xmi:id="Port-required.1-result-_lowerValue"/> |
| <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="Port-required.1-result-_upperValue" value="*"/> |
| </ownedParameter> |
| </ownedOperation> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="PrimitiveType" name="PrimitiveType"> |
| <ownedComment xmi:id="PrimitiveType-_ownedComment.0" annotatedElement="PrimitiveType"> |
| <body>A primitive type defines a predefined data type, without any relevant substructure (i.e., it has no parts in the context of UML). A primitive datatype may have an algebra and operations defined outside of UML, for example, mathematically.</body> |
| </ownedComment> |
| <generalization xmi:id="PrimitiveType-_generalization.0" general="DataType"/> |
| </packagedElement> |
| <packagedElement xmi:type="uml:Class" xmi:id="Profile" name="Profile"> |
| <ownedComment xmi:id="Profile-_ownedComment.0" annotatedElement="Profile"> |
| <body>A profile defines limited extensions to a reference metamodel with the purpose of adapting the metamodel to a specific platform or domain.</body> |
| </ownedComment> |
| <ownedRule xmi:id="Profile-metaclass_reference_not_specialized" name="metaclass_reference_not_specialized" constrainedElement="Profile"> |
| <ownedComment xmi:id="Profile-metaclass_reference_not_specialized-_ownedComment.0" annotatedElement="Profile-metaclass_reference_not_specialized"> |
| <body>An element imported as a metaclassReference is not specialized or generalized in a Profile.</body> |
| </ownedComment> |
| <specification xmi:type="uml:OpaqueExpression" xmi:id="Profile-metaclass_reference_not_specialized-_specification"> |
| <language>OCL</language> |
| <body>self.metaclassReference.importedElement-> |
|