Minutes 28th - 30th Sep 2004 Face to Face meeting

WS-Choreography Face to Face
28th - 30th Sep 2004
Novell, Inc.
1177 Avenue of the Americas (near 46th Street)
35th Floor

Goals for meeting:
	1. To close of as many issues as possible (at least 50%)
	2. To reach consensus on the scope of CDL for last call.
	3. To understand precisely our steps to last call.

Agenda: http://lists.w3.org/Archives/Member/member-ws-chor/2004Sep/att-0031/Sep_04_F2F_Agenda_-_1.txt

************************************************
Day One Tuesday 28th September

See also: IRC log http://www.w3.org/2004/09/28-ws-chor-irc

Attendees: Nickolas Kavantzas, Greg Ritzinger, Jeff Mischkinsky, Abbie Barbir,
Anthony Fletcher, Monica Martin, Charlton Barreto, Peter Furniss, Gary Brown,
Bijan Parsia

Regrets:

Chairs: Martin Chapman, Steve Ross-Talbot

W3C: Yves Lafon, Carine Bournez

Scribes: Abbie and Yves and Greg
************************************************


TOPIC: Agenda discussion

TOPIC: Minutes of last meeting
	http://lists.w3.org/Archives/Member/member-ws-chor/2004Sep/att-0053/Minutes09212004_0.txt
MINUTES APPROVED 

TOPIC: Action Item Review
	1. Nick pointed out that part of the twist example is done (in the proposal) 
	2. Editors task is done, (list of changes publicized). Nick send his to the editors list. 
	3. Need to forward that to the members list 
	4. List of editors changes are in the link http://lists.w3.org/Archives/Member/member-ws-chor-editors/2004Sep/0020.html
	5. Review and produce LC comments on the WSDL 2.0 docs by the end of the next f2f.  IN PROGRESS 
	6. Raise the allowed isolation level of nested choreographies as an issue. IN PROGRESS 
	7. Chairs to sort out examples work. IN PROGRESS 

TOPIC: Nick's proposals
SUMMARY:

	ISSUE 783: http://www.w3.org/Bugs/Public/show_bug.cgi?id=783
	PROPOSAL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0017.html

	ISSUE: Message content type, have choice either channel or information type in an exchange element. 
	This is an ACTION ITEM from London F2F. In CDL it is 2.5.2.4 in the exchange part of the suntex box.
	PROPOSAL: Update the schema to include the ? symbol. (information type of channel type) 

	ISSUE: WS-CDL function extensions related to time http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0020.html 
	PROPOSAL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0020.html 
	
	ISSUE 884: http://www.w3.org/Bugs/Public/show_bug.cgi?id=884
	PROPOSAL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0021.html

	ISSUE 883: There is no mechanism to define the absence of any work (nop) in CDL.  
		http://www.w3.org/Bugs/Public/show_bug.cgi?id=883
	PROPOSAL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0022.html
	
	ISSUE 868: There is unnecessary redundancy in the syntax of the  'assign' activity.
		http://www.w3.org/Bugs/Public/show_bug.cgi?id=868
	PROPOSAL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0023.html

	ISSUE: Catch all does not exist for an exception 
		http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0019.html
	PROPOSAL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0019.html

	ISSUE 742: existential qualifiers
	 	http://www.w3.org/Bugs/Public/show_bug.cgi?id=742
	PROPOSAL http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0018.html
		Summary - Goes beyond existential qualifiers to include Globalized triggers and other WS-CDL functions
	

DETAILS:

ISSUE 783 http://www.w3.org/Bugs/Public/show_bug.cgi?id=783
PROPOSAL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0017.html
A relationshipType element MUST have exactly two Role Types defined. Within the role element, the optional attribute behavior identifies the commitment of a party as a list of behavior types belonging to the Role Type specified by the type attribute of the role element. If the behavior attribute is missing then all the behaviors belonging to the Role Type specified by the type attribute of the role element are identified as the commitment of a party.

The new syntax of the relationshipType construct is: 

<relationshipType name="ncname">
   <role type="qname" behavior="list of ncname"? /> 
   <role type="qname" behavior="list of ncname"? /> </relationshipType>

Martin: Any comments on this proposal? None. 

MOTION TO ADOPT THE PROPOSAL. 
Yves: Is it better to define the list of names as attributes. Make it easier to parse. 
Nick: Adopted the same style as WSDL. Check the List schema for CDL. This is a first level element. 
PROPOSAL ADOPTED http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0017.html
ISSUE 783 RESOLVED FIXED. 



ISSUE Message content type, have choice either channel or information type in an exchange element. 
This is an ACTION ITEM from London F2F. In CDL it is 2.5.2.4 in the exchange part of the suntex box.
PROPOSAL: 
Update the schema to include the ? symbol. (information type of channel type) 
SUPPORTING EMAIL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0002.html

MOTION TO ADOPT PROPOSAL.
PROPOSAL ADOPTED to change the table in CDL. 
ISSUE RESOLVED FIXED.



ISSUE ws-cdl function extensions changes related to time) http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0020.html 
PROPOSAL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0020.html 
Martin: WSCDL-- (ws-cdl function extensions changes related to time) 
Monica: Need global for time synchronization 
Nick: Do we need a protocol for that 
Monica: can be done out of band. 
Nick: Is this a must have or not, what is the exact suggestion?
Abbie: Need not to restrict the language. 
Martin, Nick agreed 
Gary: Is the role needed for the time. 
Martin: it may be confusing to read without the role(may need to be optional) 
Martin: Is every body happy with time elapsed function (section 10) 
Martin: Wither it is a duration or time we can get the same semantics. 
Martin : Do we need an additional did deadline pass function for example. 
Nick: Can we give it arity and see what we get. 
Martin: Is everybody happy with the time elapsed function? 
Nick: Has an issue: Do we need to move section 10 into other places in the text? DO we need it to be in the expressions sub-sections?
Martin: This is all editorial. 
Martin: Jhon(???) to draft a proposal on have deadline elapsed function. 

