PNML grammar, version 2026
IMPORTANT : this version is still under work. It will replace the 2009 version of the standard but the 2009 version still remains the officil standard until the revision process is completed.
You may download the entire grammar in one archive.
It defines the following concepts:
- The definition of PNML Core Model.
- Labels used by PT Nets nodes and arcs.
- The any element construct used to define any grammar the standard does not provide precise definition for; for instance, tool specific definition.
- PT Nets type declaration.
- Booleans
- Finite enumerations
- Cyclic enumerations
- Finite integer ranges
- Dots
- Multisets
- Partitions
- Lists
- Integers
- Strings
- Terms
- Arbitrary declarations
- High-level Core Structure
- High-level Place/Transition Nets: they are defined as a restriction of High-level Petri Nets Graphs
- Symmetric Nets
- High-Level Nets
Examples
You will find below Petri nets models which are stored in PNML Documents of the latest PNML version:
- Place/Transition philosophers model.
- Place/Transition swimming pool model.
- Place/Transition token ring model.
- Symmetric net simple file access model.
- Symmetric net shared memory model.
- High-level Petri net shared memory model.
Enrichments
It is possible to enrich PNML schema in any way suitable to your specific need. However, as we said on the presentation page, your new defined type will not yet be standard-compatible. This situation will last until part 3 of the standard defines a coherent theoretical and practical framework to do so, in order for standard-compliant tools to automatically discover and read without any ambiguities, Petri net models according to your new type.
As an example, we publish here Jan Martijn's definition of three new P/T net types:
- read;
- reset;
- inhibitor;
- and reset-inhibitor nets.
These PNTDs use a convention document, declaring the special arcs needed for their definition.
We also propose the definition of PT nets with capacity
- capacity places nets.
This PNTDs use a convention document, declaring the capacity place needed for its definition.