Software Disclaimer

Abstract Class UML 2.3::Vertex


A vertex is an abstraction of a node in a state machine graph. In general, it can be the source or destination of any number of transitions.

Direct Superclasses: NamedElement

Direct Subclasses: State, Pseudostate, ConnectionPointReference

Class Precedence List: Vertex, NamedElement, Element


container : Region (0 1); -- source Vertex
incoming : Transition (0 *); -- source Vertex
outgoing : Transition (0 *); -- source Vertex

Specifies the transitions departing from this vertex.
Opposite: Transition.source

clientDependency : Dependency (0 *); -- source NamedElement
name : String (0 1); -- source NamedElement
nameExpression : StringExpression (0 1); -- source NamedElement

The string expression used to define the name of this named element.
Subsets: Element.ownedElement

namespace : Namespace (0 1); -- source NamedElement
qualifiedName : String (0 1); -- source NamedElement

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.
{readonly, derived}

visibility : VisibilityKind (0 1); -- source NamedElement
ownedComment : Comment (0 *); -- source Element
ownedElement : Element (0 *); -- source Element
owner : Element (0 1); -- source Element


No additional constraints.


Signature: outgoing.1() : Transition;
Expression: result = Transition.allInstances()->select(t | t.source=self)

Signature: incoming.1() : Transition;
Expression: result = Transition.allInstances()->select(t |

Signature: containingStateMachine() : NIL;
Description: The operation containingStateMachine() returns the state machine in which this Vertex is defined
Editor's notes: added 2 'else false' and endif
Expression: result = if not container->isEmpty() then container.containingStateMachine() else if (oclIsKindOf(Pseudostate)) then if (kind = #entryPoint) or (kind = #exitPoint) then stateMachine else if (oclIsKindOf(ConnectionPointReference)) then state.containingStateMachine() -- no other valid cases possible else false endif endif else false endif endif

Send questions or comments to