- From: Nickolas Kavantzas <nickolas.kavantzas@oracle.com>
- Date: Mon, 15 Nov 2004 13:43:47 -0800
- To: "Furniss, Peter" <Peter.Furniss@choreology.com>, "Gary Brown" <gary@enigmatec.net>, <public-ws-chor@w3.org>
- Message-ID: <006b01c4cb5c$30028dc0$48af2382@us.oracle.com>
MessageAs I've promised here is the updated proposal/text for the Choreography Life-line Section: ***Updated Life Line Completion Proposal*** New Choreography Life-line Section Text A Choreography life-line expresses the progression of a collaboration through enabled activities and enclosed performed Choreographies. Initially, the collaboration MUST be established between parties, then work MAY be performed within it and finally it MAY complete. A Choreography is initiated, establishing a collaboration when an Interaction, explicitly marked as an Choreography initiator, is performed. Before this point there is no observable association between any of the parties. Two or more Interactions MAY be marked as Choreography initiators, indicating alternatives for establishing a collaboration. In this case, the first performed interaction will establish the collaboration and the other interactions will enlist with the already established collaboration. An initiating interaction MAY be defined within a root Choreography or within either a Locally or a Globally defined enclosed Choreography. In either case the collaboration is established when the initiating interaction is performed. A Choreography completes successfully when there are no more enabled activities within it. Alternatively, a Choreography completes successfully if its complete condition, as defined by the optional complete attribute within the choreography element, is matched by evaluating to "true". A complete condition is considered for matching while the Choreography is enabled. The complete condition MUST BE matched in all Roles that participate in the Choreography. Once the complete condition of a a Choreography is matched then all activities in the Choreography are disabled, and the Choreography completes as if there were no more enabled activities within it. A Choreography complete condition is an implied complete condition for each enclosed Choreography and the semantics are as if the complete condition was defined in each enclosed Choreography. Hence, each enclosed Choreography completes successfully. -- Nick ----- Original Message ----- From: Furniss, Peter To: Nickolas Kavantzas ; Gary Brown ; public-ws-chor@w3.org Sent: Tuesday, October 26, 2004 2:10 PM Subject: Choreography lifeline( was RE: Proposal: To remove the initiate flag on the Interation) Nick proposed: *Choreography Life-line* A Choreography life-line expresses the progression of a collaboration through enabled activities and enclosed performed Choreographies. Initially, the collaboration MUST be established between parties, then work MAY be performed within it and finally it MAY complete. A Choreography is initiated, establishing a collaboration when an Interaction, explicitly marked as an Choreography initiator, is performed. Before this point there is no observable association between any of the parties. Two or more Interactions MAY be marked as Choreography initiators, indicating alternatives for establishing a collaboration. In this case, the first performed interaction will establish the collaboration and the other interactions will enlist with the already established collaboration. An initiating interaction MAY be defined within a root Choreography or within either a Locally or a Globally defined enlosed Choreography. In either case the collaboration is established when the initiating intaraction is performed. A Choreography completes successfully when there are no more matched Work Unit(s) performing work within it and there are no enabled Work Unit(s) within it. Alternatively, a Choreography completes successfully if its complete condition, as defined by the optional complete attribute within the choreography element, evaluates to "true". In this case, the actions, including enclosed Choreographies, within the explicitly completed Choreography are completed abnormally before the Choreography completes. <PRF> I think we may need to be more explicit on what "actions .. are completed abnormally" means ? In the collision example, the losing interaction will be represented by a message that is winging its way to the supplier, who reached PO-State=completed when he sent the completion message and now thinks the choreography is over. That losing interaction is apparently invalid. Endpoint projections will need to recognise that they should silently ignore the message if and when it does arrive. (and, in general, it will be very difficult to work out where things have progressed to - if the place-order choreography was performed as an element of a larger, the supplier may be well into the order-delivery stage (another sub-choreography) before the now-irrelevant cancel turns up. What happens if other actions are juggling with variables - do they stop dead ? In fact, such a choreography is possibly ill-formed - it should (like Nick's example) set its variables consistently at the end. (coordination will help you ) Actually, "abnormally" isn't really right anyway - we certainly don't want them throwing exceptions etc. Also the Life-line section needs to say something about a choreography's "life after death" - or rather finalization after completion, and perhaps briefly, exceptions. That relates to the coordination stuff that Bob is drafting, so this is just a placeholder comment. Peter Choreology Anti virus scan completed
Received on Monday, 15 November 2004 21:44:49 UTC