Nick: Did  not get the actions to address Monica poroposal. 
Martin: Do we need text on our assumptions for clock, skew etc. 
Nick: No requirement for a global time. 
Martin: If someone needs it, can define or use an other protocol. 
Nick: time is related to role and it is not global. A role can ask about it's own time only. 
Martin: any objection on adding that. 

ACTION: Items related to time: Update the cdl one Charlton (has deadline reached, nick to clarify the semantic on the time functions). 
ACTION: on martin to propose on text on clocks 
ACTION: on Nick consider moving section 10 around 



ISSUE 884: http://www.w3.org/Bugs/Public/show_bug.cgi?id=884
PROPOSAL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0021.html
There is no mechanism to obtain/set in CDL of the reference/identity of channel variable. 
Proposal is about adding ws-cdl function extensions additions related to channels to alleviate this problem.

xsd:any getChannelReference(xsd:string varName) 
Returns the reference information of the variable with name varName. The variable MUST be of channel type. 
xsd:any getChannelIdentity(xsd:string varName) 
Returns the identity information of the variable with name varName. The variable MUST be of channel type. 

Why do we need a fn just to access this piece of info? 
 Need an example. 
Seems like this is just extracting out sub-elements from a channel. 
How to do in CDL? 
Steve: If you can get the identity/ref of a channel, doesn't that allow you to subvert use once? 
Nick says that this is a potential problem, regardless whether you can copy "half" the info or all of the info. 
Steve also questions what additional capability does this provide? 
Ans: allows one to "clone" the channel that allows you to have multiple conversations to the "same" endpt 
Mm: Asks if you do this what is it that establishes the relationship? 
Questions about the utility? So far not answered ;-) 
The identity token has to be unique within what? Should be within a participant. 

Steve pointed out that no mechanism exists in CDL to define a channel type on the fly and therefore
it is not possible to create a channel using this information. The reference and identity information are
part of the channel type description and not the instance.  Effectively it is read-only information.  
Can see how the identity info might be useful, but the reference seems less useful.

Semi-proposal to add some text to warn users of the dangers (disclaimer text).  "This is context-sensitive information and should be used cautiously. In particular the information may be meaningless and/or incorrect in a different context."

PROPOSAL SUMMARY: Editors to add the above to the spec. 
PROPOSAL ADOPTED: With the above disclaimer text. 
ISSUE 884 RESOLVED FIXED.



ISSUE 883: There is no mechanism to define the absence of any work (nop) in CDL.  
	http://www.w3.org/Bugs/Public/show_bug.cgi?id=883
PROPOSAL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0022.html

Discussion about the usefulness of silent actions. Question about what happens if a silent action is present or not. What is the difference between having a silent action in CDL and my internal decision (based say upon a comment) to take an action?

Martin: Silent action can occur anywhere. It is a hint . 
Steve: Silent action does no harm or request it is removed because it is not useful. 

Stroll poll from Martin: Is this harmless as a feature: Yes:   8   NO: 4, 1 abstain. Need to work on the text. 

<SRT> So I voted to retain it and I would like clarification about how it would be used by tools in generation so that it is clear what it is meant to be used for.

scope of noaction is to put that in a workunit
gary: from the contract prospective, silent action and no action are the same
nick: silent action might be an assign
<MChapman> Clarification of NoOp http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0022.html
Gary: not quite happy with no action, but let's move on

PROPOSAL ADOPTED http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0022.html
ISSUE 883 RESOLVED FIXED.



ISSUE 868: There is unnecessary redundancy in the syntax of the  'assign' activity.
	http://www.w3.org/Bugs/Public/show_bug.cgi?id=868
PROPOSAL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0023.html
Gary: how can a assign fail? the text says that it is atomic, but nothing describe what is visible when it fails
Nick: CDL is silent about this, like in single copy, it just adds the atomicity when multiple copy are performed
PROPOSAL ADOPTED http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0023.html
ISSUE 868 RESOLVED FIXED



ISSUE Catch all does not exist for an exception 
	http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0019.html
PROPOSAL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0019.html

if a work unit without a guard, it catches all exceptions
if a magic fault is raised, you go to the exception block and try to match using the guards, no guard always match.
gary: other approach is to observe the behaviour of the service, if you see an interaction that is defined in an exception block, then it shows that it failed
Martin: the "catch all", there is no way to throw the exception higher
also there is no way to catch/rethrow
Nick: there is an issue on rethrow and propagation
nick: in an exception block, the order is impotant to do the matching
also repreat can't be used in an exception block
PROPOSAL ADOPTED http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0019.html 
ISSUE Catch all does not exist for an exception  RESOLVED FIXED



ISSUE 742: existential qualifiers
	 http://www.w3.org/Bugs/Public/show_bug.cgi?id=742
PROPOSAL http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0018.html
	Summary - Goes beyond existential qualifiers to include Globalized triggers and other WS-CDL functions

Nick: how it will be used in cdl?
nick: getVariable was there before, isVariableAvailable() is new
isVariableAvailable() is the existential qualifier
http://www.w3.org/2002/ws/chor/edcopies/cdl/cdl.html#informationdrivencollaborations_choreographymodel_workunits
greg: does it means defined or initialized?
nick: initialized
gary: is there a way to unset a variable? (to avoir repetition, for example)
nick: everytime you do an assign, you create a new variable (that replace the old one)
Yves: is there a way to differentiate when you reassign to the same value, ie: you have a new version, so it might trigger something
Nick related to the assign/unassign discussion

