two questions on UML 2.0 state machine semantics

two questions on UML 2.0 state machine semantics

From: Heribert Mühlberger ^lt;>
Date: Sat 27 Aug 2005 - 03:08:21 BST
Message-Id: <>
I intend to make side-effect analysis and modelchecking of/with UML 2.0 
hierarchical state machines. I would be grateful if you could help me with the 
following problems:

a) In section 15.3.15 of the superstructure specification (ptc/04-10-02, UML 
2.0 Superstructure FTF convenience document) two constraints are specified:

[1] The source state of a transition with transition kind local must be a 
composite state.
[2] The source state of a transition with transition kind external must be a 
composite state.

But there are only three different TransitionKinds defined, namely #external, 
#internal and #local. Furthermore the property "kind" of meta-class 
"Transition" is mandatory (it has a multiplicity of 1). Consequently an 
instance of a Transition has either kind = #external or kind = #internal or 
kind = #local. No other cases are possible. For these reasons, I want to ask 
what kind of transitions can depart from a simple state (i.e. from states 
with isSimple = true)? Internal transitions? That doesn't make any sense to 
me. How do I use simple states in UML 2.0 state machines?

b) What sense makes the ownership association between the meta-classes Region 
and Transition? What have been the reasons for modelling this ownership 
association between Transition---Region and not between 
Transition---StateMachine (a StateMachine is a Namespace too). What 
semantical information would I lose if I would "cram" all transitions into 
the containing StateMachine? And what rules do I have for selecting a 
specific Region as the container for a given Transition? Has this Region to 
be a common ancestor of the source and target vertices of the Transition?

Thank you for your answer in advance.

Heribert Mühlberger
Kirchseeoner Weg 38
85614 Kirchseeon (east of Munich)
Received on Sat Aug 27 03:04:30 2005