[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Petri net to BPEL model transformation > How to find
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>
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|