Re: Expressiveness of CDL

Hi Gero, hi everyone else,

in response to Gero's questions, I can partly answer the last I think 
because I have asked it here before.  Here are three links I have found 
helpful in discovering more about the global calculus:
[1] Carbone, Honda, Yoshida, "Programming interaction with Types" ,  
http://www.w3.org/2002/ws/chor/5/06/F2FJune14.pdf

[2] Kavantzas, "Aggregating Web Service: Choreography and WS-CDL", 
http://lists.w3.org/Archives/Public/www-archive/2004Aug/att-0017/WS-CDL-April2004.ppt 


[3] Honda, Yoshida, et. al. "A Theoretical Basis of 
Communication-Centred Concurrent Programming", 
http://lists.w3.org/Archives/Public/public-ws-chor/2005Nov/att-0015/part1_Nov25.pdf

(I tried all of them just now so they should work fine).

Concering the global calculus and the formal grounding work for WS-CDL 
the response I got was that more work on this is scheduled to finish for 
the end of October this year (?).

Concering the relationship between Pi-Calculus and WS-CDL I have done 
some investigation in this as part of a seminar Gero also took part in. 
I have been thinking about for while now to just mail it to this list so 
as to contribute to the discussion and share my humble opinion on the 
subject; so I shall do it now as the opportunity arises.  It at best 
might answer some of the questions Gero posed or at least might provided 
hints to answers.  Find the paper attached and please comment as you wish.

Have a great day!
Paul

Decker Gero wrote:

>Hello everyone,
>
>I am currently working on my Master thesis (at SAP Research Brisbane) about service choreographies und therefore I am very interested in the activities of the CDL working group.
>
>I have a couple of questions regarding CDL:
>
>- It is claimed that CDL is based on pi-calculus which has proven to be extremely expressive. Sequence, parallelism, choice and message exchanges are enough to express common scenarios in the BPM domain. E.g. the workflow patterns and the service interaction patterns could be fully formalized. A trick in these formalizations is that each control flow construct is encoded using a set of processes that exchange messages for synchronization purposes. In CDL I do not see how I can do that. 
>
>- Let us take a look at an example to clarify my question: Participant A receives a number of messages via channel b. After three messages have been received or a message has been received over channel c A continues by sending a message over channel d. In pi-calculus I could write:
>    A = (^h) (b(m1).b(m2).b(m3).'h.0 | c(m4).'h.0 | h.'d.0)
>^h is a private name, b() a message receipt and 'h a message send. I introduced h to coordinate the two parallel processes. How does this work in CDL? In BPEL there is the notion of control links which seems quite powerful.
>
>- Another example would be (inspired by http://bpt.hpi.uni-potsdam.de/twiki/pub/Public/PiHypeExample/PiHypeExample.pdf): there are seven interactions a, b, c, d, e, f, g, h. a must happen before b and e, b must happen before c, c must happen before d and f, d must happen before h, e must happen before f, f must happen before g and g must happen before h. Assuming a participant who is the sender in all these interactions and for each interaction there is a channel with the name of the interaction, the pi-calculus formalization for A would look as follows:
>   A = (^x1,x2,x3,x4,x5,x6) ('a.('x1.0|'x2.0) | x1.'b.'c.('x3.0|'d.'x4.0) | x2.'e.'x5.0 | x3.x5.'f.'g.'x6.0 | x4.x6.'h.0)
>How can I express this example in CDL?
>
>- How can I express scenarios where a participant A communicates with participants B1, B2, B3, ... which are all of the same role but only bound at runtime? E.g. like in the Single-transmission multilateral interaction patterns (http://sky.fit.qut.edu.au/~dumas/ServiceInteractionPatterns/Multilateral..html).
>
>- Concerning parallel interactions: Is it allowed that two interactions that do not have any preceding interactions happen in parallel? If so are there any restrictions concerning correlation information or which participant is involved in these initial interactions?
>
>- I read about some "global calculus". What is the current status? Although I like pi-calculus I am also very interested in a calculus that does not focus on interacting processes but rather communication from a global perspective. A similar expressiveness like pi-calculus would be desirable though.
>
>Best regards
>Gero
>
>
>  
>

Received on Tuesday, 20 June 2006 21:31:27 UTC