- From: Kohei Honda <kohei@dcs.qmul.ac.uk>
- Date: Thu, 01 Dec 2005 19:25:35 +0000
- To: Tonny Holdorf <tonny.holdorf@gmail.com>
- CC: public-ws-chor@w3.org, Marco Carbone <carbonem@dcs.qmul.ac.uk>, Nobuko Yoshida <yoshida@doc.ic.ac.uk>, Kohei Honda <kohei@dcs.qmul.ac.uk>
Dear Tonny,
As one of the authors of the draft, I will add some words to Monica's
message, from a different angle.
I think there are two levels when thinking about the question you
raised. First there is an engineering level. As you know well,
a cryptographic protocol is often written as follows.
A-->T: {A, B}_KA
T--->A: {KAB, {KAB}_KB}_KA
.....
This is a global notation, and captures what is happening very well.
A global description certainly gives an intuitive, clear perspective
which local (end-point) description may not offer, so that it does
have a clear status at an engineering level (we mentioned this point
briefly in Page 8 of the draft).
In the context of WS/SOA, we need a descriptive framework which
can express arbitrary complex business protocols. In other words,
we need a fully-fledged descriptive language for global description.
In my personal view, CDL is an original trial, offering a first effective
solution to this problem.
For implementation, a global description needs be decomposed into
executable end-point programs. Since these programs can be
written in different languages, this may also underline the need
to have a descriptive language which is neutral to individual
execution languages.
* * *
Another level is theoretical. The question we wish to answer is
what is a general, well-structured way to express a class of
complex interaction-based behaviour, as found in business
protocols. If you read Section 4 of the draft, you can find a global
description whose specification may not be easily mapped to a local
behaviour (e.g. Fig 14, page 20). We also have examples of local
behaviour not easily mappable to clean global description. Thus
having a global formalism gives a constraint on what may count
as "good" local description, and vice versa. A formal result on
this point will appear in Part II of the draft, coming soon.
A simple way to understand this point may be as follows. If there
is a local description of a business protocol which cannot be cleanly
mapped to a global one, then it lacks clarity. If you have a global
description that cannot be mapped to a feasible local description,
then it lacks executability (and would be hard to analyse). Having
these two frameworks of description are essential, not only for
convenience but also for intrinsic reasons: they together suggest a
good way to structure interaction behaviour.
* * *
I hope this answers your question.
Best wishes,
kohei
* Our earlier presentation also touches this topic.
http://www.w3.org/2002/ws/chor/5/06/F2FJune14.pdf
given in the WG's F2F in June this year.
>
>
> In the paper linked to above (i.e. the paper by Marco Carbone Kohei
> Honda and Nobuko Yoshida) two formal calculi are described: a
> 'global' calculus that models business processes from a global
> perspective and the pi-calculus that models the same processes as a
> set of local endpoint behaviors. The global calculus is similar to WS-
> CDL and the main point of the paper is that processes modeled with
> the global calculus (WS-CDL) can be translated to the pi-calculus.
>
> Reading the paper made me wonder: Why is a global description of the
> service collaboration as in WS-CDL better than a set of local
> descriptions that each describes the behavior of the participating
> services (e.g. as a set of abstract BPEL descriptions)? Would a set
> of abstract BPEL descriptions for each of the collaborating services
> and a global WS-CDL description for the collaboration as a whole not
> just be different representations of the same thing? If not, what
> expressive power is added by the global WS-CDL description compared
> to a set of abstract BPEL descriptions for each end point.
>
> Also, many complicated network protocols, e.g. TCP, have been
> specified just fine by descriptions of endpoint behavior such as
> state machines. Why is a global specification needed?
>
>
> Best Regards
>
> Tonny
>
>
Received on Thursday, 1 December 2005 19:26:14 UTC