Minutes 20 July 2004 Con Call

Teleconference Notes for 20 July 2004

1. Roll Call:
Stuart Wheater (Arjuna), Tony Fletcher (Choreology), Mayilraj Krishnan (Cisco), David Burdett (Co0mmerce One), Steve Ross-Talbot (Co-Chair - Enigmatec), Gary Brown (Enigmatec), Yoko Seki (Hitachi), Abbie Barbir (Nortel), Martin Chapman (Co-Chair - Oracle), Ugo Corda (SeeBeyond), Monica Martin (Sun), Charlton Barreto (webMethods), Yves Lafon (W3C staff)

Regrets: Nickolas Kavantzas & Jeff Mischkinsky (Oracle), Greg Ritzinger (Novell),

2. Scribe:  Tony agreed to scribe.

3. Approve minutes
Minutes for 13th July 2004 teleconference - change item b to say priority based on order.  No other changes were requested and these minutes were accepted as amended. 

4. Action Item Review
Action 1. (Tony, 0525, 0601, 0615, 0629, 0706, 0713) to look at element choreography notation to see how we may be able to roll up transaction features into it. 
IN PROGRESS (Due 07/27)

Action 2. (SRT, 0525, 0601, 0615, 0629, 0706, 0713): Take the TWIST example we're working on, add part of the flow what can go wrong, see what happens when things go wrong.  We can see in front of us the choreography being executed, what we do today with current language, what we can do with transaction. Steve is starting to add exception handling.  Nick and Steve have corresponded on "perform" which revealed some errors in the specification to be corrected. 
PENDING COMMENTS FROM MA and BS (Matthew Arrott and Bill Specht) - Steve has not yet heard back from either Bill or Matthew.

ACTION 3: (GB) We need to include an explicit mechanism for describing priority in a choice.
IN PROGRESS (Due 07/27)

Working Draft Language specification
The editors are still working on a new draft of the choreography Definition Language specification, and David said that they hope to get out the list by next Monday. 

5. Issues
b. Concrete bindings/QoS
Charlton said he just sent an e-mail on status to the list.  He is looking at dependent standards and David's template proposal.  In his Status Report he has marked certain items as suggested for discussion forthcoming face-to-face meeting.

d. Interacts
No proposals have been made and none were raised at this meeting. 

e. Variables
No proposals have been made and none were raised at this meeting. 

g. Naming and Identification
No proposals have been made and none were raised at this meeting.

f. Exceptions and faults
David said he posted a message on standard exceptions and faults.

i. Language layers and levels 
No proposals have been made and none were raised at this meeting.

j. Terminology and formalism 
No proposals have been made and none were raised at this meeting. 

c. Import
Steve has proposed using Xinclude, and thinks that a number of issues can be closed as a result.  Xinclude is purely a syntactic inclusion mechanism.  The CDL description document may have errors in it as a result of the inclusion, and so it is ‘designer beware’.  It is equivalent to a macro mechanism.  The included item is a fragment of XML, and so you can include what ever you like, and we need to allow this.
Issues 469, 484, 485 are recommended to be shown as ‘fixed’ then closed.
In the CDL specification we will need to say what include does not do as well as what it does do.
Issue 561: Steve thought the bullets were covered (first and second bullets can be closed, third bullet is editorial and the forth can be closed).
Issue 609: proposed solution is syntactic only and therefore it is a case of importer beware! 
Issue 611: no rules on Xinclude – can include what you like.  The meeting was referred to Monica's e-mail.
Issue 687: import versus perform.  Include is syntactic include whereas perform does something.  Steve suggested assigning this issue to the editors. 

Thus the first six issues are resolved as fixed and the last assigned to the editors. 
There were no objections and so the group adopted this proposal.

Currently there are no other proposals on the table

6. Examples sub-group
The meeting was referred to Mayilraj's e-mail which contains a status report.  The examples need to be completed. 
Mayilraj, Greg and Steve were actioned to add exception handling to their examples.
Action: Mayilraj, Greg and Steve to add exception handling to their examples.

It was agreed to redo the examples as necessary to conform to the new draft language specification expected by the end of this week.  The plan is to reissue the examples by Friday 30th July so they are available for review and discussion at the forthcoming F2F.  There was no examples sub-group call last week after all.

Tony raised the issue of the primer in Mayilraj’s report.  Tony said he supported his idea of starting to think about it now and we were both volunteered to sort out the headings and thus initiate a primer document.  I suggested that it should include a description of each part of CDL, a worked example showing how to construct a choreography description using the language, and then a collection of useful example code fragments.  With respect to this last item Tony mentioned the e-mail that he had sent out posing a time-out challenge with three different example time-out situations to describe.  He noted that he had yet to receive any replies but said the idea was that when we worked out how to code in CDL we could include these code fragments in the primer. 
Action: Tony and Mayilraj to provide a skeleton for the Primer.

7. Face-to-face agenda
There were no comments on the proposed agenda.  Steve said he will consider an activity for the Thursday evening - perhaps a visit to Brick Lane? 

Co-ordination and state alignment.
There has been much e-mail recently on the list on this topic.  Martin said he felt uncomfortable with the way the now traffic was going.  He said we need did to separate out business semantics such as Offer / Acceptance, which he felt was above CDL.  We also needed to build on an infrastructure to achieve guaranteed message delivery (reliable messaging) and guaranteed message processing (which needs transactions).

Tony said he agreed with this and noted BPSS takes it partially different view as it does build in to its language structure some small aspects of business semantics in terms of the way it organises basic message exchanges into business transactions with additional BPSS defined signals, and organises business transactions into Collaborations.  In CDL we currently just describe message interactions without any additional business semantics.  In CDL we assume, but do not need to reference, higher level specifications for message meaning, and message sequencing meaning.  Use declarative invocation and binding/QoS for reliable messaging, transaction guarantees, security, and so forth.  Tony felt that there was not a need to have any reference or pointers upwards to higher level semantics, but there was a need in a description to declare where and when a particular at infrastructure facility such as reliable messaging, transactions or certain security features were being invoked, but this could be done declaratively thus minimising the impact on the language.

Gary said he agreed with this but the problem is we need to show the result as state variables.

Ugo commented (I missed Ugo’s comment – can you supply Steve?).

David said he thought we needed some standard states, both positive and negative. 

Gary said that we should not explicitly represent the legal meaning of messages in CDL.  The meanings of messages should be defined at a business level above CDL.  It was generally noted that like many languages CDL is likely to allow several different ways of achieving the same objective and indeed one could describe it protocol such as a reliable messaging protocol or a transaction protocol in CDL and then include that has a ‘standard’ code fragments in other descriptions, but this could lead to large descriptions and make it more obscure as to what was happening in them, and thus it was suggested that the declarative and binding approach was to be preferred.

Martin suggested that part of the problem was that CDL allows you to define states and that therein lays the confusion.  The basis of CDL is the interaction, and he suggested to we may not need to model state at all.  Sometimes we need to guarantee that an interact has happened (or failed).  To Martin alignment means that we are agreed that we are both at this point in the choreography, so we may be able to remove state stuff.

David suggested replacing perform with an interaction like mechanism, which is actually what Gary has suggested in his paper.

Similar to change between one ways, or request/response with a dummy return.

Steve suggested strongly that we need concrete proposals now that we have had a discussion.  He also noted that this discussion links to the binding/QoS issues. 

8. Any Other Business
Martin said he may miss next week's meeting as he is attending a meeting in London and may not be available in the evening.  He said that he planned to stay at the Best Western Hotel in Shaftsbury Avenue during the forthcoming London WS-Choreography face-to-face meeting.