-> new issue about variable that can be unset
variablesAlign() replace isAligned(...)
this gives the possibility to see that two things are aligned before progressing
nick discussion is about existence or alignment at one role only, not across role
martin: we need to add a paragraph saying that "the variables refer to in this guard must referrd in the interaction it's been waited for"
<SRT> Steves comments on latest draft of spec: http://www.w3.org/2002/ws/chor/4/09/cdl-steve-comments-sec3.pdf

On globalized trigger there is no new proposal here we just have a name for it now
gary: These  will be realized at the endpoint -> how to be sure that decisions will be consistents?  No way we model-check that
(nick has a written example on the whiteboard)
nick : the global sequence will be projected at two sequences on the roles
there is no requirement that there will be a global agreement
ie: you may have a perception of a global thing happenning, but it won't be global
gary: it can be done by havingone endpoint making the decision, and the other observing
(discussion about how to detect the end of a repetition if other endpoint is the only one to take decision)
nick: in pi, there is no way to repeat behaviour, there can be only one send and receive
so there is no way to observe it unless there is replication
abbie: expectation is that each arrow is an observable behaviour
gary: if we project the workunit from the seller, it will be a workunit on the buyer side that is non observable
nick: it is not internal, so it should be observable
<SRT> In pi you can repeat behaviour using recursion: P def a.Q Q def b.P - see my early comments on servers and clients at the first F2F.
gary: consistency issue, as the two WU can lead to different choices
<Peter> <choice> <workunit repeat=yes> <interaction operation=X> </workunit> <interaction operation=STOP /> </choice>
<Peter> does that work?
martin: straw poll
1/ keep globalizedTrigger as-is
2/ remove it
everyone for in, recognize it needs to refined
discussing "When the block attribute is set to "true" and one or more variable(s) are not available, then the Work Unit MUST block ..."
<Peter> block=true and the expression cannot be evaluated definitively because some of the vars are unavailable ...

ACTION: Nick to clarify the text wrt not and or operators in guard conditions
ACTION: Nick to add text describing record/align and the shorthand notation
PROPOSAL ADOPTED: (modulo clarifications) http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0018.html
ISSUE 742 RESOLVED FIXED

END TOPIC: Nick's proposals



TOPIC: Distributed choice discussion

ISSUE: CDL collision resolution 
PROPOSAL Priorities and race condition resolution
	http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0046.html

it's an understanding on how it works in cdl
nick: both approcah may coexist (the state-based), and the priority one
need some example to demonstrate that
nick" the main issue is raise condition with >=3 participants
gary: the only way in that case would be to elect one participant to be the one that will take the decision
peter: the priority mechanism is a shorthand for using the state variable


MEETING ADJOURNED FOR THE DAY

SUMMARY OF ACTIONS DAY ONE:
[NEW] ACTION: Items related to time: Update the cdl one Charlton (has deadline reached, nick to clarify the semantic on the time functions). 
[NEW] ACTION: on martin to propose on text on clocks
[NEW] ACTION: on Nick consider moving section 10 around 
[NEW] ACTION: Nick to add text describing record/align and the shorthand notation 
[NEW] ACTION: nick to clarify the text wrt not and or operators in guard conditions 


************************************************
Day Two Wednesday 29th September

See also: IRC log http://www.w3.org/2004/09/29-ws-chor-irc

Attendees: Nickolas Kavantzas, Greg Ritzinger, Jeff Mischkinsky, Abbie Barbir,
Anthony Fletcher, Monica Martin, Charlton Barreto, Peter Furniss, Gary Brown,
Bijan Parsia

Regrets:

Chairs: Martin Chapman, Steve Ross-Talbot

W3C: Yves Lafon, Carine Bournez

Scribes: Abbie and Yves
************************************************
TOPIC: Lastest Ed Draft
	WS-CDL Editors Draft http://www.w3.org/2002/ws/chor/edcopies/cdl/cdl.html

SUMMARY OF TOPICS:
    PROPOSALS
	PROPOSAL: Proposal on wsdl 1.1 and wsdl 2.0 MEPs
	http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0056.html (CHECK THIS?)

	ISSUE: Composition of choreographies section 2.5.3 
	PROPOSAL: Choreography and composition 
		http://lists.w3.org/Archives/Public/public-ws-chor/2004Jul/att-0019/Choreography_composition.pdf
		See also:
		http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/att-0007/Composing_Choreographies.doc

    REVIEW OF REQUIREMENTS

    WSDL 2.0 LAST CALL COMMENTS

    REPITITION/ISSUE 869

    LAST CALL PLANNING


TOPIC: PROPOSALS

PROPOSAL: Proposal on wsdl 1.1 and wsdl 2.0 MEPs
	http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0056.html (CHECK THIS?)
Support of both wsdl 1.1 and 2.0 in CDL presents a possible incompatibility with respect 
to the Message Exchange Patterns (MEP) supported by each. In particular, an issue was 
raised concerning the deprecated Notification and Solicit-response MEPs from wsdl 1.1. 
What is the impact of the deprecation of these MEPs in wsdl 2.0 on CDL, given that 
support of wsdl 2.0 is part of the WS-Choreography? 

Current ed draft of WSDL Part 2
	http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl20/wsdl20-extensions.html?content-type=text/html;%20charset=utf-8
Current draft of WS-Reliable Messaging is available at
	http://www.oasis-open.org/committees/download.php/9330/WS-Reliability-CD1.086.zip
Steve's comments on CDL related to WSDL are at:
	 http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0055.html

