Fork

Fork is a pseudo status for forking transitions.

A fork can have one or more incoming transitions. It has several outgoing transitions, which must end in different regions of a composite/orthogonal state. The fork must have the same number of outgoing transitions as there are regions in the composite/orthogonal state.

All outgoing transitions from a fork are completion transitions. They look like normal transitions, because unlike completion transitions they are not displayed with a small circle with a cross in it. However, they are unconditional and output a signal following a concluding event.

Fork 1:

A fork is displayed as a black bar; aligned horizontally or vertically.

Properties

"Property"

Description

"Identifier"

You can enter a name here. It is not displayed in the state diagram.

"Vertical direction"

  • Fork 2:: [Default] tick the checkbox to align the bar vertically.
  • Fork 3:: untick the checkbox to align the bar horizontally.

Edit fork

User input in the state diagram

Response in the state diagram

Description

Focus on a fork.

Fork 4:

The fork is editable.

  • You can adjust the size of the fork.
  • You can add a completion transition via the command icon displayed above the fork.

Click on the green symbol Fork 5:

 

A completion transition is added. If you click on an existing state, it becomes the target state for the transition. Click on an empty area to create a new state.

Pull one of the blue Fork 6: squares to another position.

 

The size of the fork has been adjusted.

Example

Fork with orthogonal states

Fork 7: