HomeDigital EditionSys-Con RadioSearch Web Services Cd
B2B Beginning WS Business Process Management Case Studies Content Management Distributing Computing e-Business Electronic Data Interchange Enterprise Industry Insight Integration Interviews Java & Web Services .NET Portal Product Reviews Scalability & Performance Security SOAP Source Code UDDI Wireless WS Standards WS Tips & Techniques WSDL WS Editorials XML

Getting into the Flow: the Web Services Flow Language, by James Snell
WSJ Vol 02 Issue 03 - pg.42

	

Listing 1 <flowModel name="totalSupplyFlow" serviceProviderType="totalSupply"> <serviceProvider name="buyer" type="buyer" /> <serviceProvider name="seller" type="seller" /> <serviceProvider name="shipper" type="shipper" /> <activity name="submitPO"> <performedBy serviceProvider="buyer"/> <implement> <export> <target portType="totalSupplyPT" operation="submitPO"/> </export> </implement> </activity> <activity name="processPO"> <performedBy serviceProvider="seller"/> <implement> <export> <target portType="receivePO" operation="receivePO"/> </export> </implement> </activity> <activity name="processPayment"> <performedBy serviceProvider="seller"/> <implement> <export> <target portType="totalSupplyPT" operation="processPayment"/> </export> </implement> </activity> <activity name="submitShippingOrder"> <performedBy serviceProvider="seller" /> <implement> <export> <target portType="totalSupplyPT" operation="submitShippingOrder"/> </export> </implement> </activity> <activity name="receiveShippingOrder"> <performedBy serviceProvider="shipper" /> <implement> <export> <target portType="totalSupplyPT" operation="receiveShippingOrder"/> </export> </implement> </activity> <activity name="shipProduct"> <performedBy serviceProvider="shipper" /> <implement> <export> <target portType="totalSupplyPT" operation="shipProduct" /> </export> </implement> </activity> <controlLink source="submitPO" target="processPO"/> <controlLink source="processPO" target="processPayment" /> <controlLink source="processPayment" target="submitShippingOrder" /> <controlLink source="submitShippingOrder" target="receiveShippingOrder" /> <controlLink source="receiveShippingOrder" target="shipProduct" /> <dataLink source="submitPO" target="processPO"> <map sourceMessage="purchaseOrder" targetMessage="purchaseOrder"/> </dataLink> <dataLink source="processPO" target="processPayment"> <map sourceMessage="purchaseOrder" targetMessage="purchaseOrder"/> </dataLink> <dataLink source="processPayment" target="submitShippingOrder"> <map sourceMessage="purchaseOrder" targetMessage="shippingOrder" /> </dataLink> <dataLink source="submitShippingOrder" target="receiveShippingOrder"> <map sourceMessage="shippingOrder" targetMessage="shippingOrder" /> </dataLink> <dataLink source="receiveShippingOrder" target="shipProduct"> <map sourceMessage="shippingOrder" targetMessage="shippingOrder" /> <dataLink> </flowModel> Listing 2 <activity name="submitPO"> <performedBy serviceProvider="buyer"/> <implement> <export> <target portType="totalSupplyPT" operation="submitPO"/> </export> </implement> </activity> <activity name="processPO"> <performedBy serviceProvider="seller"/> <implement> <export> <target portType="receivePO" operation="receivePO"/> </export> </implement> </activity> <controlLink source="submitPO" target="processPO"/>