Software Disclaimer

Class UML 2.5::Transition

Description:

A Transition represents an arc between exactly one source Vertex and exactly one Target vertex (the source and targets may be the same Vertex). It may form part of a compound transition, which takes the StateMachine from one steady State configuration to another, representing the full response of the StateMachine to an occurrence of an Event that triggered it.

Direct Superclasses: Namespace, RedefinableElement

Direct Subclasses: ProtocolTransition

Class Precedence List: Transition, Namespace, RedefinableElement, NamedElement, Element

Properties:

container : Region (1 1); -- source Transition
effect : Behavior (0 1); -- source Transition
guard : Constraint (0 1); -- source Transition
kind : TransitionKind (1 1); -- source Transition
redefinedTransition : Transition (0 1); -- source Transition
redefinitionContext : Classifier (1 1); -- source Transition
source : Vertex (1 1); -- source Transition
target : Vertex (1 1); -- source Transition
trigger : Trigger (0 *); -- source Transition
elementImport : ElementImport (0 *); -- source Namespace
importedMember : PackageableElement (0 *); -- source Namespace
member : NamedElement (0 *); -- source Namespace
ownedMember : NamedElement (0 *); -- source Namespace
ownedRule : Constraint (0 *); -- source Namespace
packageImport : PackageImport (0 *); -- source Namespace
isLeaf : Boolean (1 1); -- source RedefinableElement
redefinedElement : RedefinableElement (0 *); -- source RedefinableElement
clientDependency : Dependency (0 *); -- source NamedElement
name : String (0 1); -- source NamedElement
nameExpression : StringExpression (0 1); -- source NamedElement
namespace : Namespace (0 1); -- source NamedElement
qualifiedName : String (0 1); -- source NamedElement
visibility : VisibilityKind (0 1); -- source NamedElement
ownedComment : Comment (0 *); -- source Element
ownedElement : Element (0 *); -- source Element
owner : Element (0 1); -- source Element

Constraints:

No additional constraints.

Operations:

Signature: redefinitionContext.1() : Classifier;
Description: The redefinition context of a Transition is the nearest containing StateMachine.
Expression: result = (let sm : StateMachine = containingStateMachine() in if sm._'context' = null or sm.general->notEmpty() then sm else sm._'context' endif)

Signature: isConsistentWith(redefiningElement : RedefinableElement; ) : Boolean;
Description: The query isConsistentWith() specifies that a redefining Transition is consistent with a redefined Transition provided that the redefining Transition has the following relation to the redefined Transition: A redefining Transition redefines all properties of the corresponding redefined Transition except the source State and the Trigger.
Expression: result = (-- the following is merely a default body; it is expected that the specific form of this constraint will be specified by profiles true)

Signature: containingStateMachine() : StateMachine;
Description: The query containingStateMachine() returns the StateMachine that contains the Transition either directly or transitively.
Expression: result = (container.containingStateMachine())



Send questions or comments to [email protected].