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

Specifies an optional behavior to be performed when the Transition fires.
{composite}
Subsets: Element.ownedElement

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

Indicates whether it is possible to further redefine a RedefinableElement. If the value is true, then it is not possible to further redefine the RedefinableElement.
Default value: FALSE

redefinedElement : RedefinableElement (0 *); -- source RedefinableElement

The RedefinableElement that is being redefined by this element.
{readonly}
Derived union with sources: (redefinedTransition)

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

Determines whether and how the NamedElement is visible outside its owning Namespace.

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].