[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

Subject: Petri net to BPEL model transformation > How to find patterns?
From: stgn@xxxxxxx
Date: Mon, 04 Sep 2006 09:38:03 +0200
petri net xml
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

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.