Nick: Need to define what these mean per end. Iteract does not require any frame support. 
Steve: This is why we should be able to support any interaction on top of the MEPs. 
Martin : We made a decision not to support solicit-response from WSDL1.1 
Nick: Need a consistant story 
Gary: xxxx 
Nick: where is the interface 
Martin: let Charlton talk first 
Charlton: At this time it has already been agreed upon that CDL should only support WSDL 1.1MEPs per BP 1.1 - i.e. One-way and Request-Response.

As we are limited in practice to BP 1.1 sanctioned WSDL MEPs I propose that we specify support of WSDL 2.0 MEPs as conforming to BP 1.1, with the inclusion of WSDL 2.0 Robust In-out and Robust In-only MEPs.

Gary: Do not understand why do we need to restrict to these only. 
Martin: It is the devil in the details. 

Jeff: No body knows how to do solicate response. 
Xxx: If we say that CDL can not cope with this then it is ok. When they do then cdl can cope with it. 

Discussion on the board: 

Martin: explains a work around 
Steve: Is Charlton proposal only related to robusteness 
Charlton: No 
Martin: This is a whole of other stuff that we need to address. 
Steve: Is everyone happy in  supporting that, then we need to state how to bind to ws-reliability or just adopt 
Nick: no need to be tied only to ws-reliability 
Steve: other that supporting the faults, any other impact on cdl 
Martin: yes cdl faults 
Nick: if robust only is a subset of in-out, then cdl should be able to handel both cases. 
Martin: Need tyo check at the http level which way the connection is setup, who set up the http connection. 
Jeff: there are no normative bindings defined to all of these in http 
Martin: who sets up the connection, there are normative mep and normative bindings, how is this done. 
Gary: notifications can be done at any point. 
Nick: do we need changes in cdl to support notification, yes, we need changes. Right know the operation of the interact belong to the interface, (like one-way), there is no rule that state that the operation need to exist as a notification.
Gary: in wsdl the out only notification is defined an interface. 
Jeff: what happens if we need that 
Martin: use the intermediary wsdl trick 
Nick: discussion on the board. 
Nick: We need to underatnd that interact is asymmetric, do we need to extend this. 
Martin: can u write the steps for supporting an out only operation. 
Gary: Need to add text as a disclaimer on the out. 
Martin: we can state what we support only. Let us do a top down design forget wsdl for now. 
Martin: Two models polling or you are told. 
Yves: at cdl we do not care 
Jeff: there is a bunch of people, that do not care about callback or request/response. 
Gary: how does this affect relationship 
Jeff: depends on the initiater. 
Martin: Gary u may have some assumption on session modeling happening here. 
Gary: Relationship needed is message and its direction. 
Martin: what do u want to change in CDL. 
Gary: none 
Martin: u need to prove that. 
Action: Gary to demonstrate how an out only pattern can be supported by CDL 
Monica: WSDL ties u to an interface, means limitations and opportunities. 

ACTION: on the chairs to discuss part 2 of the specification.  (??? what spec)
ACTION: Gary to demonstrate how a out-only pattern might be used in CDL (without no changes)

PROPOSAL SUMMARY: 
	The only MEPs supported explicitly in WS-CDL are IN-only, IN-OUT, robust IN-only
	Thus we will support at leats the BP 1.1 sanctioned MEPs in WSDL 2.0, with the 
	additional inclusion of the Robust IN-only
PROPOSAL ADOPTED: As above in summary



ISSUE: Composition of choreographies section 2.5.3 
PROPOSAL: Choreography and composition 
	http://lists.w3.org/Archives/Public/public-ws-chor/2004Jul/att-0019/Choreography_composition.pdf
	See also:
	http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/att-0007/Composing_Choreographies.doc

Steve: "Using this approach, Choreographies can be recursively combined to support Choreographies of any required complexity allowing more flexibility as Choreographies defined elsewhere can be reused" But then says "
Steve: There MUST not be a cyclic dependency on the Choreographies performed. For example Choreography C1 is performing Choreography C2 which is performing Choreography C1 again"
Steve: How can it be recursive given the last stmt?
<bijan> Recursive != self recursive
<SRT> How is Recusive then defined Bijan?
<SRT> Dictionary defn: An expression, such as a polynomial, each term of which is determined by application of a formula to preceding terms.
<bijan> Yes
<bijan> Which doesn't entail self-recursion
<bijan> F calls G (where F & G are functions)
<bijan> That's a recursion of function application
<bijan> THough, given that F!=G, it's not self recursive
<bijan> Wikipedia is thus far looking good on this: http://en.wikipedia.org/wiki/Recursion
<bijan> And, of course, primitive recursive functions: http://en.wikipedia.org/wiki/Recursion
<bijan> "Using this approach,Choreographies can be combined to support Choreographies of any required complexity, so long as there are no cyclic dependencies in the combination."

Martin: question why are we disallowing cyclical dependencies 
Nick: why do u want it to be allowed. 
Martin: do we allow self recursion
Bijan: xxxxx 
Martin, composition structure a,b,c is allowed not a,b,a,c 
Martin: either we do allow cycles or change the word cycle. 
Nick: recursion means repeatition., why do we need recursion 
Martin: because it is easier to model. 
Nick: some systems support recusion and some do not. What does perform means 

Peter: can not perform yourself or your parent. 
Steve: I raised that because using the term recursion may be confusion if it is not the normal
recursion that most people understand.
Martin: Need to understand why we are disallowing cyclic. 
Peter: Can use recursion if u can substitute variables. If the cyclic rules applies to c1 even it has different variables.

Nick: is choreography a function or a macro 
Nick: There is no run time for choreography 
Martin: do not know 
Nick: answer is no. 
Bijan: macro vs function is not accurate, what is riding on that. 

