The ePNK is a platform for developing Petri net tools based on the PNML transfer
format. Its main idea is to support the definition of Petri net types, which
can be easily plugged into it, and to provide a simple generic GMF editor, which
can be used for graphically editing nets of any plugged in type.
More over, additional functionality can be plugged in. The ePNK is implemented
based on the eclipse platform, and runs on all hardware platforms
supporting Eclipse. The newest version should run on all versions of Eclipse from
Eclipse Indigo (3.7) on (it was tested on Eclipse Indigo, Mars, Neon and Oxygen).
The current version (January 17, 2018) of the ePNK is 1.2.0. This
version fully supports PNML and all the Petri net types defined in the
International Standard ISO/IEC 15909-2.
If you have any comments, suggestions, error reports, please send an
email to Ekkart Kindler
().
Current version
On January 17, 2018, version 1.2.0 of the ePNK was released,
which runs on Eclipse Indigo (3.7) and newer versions of Eclipse (version 1.2 was tested for
Eclipse Indigo, Eclipse Neon and Eclipse Oxygen).
You will find more information on how to install the current version of the ePNK on your platform on the
Installation Details page – there, you will
also find an overview of the different versions and the functionality that was added for
the different versions.
From version 1.2 on, the source code of the ePNK will be accessible and will be maintained
on GitHub: https://github.com/ekkart/ePNK.
More documentation and installation information will be provided shortly.
Using the ePNK
After successfully installing the ePNK, you can use the ePNK. The User's Guide Chapter
of the ePNK Manual
will provide you with all the necessary information.
Here is some brief information for the impatient:
For a quick start, you can use some examples of PNML documents in the following zip file
examples_1.2.0.zip,
which you can use for a start.
After you have dowloaded the examples, install them in your eclipse workspace by, clicking
"File"->"Import. In the dialog, select "General"->"Existing Projects into Workspace";
in the next dialog, click "Select archive file", press the "Browse" button and select the zip
file that you downloaded before. Then, select the project in the "projects area" and finish the dialog.
You should see the Petri net examples in the resource browser now and be able to open
them (by a double click). Note that the editor shows the Petri net in a tree structure. For seeing and
editing nets (or actually pages) graphically, you need to fold up the tree and select a page. On a
right click on a page, there will be a pop up menu: in this menu, select "ePNK" -> "Start GMF
editor on page" (or just double-click on a page). Note that you still need to save the net in the tree broswer
in the end (the save in the graphical editor is always disabled now).
Note that labels are created independently of any Petri net object first. Then the LinkLabel
tool (or the context menus) can be used to attach the label to a Petri net object. Then, you
will also be asked in a pop-up menu, which kind of label this should be (dependent on the
options of the object and the labels it has already).
Developing with the ePNK
The most important feature of the ePNK is that you can extend it and plug-in your new Petri net types,
tool-specific extensions, or some analysis functionality. For doing this, you will probably
need to read the Developers Guide Chapter of the
ePNK Manual (to be updated for version 1.2).
You will probably also need to look at the source code of the ePNK project. All the ePNK projects
are deployed with their source code now. If you import these plugins to your workspace (open the
plugin view, right-click on the respective plugin, select "Import As" -> "Source Project"),
you can have a look at the examples and tutorial as well as the implementation.
Note that some of the new features of the ePNK 1.2.0 are not yet covered in the manual. But, the
example projects — and, in particular, the tutorials — might help using these features anyway.
You might also find some of the release notes helpful.
L.M. Hillah and E. Kindler and F. Kordon and L. Petrucci and N. Trèves:
A primer on the Petri Net Markup Language and ISO/IEC 15909-2.
Petri Net Newsletter 76:9--28, October 2009 (originally presented at
the 10th International workshop on Practical Use of Colored Petri Nets and
the CPN Tools -- CPN'09).