<rdf:RDF
    xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'
    xmlns:s='http://snipsnap.org/rdf/snip-schema#'
    xml:base='http://www.gridworkflow.org/snips/gridworkflow/rdf'>
    <s:Snip rdf:about='http://www.gridworkflow.org/snips/gridworkflow/rdf#Petri+net'
         s:cUser='bassheide'
         s:oUser='bassheide'
         s:mUser='bassheide'>
        <s:name>Petri net</s:name>
        <s:content>{image:PetriNet_small.gif}&#xD;&#xA;&#xD;&#xA;~~__Fig 1.__ A Petri net describing the parallel execution of B and C and the sequential execution of A, B, D and A, C, D.~~&#xD;&#xA;&#xD;&#xA;Petri nets belong to a special class of directed graphs. The type of Petri nets we introduce here, are Petri nets with individual tokens (colored Petri nets) and constant arc expressions which are composed of places, denoted by circles, transitions, denoted by boxes, arcs from places to transitions, arcs from transitions to places, individual and distinguishable objects that flow through the net as tokens, an initial marking that defines the tokens which each place contains at the beginning, and an expression for every arc that denotes an individual object. A place p is called input place (output place) of transition t if an arc from p to t (from t to p) exists. Fig. 1 shows an example of a simple Petri net. A brief introduction to the theoretical aspects of colored Petri nets can be found, e.g., in \[Jensen, 1994\]. The standardization of the Petri net concept is currently in progress as an \[ISO 15909 committee draft\]. Van der \[Aalst and Kumar\] give an overview of how to describe different workflow patterns using Petri nets. Petri nets are suitable to describe the sequential and parallel execution of tasks with or without synchronization; it is possible to define loops and the conditional execution of tasks. As mentioned above, we use Petri nets not only to model, but furthermore to control the execution of the workflow. In most cases, the workflow within Grid jobs is equivalent to the dataflow, i.e., the decision when to execute a software component is taken by means of availability of the input data. Therefore, the tokens of the Petri net represent real data that is exchanged between the software components. In this case, we use Petri nets to model the interaction between software resources represented by software transitions, and data resources represented by data places. In other cases, however, the workflow should be independent from the dataflow, and in addition to the data places and software transitions we have to introduce control places and control transitions. Control transitions evaluate logical conditions. In the case that a software transition is linked to a command line program, the tokens on the output places contain the exit status of the process (e.g., done, failed), whereas in the case of Grid services, the tokens store the output parameter returned by the method call. The state of the workflow is represented by the marking of the Petri net, which makes it easy to implement tools for workflow check pointing and recovery. We developed a dedicated XML syntax   similar to the Petri Net Markup Language (PNML) developed by {link:Weber and Kindler|space/Petri+net/Weber_and_Kindler_2002_PNML_LNCS.pdf} for specifying Petri nets within the GJobDL. For further details about this Petri net approach, refer to {link:Hoheisel and Der, 2003a|http://www.andreas-hoheisel.de/docs/Hoheisel_and_Der_2003_ICCS.pdf} and {link:2003b|http://www.andreas-hoheisel.de/docs/Hoheisel_and_Der_2003_CGW03.pdf}.&#xD;&#xA;&#xD;&#xA;1 References&#xD;&#xA;&#xD;&#xA;- __W.M.P. van der Aalst and A. Kumar, XML based schema definition for support of inter-organizational workflow__, University of Colorado and University of Eindhoven report (2000).&#xD;&#xA;- __A. Hoheisel and U. Der, An XML-based framework for loosely coupled applications on Grid environments__, in: P.M.A. Sloot et al., eds., ICCS 2003, LNCS 2657 (Springer, Berlin Heidelberg, 2003) 245-254. {link:pdf|http://www.andreas-hoheisel.de/docs/Hoheisel_and_Der_2003_ICCS.pdf}&#xD;&#xA;- __A. Hoheisel and U. Der, Dynamic workflows for Grid applications__, in: Proceedings of the Cracow Grid Workshop &apos;03 (Cracow, Poland, 2003). {link:pdf|http://www.andreas-hoheisel.de/docs/Hoheisel_and_Der_2003_CGW03.pdf}&#xD;&#xA;- __ISO 15909-1, High-level Petri nets - Part 1: Concepts, definitions and graphical notation__, 2004.&#xD;&#xA;- __ISO 15909-2, High-level Petri nets - Part 2: Transfer Format__, Working Draft, 2005 {link:pdf|http://www.petrinets.info/docs/ISO-IEC15909-2.WD.V0.9.0.pdf}.&#xD;&#xA;- __K. Jensen, An introduction to the theoretical Aspects of coloured Petri nets__, LNCS 803 (Springer, Berlin Heidelberg New York, 1994) 230-272. &#xD;&#xA;- __M. Weber and E. Kindler, The Petri Net Markup Language__, in: Petri Net Technology for Communication Based Systems, Lecture Notes in Computer Science, Advances in Petri Nets (Springer, Berlin Heidelberg, 2002). {link:pdf|space/Petri+net/Weber_and_Kindler_2002_PNML_LNCS.pdf}&#xD;&#xA;- __N.A. Mulyar and W.M.P. van der Aalst, Patterns in Colored Petri Nets__,  BETA Working Paper Series, WP 139, Eindhoven University of Technology, Eindhoven, 2005. {link:pdf|http://is.tm.tue.nl/research/patterns/download/CPN_PATTERNS.pdf}&#xD;&#xA;- __W.M.P. van der Aalst, The Application of Petri Nets to Workflow Management__, Eindhoven University of Technology, Eindhoven {link:pdf|http://is.tm.tue.nl/staff/wvdaalst/publications/p53.pdf}.&#xD;&#xA;&#xD;&#xA;1 Related&#xD;&#xA;&#xD;&#xA;- [TouchGraph]&#xD;&#xA;- [UML Activity Diagram]&#xD;&#xA;- [Pi Calculus]&#xD;&#xA;- [GWorkflowDL]&#xD;&#xA;- [GWES]&#xD;&#xA;&#xD;&#xA;1 Links&#xD;&#xA;&#xD;&#xA;- {link:Publications University Aarhus|http://www.daimi.au.dk/doc115.html}&#xD;&#xA;- {link:Petri Nets World|http://www.daimi.au.dk/PetriNets/index.html}&#xD;&#xA;- [PNML]&#xD;&#xA;- {link:XML and Petri Nets|http://www.oasis-open.org/cover/xmlAndPetriNets.html}&#xD;&#xA;- {link:Visual Object Net ++|http://www.systemtechnik.tu-ilmenau.de/~drath/visual.htm}&#xD;&#xA;- {link:Homepage of Wil van der Aalst|http://is.tm.tue.nl/staff/wvdaalst/}&#xD;&#xA;- {link:Talk about Petri nets|space/Petri+net/Lindner_Petri-Netze_mylecture.pdf} (in German)&#xD;&#xA;- {link:Grid Workflow Description Language (GWorkflowDL) based on Petri Nets|http://www.gridworkflow.org/gworkflowdl}&#xD;&#xA;</s:content>
        <s:mTime>2009-06-24 11:55:23.323</s:mTime>
        <s:cTime>2004-09-08 15:04:43.231</s:cTime>
        <s:comments
             rdf:type='http://www.w3.org/1999/02/22-rdf-syntax-ns#Bag'/>
        <s:snipLinks>
            <rdf:Bag>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Workflow Description Languages'/>
                <rdf:li rdf:resource='#YAWL'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Workflow Composition Tools'/>
                <rdf:li rdf:resource='#GWorkflowDL'/>
                <rdf:li rdf:resource='#snipsnap-search'/>
                <rdf:li rdf:resource='#GFDL'/>
                <rdf:li>
                    <s:Snip rdf:about='http://www.gridworkflow.org/snips/gridworkflow/rdf#Petri+net'>
                        <s:attachments>
                            <rdf:Bag>
                                <rdf:li>
                                    <s:Attachment rdf:about='http://www.gridworkflow.org/snips/gridworkflow/space/Petri+net/PetriNet_small.gif'
                                         s:fileName='PetriNet_small.gif'
                                         s:contentType='image/gif'
                                         s:size='4340'>
                                        <s:date>Tue Oct 26 08:31:41 UTC 2004</s:date>
                                    </s:Attachment>
                                </rdf:li>
                                <rdf:li>
                                    <s:Attachment rdf:about='http://www.gridworkflow.org/snips/gridworkflow/space/Petri+net/eXeGrid-Wallpaper1_800x600.jpg'
                                         s:fileName='eXeGrid-Wallpaper1_800x600.jpg'
                                         s:contentType='image/jpeg'
                                         s:size='136344'>
                                        <s:date>Mon Sep 13 11:58:38 UTC 2004</s:date>
                                    </s:Attachment>
                                </rdf:li>
                                <rdf:li>
                                    <s:Attachment rdf:about='http://www.gridworkflow.org/snips/gridworkflow/space/Petri+net/eXeGrid-Wallpaper2_800x600.jpg'
                                         s:fileName='eXeGrid-Wallpaper2_800x600.jpg'
                                         s:contentType='image/jpeg'
                                         s:size='142792'>
                                        <s:date>Mon Sep 13 11:58:30 UTC 2004</s:date>
                                    </s:Attachment>
                                </rdf:li>
                                <rdf:li>
                                    <s:Attachment rdf:about='http://www.gridworkflow.org/snips/gridworkflow/space/Petri+net/petrinet_white.gif'
                                         s:fileName='petrinet_white.gif'
                                         s:contentType='image/gif'
                                         s:size='1752'>
                                        <s:date>Tue Oct 26 08:27:00 UTC 2004</s:date>
                                    </s:Attachment>
                                </rdf:li>
                            </rdf:Bag>
                        </s:attachments>
                    </s:Snip>
                </rdf:li>
                <rdf:li rdf:resource='#Researchers'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#YAWL Engine'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#K-Wf Grid'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Hot Topics'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Workflow Engines'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#UML activity diagram'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Grid Job Handler'/>
                <rdf:li rdf:resource='#WfMS'/>
                <rdf:li rdf:resource='#snipsnap-notfound'/>
                <rdf:li rdf:resource='#Grid-Flow'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Workflow Description Languages/'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#State Machine'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Grid Workflow'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Workflow for Cloud Computing'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Workflow Scheduling for Cloud Computing'/>
                <rdf:li rdf:resource='#GJobDL'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Workflow Description Languages/Compatibility and Conversion'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Pi Calculus'/>
                <rdf:li rdf:resource='#snipsnap-index'/>
                <rdf:li rdf:resource='#PNML'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Modelling of workflow'/>
                <rdf:li rdf:resource='#Kepler'/>
                <rdf:li rdf:resource='#Gamma-calculus'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#UML Activity Diagram'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Workflow Patterns'/>
                <rdf:li rdf:resource='#GRMS'/>
                <rdf:li rdf:resource='#BPEL'/>
                <rdf:li rdf:resource='#SCIRUN'/>
                <rdf:li rdf:resource='#Projects'/>
                <rdf:li rdf:resource='#Freeflou'/>
                <rdf:li rdf:resource='#CppWfMS'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Petri net/'/>
                <rdf:li rdf:resource='#Events'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#'/>
                <rdf:li rdf:resource='#Instant-Grid'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Petri+net/'/>
                <rdf:li rdf:resource='#OGSA'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Calls for Papers'/>
                <rdf:li rdf:resource='#BPMN'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Research Fields'/>
                <rdf:li rdf:resource='#WSDL'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Glossary/HLPN'/>
                <rdf:li rdf:resource='#CoreGRID'/>
                <rdf:li rdf:resource='#Workflow'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Glossary/UML'/>
                <rdf:li rdf:resource='#WebAndFlo'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#SnipSnap/config'/>
                <rdf:li rdf:resource='#Glossary'/>
                <rdf:li rdf:resource='#BPEL4WS'/>
                <rdf:li rdf:resource='#workflow'/>
                <rdf:li rdf:resource='#Woflan'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Glossary/Taxonomy'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Petri Net'/>
                <rdf:li rdf:resource='#GWES'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Glossary/GWorkflowDL'/>
                <rdf:li rdf:resource='#bassheide'/>
                <rdf:li rdf:resource='#b_bprimal'/>
                <rdf:li rdf:resource='#Pegasus'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Projects/WOSE'/>
                <rdf:li rdf:resource='#Nodens2k'/>
                <rdf:li rdf:resource='#A-WARE'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Workflow Engines/'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Workflow+Description+Languages'/>
                <rdf:li rdf:resource='#LabVIEW'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#NextGRID Adaptive API'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#start/'/>
                <rdf:li rdf:resource='#BioPipe'/>
                <rdf:li rdf:resource='#Karajan'/>
                <rdf:li rdf:resource='#SAWE'/>
                <rdf:li rdf:resource='#o.f.rana'/>
                <rdf:li rdf:resource='#ScyFLOW'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#start/2009-06-16/1'/>
                <rdf:li rdf:resource='#Links'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Grid Middleware'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#OSyRIS/'/>
                <rdf:li rdf:resource='#OWL-S'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Glossary/BPEL'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#GWES/GWESActivityPluginTutorial/'/>
                <rdf:li rdf:resource='#DGL'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Workflow+Engines'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#Security Trust and Provenance'/>
                <rdf:li rdf:resource='#WSRF'/>
                <rdf:li rdf:resource='#R-Net'/>
                <rdf:li rdf:resource='#GridAnt'/>
                <rdf:li rdf:resource='#BPWS4J'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#start/2006-01-19/1'/>
                <rdf:li rdf:resource='#wftk'/>
                <rdf:li rdf:resource='#o.krajicek'/>
                <rdf:li rdf:resource='#d.talia'/>
                <rdf:li rdf:resource='#EnterpriseGrids'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#pi calculus'/>
                <rdf:li rdf:resource='#SCUFL'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#web service'/>
                <rdf:li rdf:resource='#Taverna'/>
                <rdf:li rdf:resource='http://www.gridworkflow.org/snips/gridworkflow/rdf#GRID superscalar'/>
                <rdf:li rdf:resource='#BioOpera'/>
            </rdf:Bag>
        </s:snipLinks>
    </s:Snip>
</rdf:RDF>