Nick: bottom line do we need to relax the cyclic rule 
Martin: does recursion have operational impact on cdl. 
Nick: yes 

Gary: would like to know how much work it would be to add recursion.
Nick and bijan had discussion and agreed that they did not know how to model this CDL, and agreed it would be hard to do.
Martin: for version 1.0 we could live w/out it.

PROPOSAL WITHDRAWN.



TOPIC:  Review requirements documnent
martin: would like to do a quick review of CSFs and discuss any divergences
<MChapman> requirements docs: 
	http://www.w3.org/TR/2004/WD-ws-chor-reqs-20040311/
<SRT> My take on requirements and success factors are at: 
	http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/0062.html

C-G001 - still a goal, met by CWD of CDL Spec
C-G002 - still a goal, met.
C-G003 - still a goal, on track to meet.
	to be on track requires addition supporting materials (primer, etc.)
C-G004 - still a goal, on track to meet
C-G005 - still a goal, unknown if we met this since we currently have no metrics.
	related to examples group
C-G006 - still a goal, on track to meet.
C-G007 - still a goal
	bob - cannot do TWIST w/out business transactions
C-G007 - still a goal, on track to meet (our understanding of the req. has changed however)
C-G008 - still a goal, met
C-CSF-001 - met
C-CSF-002 - met
C-CSF-003 - met
C-CSF-004 - still a factor, unknown if met (after discussion)
C-CSF-005, still a factor, met
C-CSF-006 - still a factore, met
C-CSF-007 - still a factor, unsure if met (need to clarify what verification means)
C-CSF-008 - still a factor, not met (at least in version 1.0)
C-CSF-009 - still a factor, met
C-CSF-010 - still a factor, met
C-CSF-011 - still factor, currently unknown as we don't have a metric
C-CSF-012 - still a factor, met
C-CSF-013 - still a factor, not met (gap in CDL spec which needs to be filled (mc))
	nick: we can do C-CSF-013
	martin: I think there is a gap.
	peter: felt that we do not have this capability yet
	conclusion is that there is a gap in spec.
C-CSF-015 - still a factor, met if WSDL is complient w/ BP 1.1
C-CSF-016 - yes, yes
C-CR-001 - not met
C-CR-001 - relaxed to support WSDL 1.1
C-CR-002 - met
C-CR-003 - met
C-CR-2301 - partially met
C-CR-4210 - met / will do
C-CR-4211 - met
C-CR-4212 - met but still needs some owrk
C-CR-4213 - met
C-CR-4220 - we do enable it
C-CR-4222 - no longer a requirement, we can pass channels as identification
C-CR-4223 - met
C-CR-4310 - met
C-CR-4311 - no longer relevant, to vague a requirement (mc)
C-CR-4510 - met
C-CR-4511 - met
C-CR-4514 - met
	as broken down into sequence of 2 party interactions
C-CR-4610 - ambiguous req., don't care
C-CR-4611 - probably still a req, 
	not sure if we support, probably do but need to determine if met
C-CR-4612 - met
C-CR-4613 - met but current text doesn't support synatactoc reuse
C-CR-4615 - met
C-CR-5001 - not met in v1.0
C-CR-5100 - met
C-CR-5200 - met
C-CR-5201 - met
C-CR-5202 - not met, need to re-eval this req.
C-CR-5203 - not met yet
C-CR-5204 - we can do static timeouts, not dynamic
C-CR-5205 - met



TOPIC: WSDL 2.0 last call comments

martin: do we want to make comments
charlton: due to its impact we probably do 
	The WSDL 2.0 WG should define bindings for the 4 remaining MEPs that bindings have not been defined or they should be removed from the spec.
clarification: the MEPs should be removed
We need support for AP 1.0 and recommend a port of AP 1.0 in WSDL 2.0.
Recommend a section describing differences betwen of 1.1. and 2.0, incuding MEP differences in the spec.
The use of wsdlLocation seems to be vague in the spec and should be clarified.
<charlton> specifics on what I feel is vague in the use of wsdlLocation: 
<charlton> It appears to serve the same function as xsd:schemaLocation, while no use cases are provided to differentiate or justify it vis-a-vis xsd:schemaLocation. It is also unclear whether wsdlLocation can be used for wsdl component references. 
clarification of minutes, "comment is that WSDL needs an attachment scheme defined, and AP 1.0 is proposed as one of the possible solutions"
<charlton> specifics on what I feel is vague in component-to-infoset mapping:
<charlton> I haven't seen anything in the spec which addresses how the wsdl simple types (wsdls:*), can be described using XML Schema. Although the spec appears to deal with this in the context of serialization using mechanisms not compatible with XML Schema, it doesn't seem to really address the issue of how it serialization is performed in a manner compatible with XML Schema. Maybe I am missing something, but I would feel this speaks to the need for less ambiguit
<charlton> compatible with XML Schema
charlton: We'd like something less vague on mapping component model to infoset.
<caribou> http://www.w3.org/TR/2004/WD-wsdl20-20040803/#simpletypes
<caribou> "All references to them in this specification are made via qualified names that use the wsdls prefix. It should be noted though that there is no schema (in the sense of [XML Schema: Structures]) for that namespace, because the types defined here go beyond
<bijan> charlton, re WSDL simple types...I thought they WEREN'T compatible
<caribou> the capabilities of XML Schema to describe."
<bijan> I.e., couldn't be made so
<MChapman> http://lists.w3.org/Archives/Public/public-ws-chor/2004Jan/0028.html
<bijan> Do you mean that wsdl should specify how the compatible subset of the various types are serialized?
<bijan> (Downcast and go!)
<charlton> yes
<bijan> Do you need more than "Downcast if possible and go"?
<charlton> not necessarily - it would be enough for me
<caribou> it seems to be "specified" in subsequent sections 2.15.*
<bijan> The types are, not their relation to XML Schema
<charlton> and as such we don't have a clear approach to serializing them, say, in XML 1.0
<caribou> this relation = incompatibility? :)
<bijan> Superset :0
<charlton> it can be serialized in an incompatible manner without more clarity
<caribou> the first para of 2.15 is clear enough about Schema and XML1.1
<caribou> 2.15.* explains how to serialize those types
jeffm: oracle's position is that compositors should be in the WSDL spec. 
... We support features and properties remaining in the current WSDl spec.
<charlton> if these types can be described using XML schema, yes
martin: any concrete examples?
<charlton> but i didn't see that they could be
jeffm: using f&p you can support compositors.
martin: would it be stretching the truth to say that we intend to use f&p?
<charlton> "...This allows processors to accept descriptions serialized using a mechanism that is \not\ compatible with [XML Schema: Datatypes]" - this is what is worrisome
martin: removing f&p does not help us, How do we say this in a positve manner?
bijan: "we are in the process of developing specification text"
<MChapman> "we are in the process of developing specification text that depends on f&p"
bijan: is there anything specific to this that cannot be handled by ws-policy?
<MChapman> ws-what?
<SRT> Will Oracle send WSDL a position on f&P and compositors separately to this group as we at Enigmatec will probably do?

