News

The purpose of this workshop is to define the conceptual
(formal definitions) and technical (metamodels, and exchange format) frameworks for properties,
modularity and stochastic Petri nets,

that are currently the most important requested additions
to the standard by the Petri net community.
This international workshop gathers experts from France
(UPMC, Univ. Paris 13 and CNAM), and Danemark (Technical University Danemark). Agenda of the workshop.

A corrigendum on Part 2 (PNML) was edited in 2012 to fix some conceptual and syntactic
bugs in the PNML definitions. It is now published by the ISO.

The Model Checking Contest @ Petri Nets is the first international Petri tools competition
making a large use of Petri net models in PNML. Check it out!

Context

Pnml.org is the reference site for the implementation of Petri Net Markup Language
(PNML) defined by the standard
ISO/IEC 15909 Part 2. Part 1 is published
here.

This site provides you with information about the PNML standard,
to foster its quick and large adoption.

The RELAX-NG specification of PNML and links to supporting tools can be
found on this site.

The Petri net community has long sought the means to exchange Petri net
models unambiguously, based on an agreed-on interchange format.
However, they quickly realized that it would be even better if
that format was compliant with an agreed-on formal definition of Petri nets.
Clearly stated, it must be the concrete syntax of the abstract syntax
specified from that formal definition.

People have therefore acknowledged that a good way to come up with such
standard specification is to set up a standardization process to define
them. Hence the series of ISO/IEC 15909 standards.

Background

The Petri Net Markup Language (PNML) is a proposal of
an XML-based interchange format for Petri nets. Originally, the
PNML was intended to serve as a file format for the Java version
of the
Petri Net Kernel
.
But, it turned out that currently several other groups are
developing an XML-based interchange format too. So, the PNML is
only one contribution to the ongoing discussion and to the
standardization efforts of an XML-based format.

Several works have paved the way for the standard specifications.
In particular, we already mentioned above the original
Petri Net Kernel
file format, which was the precursor of the current PNML.
Additionnally, Kordon
has established a
taxonomy of
Petri net dialects through a
survey,
by collecting and
classifying
Petri net tools according to the type or dialect of Petri nets they support.
The complete result of that work can be downloaded from
this link.

Acknowledgment

An earlier version of PNML, along with some introductory papers,
has been hosted on the web pages of Humboldt University in Berlin.
Since Pnml.org is now the reference site regarding the standard,
people responsible for the Humboldt pages have kindly provided us
with their contents so that everything is now presented on Pnml.org.
Many thanks to them.

Contents

The first part of the standard, which is already an International Standard,
defines the semantic model of Petri Nets. Mathematical definitions
are provided in this part. The following types of Petri nets are defined:

High-Level Petri Nets;

Symmetric Nets;

Place/Transition Nets.

The second part defines the abstract and concrete syntax of the Petri Net
types provided in Part 1.
The abstract syntax is specified with UML[1] and
the concrete one with RELAX NG[2].
The second part thus concretely defines PNML.
It should become an International Standard by 2009.

The specific feature of the PNML is its openness:
it distinguishes between general features of all types of Petri nets and
specific features of a specific Petri net type. The specific
features are defined in a separate
Petri Net Type Definition (PNTD)
for each Petri net type. Each net type must declare its own
namespace URI.

Furthermore, several specific features which are used in more than only one
Petri net type, could be defined in a conventions document.
For instance, we have defined integer labels for P/T nets
in this document.
Then, a concrete PNTD may add
its type specific features to PNML by referring to such kind of document.

What you should be aware of

PNML demonstrates that an XML-based interchange format can be
defined in a generic way.
However, in this current version, new PNTDs defined by yourself will not
be standard-compatible. It means that no tool implementing the
standard, except yours, is required to import models of your new types.

The standard cannot define all possible Petri net types
in the course of a single standardization process, but it can endorse them.
So the key here is a standard-defined extensibility framework for PNML.
Therefore, to make future user-defined extensions
standard-compatible (and may be standardized in the long term),
part 3 of the standard which is being carried out, seeks a general
theoretical and practical modeling framework to enable them.

You are therefore welcome to join us and participate in the
discussions towards the definition of part 3.
If you will be attending Petri Nets 2009
conference, then we may also meet there, beside email discussions.
We will be giving a tutorial at that conference.