Can't use fork and join with concurrent (orthogonal) regions

0 votes
asked Dec 17, 2021 in Bug by Dmitrii Levichev

Consider state machine definition:

@startuml
state FORK <<fork>>
state JOIN <<join>>
state ORTHO {
  state FIRST
--
  state SECOND
}
[*] --> START
START --> FORK
FORK --> FIRST
FORK --> SECOND
FIRST --> JOIN
SECOND --> JOIN
JOIN --> [*]
@enduml

It does not render with error message: 

PlantUML diagram

But this restriction does not comply with OMG UML 2.5.1 definition of Behavior State Machines (14.2.3.2):

Conversely, an explicit activation occurs when a Region is entered by a Transition  terminating on one of the Region’s contained Vertices. When one Region of an orthogonal State is activated explicitly, this will result in the default activation of all of its orthogonal Regions, unless those Regions are also entered explicitly (multiple orthogonal Regions can be entered explicitly in parallel through Transitions originating from the same fork Pseudostate).

Could you please remove the restriction?

Your answer

Your name to display (optional):
Privacy: Your email address will only be used for sending these notifications.
Anti-spam verification:

[Antispam2 Feature: please please wait 1 or 2 minutes (this message will disappear) before pressing the button otherwise it will fail](--------)
To avoid this verification in future, please log in or register.
...