ACTION: Steve to draft a "letter" to WS-Desc WG



ISSUE 869: There is no explicit mechanism for defining a repeating set of activities.
	 http://www.w3.org/Bugs/Public/show_bug.cgi?id=869
PROPOSAL: http://lists.w3.org/Archives/Public/public-ws-chor/2004Jul/att-0070/Repetition.pdf

Can be supported by use of a variable and this variable can be set by the private implementation (bevavior)
gary: Original proposal (see above) was to seperate repitition out.
gary: proposal will be withrawn if there is a workable solution to issue 869
Nick: what is meant by non-observable condition in issue 869?
<SRT> And what would these opaque variable do exactly?
<SRT> Example: I wish to model receiving several partial order message bounded by a fulfilled message. Thus it can be said to be a true existential qualifier against a message.
gary: use case - while some unobservable condition, something happens.
martin:  from Seller to Buyer...+
SRT: really an existential qualifier on the interaction.
Nick: wrote example that used getVariable in a work unit.

PROPOSAL WITHDRAWN.



BobH: had question on use of silentAction, this made evident some confusion in the spec since silentAction is also used as a variable attribute.
Martin: suggested changing name of attribute to kiwiFruit
NEW ISSUE 899 ADDED


Martin drew truth table for mutable and silentAction states only 3 states for mutable and 
silentAction: write once / read many, write many / read many, read many



TOPIC: LAST CALL PLANNING
Martin review chair's project plan for last call 9 weeks left to lc

ADJOURNED FOR THE DAY

SUMMARY OF ACTION DAY TWO:
[NEW] ACTION: on the chairs to discuss part 2 of the specification.  (??? what spec)
[NEW] ACTION: Gary to demonstrate how a out-only pattern might be used in CDL (without no changes) 
[NEW] ACTION: Steve to draft a "letter" to WS-Desc WG 


************************************************
Day Three  Wednesday 30th September

See also: IRC log http://www.w3.org/2004/09/30-ws-chor-irc

Attendees: Nickolas Kavantzas, Greg Ritzinger, Jeff Mischkinsky, Abbie Barbir,
Anthony Fletcher, Monica Martin, Charlton Barreto, Peter Furniss, Gary Brown,
Bijan Parsia

Regrets:

Chairs: Martin Chapman, Steve Ross-Talbot

W3C: Yves Lafon, Carine Bournez

Scribes: JeffM and then Nick
************************************************

TOPIC: Presentation on Coordination proposal by BobH
http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/att-0063/2004-09-29.WS-CDL-Coordination.pdf


<Peter> text of proposal is http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/att-0053/2004-09-27.Coordinated_choreographies_proposal.pdf
<Peter> http://lists.w3.org/Archives/Public/public-ws-chor/2004Sep/att-0054/coordinated_choreography_example.2004-09-28.xml
<Peter> is example of how it might look request that the (mythical:-) examples group code up a scenario with an unbounded number of participants where have to select some number m out of the n participants using the current CDL draft
Discussion of actual choreology proposal

Martin notes that this is more of a "conceptual proposal" in that there are no specific editing instructions. The goal is to find out if the group is in favor of implementing these proposals. For those for whic the answer is yes, there will then need to be followup with "editing instructions" which the group can vote on

PROPOSAL ONE: Add a boolean attribute "coordination"
nick: proposal is fine
<Peter> coordination=true: when the choreo is finished, it is assured that the parties are aligned; false - no such promise
martin doesn't understand exactly what it means when it is false
<Peter> exactly equivalent to align=true of an interact, but at a larger level
<Peter> alignment may not apply all through the choreo, but is when is over
martin: when align is true, you dont step beyond an interact until interact is completed interact is essentially an atomic
martin's question is what happens when there is an extra level of grouping
align is true - don't do the records until interact completes
if want to know what can rely on, have to look inside the interact
with a coordinated choreo -- both sides know what happened
nick calls this "coordinated progress"
peter: if multiple normal ends, they are also assured
martin: after final interact there is some additional messages which guarantee both sides are in an "aligned" state 
... if false, then you don't know -- i.e. it doesn't matter to the designer of the choreograph
<MChapman> <caribou> what's the difference with aligning the final interact?
alignment on all interacts does not include the finalization semantics, exception blocks, assignments, etc. are performed
nick: coordinated progress -- assume u have an assign which throws an exception 
... so one side terminates normally, one abnormally -- this is a potential inconsistency
martin: assume things go normally, coordinated is true is almost the same as the final interact being align is true
mm: when u have coord=true even after the final interact has concluded you have to get to a point where u know things are aligned -- could involve invisible actions 
... when coord=false that guarantee is not made 
... it may still occur, but it is not an "externally visible" property
straw poll do we like it?
yes -- everyone
abstain -- a small scattered group of chickens
ACTION: Bob/Choreology to come back with a definitive proposal with editing instructions on PROPOSAL ONE



