220 likes | 262 Views
Petri Net Markup Language (PNML). Nickolas Paladino Oct. 9, 2002 University of Central Florida. Outline. PNML History Considerations for Standard Specification Example Petri Net Sample PNML. Outline. Application Deficiencies Current State Future Direction Conclusion References.
E N D
Petri Net Markup Language(PNML) Nickolas Paladino Oct. 9, 2002 University of Central Florida
Outline • PNML History • Considerations for Standard • Specification • Example Petri Net • Sample PNML
Outline • Application • Deficiencies • Current State • Future Direction • Conclusion • References
PNML History • Petri Net Tools - variety e.g. Artifex, CPN-AMI, HiQPN-Tool, Renew, PACE • Each has unique internal representation and saved/exported file format definition
PNML History • Reasons to move to a standard - Useful to move Net Models from tool to tool, not redesign from scratch - Make available libraries or toolkits of predefined Petri Net pieces - Moving project to different tool obsolete tool, stronger analysis, better graphics capability
PNML History • Obstacles to a standard - Additional development by tool designers - don’t want to loose advanced features specific to any tool - problems with extensibility e.g. Java – Sun vs Microsoft, HTML – Netscape vs Microsoft
Considerations for Standard • Standard should be: - simple - include only necessary technology • Reference parsers should be available • Need converters from old formats • Experience from tool developers
Considerations for Standard • Why XML (Extensible Mark-up Language)? - able to use robust parsers - large choice of XML tools - flexible, for easy extension of formats - parsers can ignore unknown parts
Specification • ISO 15909 High-level Petri Nets – Concepts, Definitions and Graphical Notation Final Draft Version 4.7.1 October 28, 2000
Sample PNML • Sytle Sheet CSS Syntax place { shape: ellipse; } place name { font-size 12pt; } transition { shape : box } transition name { font-size: 11pt; }
Sample PNML • Entities extended with class information <place id="input" class="material-flow"> <name>Input</name> <type>InItem</type> </place> <arc id="a1"> <placeend idref="input" class="material-flow"> <transend idref="get-next-item"> </arc> <transition id="get-next-item" class="material-flow"> <name>Get Next Item</name> </transition>
Sample PNML • Petri Net mathematical description <place id="idle"> <name>Idle</name> <type>M</type> <initmark>M</initmark> </place> <arc id="a2"> <placeend idref="idle"> <transend idref="get-next-item"> <expr>m</expr> </arc> ... </pn> <pn> <place id="input"> <name>Input</name> <type>InItem</type> </place> <arc id="a1"> <placeend idref="input"> <transend idref="get-next-item"> <expr>iitem</expr> </arc> <transition id="get-next-item"> <name>Get Next Item</name> </transition>
Sample PNML • Petri Net layout description <node ref="machine.pn#idle"> <coord> <x>20.0</x> <y>20.0</y> </coord> </node> <conn ref="machine.pn#a2"> <coord> <x>20.0</x> <y>10.0</y> </coord> </conn> ... </layout> <layout> <node ref="machine.pn#input"> <coord> <x>10.0</x> <y>0.0</y> </coord> </node> <conn ref="machine.pn#a1"> <!-- no bend points --> <node ref="machine.pn#get-next-item"> <coord> <x>10.0</x> <y>10.0</y> </coord> </node>
Application • Must communicate adequate detail of Petri Net Definition Hold meaning of common notations Extend for special features of varied tools • Allows Petri Net use on different tools Varied strengths and weaknesses of tools e.g. initial design, simulation, editing, analysis, GUI
Deficiencies • Petri Nets graphical in nature Difficult to capture same look across existing applications • Petri Nets can become very large • Many existing Petri Net tools Retrofit of each can be time consuming and has cost Converters from old standards needed
Current State • The Petri Net Interchange Format Mailing List http://www.informatik.hu-berlin.de/top/PNX/ Little activity One comment since 2000 • Some tools have moved to XML-based file format
Future Direction • Should not force developers to use PNML • Standards committee to make format freely available • Current tools could begin to use own XML, converge to PNML
Conclusion • Correct direction to pursue • Needed by academia and industry • Will eventually be adopted • No technical problems in XML based PNML definitions • Agree on standard and move to implement
References • [Mai00] Mailund, Thomas (2000). Seperation of Style and Content with XML in an Interchange Format for High-level Petri Nets (Mailund, T. , Mortensen, K. H.), Position Paper, 21st International Conference on Application and Theory of Petri Nets Aarhus (2000) • [Kum00] Kummer, Olaf (2000). XML and Petri Nets – Following the Forces (Kummer, O., Wienberg, F., Moldt, D.), Position Paper, 21st International Conference on Application and Theory of Petri Nets Aarhus (2000) • [Mat00] Matthias, Jungel (2000). Towards a Generic Interchange Format for Petri Nets (Matthias, J., Kindler, E., Weber, M.), Position Paper, 21st International Conference on Application and Theory of Petri Nets Aarhus (2000)
References (WWW) • The PNK Team: Petri Net Markup Language. http://www.informatic.hu-berlin.ed/top/pnml/. Aug. 2002. • Petri Net Tools and Software. http://www.daimi.aau.dk/PetriNets/tools/. Oct. 2002. • 21st International Conference on Application and Theory of Petri Nets. http://www.daimi.au.dk/pn2000/Interchange/. June 2000.