- From: Burdett, David <david.burdett@commerceone.com>
- Date: Thu, 17 Oct 2002 13:18:19 -0700
- To: "'Champion, Mike'" <Mike.Champion@SoftwareAG-USA.com>, www-ws-arch@w3.org
I don't think we should tie a choreography to the definition of a "composite web service. For example you could imagine two web services at a buyer and a seller co-operating so that the buyer can place an order at the seller. The choreography, could then describe the sequence in which messages are sent, e.g.: BUYER SELLER Order -----------------> <--------------------- OrderResponse ChangeOrder -----------> (optional) <--------------------- ChangeOrderResponse ... etc. I don't see a single web service here? Another issue to consider is that there are some very common choreographies that pretty universally applied - the example above is a fragment of one. This makes me think that it should be possible to define a choreography (or at least the commonly used ones), independently of the actual web services that implement it. Thoughts? David -----Original Message----- From: Champion, Mike [mailto:Mike.Champion@SoftwareAG-USA.com] Sent: Thursday, October 17, 2002 7:11 AM To: www-ws-arch@w3.org Subject: RE: Definition of Choreography > -----Original Message----- > From: Mark Baker [mailto:distobj@acm.org] > Sent: Thursday, October 17, 2002 9:06 AM > To: Champion, Mike > Cc: www-ws-arch@w3.org > Subject: Re: Definition of Choreography > > > But David said something that suggested that it was defining > the *how*, > not just the *what*; "specification of ordering of messages". If it > were to define the *what*, I would expect it to say something like; > "The specification of potential state changes". OK, I guess I'll propose a revision of David's definition: "Web Services Choreography" is the description of a set of messages that can be seen as defining a composite web service. The focus is on "what": the identity of the messages, the state changes implied by various messages, and the means of maintaining/exchanging state across a collection of nodes, and not the definition of turing complete logic to determine the actual sequence of messages. It's practical value is as a formal definition of a "policy" about the individual services that must be invoked and the state changes that they must produce in order to produce a composite result. Still pretty tentative. I'm not sure whether we need the "from the perspective of one node or a collection of nodes" bit. Maybe ... We should probably also couple it with a definition of "Orchestration" (and/or some synonym): "Web Services Orchestration" is a definition of the logic by which a web services Choreography is executed, in some Turing-complete language." The focus is on "how" to determine the precise sequence and content of messages in a composite web service, under the declarative constraints defined by a Choreography. Its practical value is as an executable business process / workflow. Again, this is just a way of factoring out this stuff that makes sense to me. Not sure if people who know what they're talking about agree :-) Please critique!
Received on Thursday, 17 October 2002 16:18:11 UTC