Class UML 2.3::FinalState
Description:
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.
Direct Superclasses: StateDirect Subclasses: Class Precedence List: FinalState,
State,
Namespace,
RedefinableElement,
Vertex,
NamedElement,
ElementProperties:
![](/se-interop/image/down-arrow.png)
connection :
ConnectionPointReference (0 *); -- source
State![](/se-interop/image/down-arrow.png)
connectionPoint :
Pseudostate (0 *); -- source
State![](/se-interop/image/down-arrow.png)
deferrableTrigger :
Trigger (0 *); -- source
State![](/se-interop/image/down-arrow.png)
doActivity :
Behavior (0 1); -- source
State![](/se-interop/image/down-arrow.png)
entry :
Behavior (0 1); -- source
State![](/se-interop/image/right-arrow.png)
exit :
Behavior (0 1); -- source
State An optional behavior that is executed whenever this state is exited regardless
of which transition was taken out of the state. If defined, exit actions
are always executed to completion only after all internal activities and
transition actions have completed execution.
{
composite}
Subsets: Element.ownedElement
![](/se-interop/image/down-arrow.png)
isComposite : Boolean (1 1); -- source
State![](/se-interop/image/down-arrow.png)
isOrthogonal : Boolean (1 1); -- source
State![](/se-interop/image/down-arrow.png)
isSimple : Boolean (1 1); -- source
State![](/se-interop/image/down-arrow.png)
isSubmachineState : Boolean (1 1); -- source
State![](/se-interop/image/down-arrow.png)
redefinedState :
State (0 1); -- source
State![](/se-interop/image/down-arrow.png)
redefinitionContext :
Classifier (1 1); -- source
State![](/se-interop/image/down-arrow.png)
region :
Region (0 *); -- source
State![](/se-interop/image/down-arrow.png)
stateInvariant :
Constraint (0 1); -- source
State![](/se-interop/image/down-arrow.png)
submachine :
StateMachine (0 1); -- source
State![](/se-interop/image/down-arrow.png)
elementImport :
ElementImport (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png)
importedMember :
PackageableElement (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png)
member :
NamedElement (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png)
ownedMember :
NamedElement (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png)
ownedRule :
Constraint (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png)
packageImport :
PackageImport (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png)
isLeaf : Boolean (1 1); -- source
RedefinableElement![](/se-interop/image/down-arrow.png)
redefinedElement :
RedefinableElement (0 *); -- source
RedefinableElement![](/se-interop/image/down-arrow.png)
container :
Region (0 1); -- source
Vertex![](/se-interop/image/down-arrow.png)
incoming :
Transition (0 *); -- source
Vertex![](/se-interop/image/down-arrow.png)
outgoing :
Transition (0 *); -- source
Vertex![](/se-interop/image/down-arrow.png)
clientDependency :
Dependency (0 *); -- source
NamedElement![](/se-interop/image/down-arrow.png)
name : String (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png)
nameExpression :
StringExpression (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png)
namespace :
Namespace (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png)
qualifiedName : String (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png)
visibility :
VisibilityKind (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png)
ownedComment :
Comment (0 *); -- source
Element![](/se-interop/image/right-arrow.png)
ownedElement :
Element (0 *); -- source
Element The Elements owned by this element.
{
composite,
readonly}
Derived union with sources: (ownedComment, nameExpression, packageImport, ownedRule, ownedMember, elementImport, stateInvariant, region, exit, entry, doActivity, connectionPoint, connection)
Opposite: Element.owner
![](/se-interop/image/down-arrow.png)
owner :
Element (0 1); -- source
ElementConstraints:
Signature: no_state_behavior() : Boolean;
Description: A final state has no state (doActivity) behavior.
Expression: self.doActivity->isEmpty()
Signature: no_regions() : Boolean;
Description: A final state cannot have regions.
Expression: self.region->size() = 0
Signature: no_outgoing_transitions() : Boolean;
Description: A final state cannot have any outgoing transitions.
Expression: self.outgoing->size() = 0
Signature: no_exit_behavior() : Boolean;
Description: A final state has no exit behavior.
Expression: self.exit->isEmpty()
Signature: no_entry_behavior() : Boolean;
Description: A final state has no entry behavior.
Expression: self.entry->isEmpty()
Signature: cannot_reference_submachine() : Boolean;
Description: A final state cannot reference a submachine.
Expression: self.submachine->isEmpty()
Operations:
No additional operations.
Send questions or comments to
[email protected].