- From: Andrew Berry <andyb@whyanbeel.net>
- Date: Thu, 24 Jul 2003 01:51:08 +1000
- To: public-ws-chor@w3.org
I meant to extend on this with a further example ...
On Thursday, July 24, 2003, at 12:36 AM, Andrew Berry wrote:
> Getting back to the original reason for this thread, a message has at
> least two viewpoints (sender and receiver) and they differ because the
> viewpoints are phyically distributed and autonomous. Modelling a
> message as an atomic entity is therefore misleading, somewhat complex
> and potentially incorrect. This was my primary reason for suggesting
> caution and also suggesting an alternative: modelling all interactions
> as local behaviour (e.g. send@X, receive@Y) with causal relationship
> specifications used to imply messaging (e.g. send@X -> receive@Y).
This approach really comes into its own when multiple parties are
involved. If we go back to the travel example, consider the following
pseudo-code (leaving out the response semantics for brevity):
local behaviours (flight+car+accom@consumer, flight@airline,
car@carrentalco, accom@hotel)
interactions (
flight+car+accom@consumer -> flight@airline
flight+car+accom@consumer -> car@carrentalco
flight+car+accom@consumer -> accom@hotel
}
There are many ways we can satisfy this specification with messaging:
we could multicast the original request to all three service providers,
we could send individual messages to each containing only the
information they require, we could process the request serially across
the three service providers with the request forwarded to the next
service provider after each processing step, or we could use additional
coordination between them to guarantee all-or-nothing semantics. None
of these changes the business-level behaviour of the participants and
the participant behaviour can be used in other similar compositions
without changes.
Ciao,
AndyB
Received on Wednesday, 23 July 2003 11:49:22 UTC