PROPOSAL TWO: Add a throw/raise activity to cause exception block to fire
nick: likes idea. Nick has been working on a similar proposal -- ready to go in a week or so
bob: happy with letting nick do the work
mm: there may be conditions that given where u r in a specific set of activitiesl, either party may not be allowed to raise that exception
jeffm: my answer is that this not a property of CDL, its a design constraint on how the developer writes the choreography 
... i.e. if it hurts, don't do it 
... if there is a bus constraint, and you don't write the code properly, you have a bug!



PROPOSAL THREE: delete the last sentence -- so is effectively add case statements to finalizers (only)
martin: could we use the same mech we adopted for exceptions (earlier in the meeting) for finalizers
bob: what is being discussed is mechanism for having multiple finalizers
http://www.w3.org/2002/ws/chor/edcopies/cdl/cdl.html#choreographyrecovery_informationdrivencollaborations_choreographymodel_finalizerblock
peter: "could" use a similar mechanism. need to expose the case externally for the finalizer 
... could use essentially the same syntx, but the visibility would be different
really need to bundle 3 and 4 becasue the statments about visiblity are captured by proposal 4



PROPOSAL FOUR: add attributes to identify the "target" choregraphy instance to be finalized and which finalizers to execute
nick: what are the finalize semantics 
... target has to be an immediate child
nick puts complicated diagram on board
martin: observes these rules (discussion of diagram) need to be written down and described in a formal proposal
nick: is finalizer role bound or "globalized", i.e. every role in the relationship
ACTION: above question (is finalizer role bound?) needs to be answered in a propsal on PROPOSAL FOUR


peter: good - perhaps idea if it is
nick: if coordinated=false then role bound
bob: 2 questions: who can finalize and what is scope (we think we know the answer to the latter)
straw poll: generally happy with proposal 3 (w/out last 2nd sentence)
consensus is generally happy -- no clucking was heard
nick: notes that case guards are evaluated sequentially so if multiple instances have some work to do 
... notes some concerns if parallel execution
straw poll: are people generally ok with 4
once again silence reigns -- no clucking
note: proposal 4 needs to incorporate the instance discussion conclusions



PROPOSAL FIVE - add identifier to identify a choreo instance so it can be referred to in finalizer
martin: when have parallel execution of 2 performs, how do i identify which instance
jeffm: problem is that we have syntax at the type level, but not at instance level
gary: points out gets even worse if in a loop
peter: it is unbounded particpant case where this will arise in spades -- need to use a variable 
... to identify outstanding performs which have run to completion but have not yet finalized
gary: do we still need type-level labels
jeffm: answer is need instance variables
nick: use choreo name with optional variable
ACTION: Write up concrete proposal on PROPOSAL FIVE



PROPOSAL 6 discussion
martin: thinks this is too big to deal with -- who has dealt with this issue before
gary: he and steve may have amd idea for a simpler alternative
gary/steve will work with peter/bob
nick: does not want to make major changes to CDL to achieve the goals of 6
jeffm: what happens if we dont do this
martin: there are these common/complex examples, reuse is limited 
... will have to copy/paste code
consensus seems to be general favor, but at least some wouldn't want to delay LC for this if it proves to be to complicated
<SRT> The added utility of Proposal 6 to FIX and TWIST is worth some time investing in a concrete proposal. But it will of course be evaluated by the group.
gary: thinks Proposal 6 is important to meeting our CSFs


TOPIC: Planning
	see http://www.w3.org/Member/Eventscal
<mm> Dec 10, 2004 is the date for having the WS-CDL doc ready to be submitted to W3C
Proposal for next F2F location is Redwood Shores, CA, hosted by Oracle, Date is week of 15th November
Waiting for WSDL, Bindings, Coordination, Composition proposals to come in the following few weeks from today
All proposals should be ready and submitted by end of October. Proposals after this date
will be submitted requires a 2/3 vote
other proposals such as Exceptions coming from Nick and propably other are also expected as long
the deadline is followed

ACTION: Charlton to make proposal on handling WSDL 1.1 parts vis-a-vis how CDL doesn't have to deal with it WSDL 2.0
ACTION: Charlton to make proposal on handling on QoS and Bindings (F&P, F&P + Compositors, ...)
ACTION: Greg to send the travel agent example to the group

other "expected" proposals would be: example
post last call is: primer, best practices for CDL
other proposals can come after last-call without the special 2/3 vote rule
Next-next F2F not decided yet. sometime between and of jan and end of feb
thanks to Greg/Novell for hosting this F2F at NYC
the example sub-group should show an endpoint projection for one of the examples
also example subgroup should work on a "CDL level" modelization of an alignment protocol

TOPIC: ISSUE TRIARGE
issue 883: resolved, fixed in the latest WD
issue 884: resolved
issue 885: editorial
ACTION: martin puts text for issue 885

Isuue 885 resolved
issue 897: editorial
issue 898: accepted as a bug
issue 899 accepted
issue 867 resolved, stay as is
issue 868 resolved

ACTION: next confcall should deal with issue 868

ACTION: put issue 870 in the agenda for next con-call (time-boxed)
issue 871: proposal withdrawn


