Subject: Re: [xsl] Petri net to BPEL model transformation > How to find patterns? From: "bryan rasmussen" <rasmussen.bryan@xxxxxxxxx> Date: Mon, 4 Sep 2006 15:21:20 +0200 |
The book Professional XSL from Wrox had some transforms for working with Petri Nets, can't remember exactly what was being done though.
Michael Corning, whose transforms were used, has a homepage here (not sure about current status of it) http://authors.aspalliance.com/mcorning/ where some mention is made of the petri nets stuff.
Cheers, Bryan
Hello
How can I find/describe patterns in a Petri net graph with XSLT?
For instance a sequence, a concurrency, AND-split, AND-join, OR-split, OR-join or a while loop.
Below you see a Petri net model (source model) which I would like to transform into a BPEL model (target model).
Can you tell me what the corresponding XSLT code would look like?
My problem is to find patterns in a graph representation (Petri net) and to transform them into a tree representation (BPEL). It might be that such a transformation is not possible with the Petri net example given below or that the Petri net XML would need further information (for example an attribute attached to a transition saying "this is the start of an AND-split").
I am grateful for any hints. If you need any further information to solve the problem, please let me know.
Regards Sagi
-------------------- source model -------------------- <?xml version="1.0"?> <petrinet>
<!-- start of Petri net --> <place id="1"></place> <transition id="2"></transition>
<!-- upper flow of concurrency --> <place id="10"></place> <transition id="11"></transition> <place id="12"></place> <transition id="13"></transition> <place id="14"></place>
<!-- lower flow of concurrency --> <place id="20"></place> <transition id="21"></transition> <place id="22"></place>
<!-- end of Petri net --> <transition id="3"></transition> <place id="4"></place>
<!-- arcs connecting places and transitions --> <arc> <from>1</from> <to>2</to> </arc> <!-- next 2 arcs define an AND-split --> <arc> <from>2</from> <to>10</to> </arc> <arc> <from>2</from> <to>20</to> </arc> <!-- upper flow of concurrency --> <arc> <from>10</from> <to>11</to> </arc> <arc> <from>11</from> <to>12</to> </arc> <arc> <from>12</from> <to>13</to> </arc> <arc> <from>13</from> <to>14</to> </arc> <!-- lower flow of concurrency --> <arc> <from>20</from> <to>21</to> </arc> <arc> <from>21</from> <to>22</to> </arc>
<!-- next 2 arcs define an AND-join --> <arc> <from>14</from> <to>3</to> </arc> <arc> <from>22</from> <to>3</to> </arc> <arc> <from>3</from> <to>4</to> </arc> </petrinet>
-------------------- target model -------------------- <?xml version="1.0"?>
<process> <sequence> <invoke name="2"/> <flow> <!-- upper flow of concurrency --> <sequence> <invoke name="11"/> <invoke name="13"/> </sequence> <!-- lower flow of concurrency --> <sequence> <invoke name="21"/> </sequence> </flow> <invoke name="3"/> </sequence> </process>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Petri net to BPEL model trans, stgn | Thread | Re: [xsl] Petri net to BPEL model t, bryan rasmussen |
RE: [xsl] Petri net to BPEL model t, cknell | Date | Re: [xsl] Petri net to BPEL model t, bryan rasmussen |
Month |