Process Tree to Petri Net

This node converts a process tree into a Petri net. No configuration is needed to complete the conversion.
A process tree is a block-structured process model where the (inner) nodes are operators (sequence, choice, parallel, and loop) and the leaves are activities.
A Petri net is a directed bipartite graph that visualizes all possible traces (order of executed activities). A Petri net consists of places, transitions, and directed arcs that connect them. Arcs can either connect places with transitions or transitions with places. Places can contain tokens. The placement of tokens defines the state of the Petri net. There is a start and a final state. The start state has only a token in the green place (initial place). The goal state has only a token in the double margin place (final place). A place is enabled if it it contains at least one token. A transition can only fire if all incoming places are enabled. After firing a transition, a token is consumed from all of its incoming places, and a token is produced in all of its outgoing places.

Input Ports

a process tree

Output Ports

a Petri net


Interactive View: Petri net




You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.