<charlton> issue 464: http://www.w3.org/Bugs/Public/show_bug.cgi?id=464
ACTION: Issue 464 greg to scavange from old minutes the UDDI/registry suggestion text that Monica contributed to the group? Then we need a small change of section 1, bullet UDDI
<SRT> Hows this:



issue 471, resolved fixed
issue 471 - charlton's comment found to be out of context for this issue. This is a import issue and has been resolved by xInclude.

issue 484:
issue 469 - resolved by adoption of xInclude
<charlton> issue 481, actually (re: import issue): it was categorized with QoS and bindings but actually was an import issue
issue 485 - resolved, xInclude proposal permits include to be anywhere
issue 489 - left as open
issue 490 - left as open, still no list of standard faults
ACTION: propose a list of standard faults

issue 493 - fixed
issue 499 - closed w/ no action
issue 500 - resolved/fixed
issue 506 - proposal for identifying instances being made by Choreology
issue 557 - in progress
issue 556 - in progress
issue 561 - left open as placeholder for xInclude issues
issue 611 - closed due to relationship to 561
issue 609 - closed due to relationship to 561

issue 563 - added clarification from Monica Martin
martin - proposed to add business semantics as an example of using the <documentaion> element
SRT - thinks it belongs in the primer
Monica - agreed
Will add as an example in Semantics section of CDL specification
ACTION: editors to insert at end of section 2.2.4 the following:
"Examples of semantics could include the expression of further conditions and constraints not expressible in ws-cdl."

issue 565 - added clarification from Monica Martin
issues 565 - reassigned to exceptions bucket
issue 566 - added clarification from Monica M.
SRT - if WSDL doesn't understand a signal CDL doesn't either
Group agreed to this point
Monica suggests we state that somewhere in the CDL specification
We agree that there are no special signals defined by cdl and that all
application messages have to be expressed and visible in wsdl; furthermore cdl
will not/does not define any standard application message types.
Monica to propose some text.

issue 610 - resolved/fixed
issue 612 - added clarification from Monica
issue 612 - closed as resolved by issue 563
issue 614 - added clarification from Monica
issue 614 - resolved/fixed
issue 615 - added clarification from Monica
Can one define, and then perform, a choreo within another choreo, with the defined choreo invisible outside its parent.
example added to issue 615

issue 621 - Discovered that "Notation" replaces the left hand side, or non-terminal side, of a BNF rule
Editorial suggestion: include the non-terminal names in the psudo BNF fragments.

issue 627 - ongoing
issue 629 - resolved/fixed

MEEETING CLOSED

SUMMARY OF ACTIONS DAY THREE:
[NEW] ACTION: Bob/Choreology to come back with a definitive proposal with editing instructions on PROPOSAL ONE
[NEW] ACTION: above question (is finalizer role bound?) needs to be answered in a propsal on PROPOSAL FOUR
[NEW] ACTION: Write up concrete proposal on PROPOSAL FIVE
[NEW] ACTION: Greg to send the travel agent example to the group
[NEW] ACTION: martin puts text for issue 885
[NEW] ACTION: next confcall should deal with issue 868
[NEW] ACTION: put issue 870 in the agenda for next con-call (time-boxed)
[NEW] ACTION: greg to scavange from old minutes the UDDI/registry suggestion text that Monica contributed to the group? Then we need a small change of section 1, bullet UDDI
[NEW] ACTION: propose a list of standard faults
[NEW] ACTION: editors to insert at end of section 2.2.4 the following:
[NEW] ACTION: Charlton to make proposal on handling WSDL 1.1 parts vis-a-vis how CDL doesn't have to deal with it WSDL 2.0
[NEW] ACTION: Charlton to make proposal on handling on QoS and Bindings (F&P, F&P + Compositors, ...)

SUMMARY OF ACTIONS FROM ALL THREE DAYS:
Day One
[NEW] ACTION: Items related to time: Update the cdl one Charlton (has deadline reached, nick to clarify the semantic on the time functions). 
[NEW] ACTION: on martin to propose on text on clocks
[NEW] ACTION: on Nick consider moving section 10 around 
[NEW] ACTION: Nick to add text describing record/align and the shorthand notation 
[NEW] ACTION: nick to clarify the text wrt not and or operators in guard conditions 
Day Two
[NEW] ACTION: on the chairs to discuss part 2 of the specification.  (??? what spec)
[NEW] ACTION: Gary to demonstrate how a out-only pattern might be used in CDL (without no changes) 
[NEW] ACTION: Steve to draft a "letter" to WS-Desc WG 
Day Three
[NEW] ACTION: Bob/Choreology to come back with a definitive proposal with editing instructions on PROPOSAL ONE
[NEW] ACTION: above question (is finalizer role bound?) needs to be answered in a propsal on PROPOSAL FOUR
[NEW] ACTION: Write up concrete proposal on PROPOSAL FIVE
[NEW] ACTION: Greg to send the travel agent example to the group
[NEW] ACTION: martin puts text for issue 885
[NEW] ACTION: next confcall should deal with issue 868
[NEW] ACTION: put issue 870 in the agenda for next con-call (time-boxed)
[NEW] ACTION: greg to scavange from old minutes the UDDI/registry suggestion text that Monica contributed to the group? Then we need a small change of section 1, bullet UDDI
[NEW] ACTION: propose a list of standard faults
[NEW] ACTION: editors to insert at end of section 2.2.4 the following:
[NEW] ACTION: Charlton to make proposal on handling WSDL 1.1 parts vis-a-vis how CDL doesn't have to deal with it WSDL 2.0
[NEW] ACTION: Charlton to make proposal on handling on QoS and Bindings (F&P, F&P + Compositors, ...)