- From: Jean-Jacques Dubray <jeanjadu@Attachmate.com>
- Date: Fri, 16 Jul 2004 09:02:26 -0700
- To: "Gary Brown" <gary@enigmatec.net>, <david.burdett@commerceone.com>, <tony.fletcher@choreology.com>, <public-ws-chor@w3.org>
- Cc: <Robin.Milner@cl.cam.ac.uk>, <kohei@dcs.qmul.ac.uk>, <yoshida@doc.ic.ac.uk>
- Message-ID: <026EE47A1745EB4C8162FDB852CCEEF01B932C@exch-bel3.attachmate.com>
This is how I would approach the problem. I would create a construct called Protocol. A protocol is itself a choreography, and more precisely a choreography template. This choreography is of course performed between abstract roles (let's call them initiating role and responding role). Initiating Responding --- Request ---> Abstract message <---- Receipt --- (concrete) signal <---- Acceptance--- (concrete) signal <---- Response --- Abstract message --- Receipt ---> (concrete) signal --- Acceptance---> (concrete) signal When this template is used, every abstract message must be associated to a concrete message. In addition I should be able to associate "states" to this choreography, e.g. - RequestAccepted = positive request Acceptance signal received, - ResponseAccepted = positive Response Acceptance signal received. "Positive" acceptance/response represents an XPath expression on a message. In a choreography, I should be able to specify (apologies, I don't know the syntax by heart): <choreography ... > <interaction type="procotol"> <protocol ref="myProtocol"> <message name="Request" type="ProcessPO"/> <message name="Response" type="AckPO"/> <state name="OrderProcessed" boundTo="RequestAccepted"/> <state name="OrderAccepted" boundTo="ResponseAccepted" conditionExpression="//PO/@accepted="true"/> </protocol> </interaction> <choice> <switch value="OrderAccepted"> <case value="true"> <interaction type="Request/Response"> ... process payment ... </interaction> </case> <case value="false"> ... choreography ends ... </case> </switch> </choice> </choregraphy> I promised David that I will make a formal proposal, I hope within the next couple of weeks. Is this kind of approach acceptable? Jean-Jacques ________________________________ From: Gary Brown [mailto:gary@enigmatec.net] Sent: Friday, July 16, 2004 8:25 AM To: Jean-Jacques Dubray; david.burdett@commerceone.com; tony.fletcher@choreology.com; public-ws-chor@w3.org Cc: Robin.Milner@cl.cam.ac.uk; kohei@dcs.qmul.ac.uk; yoshida@doc.ic.ac.uk Subject: Re: State Alignment and Standard Signals Hi Do you have an example of how the CDL would look in order to represent this state alignment (e.g. as you have described in your article), in such a manner that the interactions are protocol independent? Would you see a "state aligned" interaction only completing after the second (acceptance) signal in the BPSS case? For example, <interaction A->B /> would only be deemed to have completed once B had sent the acceptance message to A? Curious to know how such a state alignment protocol could be modelled in CDL in an abstract manner that is decoupled from a particular binding........ Regards Gary
Received on Friday, 16 July 2004 12:03:00 UTC