The ePNK is a platform for Petri net tools based on the PNML transfer
format (see ePNK Home Page).
Version 1.0.0 is now (as of October 11, 2012) available for Eclipse Indigo (3.7) and Juno (4.2).
You will find some more information on how to install this version of the ePNK below.
The major changes from version 0.9.2 to 1.0.0 are fixes of many minor bugs, some
extended functionality, and support of some more graphical features, which are
transferred to the PNML format.
Here is a list of the major changes:
The following graphical features of the ePNK graphical editor are now transferred
to the graphical features of PNML:
Background and foreground colours for nodes
Foreground colours for arcs
Colour for labels
Fonts and font-size for labels
Bezier curves for arcs
In version 0.9.2, all labels of HLPNGs were required to be on a page; they could
not be directly contained in the net itself. Since ISO/IEC 15909-2 requires that
declarations must be possible to be directly contained in a HLPNG, this is now
implemented in version 1.0.0.
Version 1.0.0 comes with a (still experimental) interface for regisistering
applications that are started on a Petri net and provides mechanisms to show
feedback on-top of the existing net. This feature is in particular used
for a Simulator for High-level Petri nets (see below).
Together with the ePNK, now a still experimental simulator for high-level nets
(HLPNGs) is deployed. Since it is still experimental and some data types of
HLPNGs and some operations are not supported yet, this is released
seperately as version 0.1.1 (but, from the same update site). This simulator
comes with a special feature to simulate network algorithms (which are based
on HLPNG Schemas). Have a look at the examples, once you installed the
The PNML Core Model was slightly changed, so that Pages are derived from Nodes.
This makes it possible to connect pages with arcs (which some users of the ePNK
needed for their purposes). When you implement your own Petri net Type Definitions,
you need to take particular care that you exclude such arcs, if you do not
want pages connected by arcs with other nodes.
For P/T-nets, and HLPNGs, which are deployed with the ePNK, pages cannot be
attached to arcs at all.
It is now possible to define for each type of page labels, whether it should
be shown as an attribute of the page in the page's properties view or as a
graphical label on the respective page.
It is now also possible for Petri net type defintions to allow reference places
or transitions to have their own labels.
Below, it is explained step by step how to install version 1.0.0 of the ePNK on your computer..
For installing the ePNK version 1.0.0 on you computer, you first need to install Eclipse Indigo (3.7)
or Eclipse Juno (4.2) on your computer. You will find the most current version of Eclipse (right now
Eclipse Juno) at
http://www.eclipse.org/downloads/. It is
recommended that you install "Eclipse Classic".
Once you have installed Eclipse Classic on your computer, you can install the
ePNK extension from the ePNK update site http://www2.compute.dtu.dk/~ekki/projects/ePNK/indigo/update/ directly from your Eclipse workbench
(note that this update site works for both, Eclipse Juno and Eclipse Indigo).
To this end, start your version of Eclipse. Then, proceed as follows:
In the Eclipse tool bar, select "Help" -> "Install New Software..."
Now, select the newly created ePNK update site in the still open "Install" dialog.
After some time, some ePNK items should pop up in the dialog. If the items are
not grouped into categories, make sure to check the check box "Group items by category".
In the category "ePNK Features" you should select all features:
ePNK Basic Extensions 1.0.0
ePNK Core 1.0.0
ePNK HLPNGs 1.0.0
ePNK Tutorial 1.0.0
In the category "ePNK Experimental Projects" it is recommended that
If you want to use the simulator for high-level nets, also select
from category "HLPNG Simulator" the feature
ePNK: HLPNG Simulator 0.1.1
Make sure that the box "Contact all update sites during install to
find required software" is checked; this will make sure that all plugins from
Eclipse that the ePNK needs, will be installed too (EMF, GMF, Xtext, etc.).
Follow through the installation process (don't forget to accept the licence agreement).
If you get an error of the kind
Cannot complete the install because one or more required items
could not be found. ...
you have probably selected the wrong combination of features. In that case, go back
and select the right combination as explained above. An other possibility for an
error is that you have forgotten to tick the checkbox "Contact all update sites
during install to find required software".
Note that at some point you will be informed, that the features to be installed
are not signed — and you will be asked whether you want to continue anyway.
After you made it successfully though all the dialogs, the ePNK and all other required
plugins will be installed; it is a good idea to restart Eclipse after that (Eclipse will
ask you to do that anyway).
After a restart you might want to import some examples
ePNK-1.0.0-examples.zip of Petri nets with the
Eclipse import feature. If you are a first time user of the ePNK, you have a look
into the ePNK manual, where in
particular the Chapter 3, "Users' guide" will help you getting started with some examples.
Here is a brief overview of the available resources for the ePNK:
an Eclipse project with some PNML examples. These can
be imported to the Eclipse workspace via the Eclipse import mechanism. There are in particular
some examples which can be used with the simulator for high-level Petri nets, which is
deployed together with version 1.0.0.
org.pnml.tools.epnk.pntypes.signalnets.1.0.1.zip: Contains the
source code of the two plug-in projects org.pnml.tools.epnk.pntypes.signalnets and
which are deployed as part of the tutorial projects of
version 1.0.0 of the ePNK. Unfortunately, these two projects were
configured in such a way that their source code can not be imported
to the development workspace. Therefore, the source code is made
There is also a SVN repository in which the ePNK is developed, which is maintained at DTU. People, who
would like to join the development team of the ePNK, could contact Ekkart Kindler. Once we reach
the critical mass, the repository will probably be moved to some open source collaboration platform
such as Source Forge. For just having a look, at the source code of some of the ePNK's projects, you
can use Eclipse's "Import as Source Project" feature (except for some few exceptions, the ePNK projects
start with org.pnml.tools.epnk). In particular, some of the tutorials might be worth a look.
And of course, all the PNML resources mentioned at the ePNK home page
could be useful.