Petriflow 102 - Part 1
Introduction to Petri Nets and Workflow Semantics
💡 What you'll learn
Understanding the theory behind Petriflow - Petri nets, tokens, transitions, and workflow semantics.
Overview
Goal & Context
In this lesson you’ll explore the core theory that Petriflow builds upon - the formal model of Petri nets introduced by Carl Adam Petri (1962).
After completing your first practical example (the Request Form process from Petriflow 101), you’ll now learn how Petri nets describe the logic and state of workflows.
The focus is on:
- Understanding places ( ), transitions ( ) and tokens (•)
- Seeing how tasks in Petriflow correspond to transitions in Petri nets
- Exploring interval semantics (assign → finish → cancel)
- Learning how tokens move through a workflow and control task enabling
You’ll follow the examples directly inside Netgrif Application Builder (simulation mode and event mode).
Key concepts
Petri Net Basics
A Petri net is a graphical and mathematical model for systems with states and events.
| Element | Symbol | Meaning |
|---|---|---|
| Place | Represents a state or condition (e.g. Request submitted) | |
| Transition | Represents an action or event (e.g. Register request) | |
| Token | • | Marks the current state - data or resource |
| Arc | → | Connects places and transitions, defining flow |
Firing rule: When all input places of a transition contain required tokens, the transition is enabled.
When it fires, it consumes tokens from input places and produces tokens in output places.
Arcs and Advanced Semantics Preview
In later parts of the lecture, the speaker introduces different types of arcs:
| Type | Symbol | Purpose |
|---|---|---|
| Standard Arc | → | Moves tokens (normal flow) |
| Read Arc | ⟳ | Checks token presence without consumption |
| Inhibitor Arc | ⊘ | Prevents execution if tokens are present |
| Reset Arc | ↻ | Removes all tokens from a place when fired |
These extensions allow Petriflow to model conditions, tests, and resets within workflow logic.
From Petri Nets to Petriflow
In standard Petri nets, transitions fire instantly - they have no duration. Petriflow extends this model by introducing task lifecycle semantics, reflecting real-world execution:
| Stage | Description |
|---|---|
| Assign | Task is started; token is taken from input place |
| Finish | Task is completed; token is placed in output place |
| Cancel | Task is interrupted; token is returned to original place |
This interval semantics means a task has a lifecycle (start → active → complete) instead of an instantaneous event.
NOTE
Think of Assign → Finish → Cancel as Start → Work → End with the option to rollback tokens when canceled.
Video
Watch the lecture segment from Petriflow 102 - Part 1 (00:00 – 13:42).
Visual steps
1️⃣ Workflow Example - Request Process
Shows the original Request form workflow built in Petriflow 101 and how its structure is based on places and transitions.

2️⃣ Petri Net Structure
Visual representation of places ( ), transitions ( ), and arcs connecting them.

3️⃣ Token Flow Simulation
Token movement demonstrating how enabling and firing work in simulation mode.

4️⃣ Interval Semantics in Action
Assign → Finish → Cancel states visualized in Builder event mode.

Summary
| Concept | Description |
|---|---|
| Place ( ) | Represents a state or condition |
| Transition ( ) | Represents a task or event |
| Token (•) | Marks the state - data or availability |
| Enabled Transition | Can fire when all inputs have tokens |
| Firing / Execution | Consumes tokens from inputs, produces tokens to outputs |
| Interval Semantics | Task lifecycles (Assign, Finish, Cancel) |
| Concurrency | Petriflow disallows parallel instances of the same task but allows parallel tasks of different types |
Takeaway:
Petriflow extends Petri nets from a mathematical model into an executable workflow language - connecting the theory of places, transitions and tokens with practical task execution and role-based behavior.
You now understand:
- The core structure and elements of Petri nets
- How tokens and transitions define workflow state
- How Petriflow adds duration and responsibility through interval semantics
- The difference between theoretical firing and workflow execution
- A preview of arc types for advanced process control
