WS BPEL issues list

This file last updated 0:50 6 Jan 2005 (UTC)

This is the issues list for the OASIS Web Services Business Process Execution Language Technical Committee. The issues list is posted as a TC document to the OASIS WSBPEL TC pages on a regular basis (if it has changed). The current edition, as a TC document, is the most recent version of the document wsbpel_issues_list.html in the "Issues" folder of the WSBPEL TC document list - the uri for this document includes the document number generated by the upload process. The list editor's working copy, which will always at least as recent as the formal upload and will usually include later updates, is available at this constant URI.

Procedures for handling of issues are defined in the issues process document, and the procedure for issues submitted after 15 August 2004. Potential new issues should be submitted as an email to the issue list editor (peter.furniss@choreology.com), with a subject line of "New issue - <proposed title>. If this email follows the pattern described in the issues process document, appendices 5 and 6, it will be helpful. The new issue will be announced on the main wsbpel TC list with a status of "received". In accordance with procedure for issues submitted after 15 August 2004 the TC will decide whether to accept the issue for consideration (when the status will become "open") or not. If messages discussing an issue (including whether the issue should be accepted) have subject lines that begin Issue - <issue-id> - , or are replies to such, the archived copy of that message on the wsbpel list should be picked up by the software that revises this list and added to the Links section of the issue.

Issues with resolution proposed or voting

IssueIDTitleStatusProposed resolutionVote announcement
Issue 2Sub-Functionsresolution proposedIvana Trickovic, 24 Nov 2004 
Issue 9Static analysisresolution proposedYaron Y. Goland, 17 Sep 2004 
Issue 11.1Making <assign> truly extensibleresolution proposed  
Issue 12XML types and WS Interactionsresolution proposedYaron Y. Goland, 10 Dec 2004 
Issue 81Are start activities that aren't createInstance activities legal?resolution proposedYaron Y. Goland, 1 Dec 2004 
Issue 82description of abstract processes in specresolution proposedPeter Furniss, 14 Dec 2004 
Issue 91Nested Activities in Abstract Processesresolution proposedDieter Koenig1, 19 Feb 2004waiting on issue 107
Issue 92Mandatory & Optional BPEL Extensibilityresolution proposedDieter Koenig1, 21 Dec 2004 
Issue 97Optional Variable References in Abstract Processesresolution proposedDieter Koenig1, 19 Feb 2004waiting on issue 107
Issue 99Triggering activities for abstract processesresolution proposedIvana Trickovic, 10 Mar 2004waiting on issue 107
Issue 103Standardizing $varName syntax for XPath to refer to a BPEL variableresolution proposedYaron Y. Goland, 17 Sep 2004 
Issue 107Opacity and the meaning of nothingness in abstract processesresolution proposedPeter Furniss, 14 Dec 2004 
Issue 125Literal and Expression Assignment Semanticsresolution proposedYuzo Fujishima, 6 Dec 2004 
Issue 126Event Handlers with local partnerLinks & Correlation Setsresolution proposedYaron Y. Goland, 30 Jun 2004 
Issue 160facilities to define XML schema validation boundaryresolution proposedAlex Yiu, 15 Dec 2004 
Issue 169transition condition error handling clarificationresolution proposedYuzo Fujishima, 7 Dec 2004 

Issues changed or added since 28 Dec 2004

IssueIDTitleStatusIn specDate addedLast changed
Issue 11Query in <to> close should allow assigning to new locationsopen 25 Jun 20035 Jan 2005
Issue 11.1Making <assign> truly extensibleresolution proposed 5 Jan 20055 Jan 2005
Issue 92Mandatory & Optional BPEL Extensibilityresolution proposed 22 Jan 20043 Jan 2005
Issue 124PartnerLink/URI setter/getter functionresolvedno change18 May 200428 Dec 2004
Issue 130Remove Partner Elementresolvedno change6 Jul 20046 Jan 2005

Open issues by category

CategoryIssueIDTitleChampion
Abstract processesIssue 82description of abstract processes in spec 
Abstract processesIssue 91Nested Activities in Abstract Processes 
Abstract processesIssue 97Optional Variable References in Abstract Processes 
Abstract processesIssue 99Triggering activities for abstract processes 
Abstract processesIssue 107Opacity and the meaning of nothingness in abstract processes 
Abstract processesIssue 109Compatibility between Abstract and Executable Processes 
Asynchronous operationsIssue 4Dynamic parallel processing Ivana Trickovic
Asynchronous operationsIssue 63Support of Array 
Asynchronous operationsIssue 147Serial and Parallel For-Each 
CorrelationIssue 11Query in <to> close should allow assigning to new locationsDanny van der Rijn
CorrelationIssue 11.1Making <assign> truly extensibleAlex Yiu
CorrelationIssue 26Correlating use with receive/replyAssaf Arkin
CorrelationIssue 96Engine-managed correlation sets 
CorrelationIssue 120What are the semantics when an initial <receive> has no correlation set? 
CorrelationIssue 126Event Handlers with local partnerLinks & Correlation Sets 
Data HandlingIssue 156Cleaning Up XPATH in BPEL 
Data HandlingIssue 157Cleaning up copy 
Data handlingIssue 11Query in <to> close should allow assigning to new locationsDanny van der Rijn
Data handlingIssue 11.1Making <assign> truly extensibleAlex Yiu
Data handlingIssue 12XML types and WS Interactions 
Data handlingIssue 51Section 9.3.1 & Schema Validation 
Data handlingIssue 63Support of Array 
Data handlingIssue 102Fixing Typos in getVariable*() in BPEL examples 
Data handlingIssue 103Standardizing $varName syntax for XPath to refer to a BPEL variable 
Data handlingIssue 112Input/Output Elements on Messaging Activities 
Data handlingIssue 153getVariableData xpath function should return node sets of any size  
Event handlingIssue 126Event Handlers with local partnerLinks & Correlation Sets 
ExpressionsIssue 6Completion Condition 
ExpressionsIssue 28Simplification of join conditionAssaf Arkin
ExpressionsIssue 29Simplification of XPath expressionsAssaf Arkin
ExpressionsIssue 51Section 9.3.1 & Schema Validation 
ExpressionsIssue 125Literal and Expression Assignment Semantics 
Fault handlingIssue 133Access to unnamed fault bodies 
Fault handlingIssue 141Standard Fault Format 
Fault handlingIssue 180Clarification of WSDL fault declarations and Reply in BPEL 
Partner linksIssue 126Event Handlers with local partnerLinks & Correlation Sets 
Partner linksIssue 139PartnerLink Semantics 
Process lifecycleIssue 81Are start activities that aren't createInstance activities legal? 
Related StandardsIssue 180Clarification of WSDL fault declarations and Reply in BPEL 
Related standardsIssue 86Addressing Interoperability / Portability - SOAP 1.2 
Related standardsIssue 154doc/lit & multiple body parts 
Related standardsIssue 174Are multiple imports with the same namespace allowed? 
ScopesIssue 119Transition Conditions and Invoke Fault Handlers 
Specification editingIssue 144Defining Undefined Behaviors 
Specification editingIssue 148Explicitly state that solicit/response & notification aren't supported by BPEL 
Specification editingIssue 158Changing Spec Structure from 3 part to 2 part 
Specification editingIssue 159Ordering specification sections by dependency 
State managementIssue 2Sub-FunctionsIvana Trickovic
State managementIssue 6Completion Condition 
State managementIssue 28Simplification of join conditionAssaf Arkin
State managementIssue 81Are start activities that aren't createInstance activities legal? 
State managementIssue 119Transition Conditions and Invoke Fault Handlers 
State managementIssue 142Break & Continue 
State managementIssue 147Serial and Parallel For-Each 
SubprocessesIssue 2Sub-FunctionsIvana Trickovic
Syntax & semanticsIssue 177Inconsistent optional/required nature of @Variable on onMessage, onEvent and Receive 
Syntax and validationIssue 9Static analysis 
Syntax and validationIssue 88Import Errata 
Syntax and validationIssue 92Mandatory & Optional BPEL Extensibility 
Syntax and validationIssue 110Issues with the Pattern Attribute 
Syntax and validationIssue 111Extension Activities 
Syntax and validationIssue 125Literal and Expression Assignment Semantics 
Syntax and validationIssue 132In-line Variable Initialization 
Syntax and validationIssue 136If-Then-Else Activity 
Syntax and validationIssue 138Properties of type element 
Syntax and validationIssue 140Until Activity 
Syntax and validationIssue 142Break & Continue 
Syntax and validationIssue 143StaticSwitch Activity 
Syntax and validationIssue 147Serial and Parallel For-Each 
Syntax and validationIssue 150Message variables on invoke and reply 
Syntax and validationIssue 160facilities to define XML schema validation boundary 
Syntax and validationIssue 163languageExecutionFault 
Syntax and validationIssue 181uninitializedVariable cleanup 
syntax & semanticsIssue 169transition condition error handling clarificationYuzo Fujishima

Open issues with no identified traffic since 22 Sep 2004

IssueIDTitleDate addedLast changedChampion
Issue 4Dynamic parallel processing 25 Jun 20032 Jun 2004Ivana Trickovic
Issue 9Static analysis25 Jun 200317 Sep 2004 
Issue 26Correlating use with receive/reply26 Jun 200315 Jan 2004Assaf Arkin
Issue 28Simplification of join condition26 Jun 200320 Oct 2003Assaf Arkin
Issue 29Simplification of XPath expressions26 Jun 200321 Oct 2003Assaf Arkin
Issue 63Support of Array15 Sep 200322 Apr 2004 
Issue 86Addressing Interoperability / Portability - SOAP 1.225 Nov 200327 Nov 2003 
Issue 88Import Errata3 Dec 200323 Jun 2004 
Issue 91Nested Activities in Abstract Processes22 Jan 200429 Apr 2004 
Issue 96Engine-managed correlation sets3 Feb 200422 Jun 2004 
Issue 97Optional Variable References in Abstract Processes10 Feb 200429 Apr 2004 
Issue 99Triggering activities for abstract processes3 Mar 200423 Jun 2004 
Issue 102Fixing Typos in getVariable*() in BPEL examples9 Mar 200422 Apr 2004 
Issue 109Compatibility between Abstract and Executable Processes24 Mar 200417 Aug 2004 
Issue 111Extension Activities25 Mar 200425 Mar 2004 
Issue 112Input/Output Elements on Messaging Activities25 Mar 200424 Jun 2004 
Issue 120What are the semantics when an initial <receive> has no correlation set?19 Apr 200427 Aug 2004 
Issue 126Event Handlers with local partnerLinks & Correlation Sets10 Jun 200415 Jul 2004 
Issue 132In-line Variable Initialization15 Jul 200416 Jul 2004 
Issue 133Access to unnamed fault bodies15 Jul 200416 Jul 2004 
Issue 136If-Then-Else Activity15 Jul 200416 Jul 2004 
Issue 138Properties of type element15 Jul 200415 Sep 2004 
Issue 139PartnerLink Semantics15 Jul 20044 Aug 2004 
Issue 140Until Activity15 Jul 200416 Jul 2004 
Issue 141Standard Fault Format15 Jul 200416 Jul 2004 
Issue 143StaticSwitch Activity15 Jul 200416 Jul 2004 
Issue 144Defining Undefined Behaviors15 Jul 200416 Jul 2004 
Issue 147Serial and Parallel For-Each16 Jul 200420 Sep 2004 
Issue 148Explicitly state that solicit/response & notification aren't supported by BPEL17 Jul 200417 Jul 2004 
Issue 150Message variables on invoke and reply20 Jul 200421 Jul 2004 
Issue 153getVariableData xpath function should return node sets of any size 27 Jul 200427 Jul 2004 
Issue 154doc/lit & multiple body parts28 Jul 200430 Jul 2004 
Issue 156Cleaning Up XPATH in BPEL31 Jul 200431 Jul 2004 
Issue 157Cleaning up copy31 Jul 200431 Jul 2004 
Issue 158Changing Spec Structure from 3 part to 2 part4 Aug 20047 Aug 2004 
Issue 159Ordering specification sections by dependency4 Aug 20046 Aug 2004 

Resolved issues awaiting editing into spec

IssueIDTitleLast changed
Issue 84Require Static Analysis Description & List23 Jun 2004
Issue 93Use of XML types in faults14 Dec 2004
Issue 105XML namespaces used in spec and examples need to be defined24 Jun 2004
Issue 145Properties on Non-Message Variables16 Dec 2004
Issue 155complexType Variables9 Dec 2004
Issue 162Unique Activity Names for Compensate15 Dec 2004
Issue 167Rethrow semantics clarification27 Oct 2004
Issue 170How to handle faultcode, faultstring, and faultactor3 Dec 2004
Issue 171faultName should be optional for invoke fault handlers15 Dec 2004

All issues, in order

IssueIDTitleStatusIn specDate addedLast changedRevisitable
Issue 1Permeability of scopesresolved5 Oct 200425 Jun 20036 Oct 2004 
Issue 2Sub-Functionsresolution proposed 25 Jun 200310 Dec 2004 
Issue 3Current state influence in compensation handlersresolved4 June 200425 Jun 20039 Jun 2004 
Issue 4Dynamic parallel processing open 25 Jun 20032 Jun 2004 
Issue 5Suspend/resumeresolvedno change25 Jun 200311 Feb 2004 
Issue 6Completion Conditionopen 25 Jun 200320 Dec 2004 
Issue 7Import resolved4 June 200425 Jun 20039 Jun 2004 
Issue 8Non-mutability of correlation setsresolvedNo change25 Jun 200322 Jun 2004 
Issue 9Static analysisresolution proposed 25 Jun 200317 Sep 2004 
Issue 10Serialization of compensationresolved19 Nov 200425 Jun 200319 Nov 2004 
Issue 11Query in <to> close should allow assigning to new locationsopen 25 Jun 20035 Jan 2005 
Issue 11.1Making <assign> truly extensibleresolution proposed 5 Jan 20055 Jan 2005 
Issue 12XML types and WS Interactionsresolution proposed 25 Jun 200314 Dec 2004 
Issue 13Future Usage of XPATH 2.0 and XQuery 1.0resolved4 June 200425 Jun 200326 Jul 2004 
Issue 14Restriction on join conditionsresolvedno change25 Jun 20034 Feb 2004 
Issue 15WSDL MEPsresolvedNo change25 Jun 20036 Oct 2004 
Issue 16Ensuring exactly onceresolvedno change25 Jun 200310 Dec 2003 
Issue 17Asynchronous operationsresolvedno change25 Jun 200327 Jan 2004 
Issue 18BPEL Visual Bindingresolvedno change25 Jun 200311 Feb 2004 
Issue 19Multiple properties associated to a single property aliasresolvedno change25 Jun 200311 Feb 2004 
Issue 20installing compensation handlers for faulted scopesresolvedno change25 Jun 20031 Oct 2003 
Issue 21faultHandlers to be renamed cancellationHandlersresolvedno change25 Jun 20033 Mar 2004 
Issue 22Implicit <sequence> macroresolvedno change25 Jun 20034 Feb 2004 
Issue 23Rationale for sequence vs. flow resolved4 June 200425 Jun 20039 Jun 2004 
Issue 24Separate schemas for executable vs abstract BPELresolvedno change25 Jun 200311 May 2004 
Issue 25Consistent enablement of compensation handlersresolved1.34, 19 June 200426 Jun 200320 Jun 2004 
Issue 26Correlating use with receive/replyopen 26 Jun 200315 Jan 2004 
Issue 27Setting link status in case of transition conditionresolved4 June 200426 Jun 20039 Jun 2004 
Issue 28Simplification of join conditionopen 26 Jun 200320 Oct 2003 
Issue 29Simplification of XPath expressionsopen 26 Jun 200321 Oct 2003 
Issue 30Support for coordination protocolresolved1.34, 19 June 200426 Jun 200320 Jun 2004Yes
Issue 31Unique identifier for establishing new correlationresolvedNo change26 Jun 200322 Jun 2004Yes
Issue 32Link Semantics in Event Handlersresolved4 June 20043 Jul 20039 Jun 2004 
Issue 33Race condition before correlation set is establishedresolved1.34, 19 June 20049 Jul 200320 Jun 2004 
Issue 34Dependency on Proprietary Specificationsresolved16 Aug 20049 Jul 200317 Aug 2004 
Issue 35Support for modelingresolvedno change9 Jul 200311 Feb 2004 
Issue 36Multiple instances of event handlerresolved4 June 20049 Jul 20039 Jun 2004 
Issue 37Initiating Correlation Set More Than Onceresolved1.35, 30 June 200411 Jul 200315 Jul 2004 
Issue 38Directed Activity Graph and block structuredresolvedno change13 Jul 20034 Feb 2004 
Issue 39Inconsistent syntax for query attribute values in spec examplesresolved4 June 200416 Jul 20039 Jun 2004 
Issue 40attribute name "variable" or "message"resolvedno change24 Jul 20039 Jun 2004 
Issue 41onMessage handler definitionresolved4 June 200431 Jul 20039 Jun 2004 
Issue 42Need for Formalismresolvedno change31 Jul 20033 Mar 2004yes
Issue 43Setting up Periodic Alarmsresolved16 Aug 200431 Jul 200317 Aug 2004 
Issue 44portType is duplicated on Invoke activity and partnerLinkTyperesolved16 Aug 20045 Aug 200317 Aug 2004 
Issue 45Wording of "while" activityresolved4 June 20047 Aug 20039 Jun 2004 
Issue 46Namespace for the document fragment representing a partresolved4 June 20047 Aug 20039 Jun 2004 
Issue 47Which Version of WSDL should we use?resolvedno change8 Aug 200315 Oct 2003 
Issue 48XML Transform Supportresolvedno change12 Aug 200329 Apr 2004 
Issue 49Disambiguating <receive>s to <reply> toresolvedno change12 Aug 200327 Jan 2004 
Issue 50Semantics for "dangling receive"resolved4 June 200412 Aug 20039 Jun 2004 
Issue 51Section 9.3.1 & Schema Validationopen 18 Aug 200325 Nov 2004 
Issue 52Specify how flows in the same process send messages to each otherresolvedNo change18 Aug 200323 Sep 2004 
Issue 53Include Business Transaction Management (BTM) constructsresolved1.34, 19 June 200426 Aug 200320 Jun 2004Yes
Issue 54Construct to hold Business transaction contexts resolved1.34, 19 June 200426 Aug 200320 Jun 2004Yes
Issue 55Business transaction propagation resolved1.34, 19 June 200426 Aug 200320 Jun 2004Yes
Issue 56Business transaction creationresolved1.34, 19 June 200426 Aug 200320 Jun 2004Yes
Issue 57Business transaction terminationresolved1.34, 19 June 200426 Aug 200320 Jun 2004Yes
Issue 58Selective termination of business transaction participantsresolved1.34, 19 June 200426 Aug 200320 Jun 2004Yes
Issue 59BPEL process as business transaction participant resolved1.34, 19 June 200426 Aug 200320 Jun 2004Yes
Issue 60process categoryresolvedno change8 Sep 200311 Feb 2004 
Issue 61process priorityresolvedno change8 Sep 200311 Feb 2004 
Issue 62Event handlers and Serializable Scopesresolved4 June 200412 Sep 20039 Jun 2004 
Issue 63Support of Arrayopen 15 Sep 200322 Apr 2004 
Issue 64Explicit declaration of process instantiationresolvedNo change15 Sep 200314 Oct 2004 
Issue 65Multiple partners of a partner typeresolvedNo change15 Sep 200322 Jun 2004 
Issue 66Zero or multiple matches of correlation setresolvedNo change19 Sep 200322 Jun 2004 
Issue 67Clarify semantics of serializable scopesresolved4 June 200424 Sep 20039 Jun 2004 
Issue 68catch syntax brokenresolved4 June 200426 Sep 20039 Jun 2004 
Issue 69When to clear link statusresolved4 June 200427 Sep 20039 Jun 2004 
Issue 70suppressJoinFailure default valueresolved4 June 200430 Sep 20039 Jun 2004 
Issue 71Removal of wsdl:messageresolvedNo change1 Oct 200314 Oct 2004 
Issue 72What to do with WS-I BP1.0? resolved4 June 20041 Oct 20039 Jun 2004 
Issue 73"wsdl:fault" element not allowed with one-way operationresolved4 June 20046 Oct 20039 Jun 2004 
Issue 74Ambiguity in join condition definitionresolved4 June 20049 Oct 20039 Jun 2004 
Issue 75Locally Scoped partnerLink declarationsresolved1.35, 30 June 200421 Oct 200315 Jul 2004 
Issue 76Mandating either Pessimistic or Optimistic Static Analysisresolvedno change21 Oct 200312 Nov 2003 
Issue 77BPEL cannot handle some SOAP header bindingsresolvedno change21 Oct 200310 Dec 2003 
Issue 78New value for initiate on multi-startsresolvedNo change22 Oct 200322 Jun 2004 
Issue 79Serializable scopes do not need to be leaf scopesresolved4 June 200422 Oct 20039 Jun 2004 
Issue 80Clarify Fault Handler Selection When Fault Data is Absentresolved4 June 200431 Oct 20039 Jun 2004 
Issue 81Are start activities that aren't createInstance activities legal?resolution proposed 3 Nov 20037 Dec 2004 
Issue 82description of abstract processes in specresolution proposed 3 Nov 200316 Dec 2004 
Issue 83Garbage Collecting Compensation Handlersresolvedno change3 Nov 200320 May 2004Yes
Issue 84Require Static Analysis Description & Listresolved 5 Nov 200323 Jun 2004 
Issue 85Multiple links with the same source and targetresolved4 June 200417 Nov 20039 Jun 2004 
Issue 86Addressing Interoperability / Portability - SOAP 1.2open 25 Nov 200327 Nov 2003 
Issue 87Optional SOAP HeadersresolvedNo change27 Nov 20038 Dec 2004Yes
Issue 87.1Optional SOAP Headers (subissue: generic mechanism)resolvedNo change 8 Dec 2004 
Issue 88Import Errataopen 3 Dec 200323 Jun 2004 
Issue 89Handling Unrecognized Query/Expression Languagesresolved16 Nov 20047 Jan 200417 Nov 2004 
Issue 90Assignment of external data into a variableresolvedno change9 Jan 200429 Apr 2004Yes
Issue 91Nested Activities in Abstract Processesresolution proposed 22 Jan 200429 Apr 2004 
Issue 92Mandatory & Optional BPEL Extensibilityresolution proposed 22 Jan 20043 Jan 2005 
Issue 93Use of XML types in faultsresolved 22 Jan 200414 Dec 2004 
Issue 94Allow both "compensate" and other activities in compensation or fault handlerresolved1.35, 30 June 20042 Feb 200415 Jul 2004 
Issue 95Rethrow a Faultresolved4 June 20043 Feb 20049 Jun 2004 
Issue 96Engine-managed correlation setsopen 3 Feb 200422 Jun 2004 
Issue 97Optional Variable References in Abstract Processesresolution proposed 10 Feb 200429 Apr 2004 
Issue 98What version number are we working towardsresolved19 Nov 200420 Feb 200419 Nov 2004 
Issue 99Triggering activities for abstract processesresolution proposed 3 Mar 200423 Jun 2004 
Issue 100When should XML be validated?resolvedNo change4 Mar 200423 Jun 2004 
Issue 101Local variables overriding enclosing scoperesolved4 June 20045 Mar 20049 Jun 2004 
Issue 102Fixing Typos in getVariable*() in BPEL examplesopen 9 Mar 200422 Apr 2004 
Issue 103Standardizing $varName syntax for XPath to refer to a BPEL variableresolution proposed 9 Mar 200430 Sep 2004 
Issue 104incorrect target link names in 12.5.3. Flow Graphresolved4 June 200410 Mar 20049 Jun 2004 
Issue 105XML namespaces used in spec and examples need to be definedresolved 17 Mar 200424 Jun 2004 
Issue 106ASSERT activity.resolvedNo change18 Mar 200423 Jun 2004 
Issue 107Opacity and the meaning of nothingness in abstract processesresolution proposed 18 Mar 200414 Dec 2004 
Issue 108Parallel Compensationresolved19 Nov 0420 Mar 200424 Nov 2004 
Issue 109Compatibility between Abstract and Executable Processesopen 24 Mar 200417 Aug 2004 
Issue 110Issues with the Pattern Attributeopen 24 Mar 200414 Oct 2004 
Issue 111Extension Activitiesopen 25 Mar 200425 Mar 2004 
Issue 112Input/Output Elements on Messaging Activitiesopen 25 Mar 200424 Jun 2004 
Issue 113Optional Port TypesresolvedNo change25 Mar 200423 Jun 2004 
Issue 114Multiple Correlation Setsresolved1.35, 30 June 200431 Mar 200415 Jul 2004 
Issue 115Revise content of Appendix CresolvedNo change1 Apr 200423 Sep 2004 
Issue 116<process> element should be optionalresolvedNo change1 Apr 200427 Oct 2004 
Issue 117Link Name Scopingresolved4 June 200414 Apr 20049 Jun 2004 
Issue 118When are Correlation Sets Mandatory?resolvedno change15 Apr 20047 Jul 2004 
Issue 119Transition Conditions and Invoke Fault Handlersopen 19 Apr 200412 Oct 2004 
Issue 120What are the semantics when an initial <receive> has no correlation set?open 19 Apr 200427 Aug 2004 
Issue 121<finally> constructresolvedNo change20 Apr 200414 Dec 2004Yes
Issue 122Clarify wording for Message Exchange PatternsresolvedNo change20 Apr 200423 Jun 2004 
Issue 123Matching <reply> with <receive>resolved21 Oct 200418 May 200423 Oct 2004 
Issue 124PartnerLink/URI setter/getter functionresolvedno change18 May 200428 Dec 2004Yes
Issue 125Literal and Expression Assignment Semanticsresolution proposed 25 May 20048 Dec 2004 
Issue 126Event Handlers with local partnerLinks & Correlation Setsresolution proposed 10 Jun 200415 Jul 2004 
Issue 127Locally Scoped Partnersresolvedno change11 Jun 200412 Jun 2004 
Issue 128WS-I BP Incompatible WSDL Importresolved16 Aug 200414 Jun 200417 Aug 2004 
Issue 129Inconsistent Name Attribute Usage in PartnerLinkTyperesolved16 Nov 200414 Jun 200417 Nov 2004 
Issue 130Remove Partner Elementresolvedno change6 Jul 20046 Jan 2005 
Issue 131revisiting section 9.3.1 "Type Compatibility in Assignment"resolvedNo change13 Jul 200416 Jul 2004 
Issue 132In-line Variable Initializationopen 15 Jul 200416 Jul 2004 
Issue 133Access to unnamed fault bodiesopen 15 Jul 200416 Jul 2004 
Issue 134Non-Integer XPATHSresolved21 Oct 200415 Jul 200423 Oct 2004 
Issue 135Clarifying forcedTermination Handlerresolved19 Nov 200415 Jul 200419 Nov 2004 
Issue 136If-Then-Else Activityopen 15 Jul 200416 Jul 2004 
Issue 137Making properties consistent with variable valuesresolved25 Nov 0415 Jul 200425 Nov 2004 
Issue 138Properties of type elementopen 15 Jul 200415 Sep 2004 
Issue 139PartnerLink Semanticsopen 15 Jul 20044 Aug 2004 
Issue 140Until Activityopen 15 Jul 200416 Jul 2004 
Issue 141Standard Fault Formatopen 15 Jul 200416 Jul 2004 
Issue 142Break & Continueopen 15 Jul 20048 Dec 2004 
Issue 143StaticSwitch Activityopen 15 Jul 200416 Jul 2004 
Issue 144Defining Undefined Behaviorsopen 15 Jul 200416 Jul 2004 
Issue 145Properties on Non-Message Variablesresolved 15 Jul 200416 Dec 2004 
Issue 146Making tVariable Extensibleresolved8 Sept 200415 Jul 200415 Sep 2004 
Issue 147Serial and Parallel For-Eachopen 16 Jul 200420 Sep 2004 
Issue 148Explicitly state that solicit/response & notification aren't supported by BPELopen 17 Jul 200417 Jul 2004 
Issue 149adding formal <documentation> support to BPEL resolved8 Sept 200420 Jul 200415 Sep 2004 
Issue 150Message variables on invoke and replyopen 20 Jul 200421 Jul 2004 
Issue 151Allow a new process instance to be created by "pick onAlarm until"resolvedno change26 Jul 200415 Sep 2004yes
Issue 152Clarification of usage of "reference-scheme" attribute of "service-ref" elementresolved3 Dec 200427 Jul 20044 Dec 2004 
Issue 153getVariableData xpath function should return node sets of any size open 27 Jul 200427 Jul 2004 
Issue 154doc/lit & multiple body partsopen 28 Jul 200430 Jul 2004 
Issue 155complexType Variablesresolved 28 Jul 20049 Dec 2004 
Issue 156Cleaning Up XPATH in BPELopen 31 Jul 200431 Jul 2004 
Issue 157Cleaning up copyopen 31 Jul 200431 Jul 2004 
Issue 158Changing Spec Structure from 3 part to 2 partopen 4 Aug 20047 Aug 2004 
Issue 159Ordering specification sections by dependencyopen 4 Aug 20046 Aug 2004 
Issue 160facilities to define XML schema validation boundaryresolution proposed 10 Aug 200416 Dec 2004 
Issue 161Explicit conformance statementsresolvedNo change8 Sep 200429 Sep 2004Yes
Issue 162Unique Activity Names for Compensateresolved 8 Sep 200415 Dec 2004 
Issue 163languageExecutionFaultopen 22 Sep 200414 Oct 2004 
Issue 164Variable Types for Throw and CatchresolvedDuplicate23 Sep 200414 Oct 2004 
Issue 165clarification of the default NS URI for expression and query languageresolved3 Dec 200423 Sep 20044 Dec 2004 
Issue 166Does atomicity in assign imply variable locking?resolved25 Nov 0429 Sep 200425 Nov 2004 
Issue 167Rethrow semantics clarificationresolved 4 Oct 200427 Oct 2004 
Issue 168Semantics of instance creationresolvedNo change4 Oct 20048 Dec 2004 
Issue 169transition condition error handling clarificationresolution proposed 18 Oct 200410 Dec 2004 
Issue 170How to handle faultcode, faultstring, and faultactorresolved 18 Oct 20043 Dec 2004 
Issue 171faultName should be optional for invoke fault handlersresolved 18 Oct 200415 Dec 2004 
Issue 172Clarification/correction of correlation sets example in sec. 10.2resolved25 Nov 0418 Oct 200425 Nov 2004 
Issue 173Value of initiate attributes in Multiple Start Activities exampleresolved25 Nov 0420 Oct 200425 Nov 2004 
Issue 174Are multiple imports with the same namespace allowed?open 23 Oct 200411 Nov 2004 
Issue 175Supporting WSDL Overloading in BPELresolved25 Nov 0427 Oct 200425 Nov 2004 
Issue 176Removing Section 4resolved19 Nov 200427 Oct 200419 Nov 2004 
Issue 177Inconsistent optional/required nature of @Variable on onMessage, onEvent and Receiveopen 28 Oct 200411 Nov 2004 
Issue 178Correlation sets visible to an event handlerresolved25 Nov 042 Nov 200425 Nov 2004 
Issue 179Type Compatibility in Assignment of EPRsresolvedNo change12 Nov 200424 Nov 2004 
Issue 180Clarification of WSDL fault declarations and Reply in BPELopen 4 Dec 20048 Dec 2004 
Issue 181uninitializedVariable cleanupopen 10 Dec 200414 Dec 2004 

The colour of the issue title is determined by the status: red=open (42 issues), maroon=resolution proposed (16 issues), green=resolved (125 issues). According to the TC issue procedures (issues process document), the formal status values are "open" and "resolved". The procedure revision for issues submitted after 15 August 2004 implies a provisional status before an issue is open. The other status values are just informational variations on those.

The "revisitable" entry applies to resolved issues where it has been suggested that it may be worth returning to the question in future work, after the completion of the first OASIS TC edition of the WS BPEL specification.


Issue 1: Permeability of scopes

Status: resolved
In spec: 5 Oct 2004
Date added: 25 Jun 2003
Categories: Scopes, State management, Compensation
Origin: Initial requirements log, item 1 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Champion: Dieter Roller
Document: BPEL specification
Description:
Currently scopes are "permeable" in the sense that the status of links that are used for activity synchronization is visible outside the scope before the scope completes. This has problematic implications in case the scope faults. Should we support non-permeable scopes, i.e., scopes that make the status of links that are used for activity synchronization invisible outside the scope until the scope completes (normally or abnormally). Should we support the notion of non-permeable scopes? Only non-permeable scopes? Both?
Qualifier: requirement
Resolution: Proposed in Satish Thatte, 18 Jun 2004, decided at San Francisco f-t-f

This is the same proposal that was posted earlier (reproduced below for convenience) with one slight necessary clarification (pointed out by Alex).

Clarification:

The restriction that links cannot cross serializable scope boundaries is now no longer needed. Since serializable scopes are now impermeable, such links cannot cause deadlock. The proposal therefore is to eliminate this restriction. This was already implied in the previous proposal implicitly.

Original proposal restated: The core problem in Issue 1 is that we have no way to control the firing of links in cases where the source activity may be compensated after the link has fired and thus "revoke the promise" of prerequisite fulfillment that the link may represent.

The proposal is to strengthen the meaning of "variableAccessSerializable" to also control the visibility of link status, by attaching the meaning of isolation to the attribute. In order to reflect this we propose that the name of the attribute be changed to "isolated". Thus we would have

   <scope isolated="yes"> <!-- serializable, non-permeable -->
       <faultHandlers ...> ... </faultHandlers>
       <compensationHandler ...> ... </compensationHandler>
       ...
   </scope>

<scope isolated="no"> <!-- non-serializable, permeable --> <faultHandlers ...> ... </faultHandlers> <compensationHandler ...> ... </compensationHandler> ... </scope>

Where a scope is said to be permeable if link status can travel freely across its boundaries as in the present specification. The status of links leaving (source inside target outside) a non-permeable scope will not be visible at the target until the scope completes, whether successfully or unsuccessfully. If the scope completes unsuccessfully, the status of links leaving the scope is false regardless of what it was at the time the source activity completed. There is no change for links entering (source outside target inside) the non-permeable scope.

Note that this gives the BPEL process designer the discretion to use isolated="no" when s/he cares to protect the target from revocable promises. The downside of the protection is potential loss of concurrency.
Links: Announcement, 25 Jun 2003     Satish Thatte, 15 Sep 2003     Discussed at Redmond face-to-face - Dieter's presentation (document details)     Ricky Ho, 25 Sep 2003     Satish Thatte, 17 Mar 2004     Reversible and Permeable Scopes v2.ppt (document details)     Satish Thatte, 16 Mar 2004     Danny van der Rijn, 16 Mar 2004     Yaron Y. Goland, 18 Mar 2004     Satish Thatte, 18 Mar 2004     Frank Leymann, 19 Mar 2004     Discussed at Walldorf f-t-f (document details)     GORAN.OLSSON@ORACLE.COM, 28 Apr 2004     Satish Thatte, 29 Apr 2004     Nickolas Kavantzas, 7 May 2004     Proposed resolution (Satish Thatte, 7 Jun 2004)     Proposed resolution (Satish Thatte, 18 Jun 2004)     Issues 1 and 10.ppt (document details)
Changes: 4 Jul 2003 - fields: Document;    11 Sep 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    18 Sep 2003 - fields: Links;    26 Sep 2003 - fields: Links;    17 Mar 2004 - fields: Links;    19 Mar 2004 - fields: Links;    22 Apr 2004 - fields: Links;    29 Apr 2004 - fields: Links;    8 May 2004 - fields: Links;    9 Jun 2004 - fields: Links, Status, Proposed resolution;    16 Jun 2004 - fields: Categories;    18 Jun 2004 - fields: Links, Status, Proposed resolution;    23 Jun 2004 - fields: Links, Status, Proposed resolution, Resolution;    6 Oct 2004 - fields: In spec


Issue 2: Sub-Functions

Status: resolution proposed
Date added: 25 Jun 2003
Categories: Subprocesses, State management
Origin: Initial requirements log, item 2 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Champion: Ivana Trickovic
Document: BPEL specification
Description:
A mechanism is needed that provides the capability to package standard bits of BPEL functionality and call them as sub-processes from within another BPEL process. Data to be exchanged between the calling process and the sub-processes is via parameter passing. Two mechanisms are proposed: a <call> activity that invokes the sub-process and waits until the sub-process has completed and a <spawn> activity that creates an instance of the sub-process with its own lifecycle and continues without waiting for the new instance to complete.
Qualifier: requirement
Proposed resolution: Ivana Trickovic, 24 Nov 2004
Links: Announcement, 25 Jun 2003     Eckenfels. Bernd, 22 Jul 2003     Kevin Liu, 22 Jul 2003     Assaf Arkin, 23 Jul 2003     Ivana Trickovic, 29 Oct 2003     Yaron Goland, 29 Oct 2003     Edwin Khodabakchian, 29 Oct 2003     Yaron Goland, 29 Oct 2003     Chris Keller, 30 Oct 2003     Nickolas Kavantzas, 30 Oct 2003     Ron Ten-Hove, 30 Oct 2003     Harvey Reed, 30 Oct 2003     Ron Ten-Hove, 30 Oct 2003     Harvey Reed, 30 Oct 2003     Ron Ten-Hove, 30 Oct 2003     Yaron Goland, 30 Oct 2003     Yaron Goland, 30 Oct 2003     Yaron Goland, 31 Oct 2003     Yaron Goland, 31 Oct 2003     Frank Leymann, 31 Oct 2003     Harvey Reed, 31 Oct 2003     Ivana Trickovic, 31 Oct 2003     Yaron Goland, 31 Oct 2003     Ron Ten-Hove, 1 Nov 2003     Yaron Goland, 3 Nov 2003     Yaron Goland, 3 Nov 2003     Yaron Goland, 3 Nov 2003     Satish Thatte, 5 Nov 2003     Satish Thatte, 5 Nov 2003     Ugo Corda, 5 Nov 2003     Satish Thatte, 6 Nov 2003     Ron Ten-Hove, 6 Nov 2003     Ugo Corda, 6 Nov 2003     Harvey Reed, 6 Nov 2003     Ron Ten-Hove, 7 Nov 2003     Ugo Corda, 7 Nov 2003     Ron Ten-Hove, 7 Nov 2003     Ron Ten-Hove, 7 Nov 2003     Harvey Reed, 7 Nov 2003     Monica J. Martin, 10 Nov 2003     Ivana Trickovic, 10 Nov 2003     Eckenfels. Bernd, 12 Nov 2003     Ugo Corda, 12 Nov 2003     Ivana Trickovic, 14 Nov 2003     Yaron Goland, 25 Nov 2003     Edwin Khodabakchian, 25 Nov 2003     Assaf Arkin, 25 Nov 2003     Harvey Reed, 25 Nov 2003     Ron Ten-Hove, 25 Nov 2003     Ivana Trickovic, 26 Nov 2003     Peter Furniss, 26 Nov 2003     Eckenfels. Bernd, 26 Nov 2003     Post-Melbourne discussion on coordination questions is under issue 30 issue 30     Proposed resolution (Yaron Y. Goland, 16 Jun 2004)     Dieter Koenig1, 17 Jun 2004     Satish Thatte, 18 Jun 2004     Discussed at San Francisco f-t-f     Ivana Trickovic, 21 Jul 2004     Satish Thatte, 21 Jul 2004     Ivana Trickovic, 22 Jul 2004     Frank.Leymann@t-online.de, 23 Jul 2004     Yaron Y. Goland, 23 Jul 2004     Ivana Trickovic, 4 Aug 2004     Ivana Trickovic, 4 Aug 2004     Yaron Y. Goland, 6 Aug 2004     Ivana Trickovic, 27 Aug 2004     Yaron Y. Goland, 9 Sep 2004     Proposed resolution (Ivana Trickovic, 15 Sep 2004)     Ivana Trickovic, 21 Sep 2004     Ivana Trickovic, 23 Sep 2004     Maciej Szefler, 25 Sep 2004     Ivana Trickovic, 28 Sep 2004     Peter Furniss, 28 Sep 2004     Maciej Szefler, 28 Sep 2004     Maciej Szefler, 28 Sep 2004     Chris Keller, 29 Sep 2004     Proposed resolution (Ivana Trickovic, 24 Nov 2004)     Ivana Trickovic, 8 Dec 2004     Satish Thatte, 9 Dec 2004
Changes: 4 Jul 2003 - fields: Document;    22 Jul 2003 - fields: Links;    23 Jul 2003 - fields: Links;    24 Jul 2003 - fields: Links;    31 Jul 2003 - fields: Champion;    30 Oct 2003 - fields: Links;    31 Oct 2003 - fields: Links;    1 Nov 2003 - fields: Links;    3 Nov 2003 - fields: Links;    5 Nov 2003 - fields: Links;    6 Nov 2003 - fields: Links;    7 Nov 2003 - fields: Links;    8 Nov 2003 - fields: Links;    10 Nov 2003 - fields: Links;    12 Nov 2003 - fields: Links;    13 Nov 2003 - fields: Links;    16 Nov 2003 - fields: Links;    26 Nov 2003 - fields: Links;    9 Dec 2003 - fields: Links;    2 Jun 2004 - fields: Champion;    16 Jun 2004 - fields: Links, Status, Proposed resolution;    17 Jun 2004 - fields: Links;    19 Jun 2004 - fields: Links;    24 Jun 2004 - fields: Links;    21 Jul 2004 - fields: Links;    22 Jul 2004 - fields: Links;    23 Jul 2004 - fields: Links;    4 Aug 2004 - fields: Links;    7 Aug 2004 - fields: Links;    27 Aug 2004 - fields: Links;    9 Sep 2004 - fields: Links;    16 Sep 2004 - fields: Links, Status, Proposed resolution;    21 Sep 2004 - fields: Links;    23 Sep 2004 - fields: Links;    27 Sep 2004 - fields: Links;    29 Sep 2004 - fields: Links;    30 Sep 2004 - fields: Links;    24 Nov 2004 - fields: Links, Status, Proposed resolution;    8 Dec 2004 - fields: Links;    10 Dec 2004 - fields: Links

Issue 3: Current state influence in compensation handlers

Status: resolved
In spec: 4 June 2004
Date added: 25 Jun 2003
Origin: Initial requirements log, item 3 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Champion: Satish Thatte
Document: BPEL specification
Description:
Compensation handlers currently only see the data in the state of the process as it existed when the scope completed. There is a need to have the current state available within compensation handlers. It is proposed to have parameters for compensation handlers where the parameters represent inward and outward flow for current state data.
Qualifier: requirement
Proposed resolution: Satish Thatte, 12 Oct 2003
Resolution: Proposed in Satish Thatte, 12 Oct 2003, approved at TC conf call meeting, 29 Oct 2003 (document details)

Following is extracted from proposal message.

The relevant text in Section 13.3.1 will be replaced with the following, with appropriate editing (the picture (see attachment to proposal message) would also be included in the specification):

Compensation handlers always interact with the current state of the process, specifically the state of variables declared in their associated scope and all enclosing scopes. The variables include partnerLinks at the process scope. Compensation handlers are able to both get and set the values of all such variables. Other parts of the process will see the changes made to shared variables by compensation handlers, and conversely, compensation handlers will see changes made to shared variables by other parts of the process, including situations where a compensation handler runs concurrently with other parts of the process. Compensation handlers will need to use serializable scopes when they touch state in enclosing scopes to avoid interference.

The current state of the process consists of the current local state of all scopes that have been started. This includes scopes that have completed but for which the associated compensation handler has not been invoked. For completed uncompensated scopes their current local state is the state as it was at the time of completion. Such scopes are in suspended animation because their compensation handlers are still available and therefore their execution may continue in compensation mode. Note that a scope may have been executed several times in a loop, and the current state of the process includes the state of each completed (and uncompensated) iteration through the scope.

The behavior of a compensation handler can be thought of as an optional continuation of the behavior of the associated scope and as such its usage of variables is similar to the usage that occurred in the body of the scope itself, including update actions. This includes variables in both the local scope and all enclosing scopes. Note that the compensation handler may itself have been called from an enclosing compensation handler. It will then share the continuation of the state of the enclosing scope that its caller is using. In the attached picture showing three nested scopes S1, S2 and S3, and their compensation handlers C1, C2, C3, and failure handlers F1 and F2, we may have an error handling call stack F1->C2->C3. In that case C3 will share the state of S2 as it is being seen and used by C2.


Links: Announcement, 25 Jun 2003     Peter Furniss, 7 Aug 2003     Discussed at meeting, 6 August (document details)     Satish Thatte, 15 Sep 2003     Discussed at Redmond face-to-face - Satish's presentation (document details)     sub points identified in discussion     Proposal for discussion (Satish Thatte, 8 Oct 2003)     Satish Thatte, 8 Oct 2003     jim@parasoft.com, 8 Oct 2003     Yaron Goland, 8 Oct 2003     Satish Thatte, 8 Oct 2003     Harvey Reed, 8 Oct 2003     Edwin Khodabakchian, 8 Oct 2003     Yaron Goland, 8 Oct 2003     Edwin Khodabakchian, 8 Oct 2003     Satish Thatte, 8 Oct 2003     Danny van der Rijn, 8 Oct 2003     Assaf Arkin, 9 Oct 2003     Satish Thatte, 9 Oct 2003     jim@parasoft.com, 10 Oct 2003     Satish Thatte, 10 Oct 2003     Assaf Arkin, 11 Oct 2003     Satish Thatte, 11 Oct 2003     Proposed resolution (Satish Thatte, 12 Oct 2003)     Aniruddha Thakur, 28 Oct 2003     Satish Thatte, 29 Oct 2003     Aniruddha Thakur, 29 Oct 2003     Muruga Chinnananchi, 28 Jan 2004     Muruga Chinnananchi, 29 Jan 2004     Satish Thatte, 1 Feb 2004
Changes: 4 Jul 2003 - fields: Document;    7 Aug 2003 - fields: Links, Links;    10 Sep 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    18 Sep 2003 - fields: Links;    8 Oct 2003 - fields: Links;    9 Oct 2003 - fields: Links;    11 Oct 2003 - fields: Links;    12 Oct 2003 - fields: Links, Proposed resolution, Status;    29 Oct 2003 - fields: Links;    4 Nov 2003 - fields: Status, Resolution;    2 Feb 2004 - fields: Links;    9 Jun 2004 - fields: In spec

Issue 4: Dynamic parallel processing

Status: open
Date added: 25 Jun 2003
Categories: Asynchronous operations
Origin: Initial requirements log, item 4 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Champion: Ivana Trickovic
Document: BPEL specification
Description:
BPEL only supports the invocation of a single web service within an invoke activity. In many situations it is required that a particular invoke activity results in the creation of many activity instances where the number of instances is not know at design time but is calculated at runtime from the contents of a set of data or references. All instances are carried out in parallel and must be synchronized for completion of the activity. Typical example for this type of processing is the sending of a request to a number of services. Processing of such an activity includes fanning out the requests, collecting the results of the requests, and determining the overall (combined) result of the different requests.
Qualifier: requirement
Links: Announcement, 25 Jun 2003     Yaron Y. Goland, 25 Mar 2004     Ivana Trickovic, 31 Mar 2004
Changes: 4 Jul 2003 - fields: Document;    31 Jul 2003 - fields: Champion;    25 Mar 2004 - fields: Links;    31 Mar 2004 - fields: Links;    2 Jun 2004 - fields: Champion

Issue 5: Suspend/resume

Status: resolved
In spec: no change
Date added: 25 Jun 2003
Origin: Initial requirements log, item 5 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Document: BPEL specification
Description:
Sometimes it is necessary to suspend (halt) the execution of a business process for some time or until explicitly resumed by an appropriate action. The suspend/resume type of activities are mainly intended to be used in event handlers to suspend and resume the processing of either the complete business process or of a particular scope only.
Qualifier: requirement
Resolution: Proposed in Dieter Koenig1, 19 Jan 2004, decided 4 February 2004 con call

Close with no change to the specification.
Rationale: Suspend/resume appears to be out of scope for a first release. Furthermore, it seems that suspend/resume might as well be handled by the infrastructure and therefore outside of the process model.
Links: Announcement, 25 Jun 2003     Peter Furniss, 22 Oct 2003     Tony Fletcher, 23 Oct 2003     Proposed resolution (Dieter Koenig1, 19 Jan 2004)     Peter Furniss, 26 Jan 2004
Changes: 4 Jul 2003 - fields: Document;    22 Oct 2003 - fields: Links;    23 Oct 2003 - fields: Links;    20 Jan 2004 - fields: Links;    26 Jan 2004 - fields: Links, Status, Proposed resolution;    11 Feb 2004 - fields: Status, Proposed resolution, Resolution, Rationale


Issue 6: Completion Condition

Status: open
Date added: 25 Jun 2003
Categories: Expressions, State management
Origin: Initial requirements log, item 6 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Document: BPEL specification
Description:
A set of parallel activities is treated as finished if all activities have been completed. In many cases the process does not need to wait for all the concurrent activities to finish for the overall objective to be reached. There should be a way to express the "completion" of the desired objective, causing termination of all "unnecessary" concurrent activities.
Qualifier: requirement
Proposed resolution: Satish Thatte, 17 Sep 2004
Links: Announcement, 25 Jun 2003     Yaron Y. Goland, 27 Aug 2004     Danny van der Rijn, 27 Aug 2004     andrew.francis@elf.mcgill.ca, 27 Aug 2004     Ron Ten-Hove, 27 Aug 2004     Ron Ten-Hove, 27 Aug 2004     Yaron Y. Goland, 27 Aug 2004     Yaron Y. Goland, 27 Aug 2004     Edwin Khodabakchian, 28 Aug 2004     andrew.francis@elf.mcgill.ca, 28 Aug 2004     Satish Thatte, 31 Aug 2004     Alex Yiu, 1 Sep 2004     Ivana Trickovic, 1 Sep 2004     Axel Martens, 1 Sep 2004     Danny van der Rijn, 1 Sep 2004     Ivana Trickovic, 1 Sep 2004     Axel Martens, 1 Sep 2004     Danny van der Rijn, 1 Sep 2004     Francisco Curbera, 2 Sep 2004     Alex Yiu, 3 Sep 2004     Ivana Trickovic, 8 Sep 2004     Ivana Trickovic, 8 Sep 2004     Alex Yiu, 10 Sep 2004     Alex Yiu, 10 Sep 2004     Axel Martens, 10 Sep 2004     Axel Martens, 10 Sep 2004     Alex Yiu, 10 Sep 2004     , 11 Sep 2004     Ivana Trickovic, 11 Sep 2004     Ivana Trickovic, 11 Sep 2004     , 13 Sep 2004     Alex Yiu, 13 Sep 2004     Dieter Koenig1, 13 Sep 2004     Ivana Trickovic, 13 Sep 2004     Yaron Y. Goland, 13 Sep 2004     Ivana Trickovic, 13 Sep 2004     Ivana Trickovic, 13 Sep 2004     Yaron Y. Goland, 13 Sep 2004     Yaron Y. Goland, 13 Sep 2004     Alex Yiu, 14 Sep 2004     Alex Yiu, 14 Sep 2004     Dieter Koenig1, 14 Sep 2004     Alex Yiu, 14 Sep 2004     Ivana Trickovic, 14 Sep 2004     Ivana Trickovic, 14 Sep 2004     Dieter Koenig1, 14 Sep 2004     Axel Martens, 14 Sep 2004     Ivana Trickovic, 14 Sep 2004     Yaron Y. Goland, 16 Sep 2004     Danny van der Rijn, 16 Sep 2004     Proposed resolution (Satish Thatte, 17 Sep 2004)     Yaron Y. Goland, 17 Sep 2004     Danny van der Rijn, 17 Sep 2004     Yaron Y. Goland, 17 Sep 2004     Danny van der Rijn, 18 Sep 2004     Assaf Arkin, 18 Sep 2004     Frank Leymann, 19 Sep 2004     Satish Thatte, 19 Sep 2004     Frank Leymann, 19 Sep 2004     Satish Thatte, 20 Sep 2004     Peter Furniss, 20 Sep 2004     Peter Furniss, 20 Sep 2004     Satish Thatte, 20 Sep 2004     Satish Thatte, 20 Sep 2004     Satish Thatte, 20 Sep 2004     Peter Furniss, 20 Sep 2004     Danny van der Rijn, 20 Sep 2004     Satish Thatte, 20 Sep 2004     Peter Furniss, 21 Sep 2004     Yaron Y. Goland, 27 Sep 2004     Danny van der Rijn, 27 Sep 2004     Assaf Arkin, 28 Sep 2004     Proposal withdrawn, conf call 8 Dec 2004     Alex Yiu, 3 Sep 2004
Changes: 4 Jul 2003 - fields: Document;    27 Aug 2004 - fields: Links;    30 Aug 2004 - fields: Links;    31 Aug 2004 - fields: Links;    1 Sep 2004 - fields: Links;    2 Sep 2004 - fields: Links;    4 Sep 2004 - fields: Links;    8 Sep 2004 - fields: Links;    10 Sep 2004 - fields: Links;    11 Sep 2004 - fields: Links;    13 Sep 2004 - fields: Links;    14 Sep 2004 - fields: Links;    16 Sep 2004 - fields: Links;    18 Sep 2004 - fields: Status, Proposed resolution, Links;    20 Sep 2004 - fields: Links;    21 Sep 2004 - fields: Links;    27 Sep 2004 - fields: Links;    28 Sep 2004 - fields: Links;    8 Dec 2004 - fields: Status, Links;    20 Dec 2004 - fields: Links

Issue 7: Import

Status: resolved
In spec: 4 June 2004
Date added: 25 Jun 2003
Origin: Initial requirements log, item 7 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Champion: Francisco Curbera
Document: BPEL specification
Description:
Provide an import mechanism, just like WSDL, to include WSDL definitions and XSD schemas that a process is dependent on.
Qualifier: requirement
Resolution: Proposed in Francisco Curbera, 30 Sep 2003, with modifications in Kevin Liu, 1 Oct 2003, decided in meeting 15 October, with further modification, summarised in Francisco Curbera, 16 Oct 2003, later corrected

Introduce a single <bpel:import> element used to import XSD, WSDL definitions. Zero or more <bpel:import> elements may appear as first children of the <bpel:process> element. Three required attributes must be:

For example:

	<bpel:import namespace="..."  location="document-location" importType="XYZ-namespace-uri"/>
A <bpel:import> location element will be interpreted as a hint for BPEL processors. In particular, processors are not required to retrieve the imported document from the specified location.
Links: Announcement, 25 Jun 2003     Discussed at meeting, 6 August (document details)     Francisco Curbera, 12 Sep 2003     Eckenfels. Bernd, 12 Sep 2003     Chris Keller, 12 Sep 2003     Francisco Curbera, 12 Sep 2003     Discussed at Redmond face-to-face     Proposed resolution (Francisco Curbera, 30 Sep 2003)     Yaron Goland, 30 Sep 2003     Kevin Liu, 1 Oct 2003     Francisco Curbera, 1 Oct 2003     Francisco Curbera, 1 Oct 2003     Approved resolution (Francisco Curbera, 16 Oct 2003)     Ivana Trickovic, 16 Oct 2003     Tony Fletcher, 20 Oct 2003     Ugo Corda, 20 Oct 2003     Danny van der Rijn, 20 Oct 2003     Yaron Goland, 20 Oct 2003
Changes: 4 Jul 2003 - fields: Document;    7 Aug 2003 - fields: Links;    10 Sep 2003 - fields: Champion;    12 Sep 2003 - fields: Links;    18 Sep 2003 - fields: Links;    1 Oct 2003 - fields: Status, Links, Proposed resolution, Vote announcement;    8 Oct 2003 - fields: Vote announcement;    15 Oct 2003 - fields: Status, Proposed resolution, Vote announcement, Resolution;    16 Oct 2003 - fields: Links, Resolution;    20 Oct 2003 - fields: Links;    21 Oct 2003 - fields: Links;    9 Jun 2004 - fields: In spec

Issue 8: Non-mutability of correlation sets

Status: resolved
In spec: No change
Date added: 25 Jun 2003
Categories: Correlation
Origin: Initial issue log, item 1 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Champion: Satish Thatte
Document: BPEL specification
Description:
The value of a correlation set once initialized is immutable, but this does not apply to the individual properties in the set, which may be shared with other sets. Thus the set should be thought of as a late-bound constant as a whole. The properties are just means of defining it. Questions: How much checking can be done at definition time and how much at execution time? Do we need a runtime fault?
Qualifier: clarification
Resolution: Proposed verbally by Satish Thatte and decided at San Francisco f-t-f

Close with no change to the spec.
Rationale: The ambiguity originally perceived is no longer felt to be there. Any clarification needed will be treated as an editorial matter.
Links: Announcement, 25 Jun 2003     Discussed at meeting, 6 August (document details)     Discussed at Redmond face-to-face
Changes: 4 Jul 2003 - fields: Document;    7 Aug 2003 - fields: Links;    10 Sep 2003 - fields: Champion;    18 Sep 2003 - fields: Links;    22 Jun 2004 - fields: Status, Proposed resolution, Resolution, Rationale, In spec


Issue 9: Static analysis

Status: resolution proposed
Date added: 25 Jun 2003
Categories: Syntax and validation
Origin: Initial issue log, item 2 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Document: BPEL specification
Description:
Static analysis is a well-established technique to support robust design and implementation practice. The specification permits that static analysis may reject a BPEL process definition, depending on how pessimistic the static analysis is. As a result, some BPEL definitions may not be portable between different BPEL implementations.

Question: Is it possible to define a conservative set of restrictions that will ensure portability?
Proposed resolution: Yaron Y. Goland, 17 Sep 2004
Links: Announcement, 25 Jun 2003     Chris Keller, 7 Oct 2003     Eckenfels. Bernd, 7 Oct 2003     Chris Keller, 7 Oct 2003     Yaron Goland, 7 Oct 2003 (links previous 3 msgs to this issue)     Yaron Y. Goland, 9 Apr 2004     Yaron Y. Goland, 12 Aug 2004     John Evdemon, 13 Aug 2004     Yaron Y. Goland, 13 Aug 2004     John Evdemon, 16 Aug 2004     Alex Yiu, 17 Aug 2004     Yaron Y. Goland, 18 Aug 2004     Satish Thatte, 24 Aug 2004     Yaron Y. Goland, 24 Aug 2004     Proposed resolution (Yaron Y. Goland, 16 Sep 2004)     Assaf Arkin, 16 Sep 2004     Proposed resolution (Yaron Y. Goland, 17 Sep 2004)
Changes: 4 Jul 2003 - fields: Document;    8 Oct 2003 - fields: Links;    10 Apr 2004 - fields: Links;    13 Aug 2004 - fields: Links;    14 Aug 2004 - fields: Links;    17 Aug 2004 - fields: Links;    18 Aug 2004 - fields: Links;    24 Aug 2004 - fields: Links;    16 Sep 2004 - fields: Links, Status, Proposed resolution;    17 Sep 2004 - fields: Links, Status, Proposed resolution


Issue 10: Serialization of compensation

Status: resolved
In spec: 19 Nov 2004
Date added: 25 Jun 2003
Categories: Compensation
Origin: Initial issue log, item 3 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Champion: Dieter Roller
Document: BPEL specification
Description:
describe exactly how compensation handlers are invoked, including concurrency, especially in the case of default behavior.
Qualifier: clarification
Original resolution: Proposed in Satish Thatte, 20 Jun 2004, decided at San Francisco f-t-f

Informally, we propose that default compensation order need only respect the control dependencies that are explicitly modeled. With the resolution of issue 1, it is far from easy to emulate strict reverse order of completion with explicit fault and compensation handlers. But with the proposed resolution of Issue 10 here, that does not matter since strict reverse order is permitted but not mandated for the default behavior. This does require an additional restriction on links to ban reentrant control paths, as described below more formally.

Definition: Control Dependency. If an activity A must complete before activity B begins, as a result of the existence of a control path from A to B in the process definition, then we say that B has a control dependency on A. Note that control dependencies may occur due to control links in <flow> as well as due to constructs like <sequence>. Control flow due to explicit "throw" is not considered a control dependency.

Part I: Consider scopes A and B such that B has a control dependency on A. Assuming both A and B completed successfully and both must be compensated as part of default compensation behavior, the compensation handler of B must run to completion before the compensation handler of A is started. This permits scopes that executed concurrently on the forward path to also be compensated concurrently in the reverse path. Of course, if one follows the strict reverse order of completion, then that necessarily respects control dependencies and is also consistent with this rule. The rule imposes a constraint on the order in which compensation handlers run during default compensation, and is not meant to be fully prescriptive about the exact order and concurrency.

Definition: Reentrant control path. Consider activities A and B enclosed in a scope S, such that B has a control dependency on A. The control path from A to B is said to be reentrant if it includes an activity C that is outside scope S, i.e., there is an activity C outside scope S such that C has a control dependency on A and B has a control dependency on C. Informally, such a reentrant path starts at A, "leaves scope S" to reach activity C and then "reenters scope S" to reach activity B. Note that reentrant control paths always involve links, at the least, one to leave the scope and one to reenter the scope.

Part II (this was NOT part of the original resolution of this issue, but was kept here for documentary completeness. It is the subject of the second resolution proposal in Satish Thatte, 8 Sep 2004): It is necessary to be able to define the default compensation behavior of a given scope independent of its peer and enclosing scopes. One reason is that such a default compensation handler may be invoked explicitly by the fault and compensation handlers of its enclosing scope. However, there are currently legal cases where the proposed resolution in Part I makes this impossible. One such example is attached. We propose to resolve this by banning reentrant control paths. This restriction would be added to the list of restrictions on links at the end of section 12.5. Clarifying note: all reentrant control paths are banned according to this proposal, whether or not they involve scope activities.

Part III: Given that compensation handlers may run concurrently with other activities including other compensation handlers, it is necessary to allow compensation handlers to use isolation scope semantics. Compensation handlers do not run within the isolation domain of their associated scopes, but fault handlers do. This creates difficulties in the isolation semantics of compensation handlers for scopes nested inside a serializable scope. Such handlers cannot use serializable scopes themselves because serializable scopes cannot be nested. However, their isolation environment is uncertain because they may be invoked from either a fault handler within the isolation domain of their enclosing scope or within the compensation handler of the same enclosing scope which is not in that isolation domain. In order to improve consistency of behavior, we propose that the compensation handler of a serializable scope will itself have serializable behavior implicitly, although it will create a separate isolation domain from that of its associated scope.

Two new issues will be raised

  1. define re-entrancy fully
  2. define the nature of isolation fully

Revised resolution: Proposed in Satish Thatte, 8 Sep 2004, decided at conf call, 15 Sept 2004

Replacing part II of original resolution

I begin with a formal restatement for Part II of the resolution of Issue 10.  I will then add some explanation.

Definition: Peer-Scopes.  Two scopes S1 and S2 are said to be peer scopes if they are both directly nested within the same parent scope (including process scope).  

Definition:  Scope-controlled set.  An activity A is within the scope-controlled set of activities of scope S if either A is S itself, or A is nested within S, at any depth.

Definition:  Peer-Scope Dependency.  If S1 and S2 are peer scopes then we say that S2 has a direct peer-scope dependency on S1 if there is an activity B within the scope-controlled set of S2 and an activity A within the scope-controlled set of S1 such that B has a control dependency on A.  The peer-scope dependency relation is the transitive closure of the direct peer-scope dependency relation.

Part II:  The peer-scope dependency relation MUST NOT include cycles.  In other words, BPEL forbids a process in which there are peer scopes S1 and S2 such that S1 has a peer-scope dependency on S2 and S2 has a peer-scope dependency on S1.

Explanation: 

The basic motivation for Part II is to make the "respect for control dependency" rule of Part I consistent with a depth-first traversal of the scope tree for default compensation.  If we can guarantee that there is a depth-first (post-order variant) traversal consistent with Part I, we no longer have any difficulty in defining default compensation of any scope, since depth-first order implies that such compensation is only dependent on the compensation of its nested scopes.  The question then reduces to constraining control paths so we can make this guarantee.  I claim that we need only concern ourselves about control dependencies between peer scopes in the sense defined above.  An example illustrates the point. Consider the following example (taken from an earlier exchange with Alex)

<scope name="s0"> 
        <scope name="s1">
            <flow> 
                <anActivity> <source linkName="lnk1" /> </anActivity> 
                <!-- Assume that the above anActitity does not contain a 
                     scope activity -->
                <scope name="s2">
                    <target linkName="lnk1" /> 
                </scope>
            </flow>
        </scope> 
</scope> 

Does the link create a dependency between s1 and s2 that has any relevance to compensation order?  If this example is changed to

<scope name="s0"> 
        <scope name="s1">
            <flow> 
                <scope name="s7"> 
                    <source linkName="lnk1" /> 
                </scope> 
                <scope name="s2">
                    <target linkName="lnk1" /> 
                </scope>
            </flow>
        </scope> 
</scope> 

Does the situation change?  The only difference between the examples is that, whereas s1 was theoretically responsible for the compensation of the previous generic anActivity (since we assumed it does not contain a scope), it's replacement scope is an activity that is responsible for its own compensation.  But let us look further.  If we think about default compensation behavior for s1 it is going to do absolutely nothing about compensating any non-scope activities nested inside it.  Thus the fact that fact that s1 was theoretically responsible for the compensation of the generic anActivity has no consequence regarding a required ordering of compensation between s1 and s2.  Part II exploits this point and its generalization to control chains and multiply nested scopes.
Links: Announcement, 25 Jun 2003     Satish Thatte, 15 Sep 2003     Sid Askary, 9 Dec 2003     Yaron Goland, 11 Dec 2003     Satish Thatte, 12 Dec 2003     Yaron Goland, 12 Dec 2003     Assaf Arkin, 12 Dec 2003     Satish Thatte, 12 Dec 2003     Satish Thatte, 12 Dec 2003     Assaf Arkin, 12 Dec 2003     Yaron Goland, 23 Dec 2003     Ugo Corda, 23 Dec 2003     Yaron Goland, 24 Dec 2003     Ugo Corda, 24 Dec 2003     Satish Thatte, 30 Dec 2003     Ron Ten-Hove, 31 Dec 2003     Yaron Goland, 5 Jan 2004     Assaf Arkin, 7 Jan 2004     Danny van der Rijn, 7 Jan 2004     Peter Furniss, 7 Jan 2004     Satish Thatte, 7 Jan 2004     Satish Thatte, 17 Mar 2004     Reversible and Permeable Scopes v2.ppt (document details)     Satish Thatte, 16 Mar 2004     Danny van der Rijn, 16 Mar 2004     Yaron Y. Goland, 18 Mar 2004     Satish Thatte, 18 Mar 2004     Frank Leymann, 19 Mar 2004     Discussed at Walldorf f-t-f (document details)     Satish Thatte, 18 Jun 2004     Proposed resolution (Satish Thatte, 18 Jun 2004)     Proposed resolution (Satish Thatte, 20 Jun 2004)     Issues 1 and 10.ppt (document details)     Yaron Y. Goland, 19 Aug 2004     Satish Thatte, 19 Aug 2004     Alex Yiu, 19 Aug 2004     Alex Yiu, 19 Aug 2004     Danny van der Rijn, 20 Aug 2004     Satish Thatte, 20 Aug 2004     Yaron Y. Goland, 24 Aug 2004     Satish Thatte, 24 Aug 2004     Yaron Y. Goland, 26 Aug 2004     Satish Thatte, 30 Aug 2004     Satish Thatte, 8 Sep 2004     Proposed resolution (Satish Thatte, 8 Sep 2004)     Peter Furniss, 9 Sep 2004     Dieter Koenig1, 13 Sep 2004
Changes: 4 Jul 2003 - fields: Document;    10 Sep 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    10 Dec 2003 - fields: Links;    23 Dec 2003 - fields: Links;    7 Jan 2004 - fields: Links;    17 Mar 2004 - fields: Links;    19 Mar 2004 - fields: Links;    22 Apr 2004 - fields: Links;    18 Jun 2004 - fields: Links, Proposed resolution, Status;    20 Jun 2004 - fields: Links, Status, Proposed resolution;    23 Jun 2004 - fields: Links, Status, Proposed resolution, Resolution;    19 Aug 2004 - fields: Links;    22 Aug 2004 - fields: Links;    24 Aug 2004 - fields: Links;    26 Aug 2004 - fields: Links;    30 Aug 2004 - fields: Links;    8 Sep 2004 - fields: Links, Status, Proposed resolution;    9 Sep 2004 - fields: Links;    13 Sep 2004 - fields: Links;    15 Sep 2004 - fields: Status, Proposed resolution, Revised resolution;    19 Nov 2004 - fields: In spec


Issue 11: Query in <to> close should allow assigning to new locations

Status: open
Date added: 25 Jun 2003
Categories: Data handling, Correlation
Origin: Initial issue log, item 4 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Champion: Danny van der Rijn
Document: BPEL specification
Description:
Is Assignment too restrictive? In particular, should it allow creation of nodes in cases where they are absent? There are situations where a process needs to construct a set of results. This requires using the query attribute in the <to-spec> to specify the next insertion location. Currently, the specification requires that the run time should throw a fault in these cases.
Proposed resolution: Alex Yiu, 4 Jan 2005
Links: Announcement, 25 Jun 2003     Danny van der Rijn, 6 Aug 2003     Yaron Goland, 6 Aug 2003     Yaron Goland, 6 Aug 2003     Glenn Mi, 6 Aug 2003     Chris Keller, 6 Aug 2003     Edwin Khodabakchian, 6 Aug 2003     Danny van der Rijn, 6 Aug 2003     Edwin Khodabakchian, 6 Aug 2003     Danny van der Rijn, 6 Aug 2003     Danny van der Rijn, 6 Aug 2003     Ugo Corda, 6 Aug 2003     Chris Keller, 6 Aug 2003     Danny van der Rijn, 6 Aug 2003     Chris Keller, 6 Aug 2003     Chris Keller, 6 Aug 2003     Ugo Corda, 6 Aug 2003     Danny van der Rijn, 6 Aug 2003     David RR Webber, 7 Aug 2003     Yaron Goland, 7 Aug 2003     Danny van der Rijn, 7 Aug 2003     Ugo Corda, 7 Aug 2003     Danny van der Rijn, 7 Aug 2003     Danny van der Rijn, 7 Aug 2003     Danny van der Rijn, 7 Aug 2003     Ugo Corda, 7 Aug 2003     Harvey Reed, 7 Aug 2003     Yaron Goland, 8 Aug 2003     Yaron Goland, 8 Aug 2003     David RR Webber, 8 Aug 2003     Harvey Reed, 8 Aug 2003     Chris Keller, 8 Aug 2003     Danny van der Rijn, 8 Aug 2003     Yaron Goland, 8 Aug 2003     Danny van der Rijn, 8 Aug 2003     David RR Webber, 9 Aug 2003     Yaron Goland, 11 Aug 2003     David RR Webber, 12 Aug 2003     Danny van der Rijn, 12 Aug 2003     issue 48 : XML Transform Support     Chris Keller, 13 Aug 2003     Danny van der Rijn, 13 Aug 2003     Chris Keller, 13 Aug 2003     Danny van der Rijn, 13 Aug 2003     Chris Keller, 13 Aug 2003     Danny van der Rijn, 13 Aug 2003     Danny van der Rijn, 13 Aug 2003     Chris Keller, 13 Aug 2003     Danny van der Rijn, 13 Aug 2003     Chris Keller, 13 Aug 2003     Harvey Reed, 13 Aug 2003     Edwin Khodabakchian, 13 Aug 2003     Danny van der Rijn, 13 Aug 2003     Danny van der Rijn, 13 Aug 2003     Chris Keller, 13 Aug 2003     Danny van der Rijn, 13 Aug 2003     Danny van der Rijn, 18 Aug 2003     Chris Keller, 19 Aug 2003     Tony Andrews, 20 Aug 2003     Danny van der Rijn, 20 Aug 2003     Yaron Goland, 20 Aug 2003     Harvey Reed, 20 Aug 2003     Greg Ritzinger, 29 Aug 2003     Ron Ten-Hove, 29 Aug 2003     David RR Webber, 30 Aug 2003     David RR Webber, 30 Aug 2003     David RR Webber, 1 Sep 2003     Chris Keller, 2 Sep 2003     David RR Webber, 2 Sep 2003     Danny van der Rijn, 2 Sep 2003     Danny van der Rijn, 2 Sep 2003     Chris Keller, 2 Sep 2003     Danny van der Rijn, 2 Sep 2003     David RR Webber, 2 Sep 2003     Danny van der Rijn, 2 Sep 2003     Yaron Goland, 2 Sep 2003     Ron Ten-Hove, 2 Sep 2003     Ron Ten-Hove, 2 Sep 2003     Chris Keller, 2 Sep 2003     David RR Webber, 2 Sep 2003     David RR Webber, 3 Sep 2003     David RR Webber, 3 Sep 2003     Ron Ten-Hove, 30 Aug 2003     Ron Ten-Hove, 3 Sep 2003     David RR Webber, 3 Sep 2003     Danny van der Rijn, 3 Sep 2003     Satish Thatte, 4 Sep 2003     Chris Keller, 4 Sep 2003     Danny van der Rijn, 4 Sep 2003     Danny van der Rijn, 4 Sep 2003     Satish Thatte, 4 Sep 2003     David RR Webber, 5 Sep 2003     Chris Keller, 5 Sep 2003     Chris Keller, 5 Sep 2003     Monica Martin, 5 Sep 2003     Chris Keller, 5 Sep 2003     Monica Martin, 5 Sep 2003     Chris Keller, 5 Sep 2003     Danny van der Rijn, 5 Sep 2003     David RR Webber, 5 Sep 2003     David RR Webber, 5 Sep 2003     David RR Webber, 5 Sep 2003     Ugo Corda, 5 Sep 2003     Danny van der Rijn, 5 Sep 2003     Discussed at Redmond face-to-face     Danny van der Rijn, 3 Feb 2004     Edwin Khodabakchian, 3 Feb 2004     Pal Takacsi-Nagy, 3 Feb 2004     Edwin Khodabakchian, 3 Feb 2004     David RR Webber, 3 Feb 2004     Satish Thatte, 4 Feb 2004     Steve Capell, 4 Feb 2004     Alastair J. Green, 4 Feb 2004     David RR Webber, 4 Feb 2004     Peter Furniss, 4 Feb 2004     David RR Webber, 4 Feb 2004     Kristofer Agren, 5 Feb 2004     Danny van der Rijn, 13 Feb 2004     Monica J. Martin, 15 Feb 2004     David RR Webber, 15 Feb 2004     Diane Jordan, 16 Feb 2004     Diane Jordan, 16 Feb 2004     discussion and straw-poll, 18 Feb 2004 call     Danny van der Rijn, 18 Feb 2004     Danny van der Rijn, 18 Feb 2004     Glenn Mi, 19 Feb 2004     Danny van der Rijn, 19 Feb 2004     Danny van der Rijn, 23 Feb 2004     Danny van der Rijn, 23 Feb 2004     David RR Webber, 23 Feb 2004     Danny van der Rijn, 23 Feb 2004     David RR Webber, 23 Feb 2004     Kristofer Agren, 23 Feb 2004     Danny van der Rijn, 23 Feb 2004     Edwin Khodabakchian, 23 Feb 2004     Danny van der Rijn, 23 Feb 2004     Kristofer Agren, 23 Feb 2004     Alex Yiu, 23 Feb 2004     Danny van der Rijn, 24 Feb 2004     Alex Yiu, 24 Feb 2004     Alex Yiu, 26 Feb 2004     Yaron Y. Goland, 26 Feb 2004     David RR Webber, 26 Feb 2004     Edwin Khodabakchian, 26 Feb 2004     Monica J. Martin, 26 Feb 2004     Ron Ten-Hove, 26 Feb 2004     David RR Webber, 26 Feb 2004     Glenn Mi, 27 Feb 2004     Alex Yiu, 27 Feb 2004     Alex Yiu, 27 Feb 2004     Glenn Mi, 27 Feb 2004     Chris Keller, 27 Feb 2004     Yaron Y. Goland, 27 Feb 2004     Ron Ten-Hove, 27 Feb 2004     David RR Webber, 27 Feb 2004     David RR Webber, 27 Feb 2004     Alex Yiu, 27 Feb 2004     Chris Keller, 27 Feb 2004     Alex Yiu, 27 Feb 2004     Chris Keller, 27 Feb 2004     Alex Yiu, 28 Feb 2004     Monica J. Martin, 28 Feb 2004     Yaron Y. Goland, 1 Mar 2004     Alex Yiu, 2 Mar 2004     Danny van der Rijn, 2 Mar 2004     David RR Webber, 2 Mar 2004     Alex Yiu, 2 Mar 2004     Danny van der Rijn, 2 Mar 2004     Yaron Y. Goland, 2 Mar 2004     Edwin Khodabakchian, 3 Mar 2004     Alex Yiu, 3 Mar 2004     Ugo Corda, 3 Mar 2004     Alex Yiu, 3 Mar 2004     Kristofer Agren, 3 Mar 2004     David RR Webber, 3 Mar 2004     Ron Ten-Hove, 3 Mar 2004     Danny van der Rijn, 3 Mar 2004     David RR Webber, 3 Mar 2004     Danny van der Rijn, 3 Mar 2004     David RR Webber, 3 Mar 2004     David RR Webber, 16 Mar 2004     Danny van der Rijn, 25 Mar 2004     David RR Webber, 26 Mar 2004     Discussed at Walldorf f-t-f (document details)     discuessed on 28 April call (document details)     Peter Furniss, 5 May 2004     see rationale in issue 100     Proposed resolution (Alex Yiu, 4 Jan 2005)
Changes: 4 Jul 2003 - fields: Document;    7 Aug 2003 - fields: Links, Champion;    8 Aug 2003 - fields: Links;    9 Aug 2003 - fields: Links;    12 Aug 2003 - fields: Links;    13 Aug 2003 - fields: Links;    14 Aug 2003 - fields: Links;    19 Aug 2003 - fields: Links;    20 Aug 2003 - fields: Links, Proposed resolution;    29 Aug 2003 - fields: Links;    30 Aug 2003 - fields: Links;    3 Sep 2003 - fields: Links;    4 Sep 2003 - fields: Links;    8 Sep 2003 - fields: Links;    18 Sep 2003 - fields: Links;    3 Feb 2004 - fields: Links;    4 Feb 2004 - fields: Links;    5 Feb 2004 - fields: Links;    16 Feb 2004 - fields: Links;    18 Feb 2004 - fields: Links;    19 Feb 2004 - fields: Links;    25 Feb 2004 - fields: Links;    26 Feb 2004 - fields: Links;    27 Feb 2004 - fields: Links;    28 Feb 2004 - fields: Links;    1 Mar 2004 - fields: Links;    3 Mar 2004 - fields: Links;    4 Mar 2004 - fields: Links;    16 Mar 2004 - fields: Links;    26 Mar 2004 - fields: Links;    22 Apr 2004 - fields: Links;    29 Apr 2004 - fields: Status, Proposed resolution, Resolution;    5 May 2004 - fields: Status, Resolution, Links;    6 May 2004 - fields: Links;    23 Jun 2004 - fields: Links;    13 Sep 2004 - fields: Categories;    5 Jan 2005 - fields: Links, Status, Proposed resolution

Issue 11.1: Making <assign> truly extensible

Status: resolution proposed
Date added: 5 Jan 2005
Date split: 5 January 2005
Categories: Data handling, Correlation
Submitter: Alex Yiu
Champion: Alex Yiu
Document: BPEL specification
Description:

After have a discussion and straw-poll at the Hawthorne NY F2F, I believe that the timing is now appropriate for me to formally to open a new issue (sub issue) 11.1 to make <assign> truely extensible.


Background:

Currently, <assign> is an BPEL extensible activity element. That means people can potentially add some other construct under <assign> to denote some of operations that the spec do not define. (So, the other operations can be still under the same atomic assignment unit.)

However, the BPEL syntax grammar (including its XMLSchema) requires at least one <copy> under <assign>. That is:

<assign standard-attributes>
    standard-elements
    <copy>+
       from-spec
        to-spec
    </copy>
</assign>

That implies we cannot have just one extended operation under the <assign> syntax. E.g.:
<assign>
    <foo:barOperation ... /> 
</assign>

Due to the current usage of XML Schema definition, it also forces the extension element must appear before the <copy> element. E.g.: the following usage is disallowed by the current schema design:

<assign>
    <copy> ... </copy>
    <foo:barOperation ... /> 
</assign>

Proposed Solution:

In order to have the true spirit of extensibility of <assign> syntax, we would like to suggest the following syntax changes:

The <assign> construct contains one or more elementary data manipulation operations, which are <copy> or operations defined as extension under other namespaces.

<assign standard-attributes>
    standard-elements
    (
      <copy>
        from-spec
        to-spec
      </copy>   |
      any-element-of-other-namespace
    )+
</assign>

The <copy> operation copies a type-compatible value from the source ("from-spec") to the destination ("to-spec").

[Note: the above changes go into section 9.4, starting from second paragraph]

Related Schema Change: From:

-------------------------------------
    <complexType name="tAssign">
        <complexContent>
            <extension base="bpws:tActivity">
                <sequence>
                    <element name="copy" type="bpws:tCopy"
                             maxOccurs="unbounded"/>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
-------------------------------------
To: 
-------------------------------------
    <complexType name="tAssign"> 
        <complexContent> 
            <extension base="bpws:tActivity"> 
                <sequence minOccurs="0"> 
                    <element name="copy" type="bpws:tCopy" /> 
                    <choice minOccurs="0" maxOccurs="unbounded"> 
                        <element name="copy" type="bpws:tCopy" /> 
                        <any namespace="##other"
                             processContents="lax"/> 
                    </choice> 
                </sequence> 
            </extension> 
        </complexContent> 
    </complexType>
-------------------------------------

[Note: the XSD changes is not that straightforward because we want to avoid the non-deterministic choice content model problem due to XSD semantics and our current usage of its extension mechansim (tActivity). Also, due to similar restrictions from XSD, the constraint of at least one data manipulation operation cannot be enforced directly by the XSD itself. BPEL implementation needs to do its own validation post XSD validation, similar to the case of enforcing that only one of multiple optional attributes at <variable> declaration is used.]
Changes: 5 Jan 2005 - new issue


Issue 12: XML types and WS Interactions

Status: resolution proposed
Date added: 25 Jun 2003
Categories: Data handling
Origin: Initial issue log, item 5 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Document: BPEL specification
Description:
The specification currently disallows use of variables defined using XML schema types and elements in Web service interactions. In cases where WSDL message types have single parts defined using compatible XML types and elements, it should be possible to use such variables in WS interactions.
Proposed resolution: Yaron Y. Goland, 10 Dec 2004 Ron Ten-Hove, 10 Dec 2004
Links: Announcement, 25 Jun 2003     Discussed at Walldorf f-t-f (document details)     Proposed resolution (Yaron Y. Goland, 10 Dec 2004)     Ron Ten-Hove, 10 Dec 2004
Changes: 4 Jul 2003 - fields: Document;    22 Apr 2004 - fields: Links;    11 Dec 2004 - fields: Links, Status, Proposed resolution;    14 Dec 2004 - fields: Links

Issue 13: Future Usage of XPATH 2.0 and XQuery 1.0

Status: resolved
In spec: 4 June 2004
Date added: 25 Jun 2003
Origin: Initial issue log, item 6 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Champion: Francisco Curbera
Document: BPEL specification
Description:
The current specification mandates support for XPATH 1.0 and leaves the door open for other query and expression languages fir the future. XPATH 2.0 and XQuery 1.0 are the obvious future candidates. There are two related issues here.

A. Should we adjust the BPEL syntax (element rather than attribute content for XQuery) to prepare for the use of XQuery in future?

B. Should we change the mandatory dependency for query and expression support from XPATH 1.0 to XPATH 2.0? Keeping in mind that XPATH 1.0 is very widely deployed whereas XPATH 2.0 is not yet a recommendation, although it is likely to become one in roughly the same timeframe as the final release of the specification produced by the WSBPEL TC.
Resolution: Proposed in rkhalaf, 10 Dec 2003, decided at conf call, 21 January 2004

The proposal is to replace things with expressions and queries from being an attribute to being an element. This would affect <from>, <to> , <propertyAlias>, and conditions. This would gear up for using other languages for querying that may have a structured syntax. An example is the upcoming XQueryX, a proposal for XQuery using XML syntax. The case for string queries is also shown below.

With elements instead of attributes, we can allow one to override the default query/expression languages locally. The proposal allows for optional query/expressionLanguage attributes on queries and conditions that can locally override the global default.

Current syntax:

<wsbp:from variable="ncname" part="ncname"? query="queryString"?/>

<wsbp:link ... transitionCondition="..." /> <wsbp:targets joinCondition="..."> .. the same for switch's case, and the whileCondition

Proposed syntax

<wsbp:from variable="ncname" part="ncname"?>
  <wsbp:query queryLanguage=".."?> ?      query goes here
  </wsbp:query>
</wsbp:from>
For example, an XPath 1.0 query would be encoded:
<wsbp:from variable="ncname" part="ncname"?>
  <wsbp:query>
  /shipNotice/ShipNoticeHeader/shipOrderID
  </wsbp:query>
</wsbp:from>
Conditions:
<wsbp:source ... >
      <wsbp:transitionCondition 
expressionLanguage=".."?>...</transitionCondition>?
</wsbp:source>
and
<wsbp:targets>
    <wsbp:joinCondition expressionLanguage="..."?>...</joinCondition> ?
     <wsbp:link.... />
</wsbp:targets>
.. the same for switch's case, and the whileCondition
Links: Yaron Y. Goland, 22 May 2003     Announcement, 25 Jun 2003     Proposed resolution (rkhalaf, 7 Dec 2003)     John Evdemon, 9 Dec 2003     Revised proposal (rkhalaf, 10 Dec 2003)     Assaf Arkin, 10 Dec 2003     Yaron Goland, 23 Dec 2003     Assaf Arkin, 23 Dec 2003     Yaron Goland, 23 Dec 2003     Assaf Arkin, 23 Dec 2003     Yaron Goland, 24 Dec 2003     Assaf Arkin, 7 Jan 2004     Yaron Goland, 7 Jan 2004     David RR Webber, 7 Jan 2004     Discussed at 7 January 2004 meeting - vote deferred for further input     Yaron Goland, 7 Jan 2004     David RR Webber, 7 Jan 2004     Assaf Arkin, 7 Jan 2004     David RR Webber, 7 Jan 2004     Assaf Arkin, 7 Jan 2004     David RR Webber, 7 Jan 2004     Assaf Arkin, 7 Jan 2004     David RR Webber, 7 Jan 2004     Alex Yiu, 7 Jan 2004     rkhalaf, 20 Jan 2004     Alex Yiu, 21 Jan 2004     Chris Keller, 3 Feb 2004     Yaron Goland, 3 Feb 2004     Dieter Koenig1, 22 Jul 2004     Yaron Y. Goland, 23 Jul 2004     Alex Yiu, 23 Jul 2004     Dieter Koenig1, 24 Jul 2004
Changes: 4 Jul 2003 - fields: Document;    10 Sep 2003 - fields: Champion;    8 Dec 2003 - fields: Links, Status, Proposed resolution;    10 Dec 2003 - fields: Links, Proposed resolution;    23 Dec 2003 - fields: Links;    7 Jan 2004 - fields: Links;    8 Jan 2004 - fields: Links;    21 Jan 2004 - fields: Links;    27 Jan 2004 - fields: Status, Proposed resolution, Resolution;    3 Feb 2004 - fields: Links;    9 Jun 2004 - fields: In spec;    22 Jul 2004 - fields: Links;    23 Jul 2004 - fields: Links;    26 Jul 2004 - fields: Links

Issue 14: Restriction on join conditions

Status: resolved
In spec: no change
Date added: 25 Jun 2003
Origin: Initial issue log, item 7 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Document: BPEL specification
Description:
Should join conditions be restricted to be monotonic? This relates to some related research at York University http://www.cs.yorku.ca/techreports/2003/CS-2003-04.html and seems to essentially say that it is undesirable to allow join conditions that evaluate to true because a link status is false.
Resolution: Proposed in Dieter Koenig1, 19 Jan 2004, decided 4 February 2004 con call

Close with no change to the specification.
Rationale: The referenced paper discusses different behavior (called side effects) for processes run with or without DPE. From looking at the paper, it seems that running processes without DPE introduces new situations where the process just stops and never reaches the end.
Links: Announcement, 25 Jun 2003     Proposed resolution (Dieter Koenig1, 19 Jan 2004)     Peter Furniss, 26 Jan 2004
Changes: 4 Jul 2003 - fields: Document;    20 Jan 2004 - fields: Links;    26 Jan 2004 - fields: Links, Status, Proposed resolution;    4 Feb 2004 - fields: Status, Proposed resolution, Resolution, Rationale


Issue 15: WSDL MEPs

Status: resolved
In spec: No change
Date added: 25 Jun 2003
Categories: Related standards
Origin: Initial issue log, item 8 (document details )
Date submitted: 23 May 2003
Submitter: Original authors group
Champion: Francisco Curbera
Document: BPEL specification
Description:
Tracking: WSDL 1.2 has a number of MEPs. We need to clarify the relationship of these with BPEL.
Resolution: Proposed in Yaron Y. Goland, 16 Sep 2004, decided at September face-to-face

Whatever action we were going to take with respect to WSDL 2.0 has been taken and therefore this issue can be closed with 'no change'.
Links: Announcement, 25 Jun 2003     Kevin Liu, 22 Sep 2003     Proposed resolution (Yaron Y. Goland, 16 Sep 2004)
Changes: 4 Jul 2003 - fields: Document;    10 Sep 2003 - fields: Champion;    23 Sep 2003 - fields: Links;    16 Sep 2004 - fields: Links, Status, Proposed resolution;    6 Oct 2004 - fields: Status, Proposed resolution, Resolution, In spec


Issue 16: Ensuring exactly once

Status: resolved
In spec: no change
Date added: 25 Jun 2003
Origin: Extracted from email Mike Marin, 22 May 2003 - issue "a" from that message
Date submitted: 22 May 2003
Submitter: Mike Marin, Filenet
Document: BPEL specification
Description:
We don't have distributed transactions on web services yet. So how do we insure that an activity such as an "invoke" is executed exactly one time? The following example illustrates the problem:
1. Process A begins execution of an invoke instruction, and sends an input message to Process B. There is no output message defined on the invoke.
2. Process B is defined with a receive instruction corresponding to the invoke of process A, and the receive instruction creates a new instance of the process. So upon receipt of the message from process A, a new instance of process B is created, and this instance executes the receive instruction.
3. The machine hosting process A crashes.
4. Process B executes the next step, which is to debit an account and update a database.
5. Process B terminates. Process B has finished.
6. The machine hosting process A is restarted. Process A then re-executes the invoke instruction.

On step 6, how can we prevent process A from executing the invoke a second time, creating another instance of process B, and debiting the account a second time?
Resolution: proposed in Mike Marin, 10 Dec 2003, agreed at Melbourne face-to-face, 10 December 2003

Closed without change to the specification

Vote 18 for, 6 against, 5 abstain
Links: Mike Marin, 22 May 2003     Fred A Cummins, 22 May 2003     Mike Marin, 22 May 2003     Mark Little, 23 May 2003     Mike Marin, 23 May 2003     David RR Webber, 24 May 2003     Satish Thatte, 24 May 2003     Mark Little, 24 May 2003     Maciej Szefler, 26 May 2003     Mark Little, 27 May 2003     Maciej Szefler, 27 May 2003     Announcement, 25 Jun 2003     proposed resolution (Mike Marin, 10 Dec 2003)
Changes: 4 Jul 2003 - fields: Document, Links;    10 Dec 2003 - fields: Status, Resolution, Links


Issue 17: Asynchronous operations

Status: resolved
In spec: no change
Date added: 25 Jun 2003
Origin: Extracted from email Mike Marin, 22 May 2003 - issue "b" from that message
Date submitted: 22 May 2003
Submitter: Mike Marin, Filenet
Document: BPEL specification
Description:
Invoking an operation, with input and output, that is implemented by a process using receive and replay requires the WSDL operation to be asynchronous. A process may take days or weeks between the receive and the reply, so the client cannot keep a connection open waiting for the reply. Although WSDL 1.1 talks about asynchronous operations; it does not seems to be any support for it in the WSDL specification.
Resolution: Proposed in Yaron Goland, 20 Jan 2004, decided at conf call, 21 January 2004

Close with no change to the specification.
Links: Mike Marin, 22 May 2003     Assaf Arkin, 27 May 2003     Maciej Szefler, 27 May 2003     Mark Little, 27 May 2003     Edwin Khodabakchian, 27 May 2003     Maciej Szefler, 27 May 2003     Edwin Khodabakchian, 27 May 2003     Maciej Szefler, 28 May 2003     Assaf Arkin, 30 May 2003     Maciej Szefler, 30 May 2003     Satish Thatte, 2 Jun 2003     Assaf Arkin, 2 Jun 2003     Announcement, 25 Jun 2003     Proposed resolution (Yaron Goland, 20 Jan 2004)
Changes: 4 Jul 2003 - fields: Document, Links;    21 Jan 2004 - fields: Links, Status, Proposed resolution;    27 Jan 2004 - fields: Status, Proposed resolution, Resolution


Issue 18: BPEL Visual Binding

Status: resolved
In spec: no change
Date added: 25 Jun 2003
Origin: Extracted from email David Burdett, 22 May 2003
Date submitted: 22 May 2003
Submitter: David Burdett, CommerceOne
Document: BPEL specification
Description:
THE PROBLEM The problem arises because of three assumptions that I believe are valid:
1. BPEL is an "execution only" language, i.e. it is desgined to be something that can be input into software and run, e.g. using some "BPEL Run Time" software
2. BPEL will often be defined and maintained with the aid of some GUI based "BPEL Design Time" software that allows the process to be visualised.
3. The BPEL Design Time software will contain additional positional and graphical information about the visual representation of the BPEL design that not contained in the BPEL XML definitions.

The problem is that this means that exporting a BPEL definition from one BPEL Design Time for input into another will result in a BPEL definition that will not be easily editable as all the graphical information would be lost.

In the extreme, for a complex design, it could mean that designer of business processes using BPEL is effectively locked into the BPEL Design Time software provider that they initially choose. This I don't think is a good idea.

THE SOLUTION ?

To solve this problem I would like to suggest the setting up of a sub-committe of the TC that has responsibilty for developing a "BPEL Visual Binding" specification which would contain the relevant visual information from the BPEL Design Time. The idea would be that the Visual Binding specification is a separate document to the main BPEL specification. Also BPEL Design Time Implementations could export either:
1. The BPEL XML Definition alone, or
2. The BPEL XML Definition PLUS the BPEL Visual Binding

The former could be used for input to a BPEL Run Time and the latter could be input into some other BPEL Design Time.

By creating a separate, but related, specification, it should be possible to carry out the work on the BPEL Visual Binding specifcation in parallel, without hindering any work on the main BPEL specification.
Resolution: Proposed in Satish Thatte, 23 Jan 2004, decided 4 February 2004 con call

Close with no change to the specification.
Rationale: Visual notation is a separable dimension and arguably out of scope for this TC.

David Burdett originally opened the issue.

Discussion:

David wrote that he was agreeable to closing this, but added the suggestion that the TC make a non-binding recommendation to implementers of BPEL to provide an export file and related specification that provided information about any graphical representations of a BPEL definition. So that others could provide import facilities if they wanted to.

My response to that suggestion was that making such a recommendation will start the whole discussion about whether BPEL is meant to be directly used for design or compiled out of some higher level design metaphor. I would much prefer to avoid a discussion that would be tool specific anyway.

I suggested to David that he open a separate issue for the non-binding recommendation if he felt that was important to have.
Links: David Burdett, 22 May 2003     Tony Andrews, 22 May 2003     David Burdett, 22 May 2003     Rajesh Pradhan, 22 May 2003     David Burdett, 23 May 2003     David RR Webber, 23 May 2003     Jim Webber, 23 May 2003     Stephen White, 23 May 2003     Edwin Khodabakchian, 23 May 2003     Waqar Sadiq, 23 May 2003     David Burdett, 23 May 2003     Waqar Sadiq, 23 May 2003     Edwin Khodabakchian, 23 May 2003     Stephen White, 23 May 2003     Maciej Szefler, 26 May 2003     David RR Webber, 27 May 2003     Rajesh Pradhan, 27 May 2003     David Burdett, 27 May 2003     Jim Webber, 27 May 2003     Waqar Sadiq, 27 May 2003     David RR Webber, 27 May 2003     Maciej Szefler, 27 May 2003     Fred A Cummins, 27 May 2003     Assaf Arkin, 27 May 2003     David RR Webber, 27 May 2003     David Burdett, 28 May 2003     David Burdett, 28 May 2003     J. Matthew Pryor, 28 May 2003     David RR Webber, 28 May 2003     David RR Webber, 29 May 2003     Assaf Arkin, 30 May 2003     Announcement, 25 Jun 2003     Satish Thatte, 23 Jan 2004     Proposed resolution (Satish Thatte, 23 Jan 2004)
Changes: 4 Jul 2003 - fields: Document, Links;    23 Jan 2004 - fields: Links, Status, Proposed resolution;    11 Feb 2004 - fields: Status, Proposed resolution, Resolution, Rationale


Issue 19: Multiple properties associated to a single property alias

Status: resolved
In spec: no change
Date added: 25 Jun 2003
Origin: Extracted from email Fred Carter, 22 May 2003
Date submitted: 22 May 2003
Submitter: Fred Carter, Amberpoint
Document: BPEL specification
Description:
BPEL introduces the notion of properties & property aliases. This combination provides powerful expressive capabilities for "important concepts" to a process. This information is expected, at present, to be distributed between the BPEL definition (the properties) and the WSDL definitions (the property aliases).

In practice, it is likely that some number of processes will refer to the same properties, but that these BPEL files may not be aware of one another. Thus, it would be good to explore the ability to associate multiple properties with a single property alias.

Part of this work may involve determining how to map different type specifications (which may be (probably must be) structurally "similar", but named differently) that are associated with the property definition.

This is probably a lower-level issue, not required to be addressed early on. However, we should consider it for usability purposes.
Resolution: Proposed in Satish Thatte, 21 Jan 2004, decided 4 February 2004 con call

Close with no change to the specification.
Rationale: While generalization of type systems may be useful in some circumstances, we have stayed with XML types in BPEL for a good reason -interoperability. On the issue of property sharing, the existing mechanisms already allow the same alias to be used for many properties, so no change seems to be required there. Fred Carter originally opened the issue and he agreed with me in e-mail that the issue should be closed with no changes to the spec.
Links: Announcement, 25 Jun 2003     Proposed resolution (Satish Thatte, 21 Jan 2004)
Changes: 4 Jul 2003 - fields: Document;    21 Jan 2004 - fields: Links, Status, Proposed resolution;    11 Feb 2004 - fields: Status, Proposed resolution, Resolution, Rationale


Issue 20: installing compensation handlers for faulted scopes

Status: resolved
In spec: no change
Date added: 25 Jun 2003
Origin: Extracted from email Ram Jeyaraman, 28 May 2003
Date submitted: 28 May 2003
Submitter: Ram Jeyaraman, Sun
Champion: Ram Jeyaraman
Document: BPEL specification
Description:
should a faulted scope be deemed successfully completed or not?

currently, i beleive, a compensation handler is not installed for a faulted scope, irrespective of whether the fault is propagated-up or not.

i realize, as Satish pointed to, there are issues with allowing the fault handler to attempt alternative normal completion.

however, i would like to discuss this further to help convince ourselves that we are embarked on the right model for fault/compensation handling.

(a) Normally, if a fault handler were to be able to handle the fault itself, that is, do corrective actions (both undo and redo), then the fault is not rethrown, and the forward action can proceed as normally intended.

(b) On the other hand, if the fault handler is not able to handle the fault, perhaps it failed somewhere in its attempt to undo/redo, it rethrows the fault, and the normal execution is short-circuited.

in the case of (a), it seems reasonable to install a compensation handler, since the fault was successfully handled, and forward progress can be made. If this is not the case, the problem is that every forward action has to check if the previous action(s) had successfully completed, which is non-trivial. In such a case, the developer is most-likely going to almost *always* rethrow* a fault in order to avoid having to check for every action if the previous one(s) had successfully completed.

in the case of (b), it seems reasonable to *not* install a compensation handler, since the fault was not successfully handled, or rather the action did not completed successfully.

summary: the fact whether a fault was rethrown by a fault handler may be used to decide whether to install a compensation handler or not. thanks.
Resolution: Proposed in message Ram Jeyaraman, 29 Sep 2003, decided in TC conf call, 1 October 2003

Closed with no further action

Links: Ram Jeyaraman, 28 May 2003     Assaf Arkin, 30 May 2003     Ram Jeyaraman, 31 May 2003     Assaf Arkin, 31 May 2003     Ram Jeyaraman, 31 May 2003     Assaf Arkin, 2 Jun 2003     David RR Webber, 2 Jun 2003     Assaf Arkin, 3 Jun 2003     David RR Webber, 3 Jun 2003     Announcement, 25 Jun 2003     Satish Thatte, 15 Sep 2003     Discussed at Redmond face-to-face     Ram Jeyaraman, 22 Sep 2003     Satish Thatte, 23 Sep 2003     Ram Jeyaraman, 24 Sep 2003     Proposed resolution (Ram Jeyaraman, 29 Sep 2003)     Ram Jeyaraman, 30 Sep 2003     Monica Martin, 30 Sep 2003
Changes: 4 Jul 2003 - fields: Document, Links;    10 Sep 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    18 Sep 2003 - fields: Links;    22 Sep 2003 - fields: Links;    23 Sep 2003 - fields: Links;    24 Sep 2003 - fields: Links;    30 Sep 2003 - fields: Links, Proposed resolution, Status;    1 Oct 2003 - fields: Vote announcement, Links, Status, Resolution, Proposed resolution


Issue 21: faultHandlers to be renamed cancellationHandlers

Status: resolved
In spec: no change
Date added: 25 Jun 2003
Categories: Fault handling, Syntax and validation
Origin: Extracted from email Edwin Khodabakchian, 29 May 2003
Date submitted: 29 May 2003
Submitter: Edwin Khodabakchian, Collaxa
Document: BPEL specification
Description:
Given that faultHandlers/catch are not expected to do any forward looking work, I would like to suggest that we consider renaming them to cancellationHandlers/catch.
Resolution: Proposed in Satish Thatte, 18 Feb 2004, decided at conference call 3 March 2004

Closed with no further action.
Rationale:

The existing text below is considered clear enough:

The completion of the activity of a fault handler, even when it does not rethrow the fault handled, is never considered successful completion of the attached scope and compensation is never enabled for a scope that has had an associated fault handler invoked.

Links: Announcement, 25 Jun 2003     Edwin Khodabakchian, 18 Feb 2004     Proposed resolution (Satish Thatte, 18 Feb 2004)
Changes: 4 Jul 2003 - fields: Document;    18 Feb 2004 - fields: Links, Status, Proposed resolution;    3 Mar 2004 - fields: Status, Proposed resolution, Resolution, Rationale

Issue 22: Implicit <sequence> macro

Status: resolved
In spec: no change
Date added: 25 Jun 2003
Origin: Extracted from email Yuzo Fujishima, 11 Jun 2003
Date submitted: 11 June 2003
Submitter: Yuzo Fujishima, NEC Corporation
Champion: Yuzo Fujishima
Document: BPEL specification
Description:
I would like to propose what may be called "implicit sequence". Implicit sequence "macro": If multiple activities are placed in a process definition where only one activity is allowed per se, assume there is an implicit sequence activity that contains the activities. Example: Regard
  <scope>
   <receive/>
   <invoke/>
   <reply/>
  </scope>
as
  <scope>
   <sequence>     <!-- implicit sequence -->
    <receive/>
    <invoke/>
    <reply/>
   </sequence>
  </scope>

Resolution: Proposed in Yaron Goland, 19 Jan 2004, decided 4 February 2004 con call

Close with no change to the specification.
Rationale: The issue was originally opened by Yuzo Fujishima. There was a discussion thread on the proposal and it was agreed that the potential complexity of the optimization outweighted its benefit. The thread concluded with a general agreement to close the issue but no actual proposal was made. I (Yaron) exchanged e-mail with Yuzo in which he confirmed that he agreed that the issue should be closed with no change to the spec.
Links: Yuzo Fujishima, 11 Jun 2003     Satish Thatte, 12 Jun 2003     Edwin Khodabakchian, 12 Jun 2003     Frank Leymann, 12 Jun 2003     Satish Thatte, 12 Jun 2003     Assaf Arkin, 12 Jun 2003     Greg Ritzinger, 12 Jun 2003     Waqar Sadiq, 12 Jun 2003     David RR Webber, 12 Jun 2003     Prasad Yendluri, 12 Jun 2003     Ugo Corda, 12 Jun 2003     Satish Thatte, 12 Jun 2003     Neelakantan Kartha, 12 Jun 2003     Assaf Arkin, 12 Jun 2003     Ugo Corda, 12 Jun 2003     Assaf Arkin, 12 Jun 2003     Ugo Corda, 12 Jun 2003     Prasad Yendluri, 12 Jun 2003     Ron Ten-Hove, 12 Jun 2003     Glenn Mi, 13 Jun 2003     Assaf Arkin, 13 Jun 2003     Announcement, 25 Jun 2003     Proposed resolution (Yaron Goland, 19 Jan 2004)
Changes: 4 Jul 2003 - fields: Document, Links;    31 Jul 2003 - fields: Champion;    20 Jan 2004 - fields: Links, Status, Proposed resolution;    4 Feb 2004 - fields: Status, Proposed resolution, Resolution, Rationale


Issue 23: Rationale for sequence vs. flow

Status: resolved
In spec: 4 June 2004
Date added: 25 Jun 2003
Origin: Extracted from email Eckenfels. Bernd, 12 Jun 2003
Date submitted: 12 June 2003
Submitter: Bernd Eckenfels, Seeburger
Previous title: implicit links of the runtime engine
Champion: Bernd Eckenfels
Document: BPEL specification
Description:
The spec contains a <sequence> construct, which totally can be replaced by a <flow> with explicit links between contained activities.

This may be possibly confusing for the readers (wondering if they missed anything). So the redundancy needs to be either removed or explained.
Submitter's Proposal:
Either
- remove <sequence> construct
Or
- add rationale to explain it is syntactical sugar
Resolution: Proposed in message Neelakantan Kartha, 29 Aug 2003, approved at conf call 15 October 2003. (Previous approving Web ballot (ended 08 Oct 2003) was inquorate)

Add the following text in Section 12.

12 Structured Activities

... * Nondeterministic choice based on external events is provided by pick.

The set of structured activities in BPEL4WS is not intended to be the minimal required set. There are cases where one activity can replace another. For example, the sequence activity used to structure sequential processing may be emulated by a flow with additional links, to ensure sequential processing.

Structured activities can be used recursively.....


Links: Eckenfels. Bernd, 12 Jun 2003     Assaf Arkin, 12 Jun 2003     Eckenfels. Bernd, 13 Jun 2003     Satish Thatte, 13 Jun 2003     Assaf Arkin, 13 Jun 2003     Satish Thatte, 14 Jun 2003     Assaf Arkin, 16 Jun 2003     Satish Thatte, 16 Jun 2003     Assaf Arkin, 16 Jun 2003     Satish Thatte, 16 Jun 2003     Eckenfels. Bernd, 17 Jun 2003     Assaf Arkin, 17 Jun 2003     Ron Ten-Hove, 17 Jun 2003     Fred Carter, 17 Jun 2003     Ron Ten-Hove, 17 Jun 2003     Maciej Szefler, 18 Jun 2003     Satish Thatte, 19 Jun 2003     Fred Carter, 19 Jun 2003     Assaf Arkin, 19 Jun 2003     Ron Ten-Hove, 20 Jun 2003     Eckenfels. Bernd, 20 Jun 2003     Satish Thatte, 20 Jun 2003     David RR Webber, 20 Jun 2003     Assaf Arkin, 20 Jun 2003     Assaf Arkin, 20 Jun 2003     David RR Webber, 20 Jun 2003     Assaf Arkin, 20 Jun 2003     Ugo Corda, 20 Jun 2003     David RR Webber, 20 Jun 2003     Announcement, 25 Jun 2003     Eckenfels. Bernd, 25 Jun 2003     Ram Jeyaraman, 28 Jul 2003     Assaf Arkin, 30 Jul 2003     Eckenfels. Bernd, 18 Aug 2003     Yaron Goland, 19 Aug 2003     Eckenfels. Bernd, 19 Aug 2003     Eckenfels. Bernd, 20 Aug 2003     Monica Martin, 24 Aug 2003     Eckenfels. Bernd, 25 Aug 2003     Proposed resolution (Neelakantan Kartha, 29 Aug 2003)
Changes: 4 Jul 2003 - fields: Document, Links;    29 Jul 2003 - fields: Links;    31 Jul 2003 - fields: Links;    31 Jul 2003 - fields: Champion;    18 Aug 2003 - fields: Links;    19 Aug 2003 - fields: Links;    20 Aug 2003 - fields: Links;    25 Aug 2003 - fields: Links;    30 Aug 2003 - fields: Links;    1 Oct 2003 - fields: Status, Proposed resolution, Vote announcement;    6 Oct 2003 - fields: Status, Vote announcement;    9 Oct 2003 - fields: Status, Proposed resolution, Vote announcement, Resolution;    15 Oct 2003 - fields: Resolution;    9 Jun 2004 - fields: In spec

Issue 24: Separate schemas for executable vs abstract BPEL

Status: resolved
In spec: no change
Date added: 25 Jun 2003
Origin: Extracted from email Danny van der Rijn, 12 Jun 2003
Date submitted: 12 June 2003
Submitter: Danny van der Rijn, Tibco
Champion: Sumeet S Malhotra
Document: BPEL specification
Description:
Separate schemas for the executable vs. the abstract forms of BPEL would allow validation by schema, rather than by hand-coded rules based on spec verbiage.

Resolution: Proposed in Danny van der Rijn, 7 Jan 2004, decided 4 February 2004 con call

To create 2 separate schemas for validating abstract and executable processes. Each schema would have its own URI. I will leave the question of if/how they extend a common base schema to whoever writes the things.
Links: Danny van der Rijn, 12 Jun 2003     John Evdemon, 12 Jun 2003     Announcement, 25 Jun 2003     Danny van der Rijn, 12 Dec 2003     Yaron Goland, 12 Dec 2003     John Evdemon, 12 Dec 2003     Danny van der Rijn, 13 Dec 2003     John Evdemon, 13 Dec 2003     Danny van der Rijn, 13 Dec 2003     Jim Clune, 15 Dec 2003     Satish Thatte, 16 Dec 2003     John Evdemon, 16 Dec 2003     Danny van der Rijn, 16 Dec 2003     Jim Clune, 16 Dec 2003     Satish Thatte, 18 Dec 2003     Eckenfels. Bernd, 18 Dec 2003     Proposed resolution (Danny van der Rijn, 7 Jan 2004)     David RR Webber, 7 Jan 2004     Discussed at 21 January 2004, deferred pending schema development     Philip Rossomando, 26 Jan 2004     Philip Rossomando, 2 Feb 2004     Philip Rossomando, 2 Feb 2004     Alex Yiu, 2 Feb 2004     Philip Rossomando, 6 Feb 2004     Diane Jordan, 6 Feb 2004     John Evdemon, 6 Feb 2004     Ben Bloch, 6 Feb 2004     John Evdemon, 6 Feb 2004     Alex Yiu, 6 May 2004     Alex Yiu, 11 May 2004     Alex Yiu, 11 May 2004
Changes: 4 Jul 2003 - fields: Document, Links;    31 Jul 2003 - fields: Champion;    13 Dec 2003 - fields: Links;    16 Dec 2003 - fields: Links;    23 Dec 2003 - fields: Links;    7 Jan 2004 - fields: Links, Status, Proposed resolution;    27 Jan 2004 - fields: Links;    2 Feb 2004 - fields: Links;    3 Feb 2004 - fields: Links;    11 Feb 2004 - fields: Status, Proposed resolution, Resolution, Links;    6 May 2004 - fields: Links;    11 May 2004 - fields: Links


Issue 25: Consistent enablement of compensation handlers

Status: resolved
In spec: 1.34, 19 June 2004
Date added: 26 Jun 2003
Categories: Compensation, Process coordination
Origin: Email direct to issue editor
Date submitted: 25 June 2003
Submitter: Assaf Arkin
Champion: Assaf Arkin
Document: BPEL specification
Description:
What are the semantics of a compensation handler specified for the business process as a whole when the enableInstanceCompensation attribute is set to "no"? If instance compensation is not enabled then it should be an error to define a compensation handler. This should be clarified. If the intent is to disable default compensation when no compensation handler is defined then another alternative is to assume that no compensation is possible if no compensation handler is defined (and the same for scopes). A default compensation handler would take the form of:
<compensationHandler>
  <compensate/>
</compensationHandler>
Although this require more XML elements to be defined, it allows the compensation handling behavior to be turned on and off for the process and a scope by simply electing not to define a compensation handler. At any rate, the ability to disable compensation for a scope is also required if a process attempts to invoke compensation handlers for invoked services from compensation handlers associated with the invoke activity's scope.
Qualifier: clarification, enhancement
Resolution: Proposed in Yaron Y. Goland, 31 Mar 2004, decided by Web ballot (ended 28 Apr 2004) , after straw poll at Walldorf ftf

Remove instance (process) compensation handlers
Remove the enableInstanceCompensation attribute
Rationale: See minutes of Melbourne and Walldorf meetings, and discussion under issue 53 : Include Business Transaction Management (BTM) constructs especially Process Coordination in BPEL Final.ppt (document details)
Links: Announcement, 26 Jun 2003     Satish Thatte, 11 Aug 2003     Assaf Arkin, 11 Aug 2003     Satish Thatte, 11 Aug 2003     Assaf Arkin, 11 Aug 2003     Satish Thatte, 11 Aug 2003     Assaf Arkin, 20 Aug 2003     Satish Thatte, 20 Aug 2003     Monica Martin, 26 Aug 2003     Satish Thatte, 15 Sep 2003     Assaf Arkin, 16 Sep 2003     Discussed at Redmond face-to-face     Proposed resolution (Yaron Y. Goland, 31 Mar 2004)     Discussed at Walldorf f-t-f (document details)     Discussed at 14 April con call (document details)     Web ballot (ended 28 Apr 2004)
Changes: 4 Jul 2003 - fields: Origin, Links;    31 Jul 2003 - fields: Champion;    12 Aug 2003 - fields: Links;    20 Aug 2003 - fields: Links;    26 Aug 2003 - fields: Links;    15 Sep 2003 - fields: Links;    16 Sep 2003 - fields: Links;    18 Sep 2003 - fields: Links;    25 Mar 2004 - fields: Categories;    31 Mar 2004 - fields: Links, Status, Proposed resolution;    22 Apr 2004 - fields: Vote announcement, Links;    29 Apr 2004 - fields: Status, Proposed resolution, Resolution, Rationale, Vote announcement, Links;    20 Jun 2004 - fields: In spec


Issue 26: Correlating use with receive/reply

Status: open
Date added: 26 Jun 2003
Categories: Correlation
Origin: Email direct to issue editor
Date submitted: 25 June 2003
Submitter: Assaf Arkin
Champion: Assaf Arkin
Document: BPEL specification
Description:
"Two outstanding synchronous requests from a specific partner link for a particular operation and correlation set(s) cannot be outstanding simultaneously". A reply activity need only identify the partnerLink and operation, and therefore cannot determine which request it responds to.
Qualifier: clarification
Links: Announcement, 26 Jun 2003     Danny van der Rijn, 5 Sep 2003     Monica Martin, 25 Sep 2003     Danny van der Rijn, 25 Sep 2003     Edit group action (Satish Thatte, 14 Jan 2004)
Changes: 4 Jul 2003 - fields: Origin, Links;    31 Jul 2003 - fields: Champion;    8 Sep 2003 - fields: Links;    26 Sep 2003 - fields: Links;    15 Jan 2004 - fields: Links

Issue 27: Setting link status in case of transition condition

Status: resolved
In spec: 4 June 2004
Date added: 26 Jun 2003
Categories: operational semantic
Origin: Email direct to issue editor
Date submitted: 25 June 2003
Submitter: Assaf Arkin
Champion: Assaf Arkin
Document: BPEL specification
Description:
Consider the following example:

<scope name="X">
  <source link="A" transition=".."/>
  <source link="B"/>
  <compensationHandler/>
  .. do something
</scope>

The scope activity executes to completion. Some activities were performed that have side-effects and so a compensation handler was defined and got installed. The activity can now be compensated. The status of link B would be set to true, the status of link A would be set based on the value of the transition condition. The transition condition happens to generate a fault. What happens next?

A fault handler would be invoked in the enclosing scope and would compensate for the work done by the scope activity. If the targets of link A and link B are enclosed in the same scope then neither one would execute. But what if the target of link A and link B is in some other scope. What would be the status of the links? If the status of link A is true that may conflict with the intent of the transition condition that may set it to false realizing that some pre-condition has not been met. If the status of link A is false that would consist with the activity being compensated immediately after completion. But the case must be made that the status of link B should also be set to false for consistency.
Qualifier: clarification
Resolution: Proposed in Assaf Arkin, 1 Oct 2003, repeated in Assaf Arkin, 11 Oct 2003, decided at 15 October 2003, with the addition at the end

Add the following paragraph to the specification in the description of how links are handled (pages 64/65):

Note that the transition condition is evaluated after the activity has completed. If an error occurs while evaluating the transition condition, that error does not affect the completion status of the activity and is handled by the activity's enclosing scope. In the case of scopes, completion does not necessarily imply successful completion. A scope may suffer an internal fault and yet complete (unsuccessfully) if there is a corresponding fault handler associated with the scope and that fault handler completes without throwing a fault.

Yaron Goland and Assaf Arkin will ensure that appropriate text to note the implementation implications is included in the spec.
Links: Announcement, 26 Jun 2003     Satish Thatte, 15 Sep 2003     Discussed at Redmond face-to-face - see last slide of Satish's presentation (document details)     Assaf Arkin, 18 Sep 2003     Satish Thatte, 18 Sep 2003     Assaf Arkin, 26 Sep 2003     Satish Thatte, 26 Sep 2003     Satish Thatte, 30 Sep 2003     Assaf Arkin, 30 Sep 2003     Satish Thatte, 30 Sep 2003     Proposed resolution (Assaf Arkin, 1 Oct 2003)     Repeat of proposed resolution (Assaf Arkin, 11 Oct 2003)     Ashwini Surpur, 16 Oct 2003     Prasad Yendluri, 16 Oct 2003     Satish Thatte, 17 Oct 2003     Ron Ten-Hove, 17 Oct 2003     Satish Thatte, 17 Oct 2003     Assaf Arkin, 20 Oct 2003     Satish Thatte, 20 Oct 2003     Assaf Arkin, 21 Oct 2003     Satish Thatte, 23 Oct 2003     Maciej Szefler, 27 Oct 2003     Harvey Reed, 27 Oct 2003     Satish Thatte, 27 Oct 2003     Maciej Szefler, 27 Oct 2003     Maciej Szefler, 27 Oct 2003     Satish Thatte, 27 Oct 2003     Assaf Arkin, 27 Oct 2003     Assaf Arkin, 27 Oct 2003
Changes: 4 Jul 2003 - fields: Origin, Links;    31 Jul 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    18 Sep 2003 - fields: Links, Proposed resolution;    26 Sep 2003 - fields: Links;    30 Sep 2003 - fields: Links;    1 Oct 2003 - fields: Links, Status, Proposed resolution;    8 Oct 2003 - fields: Vote announcement;    11 Oct 2003 - fields: Proposed resolution, Links;    15 Oct 2003 - fields: Status, Vote announcement, Proposed resolution, Resolution;    17 Oct 2003 - fields: Links;    20 Oct 2003 - fields: Links;    21 Oct 2003 - fields: Links;    23 Oct 2003 - fields: Links;    27 Oct 2003 - fields: Links;    9 Jun 2004 - fields: In spec


Issue 28: Simplification of join condition

Status: open
Date added: 26 Jun 2003
Categories: Expressions, State management
Origin: Email direct to issue editor
Date submitted: 25 June 2003
Submitter: Assaf Arkin
Champion: Assaf Arkin
Document: BPEL specification
Description:
The specification uses the XPath language to define join conditions where in fact join conditions could only use a subset of the XPath language. Furthermore, it places a constraint that the expression use the getLinkStatus function with the name of an input link. The issue arises from the complexity of analyzing an XPath expression to determine the proper usage of XPath expressions. If the intent is not to use the full power of the XPath language and validation of the expression cannot be performed by an XPath library, perhaps we can propose a more restrictive and simpler syntax.
Qualifier: enhancement
Links: Announcement, 26 Jun 2003     Satish Thatte, 15 Sep 2003     Assaf Arkin, 20 Oct 2003
Changes: 4 Jul 2003 - fields: Origin, Links;    31 Jul 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    20 Oct 2003 - fields: Links

Issue 29: Simplification of XPath expressions

Status: open
Date added: 26 Jun 2003
Categories: Expressions
Origin: Email direct to issue editor
Date submitted: 25 June 2003
Submitter: Assaf Arkin
Champion: Assaf Arkin
Document: BPEL specification
Description:
Consider the following expression:

getVariable( getVariable( 'name' ) )

An expression of this form is supported by the current specification, but hinders the ability to perform static analysis on the use of variables within the activity. This could be mitigated by clarifying the use of BPEL functions such that their input arguments must be literals. However, this goes against the XPath specification that makes no such restriction. An alternative would be to use XPath variables which are precluded from this dynamic behavior as per the XPath specification. (Assuming this restriction is still part of XPath 2.0 and XQuery).
Qualifier: enhancement
Links: Announcement, 26 Jun 2003     Satish Thatte, 15 Sep 2003     Next messages are in Issue 3 discussion     Yaron Goland, 8 Oct 2003     Edwin Khodabakchian, 8 Oct 2003     Satish Thatte, 8 Oct 2003     Danny van der Rijn, 8 Oct 2003     Assaf Arkin, 9 Oct 2003     Assaf Arkin, 20 Oct 2003     Yaron Goland, 21 Oct 2003
Changes: 4 Jul 2003 - fields: Origin, Links;    31 Jul 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    9 Oct 2003 - fields: Links;    20 Oct 2003 - fields: Links;    21 Oct 2003 - fields: Links


Issue 30: Support for coordination protocol

Status: resolved
In spec: 1.34, 19 June 2004
Date added: 26 Jun 2003
Categories: Process coordination
Origin: Email direct to issue editor
Date submitted: 25 June 2003
Submitter: Assaf Arkin
Champion: Assaf Arkin
Document: BPEL specification
Description:
Support for use of coordination protocols for invoking services by process and when process invoked by another service.

Clarify use of coordination protocol to:

Clarify how a compensation handler in the process is used to invoke compensation handler of a service such coordinated. Clarify how the compensation handler of the process is invoked by such a service. Clarify how parameters are passed to and from compensation handler when invoked in such a manner.

Clarify the relationship between the scope in which an invocation is performed and the context that governs the coordination, where to wait for the completion of work by the participant, when to cancel such work, and how to be notified of general failure.

Also, investigate means to determine whether service supports coordination as part of the process definition (where only its interface is known), and how a process advertises this capability as part of its interface definition, e.g. using WSDL 1.2 F&P.
Revisitable: Yes
Qualifier: enhancement
Resolution: Proposed in Peter Furniss, 31 Mar 2004, decided by Web ballot (ended 28 Apr 2004) , after straw poll at Walldorf ftf

Remove appendix C and all references to particular transaction and coordination protocols.
Close these issues (30, 53-59) without other change to the spec.
Mark the issues as "revisitable" - to be reconsidered in future work on BPEL.
Links: Announcement, 26 Jun 2003     Proposed resolution (Peter Furniss, 31 Mar 2004)     Peter Furniss, 31 Mar 2004     Discussed at Walldorf f-t-f (with issue 53) (document details)     Web ballot (ended 28 Apr 2004)
Changes: 4 Jul 2003 - fields: Origin, Links;    31 Jul 2003 - fields: Champion;    25 Mar 2004 - fields: Categories;    31 Mar 2004 - fields: Links, Status, Proposed resolution;    22 Apr 2004 - fields: Vote announcement, Links;    29 Apr 2004 - fields: Status, Proposed resolution, Resolution, Revisitable, Vote announcement, Links;    20 Jun 2004 - fields: In spec


Issue 31: Unique identifier for establishing new correlation

Status: resolved
In spec: No change
Date added: 26 Jun 2003
Categories: Correlation
Origin: Email direct to issue editor
Date submitted: 25 June 2003
Submitter: Assaf Arkin
Champion: Assaf Arkin
Document: BPEL specification
Description:
A process needs to send a message and receive one or more respones asynchronously that are correlated and needs to use the correlation mechanism. The process is started with a request that contains values which are not known to be unique. There is a risk that using one of these values would result in the condition whereby a response is correlated to two or more processes. There needs to be a mechanism by which the process can decide on a unique value for the purpose of instantiating a correlation set.

A generic solution would introduce a new function that would generate a unique value, e.g. a UUID. A more specific solution would grant the process a single unique value that could be, e.g. the process instance identifier, accessible from a function or contained in a well defined variable/property.

Another solution would have the process use a property from the input message that is equivalent to the message identifier as specified by WS-Addressing. However, a complication may occur if the process is instantiated by two concurrent receive activities, either of which can decide on the correlation set value to use.

Revisitable: Yes
Qualifier: enhancement
Resolution: Proposed verbally by Yaron Goland and decided at San Francisco f-t-f

Close with no change to spec.
Rationale: It can be assumed that platform-specific mechanisms are available to generate a unique identifier.
Links: Announcement, 26 Jun 2003
Changes: 4 Jul 2003 - fields: Origin, Links;    31 Jul 2003 - fields: Champion;    22 Jun 2004 - fields: In spec, Resolution, Rationale, Status, Revisitable


Issue 32: Link Semantics in Event Handlers

Status: resolved
In spec: 4 June 2004
Date added: 3 Jul 2003
Origin: Yuzo Fujishima, 2 Jul 2003
Date submitted: 02 July 2003
Submitter: Yuzo Fujishima
Champion: Yuzo Fujishima
Document: BPEL specification
Description: According to 13.5.4.2 Message Events, BPEL 1.1 allows one event handler activity to run concurrently. However, it is not specified whether all concurrent "threads" share link status or each thread maintains its own link status. Suppose activity B has synchronization dependency on A. Can B in a thread be run after A is completed in other thread? Or only after A is completed in the same thread?
Resolution: Proposed in message Yuzo Fujishima, 27 Sep 2003, decided in TC conf call, 1 October 2003

Each thread maintains its own copy of link status.

Specification to be aligned with this resolution.
Links: Yuzo Fujishima, 26 May 2003     Satish Thatte, 26 May 2003     Yuzo Fujishima, 2 Jul 2003     Edwin Khodabakchian, 2 Jul 2003     Yuzo Fujishima, 3 Jul 2003     Chunbo Huang, 3 Jul 2003     Edwin Khodabakchian, 3 Jul 2003     Announcement, 4 Jul 2003     Yuzo Fujishima, 5 Jul 2003     Dieter Roller, 5 Jul 2003     Frank Leymann, 5 Jul 2003     Francisco Curbera, 7 Jul 2003     Yuzo Fujishima, 7 Jul 2003     Yuzo Fujishima, 7 Jul 2003     Dieter Roller, 7 Jul 2003     Francisco Curbera, 7 Jul 2003     Assaf Arkin, 7 Jul 2003     Dieter Roller, 8 Jul 2003     Dieter Roller, 15 Sep 2003     Discussed at Redmond face-to-face - resolution to be proposed     Proposed resolution (Yuzo Fujishima, 27 Sep 2003)
Changes: 3 Jul 2003 - new issue;    4 Jul 2003 - fields: Links;    7 Jul 2003 - fields: Links;    9 Jul 2003 - fields: Links;    31 Jul 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    18 Sep 2003 - fields: Links;    27 Sep 2003 - fields: Links;    30 Sep 2003 - fields: Proposed resolution, Status;    1 Oct 2003 - fields: Status, Proposed resolution, Vote announcement, Resolution;    9 Jun 2004 - fields: In spec


Issue 33: Race condition before correlation set is established

Status: resolved
In spec: 1.34, 19 June 2004
Date added: 9 Jul 2003
Categories: Correlation
Date submitted: 07 July 2003
Submitter: Eckenfels. Bernd
Champion: Bernd Eckenfels
Document: BPEL specification (Sample on p.22, version 1.1)
Description: Current specification does not address implementation semantics for registering correlations

Handling Callbacks in a Business Process (especially if it is done as suggested in the Initial Example of the 1.1 Spec) is depending on unspecified runtime engine behavior.

If we assume, that a new entry for a correlation set is entered on activation of the receive, and we also assume, that incoming web service requests on ports which have no matching correlation are rejected, we have a small window in the system, where a particular information was requested, but the related receive activity was not yet activated. This could be, because the requested party will answer, before the SOAP communication was finished, it could also be, because the runtime engine is loaded, to not enable the receive fast enough. It could also be because the runtime engine was putting the process to sleep because or priority issues.

The specification should either enforce a semantic which will allow <sequence><invoke><receive></sequence> process, and force implementers to keep that case in mind, or the specification should endorse (and then actually use in its own samples) an alternative way.

Please keep in mind, that it might not be enough to assure, that implementations can handle the response to an invoke of the directly following activity. Flows and sub process could be involved, too. In the case of flows, the current spec does not assume any implementations, which is good for implementing conforming engines, but it is also bad for specific modeling techniques which may be unsafe to use. A good sample would be a <flow><receive /><invoke /></flow> which also has the same (maybe even bigger) race condition window to allow callbacks.

A process which creates a correlation id, waits for the response and then invokes the service is a typical use case. Issue 31 is a feature request which would depend on this, and will suffers from the same unspecified behavior.

Alternative solution (which is a bit overhead, unfortunately): allow a new link type "ready to receive" from receive components to invoke components, which will be enabled, as soon as the corresponding correlation entry is made, and the system is listening for the callback. Brainstorming welcome.
Resolution: Proposed in Eckenfels. Bernd, 14 Apr 2004, decided by Web ballot (ended 28 Apr 2004)

Include an explanation (final wording from the editing team), that it is accepted that messages with legal outstanding correlations may arrive after the correlation set is instantiated but before the actual receive is activated and that such messages should be processed. Modellers can assume that it is safe to rely on this (since there is no bpel construct to implement it otherwise).

There is no need for a precise definition of when it is legal/required for the engine to to look ahead and what timeouts to assume. Therefore it is not possible to include samples like "receive or a callback in a sequnece directly after the invoke". The text should address the modeller's expectations and not to explicitly define requirements to the engine, since we are not yet down that conformance definition road in other places.

There are other places where the bpel spec does not require a specific timing (e.g. invoke and receive in parallel in a flow), where the same expectations of the modeller should be acknolwledged.
Vote announcement: Web ballot (ends 28 Apr 2004)
Links: issue 31 : Unique identifier for establishing new correlation     Announcement, 9 Jul 2003     Eckenfels. Bernd, 10 Jul 2003     Eckenfels. Bernd, 12 Aug 2003     Proposed resolution (Eckenfels. Bernd, 29 Mar 2004)     Revised proposal (Eckenfels. Bernd, 14 Apr 2004)     Eckenfels. Bernd, 14 Apr 2004     Kevin Liu, 27 Apr 2004     Eckenfels. Bernd, 28 Apr 2004
Changes: 9 Jul 2003 - new issue;    10 Jul 2003 - fields: Links;    31 Jul 2003 - fields: Champion;    12 Aug 2003 - fields: Links;    29 Mar 2004 - fields: Links, Status, Proposed resolution;    15 Apr 2004 - fields: Proposed resolution, Links;    22 Apr 2004 - fields: Vote announcement;    29 Apr 2004 - fields: Links, Status, Proposed resolution, Resolution;    20 Jun 2004 - fields: In spec


Issue 34: Dependency on Proprietary Specifications

Status: resolved
In spec: 16 Aug 2004
Date added: 9 Jul 2003
Categories: Related standards, Partner links
Date submitted: 09 July 2003
Submitter: Ron Ten-Hove
Champion: Ron Ten-Hove
Document: BPEL specification
Description: BPEL4WS incorporates WS-Addressing, which is a proprietary specification. This is inappropriate for an open standard.
Vote: yes=19, no=3, abstain=3, at San Francisco f-t-f
Proposed resolution: Ron Ten-Hove, 7 May 2004
Resolution: Proposed in Alex Yiu, 21 Jun 2004, modified and decided at San Francisco f-t-f

A "service-ref" wrapper will be defined:

<xs:element name="service-ref" type= tns:ServiceRefType />
<xs:complexType name="ServiceRefType">
    <xs:sequence>
        <xs:any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
    </xs:sequence>
<xs:attribute name="reference-scheme" type="xs:anyURI" use="required"/>
</xs:complexType>

The partnerlink should contain this "service-ref" element for the endpoint references of partnerRole or myRole.

e.g.:

<service-ref reference-scheme="http://foo.org">
   <foo:barEPR xmlns:foo="http://foo.org"> ... </foo:barEPR>
</service-ref>

When including this in the spec., the editing team will include explanations of error handling and the motivation for this construct. The solution will include a clarification to the reference-scheme attribute.
Rationale: It may take more than few months for the industry to converge on ONE single addressing or EPR scheme. Instead of keep delaying BPEL TC itself, we should leave it open. And let the industry take its own course to find out its convergence point. BPEL spec should be as flexible as possible to allow the convergence happen.

Even after the industry has converged into one addressing or EPR scheme in future, we may still need to face the versioning issue.

For WSA alone, we already have two versions floating around:
http://schemas.xmlsoap.org/ws/2003/03/addressing
http://schemas.xmlsoap.org/ws/2004/03/addressing

WSA by itself already presents us the version conversion problem. The solution of this problem would require the semantics listed above.
Links: Ron Ten-Hove, 16 May 2003     Announcement, 9 Jul 2003     Monica J. Martin, 31 Mar 2004     Monica J. Martin, 1 Apr 2004     Ron Ten-Hove, 6 May 2004     Proposed resolution (Ron Ten-Hove, 7 May 2004)     Yaron Y. Goland, 14 May 2004     Ron Ten-Hove, 17 May 2004     Yaron Y. Goland, 18 May 2004     Proposed resolution (Yaron Y. Goland, 18 May 2004)     Ron Ten-Hove, 18 May 2004     Francisco Curbera, 19 May 2004     Frank Ryan, 19 May 2004     Ron Ten-Hove, 19 May 2004     John Evdemon, 19 May 2004     Ron Ten-Hove, 19 May 2004     Ron Ten-Hove, 19 May 2004     Steve Ross-Talbot, 19 May 2004     John Evdemon, 19 May 2004     Assaf Arkin, 19 May 2004     Francisco Curbera, 25 May 2004     Ron Ten-Hove, 25 May 2004     Yaron Y. Goland, 26 May 2004     Satish Thatte, 26 May 2004     Martin Chapman, 26 May 2004     Satish Thatte, 26 May 2004     Ugo Corda, 26 May 2004     Monica J. Martin, 26 May 2004     Satish Thatte, 26 May 2004     Jeff Mischkinsky, 28 May 2004     Jeff Mischkinsky, 28 May 2004     Monica J. Martin, 28 May 2004     Francisco Curbera, 29 May 2004     Peter Furniss, 30 May 2004     Alex Yiu, 21 Jun 2004     Ron Ten-Hove, 22 Jun 2004     Alex Yiu, 30 Jun 2004     Ron Ten-Hove, 30 Jun 2004     John Evdemon, 1 Jul 2004     Prasad Yendluri, 2 Jul 2004     Alex Yiu, 3 Jul 2004     Prasad Yendluri, 3 Jul 2004     Alex Yiu, 14 Jul 2004     Prasad Yendluri, 14 Jul 2004     Ron Ten-Hove, 14 Jul 2004     Alex Yiu, 15 Jul 2004     Prasad Yendluri, 15 Jul 2004
Changes: 9 Jul 2003 - new issue;    10 Jul 2003 - fields: Links;    10 Sep 2003 - fields: Champion;    31 Mar 2004 - fields: Links;    1 Apr 2004 - fields: Links;    6 May 2004 - fields: Links, Status, Proposed resolution;    8 May 2004 - fields: Links, Status, Proposed resolution;    15 May 2004 - fields: Links;    18 May 2004 - fields: Links, Status, Proposed resolution;    19 May 2004 - fields: Links;    20 May 2004 - fields: Links;    25 May 2004 - fields: Links;    26 May 2004 - fields: Links;    27 May 2004 - fields: Links;    30 May 2004 - fields: Links;    2 Jun 2004 - fields: Links, Proposed resolution;    16 Jun 2004 - fields: Categories;    22 Jun 2004 - fields: Links;    23 Jun 2004 - fields: Status, Vote, Resolution, Rationale;    30 Jun 2004 - fields: Links;    1 Jul 2004 - fields: Links;    3 Jul 2004 - fields: Links;    16 Jul 2004 - fields: Links;    17 Aug 2004 - fields: In spec


Issue 35: Support for modeling

Status: resolved
In spec: no change
Date added: 9 Jul 2003
Date submitted: 09 July 2003
Submitter: Assaf Arkin
Champion: Sumeet S Malhotra
Description: The current specification suggests that BPEL is targeting execution of processes and exchange of business protocol definitions. It would be beneficial if the language could also be used to address certain aspects of modeling, such that it can leverage tooling support to bridge the gap between modeling, design, exceuting and monitoring.

A more detailed explanation is provided by Frank Leymann at the end of Frank Leymann, 6 Jul 2003
Qualifier: enhancement
Resolution: Proposed in Satish Thatte, 22 Jan 2004, decided 4 February 2004 con call

Close with no change to the specification.
Rationale: while modeling is a very important requirement it is a big and non-trivial requirement that goes well beyond what we have set ourselves as goals. Assaf Arkin originally opened the issue and he agreed with me in e-mail that the issue should be closed with no changes to the spec since the issue has been dormant anyway. There was no additional discussion.
Links: Announcement, 9 Jul 2003     Proposed resolution (Satish Thatte, 22 Jan 2004)
Changes: 9 Jul 2003 - new issue;    10 Jul 2003 - fields: Links;    31 Jul 2003 - fields: Champion;    22 Jan 2004 - fields: Links, Status, Proposed resolution;    11 Feb 2004 - fields: Status, Proposed resolution, Resolution, Rationale


Issue 36: Multiple instances of event handler

Status: resolved
In spec: 4 June 2004
Date added: 9 Jul 2003
Date submitted: 09 July 2003
Submitter: Assaf Arkin
Champion: Assaf Arkin
Document: BPEL specification
Description: An onMessage event handler is written to receive some input message (as identified by the operation), assign it to some variable and then perform some work based on the content of that message.

An input message targeting that event handler is received by the process (M1). A new instance of the event handler is started, the message is assigned to the specified variable and work begins based on the value of that variable.

At which point another input message targeting the same event handler is recieved by that process (M2). A new instance of the event handler is started, the message is assigned to the specified variable and work begins based on the value of that variable.

Except that the first instance has not completed all work yet. While it started performing some work using the variable value from M1, it suprisingly finds that the new value of the variable is coming from M2.

Currently the spec does not indicate that these two instances will be serialized with respect to each other, nor that these two variables are distinct and not the same (variable instances are per process or some enclosing scope). Scoping does not alleviate the race condition since a new scope must be created and the values assigned to its variables, giving enough overlap between the two instances for a race condition to exist.

There seems to be no measure in the spec that allows for multiple instances of an event handler to occur concurrently, yet the spec suggests that this is possible.
Qualifier: enhancement, clarification
Related issue: issue 79 : Serializable scopes do not need to be leaf scopes
Resolution: Proposed in Assaf Arkin, 11 Oct 2003, decided at 15 October 2003

The semantics of event handler would be changed to allow the variable used to capture the input message to be treated local to the event handler instance:

  1. Rename eventHandler/onMessage to eventHandler/onEvent

  2. The name of the variable is given in the variable attribute.

  3. The attribute messageType specifies the variable type by referencing the message type definition using its QName.

  4. The variable type must be the same as the type of the input message defined by referenced operation.

  5. The event handler declares a variable of that name and type that is scoped to the event handler activity.

  6. Upon receipt of the input message the event handler assigns the input message to the variable before proceeding to perform the event handler activity.

  7. Since the variable is scoped to that activity, two instances of the activity (whether executed seriallly or concurrently) do not operate on the same variable.

The above is a statement of the intent, the editing group will review the text with the issue champion, Assaf Arkin
Links: Announcement, 9 Jul 2003     Dieter Roller, 18 Jul 2003     Edwin Khodabakchian, 18 Jul 2003     Monica J. Martin, 18 Jul 2003     Edwin Khodabakchian, 1 Aug 2003     Dieter Roller, 15 Sep 2003     Discussed at Redmond face-to-face     Maciej Szefler, 19 Sep 2003     Edwin Khodabakchian, 19 Sep 2003     Francisco Curbera, 21 Sep 2003     Edwin Khodabakchian, 21 Sep 2003     Maciej Szefler, 22 Sep 2003     Steve Brown, 22 Sep 2003     Edwin Khodabakchian, 22 Sep 2003     Satish Thatte, 22 Sep 2003     Francisco Curbera, 24 Sep 2003     Maciej Szefler, 25 Sep 2003     Maciej Szefler, 25 Sep 2003     Yaron Goland, 25 Sep 2003     Satish Thatte, 25 Sep 2003     Maciej Szefler, 25 Sep 2003     Satish Thatte, 25 Sep 2003     Monica Martin, 26 Sep 2003     Assaf Arkin, 26 Sep 2003     Assaf Arkin, 26 Sep 2003     Satish Thatte, 26 Sep 2003     Edwin Khodabakchian, 26 Sep 2003     Assaf Arkin, 26 Sep 2003     Satish Thatte, 26 Sep 2003     Satish Thatte, 26 Sep 2003     Edwin Khodabakchian, 26 Sep 2003     Satish Thatte, 26 Sep 2003     Edwin Khodabakchian, 26 Sep 2003     Satish Thatte, 26 Sep 2003     Assaf Arkin, 26 Sep 2003     Satish Thatte, 26 Sep 2003     Assaf Arkin, 30 Sep 2003     Edwin Khodabakchian, 30 Sep 2003     Assaf Arkin, 30 Sep 2003     Satish Thatte, 30 Sep 2003     Edwin Khodabakchian, 30 Sep 2003     Assaf Arkin, 30 Sep 2003     Satish Thatte, 30 Sep 2003     Proposed resolution (Assaf Arkin, 1 Oct 2003)     Satish Thatte, 1 Oct 2003     Yaron Goland, 1 Oct 2003     Assaf Arkin, 2 Oct 2003     Harvey Reed, 2 Oct 2003     Assaf Arkin, 2 Oct 2003     Harvey Reed, 2 Oct 2003     Danny van der Rijn, 2 Oct 2003     Francisco Curbera, 3 Oct 2003     Assaf Arkin, 3 Oct 2003     Edwin Khodabakchian, 3 Oct 2003     Satish Thatte, 3 Oct 2003     Revised proposed resolution (Assaf Arkin, 11 Oct 2003)     Prasad Yendluri, 17 Oct 2003     Satish Thatte, 17 Oct 2003     Assaf Arkin, 17 Oct 2003
Changes: 9 Jul 2003 - new issue;    10 Jul 2003 - fields: Links;    20 Jul 2003 - fields: Links;    31 Jul 2003 - fields: Champion;    1 Aug 2003 - fields: Links;    15 Sep 2003 - fields: Links;    18 Sep 2003 - fields: Links;    20 Sep 2003 - fields: Links;    22 Sep 2003 - fields: Links;    23 Sep 2003 - fields: Links;    25 Sep 2003 - fields: Links;    26 Sep 2003 - fields: Links;    1 Oct 2003 - fields: Links, Status, First proposed resolution;    2 Oct 2003 - fields: Links;    3 Oct 2003 - fields: Links;    6 Oct 2003 - fields: Links;    8 Oct 2003 - fields: Vote announcement;    11 Oct 2003 - fields: Links, Proposed resolution;    15 Oct 2003 - fields: Status, Vote announcement, Proposed resolution, Resolution;    17 Oct 2003 - fields: Links;    12 Nov 2003 - fields: Related issue;    9 Jun 2004 - fields: In spec


Issue 37: Initiating Correlation Set More Than Once

Status: resolved
In spec: 1.35, 30 June 2004
Date added: 11 Jul 2003
Categories: Correlation
Date submitted: 11 July 2003
Submitter: Yuzo Fujishima
Champion: Yuzo Fujishima
Document: BPEL specification
Description:

What will happen if a correlation set is initiated more than once during the lifetime of the corresponding scope?

Quote from 10.2 Defining and Using Correlation Sets:

After a correlation set is initiated, the values of the properties for a correlation set must be identical for all the messages in all the operations that carry the correlation set and occur within the corresponding scope until its completion.

Candidates are:

A. bpws:correlationViolation fault is always thrown.

B. bpws:correlationViolation fault is thrown only if the new property values are different from the old ones.

C. The old property values remain valid and no fault is thrown. The new property values are ignored.
Resolution: Proposed in Alex Yiu, 23 Jun 2004, decided at San Francisco f-t-f

The "initiate" attribute becomes a tri-value switch instead of a boolean switch. The legal values of the "initiate" attribute are: "yes", "rendezvous", "no". The default value of the attribute remains "no".

After a correlation set is initiated, the values of the properties for a correlation set must be identical for all the messages in all the operations that carry the correlation set and occur within the corresponding scope until the completion of the scope. This correlation consistency constraint must be observed in all cases of "initiate" values.

Affected Sections:


Links: Announcement, 11 Jul 2003     Satish Thatte, 11 Aug 2003     Satish Thatte, 11 Aug 2003     Discussed at Redmond face-to-face     Yuzo Fujishima, 27 Sep 2003     Satish Thatte, 13 Oct 2003     Yuzo Fujishima, 14 Oct 2003     Satish Thatte, 14 Oct 2003     Eckenfels. Bernd, 14 Oct 2003     Satish Thatte, 14 Oct 2003     Eckenfels. Bernd, 16 Oct 2003     Ugo Corda, 17 Oct 2003     Satish Thatte, 17 Oct 2003     Ugo Corda, 17 Oct 2003     Satish Thatte, 17 Oct 2003     Ugo Corda, 17 Oct 2003     Satish Thatte, 17 Oct 2003     Ugo Corda, 17 Oct 2003     Satish Thatte, 17 Oct 2003     Yaron Goland, 20 Oct 2003     Satish Thatte, 20 Oct 2003     Yaron Goland, 21 Oct 2003     Satish Thatte, 21 Oct 2003     Proposed resolution (Yuzo Fujishima, 10 Mar 2004)     Eckenfels. Bernd, 10 Mar 2004     Yuzo Fujishima, 11 Mar 2004     Ugo Corda, 11 Mar 2004     Yuzo Fujishima, 11 Mar 2004     Ugo Corda, 11 Mar 2004     Yuzo Fujishima, 12 Mar 2004     Ugo Corda, 12 Mar 2004     Yaron Y. Goland, 12 Mar 2004     Alex Yiu, 17 Mar 2004     Satish Thatte, 17 Mar 2004     Proposed resolution - revised (Yuzo Fujishima, 17 Mar 2004)     Monica J. Martin, 17 Mar 2004     Yaron Y. Goland, 18 Mar 2004     Satish Thatte, 18 Mar 2004     Yaron Y. Goland, 19 Mar 2004     Yuzo Fujishima, 25 Mar 2004     Discussed at 14 April con call (document details)     Alex Yiu, 28 Apr 2004     Yuzo Fujishima, 28 Apr 2004     Satish Thatte, 28 Apr 2004     Alex Yiu, 2 May 2004     Satish Thatte, 2 May 2004     Alex Yiu, 3 May 2004     Satish Thatte, 4 May 2004     Alex Yiu, 4 May 2004     Yaron Y. Goland, 6 May 2004     Satish Thatte, 6 May 2004     Goran Olsson, 6 May 2004     Satish Thatte, 6 May 2004     Alex Yiu, 12 May 2004     Revised proposal (Alex Yiu, 15 Jun 2004)     Upload of revised proposal (Alex Yiu, 15 Jun 2004)     Peter Furniss, 16 Jun 2004     Satish Thatte, 16 Jun 2004     Peter Furniss, 16 Jun 2004     Alex Yiu, 16 Jun 2004     Assaf Arkin, 18 Jun 2004     Satish Thatte, 18 Jun 2004     Peter Furniss, 18 Jun 2004     Francisco Curbera, 18 Jun 2004     Satish Thatte, 18 Jun 2004     Alex Yiu, 18 Jun 2004     Francisco Curbera, 19 Jun 2004     Satish Thatte, 19 Jun 2004     Francisco Curbera, 20 Jun 2004     Alex Yiu, 21 Jun 2004     Issue_37_Proposal_Draft.html (document details)     Revised proposal (Alex Yiu, 21 Jun 2004)     Resend of revised proposal (Satish Thatte, 21 Jun 2004)     Resend of revised proposal (Satish Thatte, 21 Jun 2004)     Proposed resolution (Francisco Curbera, 23 Jun 2004)     Alex Yiu, 23 Jun 2004     Issue_37_Proposal_Draft_simplified.html (document details)     Proposed resolution (Alex Yiu, 23 Jun 2004)
Changes: 11 Jul 2003 - new issue;    11 Jul 2003 - fields: Links;    31 Jul 2003 - fields: Champion;    12 Aug 2003 - fields: Links;    18 Sep 2003 - fields: Links;    27 Sep 2003 - fields: Links;    13 Oct 2003 - fields: Links;    14 Oct 2003 - fields: Links;    16 Oct 2003 - fields: Links;    17 Oct 2003 - fields: Links;    21 Oct 2003 - fields: Links;    10 Mar 2004 - fields: Links, Status, Proposed resolution;    11 Mar 2004 - fields: Links;    13 Mar 2004 - fields: Links;    17 Mar 2004 - fields: Links;    19 Mar 2004 - fields: Links;    20 Mar 2004 - fields: Links;    25 Mar 2004 - fields: Links;    22 Apr 2004 - fields: Links;    29 Apr 2004 - fields: Links;    3 May 2004 - fields: Links;    4 May 2004 - fields: Links;    5 May 2004 - fields: Links;    6 May 2004 - fields: Links;    7 May 2004 - fields: Links;    12 May 2004 - fields: Links;    16 Jun 2004 - fields: Proposed resolution, Links;    17 Jun 2004 - fields: Links;    18 Jun 2004 - fields: Links;    19 Jun 2004 - fields: Links;    20 Jun 2004 - fields: Links;    21 Jun 2004 - fields: Proposed resolution, Links;    22 Jun 2004 - fields: Links;    23 Jun 2004 - fields: Links, Status, Proposed resolution;    24 Jun 2004 - fields: Status, Proposed resolution, Resolution;    15 Jul 2004 - fields: In spec

Issue 38: Directed Activity Graph and block structured

Status: resolved
In spec: no change
Date added: 13 Jul 2003
Date submitted: 09 July 2003
Submitter: Assaf Arkin
Champion: Assaf Arkin
Document: BPEL specification
Description: The current specification provides a syntax that combines both DAG and block structured constructs. This leads to some redundancy, since some block structured constructs are not necessary given the alternative way to represent them using the <flow> activity and links.

There may be good rationale for supporting such constructs. However, no good rationale has been given in the spec. An explicit description of the rationale for including such redundancy, or the purpose it serves would be helpful in weighing up other changes to the specification.
Qualifier: clarification
Resolution: Proposed in Yaron Goland, 19 Jan 2004, decided 4 February 2004 con call

Close with no change to the specification.
Rationale: I (Yaron) talked with Assaf Arkin, who opened the issue and he agreed that the resolution to issue 23 : Rationale for sequence vs. flow also resolved this issue. Therefore he agrees to having this issue closed without change to the specification.
Links: Announcement, 13 Jul 2003     Proposed resolution (Yaron Goland, 19 Jan 2004)
Changes: 13 Jul 2003 - new issue;    13 Jul 2003 - fields: Links;    31 Jul 2003 - fields: Champion;    20 Jan 2004 - fields: Links, Status, Proposed resolution;    4 Feb 2004 - fields: Status, Proposed resolution, Resolution, Rationale


Issue 39: Inconsistent syntax for query attribute values in spec examples

Status: resolved
In spec: 4 June 2004
Date added: 16 Jul 2003
Date submitted: 16 July 2003
Submitter: Ugo Corda
Champion: Ugo Corda
Document: BPEL specification (document details )
Description: It looks like the syntax for query attribute values is inconsistent throughout the examples presented in the spec.

On page 38:

<bpws:propertyAlias propertyName="tns:taxpayerNumber" 
        messageType="txmsg:taxpayerInfo" part="identification" 
        query="/socialsecnumber"/> 
instead of query="/identification/socialsecnumber"

On page 49:

<bpws:propertyAlias propertyName="cor:customerID" 
        messageType="tns:POMessage" part="PO" 
        query="/PO/CID"/> 
(and similarly the three following propertyAlias elements in the same example)

On page 92:

<bpws:propertyAlias propertyName="tns:shipOrderID" 
        messageType="sns:shippingNoticeMsg" 
        part="shipNotice" 
        query="/ShipNoticeHeader/shipOrderID"/> 
instead of query="/shipNotice/ShipNoticeHeader/shipOrderID" (and similarly the four following propertyAlias elements in the same example)

It seems that the example on page 49 is correct and the other ones are wrong.

In fact, sec. 14.3, Assignment, says:

"For XPath 1.0, the value of the query attribute MUST be an absolute locationPath (with '/' meaning the root of the document fragment representing the entire part). It is used to identify the root of a subtree within the document fragment representing the part."
and sec. 8.2, Defining Properties, says:
"The interpretation of the message, part, and query attributes is the same as in the corresponding from-spec in copy assignments (see Assignment).

Resolution: decided in TC conf call, 20 August 2003
See text in message Ugo Corda, 18 Aug 2003

Links: Ugo Corda, 12 Jul 2003     Announcement, 16 Jul 2003     Ugo Corda, 31 Jul 2003     Edwin Khodabakchian, 31 Jul 2003     Ugo Corda, 31 Jul 2003     Eckenfels. Bernd, 31 Jul 2003     Ugo Corda, 31 Jul 2003     Ugo Corda, 31 Jul 2003     Glenn Mi, 31 Jul 2003     Kevin Liu, 31 Jul 2003     Ugo Corda, 31 Jul 2003     Ugo Corda, 31 Jul 2003     Ugo Corda, 1 Aug 2003     Diane Jordan, 1 Aug 2003     Kevin Liu, 4 Aug 2003     Ugo Corda, 4 Aug 2003     Danny van der Rijn, 4 Aug 2003     Monica Martin, 5 Aug 2003     Discussed at meeting, 6 August (document details)     Ugo Corda, 18 Aug 2003
Changes: 16 Jul 2003 - new issue;    20 Jul 2003 - fields: Links;    31 Jul 2003 - fields: Links;    31 Jul 2003 - fields: Champion;    31 Jul 2003 - fields: Links;    31 Jul 2003 - fields: Links;    31 Jul 2003 - fields: Links;    1 Aug 2003 - fields: Links;    3 Aug 2003 - fields: Links;    5 Aug 2003 - fields: Links;    7 Aug 2003 - fields: Links;    18 Aug 2003 - fields: Links;    20 Aug 2003 - fields: Status, Resolution;    9 Jun 2004 - fields: In spec

Issue 40: attribute name "variable" or "message"

Status: resolved
In spec: no change
Date added: 24 Jul 2003
Date submitted: 24 July 2003
Submitter: Peter Furniss
Description: On invoke, reply etc. using the name "variable" for the attribute that defines which variable holds the sent or received message doesn't seem very obvious. Wouldn’t it be clearer to rename the “variable” attribute to be “message” (with “inputMessage”, “outputMessage” on invoke)?
Qualifier: minor
Resolution: Proposed in Yaron Goland, 19 Jan 2004, decided 4 February 2004 con call

Close with no change to the specification.
Rationale: The issue was originally opened by Peter Furniss based on a complaint by Alastair Green. I (Yaron) talked with Peter and he agreed that he has gotten used to the naming and so has no objections to the issue being closed with no action.
Links: Announcement, 24 Jul 2003     Proposed resolution (Yaron Goland, 19 Jan 2004)     Peter Furniss, 22 Jan 2004     Satish Thatte, 26 Jan 2004
Changes: 24 Jul 2003 - new issue;    25 Jul 2003 - fields: Links;    20 Jan 2004 - fields: Links, Status, Proposed resolution;    23 Jan 2004 - fields: Links;    26 Jan 2004 - fields: Links;    4 Feb 2004 - fields: Status, Proposed resolution, Resolution, Rationale;    9 Jun 2004 - fields: In spec


Issue 41: onMessage handler definition

Status: resolved
In spec: 4 June 2004
Date added: 31 Jul 2003
Categories: Event Handling, Syntax and validation, Specification editing
Date submitted: 30 July 2003
Submitter: Ram Jeyaraman
Champion: Ram Jeyaraman
Document: BPEL specification (page 25, version 1.1)
Description: The onMessage definition (part of eventHandlers), is missing a cardinality symbol "*". Refer to page 80 for a correct definition.
Qualifier: typo
Resolution: Proposed in message Ram Jeyaraman, 21 Sep 2003, decided in TC conf call, 1 October 2003

The editorial error on page 25 will be corrected to align with the definition on page 80
Links: Announcement, 31 Jul 2003     Discussed at Redmond face-to-face - resolution to be proposed     Ram Jeyaraman, 21 Sep 2003     Satish Thatte, 23 Sep 2003     John Evdemon, 23 Sep 2003
Changes: 31 Jul 2003 - new issue;    31 Jul 2003 - fields: Links;    10 Sep 2003 - fields: Champion;    18 Sep 2003 - fields: Links;    22 Sep 2003 - fields: Links;    23 Sep 2003 - fields: Links;    24 Sep 2003 - fields: Links;    1 Oct 2003 - fields: Status, Resolution;    9 Jun 2004 - fields: In spec


Issue 42: Need for Formalism

Status: resolved
In spec: no change
Date added: 31 Jul 2003
Categories: Technology concepts
Date submitted: 31 July 2003
Submitter: Sid Askary
Description: There is a need for formalism. It will allow us to not only reason about the current specification and related issues, but also uncover issues that would otherwise go unnoticed. Empirical deduction is not sufficient. Other efforts have begun to formalize their language (i.e. XQUERY).
Revisitable: yes
Resolution: Proposed in Peter Furniss, 20 Feb 2004, decided at conference call 3 March 2004

Close without change to the specification.
Rationale: Although the use and definitions of formalisms can be useful in understanding and defining a specification, including such in a formal description as normative in a specification that is also in natural language and less formal expressions has the drawbacks:

  1. it is a very large effort, and can significantly delay the completion of the specification
  2. formal specifications tend to be understood only by a few and many of the subject-area experts will use and think in terms of the non-formal description, in development of both the specification and implementations.
  3. if there is conflict between the formal and non-formal which is to have precedence ?

Separate formal descriptions of bpel, not included in the specification and without normative authority are encouraged. The TC will establish a publically-accessible space in the website for supplementary information on formalism with appropriate links.
Links: Sid Askary, 28 Jul 2003     Steve Ross-Talbot, 28 Jul 2003     Ron Ten-Hove, 28 Jul 2003     Announcement, 31 Jul 2003     Proposed resolution (Peter Furniss, 20 Feb 2004)     Peter Furniss, 20 Feb 2004     Satish Thatte, 22 Feb 2004     Frank Leymann, 22 Feb 2004     Ron Ten-Hove, 23 Feb 2004
Changes: 31 Jul 2003 - new issue;    31 Jul 2003 - fields: Links;    23 Feb 2004 - fields: Links, Status, Proposed resolution;    25 Feb 2004 - fields: Links;    3 Mar 2004 - fields: Status, Proposed resolution, Resolution, Rationale, Revisitable


Issue 43: Setting up Periodic Alarms

Status: resolved
In spec: 16 Aug 2004
Date added: 31 Jul 2003
Categories: State management
Date submitted: 30 July 2003
Submitter: Ram Jeyaraman
Champion: Ram Jeyaraman
Description: The current spec does not provide for specifying periodicity of an alarm event. One can conceive of a periodic alarm that is used, for example, in process state monitoring, etc.
<onAlarm for="duration-expr"?
     until="deadline-expr"?
     repeat="duration-expr"?
     frequency="cardinal-expr"?>*
         alarmActivity
</onAlarm>

Resolution: Proposed in Yaron Y. Goland, 16 Jun 2004, decided at San Francisco f-t-f

The text as proposed (and copied here) will be modified in line with the resolution of issue 13 : Future Usage of XPATH 2.0 and XQuery 1.0 , changing the attributes to elements.

The syntax for onAlarm element be changed to:

<onAlarm for="duration-expr"? until="deadline-expr"? 
repeatEvery="duration-expr"?>
    activity
</onAlarm>
repeatEvery can appear on its own, or with one of the other two attributes. If on its own, the semantics of repeatEvery are that from the time that the event handler is instantiated until it is un-instantiated an event handler will be created every duration-expr period. Like onEvent handlers each onAlarm handler created as a consequence of a repeatEvery exists independently of all other instances.

If one of "for" or "until" attributes and "repeatEvery" are present, the event handler is not created until the "for" or "until" attribute time; thereafter it is recreated at the interval defined by "repeatEvery".
Links: Ram Jeyaraman, 29 Jul 2003     Dieter Roller, 29 Jul 2003     Ram Jeyaraman, 29 Jul 2003     Announcement, 31 Jul 2003     Discussed at Redmond face-to-face     Ram Jeyaraman, 21 Sep 2003     Satish Thatte, 23 Sep 2003     Ben Bloch, 23 Sep 2003     Satish Thatte, 23 Sep 2003     Ben Bloch, 24 Sep 2003     Satish Thatte, 24 Sep 2003     Ram Jeyaraman, 24 Sep 2003     Proposed resolution (Yaron Y. Goland, 16 Jun 2004)     Satish Thatte, 18 Jun 2004     Yaron Y. Goland, 21 Jun 2004     Edwin Khodabakchian, 21 Jun 2004     Frank Leymann, 22 Jun 2004
Changes: 31 Jul 2003 - new issue;    31 Jul 2003 - fields: Links;    10 Sep 2003 - fields: Champion;    18 Sep 2003 - fields: Links;    22 Sep 2003 - fields: Links;    23 Sep 2003 - fields: Links;    24 Sep 2003 - fields: Links;    17 Jun 2004 - fields: Links, Status, Proposed resolution;    19 Jun 2004 - fields: Links;    22 Jun 2004 - fields: Links;    24 Jun 2004 - fields: Status, Proposed resolution, Resolution;    17 Aug 2004 - fields: In spec


Issue 44: portType is duplicated on Invoke activity and partnerLinkType

Status: resolved
In spec: 16 Aug 2004
Reopened: By decision of TC conf call meeting, 29 Oct 2003 (document details)
Date added: 5 Aug 2003
Categories: Syntax and validation, Intra-process messages, Correlation
Date submitted: 01 August 2003
Submitter: Marin, Mike
Description: The Invoke activity requires a partnerLink and a portType. However the partnerLink refers to a partnerLinkType, which also includes the portType. Therefore the portType in the Invoke is redundant.

A partnerLinkType do refer to a maximum of two portTypes. Assuming that a process does not invokes itself, then the Invoke refers to the partnerRole, not myRole, so there is only one possible portType, for that Invoke. In the other hand, if we assume the process can invoke itself, then it will be better to specify the role in the Invoke activity instead of the portType, because role has process semantics instead of the portType.
Submitter's Proposal: I propose that portType on the Invoke activity be removed and instead an optional role be included instead. When the role is specified, it must correspond to one of the two roles defined in the partnerLink. If the role is not specified the partnerRole in the partnerLink should be assumed.
First resolution: proposed in message Mike Marin, 19 Aug 2003, decided in TC conf call, 20 August 2003

Remove the portType from the invoke activity and use the portType that corresponds to the partnerRole in the partnerLink.

This covers most if not all the use cases. With the only exception of a process that wants to call itself, which is discussed by issue 52


Resolution: Proposed in Yaron Y. Goland, 4 Jun 2004, decided at San Francisco f-t-f

It is moved that the portType attribute be made optional.

If the portType attribute is included in a message activity then the value of the portType attribute MUST match the portType value implied by the combination of explicitly specified partnerLink and the role implicitly specified by the message activity. A failure to match as previously described MUST result in a static checking error.
Links: Announcement, 5 Aug 2003     Satish Thatte, 11 Aug 2003     Satish Thatte, 11 Aug 2003     Mike Marin, 11 Aug 2003     Satish Thatte, 11 Aug 2003     Yaron Goland, 12 Aug 2003     Satish Thatte, 12 Aug 2003     Eckenfels. Bernd, 12 Aug 2003     Danny van der Rijn, 12 Aug 2003     Yaron Goland, 13 Aug 2003     Satish Thatte, 14 Aug 2003     Monica Martin, 17 Aug 2003     Mike Marin, 19 Aug 2003     see also issue 52     Yaron Goland, 19 Aug 2003     Mike Marin, 19 Aug 2003     Yaron Goland, 19 Aug 2003     Kevin Liu, 16 Oct 2003     Satish Thatte, 16 Oct 2003     Chris Keller, 16 Oct 2003     Kevin Liu, 16 Oct 2003     Satish Thatte, 16 Oct 2003     Yaron Goland, 20 Oct 2003     Proposed resolution (Yaron Y. Goland, 4 Jun 2004)
Changes: 5 Aug 2003 - new issue;    5 Aug 2003 - fields: Links;    12 Aug 2003 - fields: Links;    14 Aug 2003 - fields: Links;    18 Aug 2003 - fields: Links;    19 Aug 2003 - fields: Links;    20 Aug 2003 - fields: Status, Resolution;    16 Oct 2003 - fields: Links;    17 Oct 2003 - fields: Links;    20 Oct 2003 - fields: Links;    4 Nov 2003 - fields: Status, First resolution (renamed from Resolution), Reopened;    9 Jun 2004 - fields: Links, Status, Proposed resolution;    22 Jun 2004 - fields: Status, Proposed resolution, Resolution;    17 Aug 2004 - fields: In spec


Issue 45: Wording of "while" activity

Status: resolved
In spec: 4 June 2004
Date added: 7 Aug 2003
Date submitted: 06 August 2003
Submitter: Danny van der Rijn
Champion: Danny van der Rijn
Document: BPEL specification
Description: In section 12.3, the "while" activity is described as follows:

"The while activity supports repeated performance of a specified iterative activity. The iterative activity is performed until the given Boolean while condition no longer holds true."

The use of the word "until" in the description can cause the reader to conflate the semantics of the "while" activity with a (currently) non-existent "repeat-until" activity that evaluates the condition after the loop has executed, and therefore always executes at least once.
Submitter's proposal: Change the wording to read:

"The while activity supports repeated performance of a specified iterative activity. The iterative activity is performed as long as the given Boolean while condition holds true."

Resolution: decided in TC conf call, 20 August 2003
To be referred to the editorial committee.

Links: Announcement, 7 Aug 2003     Danny van der Rijn, 7 Aug 2003     Harvey Reed, 7 Aug 2003     Eckenfels. Bernd, 9 Aug 2003
Changes: 7 Aug 2003 - new issue;    7 Aug 2003 - fields: Links;    8 Aug 2003 - fields: Links, Champion;    9 Aug 2003 - fields: Links;    20 Aug 2003 - fields: Status, Resolution;    9 Jun 2004 - fields: In spec

Issue 46: Namespace for the document fragment representing a part

Status: resolved
In spec: 4 June 2004
Date added: 7 Aug 2003
Date submitted: 07 August 2003
Submitter: Chris Keller
Description: The document fragment for a message part declared as a type in a query attribute, when treated as suggested in issue 39 : Inconsistent syntax for query attribute values in spec examples , requires specification of the namespace in the xpath below part name in the query. Further for XPath 1.0 compliance, all elements that have a namespace should be qualified.

In XPath 1.0 there is no default namespace for evaluation meaning that all names need to be qualified with a prefix. In XPath 2.0 there is the use of a default namespace, but this specification is referencing 1.0. Putting that aside for a moment in both 1.0 and 2.0 no namespace is not equal to default namespace. Let's take an example:

  <message name="poMessage"> 
    <part name="PO" type="tns:purchaseOrder"/> 
  </message> 

<bpws:property name="poNumber" type="xsd:positiveInteger"/>

<bpws:propertyAlias propertyName="tns:poNumber" messageType="tns:poMessage" part="PO" query="/PO/Header/PONumber"/>

</bpws:propertyAlias>

If as suggested in issue 39 we assume that the Part PO is included in the query and has no namespace (namespace URI is null) association. This query in order to be correct in XPath should be formulated as:

 /PO/tns:Header/tns:PONumber 

Note the section Node Tests from XPath 1.0 – section 2.3 Node Tests)

"A node test that is a QName is true if and only if the type of the node (see [5 Data Model]) is the principal node type and has an expanded-name equal to the expanded-name specified by the QName. For example, child::para selects the para element children of the context node; if the context node has no para children, it will select an empty set of nodes. attribute::href selects the href attribute of the context node; if the context node has no href attribute, it will select an empty set of nodes.

A QName in the node test is expanded into an expanded-name using the namespace declarations from the expression context. This is the same way expansion is done for element type names in start and end-tags except that the default namespace declared with xmlns is not used: if the QName does not have a prefix, then the namespace URI is null (this is the same way attribute names are expanded). It is an error if the QName has a prefix for which there is no namespace declaration n the expression context."

Note the statement "except that the default namespace declared with xmlns is not used: if the QName does not have a prefix, then the namespace URI is null"

Now in XPath 2.0 it is slightly different (XPath 2.0 section 3.2.1.2 Node Tests)

"A node test that consists of a QName is called a name test. A name test is true if and only if the kind of the node is the principal node kind and the expanded-QName of the node is equal to the expanded-QName specified by the name test. For example, child::para selects the para element children of the context node; if the context node has no para children, it selects an empty set of nodes. attribute::abc:href selects the attribute of the context node with the QName abc:href; if the context node has no such attribute, it selects an empty set of nodes.

A QName in a name test is expanded into an expanded-QName using the in-scope namespaces in the expression context. It is a static error if the QName has a prefix that does not correspond to any in-scope namespace. An unprefixed QName, when used as a name test on an axis whose principal node kind is element, has the namespaceURI of the default element namespace in the expression context; otherwise, it has no namespaceURI."

Note the statement: "An unprefixed QName, when used as a name test on an axis whose principal node kind is element, has the namespaceURI of the default element namespace in the expression context; otherwise, it has no namespaceURI."

So in either case we need to qualify the namespace for your message part declared as a type example. And if we are following the XPath 1.0 specification we should qualify all elements that have a namespace since no default namespace is applied. In this case basically every query in the bpel specification is incorrect and should contain prefixes for all element names associated with namespaces in the XPath expressions.
Resolution: Proposed in Francisco Curbera, 24 Sep 2003, decided at 15 October 2003

The document fragment for a message part declared as a type is represented in XPath expressions (inside a "query" attribute) as an element with local name equal to the part name (this is according to the resolution of issue 39.) In addition, the namespace URI of that element is considered to be a null URI.

Links: issue 39 : Inconsistent syntax for query attribute values in spec examples     Ugo Corda, 7 Aug 2003     Chris Keller, 7 Aug 2003     Announcement, 7 Aug 2003     Ugo Corda, 7 Aug 2003     Chris Keller, 7 Aug 2003     Ugo Corda, 7 Aug 2003     Ugo Corda, 7 Aug 2003     Chris Keller, 7 Aug 2003     Ugo Corda, 7 Aug 2003     Sanjiva Weerawarana, 7 Aug 2003     Sanjiva Weerawarana, 7 Aug 2003     David RR Webber, 7 Aug 2003     Ugo Corda, 7 Aug 2003     Sanjiva Weerawarana, 7 Aug 2003     David RR Webber, 7 Aug 2003     David RR Webber, 7 Aug 2003     Sanjiva Weerawarana, 8 Aug 2003     David RR Webber, 8 Aug 2003     Chris Keller, 8 Aug 2003     Sanjiva Weerawarana, 8 Aug 2003     David RR Webber, 8 Aug 2003     John Evdemon, 8 Aug 2003     David RR Webber, 8 Aug 2003     Discussed at Redmond face-to-face     Proposed resolution (Francisco Curbera, 24 Sep 2003)
Changes: 7 Aug 2003 - new issue;    7 Aug 2003 - fields: Links, description corrected from original announcement;    8 Aug 2003 - fields: Links;    18 Sep 2003 - fields: Links;    25 Sep 2003 - fields: Links;    30 Sep 2003 - fields: Proposed resolution, Status;    1 Oct 2003 - fields: Vote announcement;    8 Oct 2003 - fields: Vote announcement;    15 Oct 2003 - fields: Status, Vote announcement, Proposed resolution, Resolution;    9 Jun 2004 - fields: In spec

Issue 47: Which Version of WSDL should we use?

Status: resolved
In spec: no change
Date added: 8 Aug 2003
Date submitted: 07 August 2003
Submitter: Liu, Kevin
Document: BPEL specification
Description: The BPEL4WS 1.1 draft uses WSDL1.1. Given the time the draft was created, it's very reasonable that WSDL1.1 was used. As time elapses and WSDL1.2 is about to emerge, it may be the time for us to reconsider which version of WSDL should BPEL 1.2 (or whatever number we choose to version our deliverable) be based on. The decision may have significant impact on our workload and maybe schedule.

WSDL1.2 is still under construction, but it's already obvious that some key changes will be made to the core WSDL language. For example, portType will be called "interface", support for interface inheritance (sort of) will be added, and most importantly for BPEL, the message construct will most likely be removed (the W3C web services description WG has just reached consensus in its F2F last week that). Hopefully the public will have access to a relatively stable draft by November as the W3C group is targeting to produce a last call draft by then.

We are facing a timing issue here. Our charter gives us 9 months to produce a TC draft. Let's assume that we will get the job done on time J , and we will have a new version of BPEL delivered in February 2004. Though nobody can tell for sure at this point of time, but it's likely that WSDL1.2 (at least part 1 for the core language) may be released in about the same time frame, if not earlier. If we will not be able to meet our deadline in February, WSDL1.2 may already been there for a little while when we do our release.

I would like suggest that the TC consider to:

1. Assess the necessity for establishing a form liaison with the W3C WSD working group to coordinate schedules and get updates on key feature changes

2. Assess the impact of relevant WSDL changes on BPEL
Resolution: Proposed in Kevin Liu, 4 Oct 2003, decided at 15 October 2003

This issue was created to have a general discussion about what to do with WSDL1.2 (or whatever version number W3C WSD WG may call it eventually, same below)

As discussed in the Redmond F2F (Kevin Liu, 22 Sep 2003) and the Oct.1 con call, we agreed not to use WSDL1.2 for WSBPEL since it is still under construction and its availability is still uncertain.

We will try to align with WSDL1.2 work via identifying and addressing particular relevant feature changes. issue 71 : Removal of wsdl:message and issue 15 : WSDL MEPs will be used to clarify potential impacts of removal of message construct and WSDL1.2 patterns

Issue 47 closed without specific change to the specification.

Links: Announcement, 8 Aug 2003     Kevin Liu, 15 Sep 2003     Discussed at Redmond face-to-face     First proposed resolution (Kevin Liu, 22 Sep 2003)     Discussed at TC conf call, 1 October 2003     see also issue 15     see also issue 71        see also issue 72        Much of the discussion on issue 72 has a subject line identifying this issue     Revised proposed resolution (Kevin Liu, 4 Oct 2003)     Eckenfels. Bernd, 6 Oct 2003
Changes: 8 Aug 2003 - new issue;    8 Aug 2003 - fields: Links;    15 Sep 2003 - fields: Links;    18 Sep 2003 - fields: Links;    23 Sep 2003 - fields: Links;    1 Oct 2003 - fields: Status, Proposed resolution, Vote announcement, Links;    2 Oct 2003 - fields: Links;    3 Oct 2003 - fields: Links;    6 Oct 2003 - fields: Links;    8 Oct 2003 - fields: Vote announcement;    15 Oct 2003 - fields: Status, Vote announcement, Proposed resolution, Resolution


Issue 48: XML Transform Support

Status: resolved
In spec: no change
Date added: 12 Aug 2003
Categories: Data handling, Expressions
Date submitted: 12 August 2003
Submitter: Yaron Goland
Document: BPEL specification
Description: How should BPEL support XML transformations? For example, we could make it possible to include a XSLT or XQUERY transform in a BPEL.
Resolution: Proposed in Yaron Y. Goland, 25 Mar 2004, decided by Web ballot (ended 28 Apr 2004)

Closed with no change to the spec.
Vote announcement: Web ballot (ends 28 Apr 2004)
Rationale: With the agreed resolution of issue 13 : Future Usage of XPATH 2.0 and XQuery 1.0 it is now possible to add in support for languages such as XQUERY. (See also discussion in Yaron Y. Goland, 25 Mar 2004 and messages referenced from that)
Links: Announcement, 12 Aug 2003     issue 11 : Query in <to> close should allow assigning to new locations     Yaron Goland, 11 Aug 2003     Yaron Goland, 13 Aug 2003     Proposed resolution (Yaron Y. Goland, 25 Mar 2004)     Danny van der Rijn, 25 Mar 2004     Yaron Y. Goland, 25 Mar 2004     Discussed at Walldorf f-t-f (document details)
Changes: 12 Aug 2003 - new issue;    12 Aug 2003 - fields: Links;    14 Aug 2003 - fields: Links;    25 Mar 2004 - fields: Links, Status, Proposed resolution;    22 Apr 2004 - fields: Vote announcement, Links;    29 Apr 2004 - fields: Status, Proposed resolution, Resolution, Rationale


Issue 49: Disambiguating <receive>s to <reply> to

Status: resolved
In spec: no change
Date added: 12 Aug 2003
Date submitted: 12 August 2003
Submitter: Danny van der Rijn
Description: Imagine a process that has more than one <receive> outstanding on a particular partnerLink/porttype/operation. There is currently no way to tell which one to <reply> to when a <reply> is encountered.
Resolution: Proposed in Danny van der Rijn, 14 Jan 2004, decided at conf call, 21 January 2004

Closed as a duplicate of 26.
Links: Announcement, 12 Aug 2003     Dieter Roller, 14 Aug 2003     Danny van der Rijn, 14 Aug 2003     Dieter Roller, 17 Aug 2003     Monica Martin, 17 Aug 2003     Danny van der Rijn, 18 Aug 2003     Danny van der Rijn, 4 Sep 2003     Danny van der Rijn, 5 Sep 2003     Dieter Roller, 7 Sep 2003     Danny van der Rijn, 8 Sep 2003     Monica Martin, 25 Sep 2003     Danny van der Rijn, 25 Sep 2003     Edit group action (Satish Thatte, 14 Jan 2004)     Proposed resolution (Danny van der Rijn, 14 Jan 2004)
Changes: 12 Aug 2003 - new issue;    12 Aug 2003 - fields: Links;    14 Aug 2003 - fields: Links;    18 Aug 2003 - fields: Links;    19 Aug 2003 - fields: Links;    8 Sep 2003 - fields: Links;    26 Sep 2003 - fields: Links;    14 Jan 2004 - fields: Links, Status, Proposed resolution;    15 Jan 2004 - fields: Links;    27 Jan 2004 - fields: Status, Proposed resolution, Resolution


Issue 50: Semantics for "dangling receive"

Status: resolved
In spec: 4 June 2004
Date added: 12 Aug 2003
Date submitted: 12 August 2003
Submitter: Danny van der Rijn
Description: Should WSBPEL make explicit the semantics for a <receive> that has no matching <reply> at run-time?
Resolution: proposed in Dieter Roller, 25 Nov 2003, agreed at Melbourne face-to-face, 10 December 2003

A receive activity for an inbound request/response operation is said to be *open* if that activity has been executed and no corresponding reply activity has been executed. A fault bpel:missingReply is thrown if the process instance reaches the end of its execution, and one or more receive activities remain open. This fault indicates a modeling error that was not detected by static analysis.

Links: Announcement, 12 Aug 2003     Proposed resolution (Dieter Roller, 25 Nov 2003)
Changes: 12 Aug 2003 - new issue;    12 Aug 2003 - fields: Links;    25 Nov 2003 - fields: Links, Status, Proposed resolution;    10 Dec 2003 - fields: Status, Proposed resolution, Resolution;    9 Jun 2004 - fields: In spec

Issue 51: Section 9.3.1 & Schema Validation

Status: open
Date added: 18 Aug 2003
Categories: Data handling, Expressions
Date submitted: 18 August 2003
Submitter: Yaron Goland
Document: BPEL specification
Description: Section 9.3.1 specifies a design where to copy from one variable to another the schema of the source must either be identical to or a sub-set of the schema of the destination. This makes it impossible to do such things as use a scratch variable with the schema <ANY> as a source even if its contents are valid against the schema of the destination. This email contains a description of the problem and a proposal for a solution.
Links: Yaron Goland, 8 Aug 2003     Announcement, 18 Aug 2003     Edit group action (Satish Thatte, 14 Jan 2004)     Discussed at Walldorf f-t-f (document details)     see rationale in issue 100     Dieter Koenig1, 24 Nov 2004
Changes: 18 Aug 2003 - new issue;    18 Aug 2003 - fields: Links;    15 Jan 2004 - fields: Links;    22 Apr 2004 - fields: Links;    23 Jun 2004 - fields: Links;    25 Nov 2004 - fields: Links

Issue 52: Specify how flows in the same process send messages to each other

Status: resolved
In spec: No change
Date added: 18 Aug 2003
Categories: Intra-process messages, Correlation
Date submitted: 18 August 2003
Submitter: Yaron Goland
Document: BPEL specification
Description: Should BPEL provide a standard way to specify how flows in the same process send messages to each other? It is possible and critical that flows in the same process be able to send messages to each other but there is no standard way to specify that this is happening in a BPEL process definition.
Original title: Should BPEL provide a standard way to specify how flows in the same process send messages to each other?
Resolution: proposed in Dieter Koenig1, 17 Sep 2004, agreed at f-t-f, 22 Sept 2004

Close with no change to spec.
Links: Announcement, 18 Aug 2003     Yaron Goland, 18 Aug 2003     split from issue 44     Maciej Szefler, 20 Aug 2003     Satish Thatte, 20 Aug 2003     Danny van der Rijn, 20 Aug 2003     Tony Andrews, 20 Aug 2003     Yaron Goland, 20 Aug 2003     Edwin Khodabakchian, 20 Aug 2003     Yaron Goland, 20 Aug 2003     Edwin Khodabakchian, 20 Aug 2003     Yaron Goland, 20 Aug 2003     Ugo Corda, 20 Aug 2003     Danny van der Rijn, 20 Aug 2003     Eckenfels. Bernd, 21 Aug 2003     Satish Thatte, 23 Aug 2003     Yaron Goland, 26 Aug 2003     Satish Thatte, 26 Aug 2003     Assaf Arkin, 26 Aug 2003     Ron Ten-Hove, 27 Aug 2003     Satish Thatte, 27 Aug 2003     Ron Ten-Hove, 27 Aug 2003     Sazi Temel, 28 Aug 2003     Satish Thatte, 28 Aug 2003     David RR Webber, 30 Aug 2003     Yaron Goland, 2 Sep 2003     David RR Webber, 3 Sep 2003     Frank Leymann, 3 Sep 2003     Monica Martin, 3 Sep 2003     David RR Webber, 3 Sep 2003     Yaron Goland, 3 Sep 2003     Assaf Arkin, 3 Sep 2003     Yaron Goland, 29 Sep 2003     Satish Thatte, 30 Sep 2003     Yaron Goland, 30 Sep 2003     Satish Thatte, 30 Sep 2003     Edwin Khodabakchian, 30 Sep 2003     Yaron Y. Goland, 27 Aug 2004     Proposed resolution (Yaron Y. Goland, 16 Sep 2004)     Francisco Curbera, 17 Sep 2004     Proposed resolution (Dieter Koenig1, 17 Sep 2004)     Yaron Y. Goland, 17 Sep 2004     Yaron Y. Goland, 17 Sep 2004     Assaf Arkin, 18 Sep 2004     Dieter Koenig1, 19 Sep 2004     Satish Thatte, 21 Sep 2004
Changes: 18 Aug 2003 - new issue;    19 Aug 2003 - fields: Links;    20 Aug 2003 - fields: Links;    21 Aug 2003 - fields: Links;    23 Aug 2003 - fields: Links;    26 Aug 2003 - fields: Links;    27 Aug 2003 - fields: Links;    28 Aug 2003 - fields: Links;    30 Aug 2003 - fields: Links;    3 Sep 2003 - fields: Links;    4 Sep 2003 - fields: Links;    8 Sep 2003 - fields: Links;    29 Sep 2003 - fields: Links;    30 Sep 2003 - fields: Links;    1 Oct 2003 - fields: Links;    25 Mar 2004 - fields: Title, Original title;    27 Aug 2004 - fields: Links;    16 Sep 2004 - fields: Links, Status, Proposed resolution;    17 Sep 2004 - fields: Links;    18 Sep 2004 - fields: Links, Status, Proposed resolution;    20 Sep 2004 - fields: Links;    21 Sep 2004 - fields: Links;    23 Sep 2004 - fields: Status, Proposed resolution, Resolution, In spec


Issue 53: Include Business Transaction Management (BTM) constructs

Status: resolved
In spec: 1.34, 19 June 2004
Date added: 26 Aug 2003
Categories: Process coordination
Origin: Choreology submission on business transaction management (document details), issue A
Date submitted: 26 August 2003
Submitter: Alastair Green
Champion: Peter Furniss
Description: There are three multi-vendor specifications which address the needs of business transaction management for Web Services: Business Transaction Protocol 1.0 (OASIS Committee Specification, June 2002); WS-Transaction (proprietary consortium, August 2002), and the very recently published WS-TXM (proprietary consortium, August 2003).

In our view BTP Cohesions, WS-T Business Activity, and WS-TXM Long-Running Actions are the most relevant aspects of these specifications for WS-BPEL. These aspects overlap to a very high degree, each effectively utilizing a two-phase (promise/decide) outcome protocol. (We should emphasize that there has been little time to analyze or assimilate WS-TXM, so this is a provisional conclusion with respect to that specification).

WS-BPEL should be equipped with the ability to create and terminate business transactions, and to define process participation in such transactions, in a way which is compatible with the intersection of these three capabilities. This will minimize dependence on future standardization efforts in the BTM area.
Original title: Should include Business Transaction Management (BTM) programming constructs compatible with WS-T, BTP and WS-TXM
Revisitable: Yes
Submitter's proposal: Syntax should be added to WS-BPEL to permit

  1. Business transaction creation, manifested by the creation of a business transaction context variable.

  2. Business transaction context reception and transmission (propagation) via invoke/receive/reply, allowing sub-transaction or pass-through behaviour.

  3. Process involvement in business transactions as participants, which can handle positive and negative transaction finalization messages (by means of confirm and cancel handlers).

  4. Two-phase termination of business transactions by selection of participants to be prepared, to be cancelled and to be confirmed.
These facilities are all portable over products implementing WS-T BA, BTP and WS-TXM outcome protocols.

The WS-Coordination specification (proprietary consortium, August 2002) is able to support context passing for multiple coordination protocols, and its use will support the goal of compatibility with WS-T, BTP and WS-TXM.
Resolution: Proposed in Peter Furniss, 31 Mar 2004, decided by Web ballot (ended 28 Apr 2004) , after straw poll at Walldorf ftf

Remove appendix C and all references to particular transaction and coordination protocols.
Close these issues (30, 53-59) without other change to the spec.
Mark the issues as "revisitable" - to be reconsidered in future work on BPEL.
Links: Announcement, 26 Aug 2003     Monica Martin, 27 Aug 2003     Alastair Green, 27 Aug 2003     Issue A in Choreology BTM submission (document details)     David RR Webber, 27 Aug 2003     Monica Martin, 27 Aug 2003     Peter Furniss, 28 Aug 2003     David RR Webber, 28 Aug 2003     Mark Little, 1 Sep 2003     Mark Little, 1 Sep 2003     Mark Little, 1 Sep 2003     David RR Webber, 1 Sep 2003     David RR Webber, 1 Sep 2003     David RR Webber, 1 Sep 2003     Mark Little, 1 Sep 2003     Mark Little, 1 Sep 2003     David RR Webber, 2 Sep 2003     Monica Martin, 1 Sep 2003     Revised submission (document details)     Monica Martin, 14 Sep 2003     Peter Furniss, 13 Oct 2003     Harvey Reed, 13 Oct 2003     Satish Thatte, 13 Oct 2003     Harvey Reed, 13 Oct 2003     Yaron Goland, 20 Oct 2003     Haugen Robert, 24 Oct 2003     Post-Melbourne discussion on coordination questions is under issue 30 issue 30     Alastair J. Green, 7 Jan 2004     Satish Thatte, 7 Jan 2004     Haugen Robert, 8 Jan 2004     Yaron Goland, 8 Jan 2004     Haugen Robert, 9 Jan 2004     Dieter Roller, 9 Jan 2004     Peter Furniss, 9 Jan 2004     Satish Thatte, 9 Jan 2004     Satish Thatte, 9 Jan 2004     Haugen Robert, 9 Jan 2004     Satish Thatte, 10 Jan 2004     Diane Jordan, 12 Jan 2004     Haugen Robert, 12 Jan 2004     Yaron Goland, 12 Jan 2004     Haugen Robert, 12 Jan 2004     Yaron Goland, 13 Jan 2004     Haugen Robert, 13 Jan 2004     Yaron Goland, 20 Jan 2004     Tony Fletcher, 20 Jan 2004     Danny van der Rijn, 20 Jan 2004     LI Yanming / FTR&D / US, 20 Jan 2004     Alastair J. Green, 20 Jan 2004     Tony Fletcher, 23 Jan 2004     Satish's presentation at Melbourne, FL (document details)     Bob Haugen's presentation at Melbourne, FL (document details)     Peter Furniss, 29 Mar 2004     Proposed resolution (Peter Furniss, 31 Mar 2004)     Peter Furniss, 31 Mar 2004     Discussed at Walldorf f-t-f (document details)     Web ballot (ended 28 Apr 2004)
Changes: 26 Aug 2003 - new issue;    26 Aug 2003 - fields: Links;    27 Aug 2003 - fields: Links;    28 Aug 2003 - fields: Links;    3 Sep 2003 - fields: Links;    9 Sep 2003 - fields: Links;    10 Sep 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    13 Oct 2003 - fields: Links;    20 Oct 2003 - fields: Links;    24 Oct 2003 - fields: Links;    9 Dec 2003 - fields: Links;    7 Jan 2004 - fields: Links;    8 Jan 2004 - fields: Links;    9 Jan 2004 - fields: Links;    12 Jan 2004 - fields: Links;    13 Jan 2004 - fields: Links;    14 Jan 2004 - fields: Links;    20 Jan 2004 - fields: Links;    21 Jan 2004 - fields: Links;    23 Jan 2004 - fields: Links;    15 Mar 2004 - fields: Links;    25 Mar 2004 - fields: Title, Original title;    29 Mar 2004 - fields: Links;    31 Mar 2004 - fields: Links, Status, Proposed resolution;    22 Apr 2004 - fields: Vote announcement, Links;    29 Apr 2004 - fields: Status, Proposed resolution, Resolution, Revisitable, Vote announcement, Links;    20 Jun 2004 - fields: In spec


Issue 54: Construct to hold Business transaction contexts

Status: resolved
In spec: 1.34, 19 June 2004
Date added: 26 Aug 2003
Categories: Process coordination
Origin: Choreology submission on business transaction management (document details), issue B
Date submitted: 26 August 2003
Submitter: Peter Furniss
Champion: Peter Furniss
Description: A mechanism is needed to hold business transaction contexts and participant identifications.
Revisitable: Yes
Resolution: Proposed in Peter Furniss, 31 Mar 2004, decided by Web ballot (ended 28 Apr 2004) , after straw poll at Walldorf ftf

Remove appendix C and all references to particular transaction and coordination protocols.
Close these issues (30, 53-59) without other change to the spec.
Mark the issues as "revisitable" - to be reconsidered in future work on BPEL.
Links: Announcement, 26 Aug 2003     Issue B in Choreology BTM submission (document details)     Mark Little, 1 Sep 2003     David RR Webber, 1 Sep 2003     Tony Fletcher, 1 Sep 2003     Mark Little, 1 Sep 2003     Monica Martin, 14 Sep 2003     Proposed resolution (Peter Furniss, 31 Mar 2004)     Peter Furniss, 31 Mar 2004     Discussed at Walldorf f-t-f (with issue 53) (document details)     Web ballot (ended 28 Apr 2004)
Changes: 26 Aug 2003 - new issue;    26 Aug 2003 - fields: Links;    27 Aug 2003 - fields: Links;    3 Sep 2003 - fields: Links;    10 Sep 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    31 Mar 2004 - fields: Links, Status, Proposed resolution;    22 Apr 2004 - fields: Vote announcement, Links;    29 Apr 2004 - fields: Status, Proposed resolution, Resolution, Revisitable, Vote announcement, Links;    20 Jun 2004 - fields: In spec


Issue 55: Business transaction propagation

Status: resolved
In spec: 1.34, 19 June 2004
Date added: 26 Aug 2003
Categories: Process coordination
Origin: Choreology submission on business transaction management (document details), issue C
Date submitted: 26 August 2003
Submitter: Peter Furniss
Champion: Peter Furniss
Description: Constructs are needed to specify how business transaction contexts are transmitted and received with the application messages sent and received via invoke, receive, reply etc.
Revisitable: Yes
Resolution: Proposed in Peter Furniss, 31 Mar 2004, decided by Web ballot (ended 28 Apr 2004) , after straw poll at Walldorf ftf

Remove appendix C and all references to particular transaction and coordination protocols.
Close these issues (30, 53-59) without other change to the spec.
Mark the issues as "revisitable" - to be reconsidered in future work on BPEL.
Links: Announcement, 26 Aug 2003     Issue C in Choreology BTM submission (document details)     Monica Martin, 14 Sep 2003     Proposed resolution (Peter Furniss, 31 Mar 2004)     Peter Furniss, 31 Mar 2004     Discussed at Walldorf f-t-f (with issue 53) (document details)     Web ballot (ended 28 Apr 2004)
Changes: 26 Aug 2003 - new issue;    26 Aug 2003 - fields: Links;    27 Aug 2003 - fields: Links;    10 Sep 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    31 Mar 2004 - fields: Links, Status, Proposed resolution;    22 Apr 2004 - fields: Vote announcement, Links;    29 Apr 2004 - fields: Status, Proposed resolution, Resolution, Revisitable, Vote announcement, Links;    20 Jun 2004 - fields: In spec


Issue 56: Business transaction creation

Status: resolved
In spec: 1.34, 19 June 2004
Date added: 26 Aug 2003
Categories: Process coordination
Origin: Choreology submission on business transaction management (document details), issue D
Date submitted: 26 August 2003
Submitter: Peter Furniss
Champion: Peter Furniss
Description: Constructs are needed to specify how a business transaction is initiated. This will cause the creation of a new, propagatable context value.
Revisitable: Yes
Resolution: Proposed in Peter Furniss, 31 Mar 2004, decided by Web ballot (ended 28 Apr 2004) , after straw poll at Walldorf ftf

Remove appendix C and all references to particular transaction and coordination protocols.
Close these issues (30, 53-59) without other change to the spec.
Mark the issues as "revisitable" - to be reconsidered in future work on BPEL.
Links: Announcement, 26 Aug 2003     Issue D in Choreology BTM submission (document details)     Monica Martin, 14 Sep 2003     Proposed resolution (Peter Furniss, 31 Mar 2004)     Peter Furniss, 31 Mar 2004     Discussed at Walldorf f-t-f (with issue 53) (document details)     Web ballot (ended 28 Apr 2004)
Changes: 26 Aug 2003 - new issue;    26 Aug 2003 - fields: Links;    27 Aug 2003 - fields: Links;    10 Sep 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    31 Mar 2004 - fields: Links, Status, Proposed resolution;    22 Apr 2004 - fields: Vote announcement, Links;    29 Apr 2004 - fields: Status, Proposed resolution, Resolution, Revisitable, Vote announcement, Links;    20 Jun 2004 - fields: In spec


Issue 57: Business transaction termination

Status: resolved
In spec: 1.34, 19 June 2004
Date added: 26 Aug 2003
Categories: Process coordination
Origin: Choreology submission on business transaction management (document details), issue E
Date submitted: 26 August 2003
Submitter: Peter Furniss
Champion: Peter Furniss
Description: Constructs are needed to specify how a BPEL process requests the termination (completion) of a business transaction. The process needs to be able to specify that completion is negative (cancelled/compensated/undone) or positive (confirmed).
Revisitable: Yes
Resolution: Proposed in Peter Furniss, 31 Mar 2004, decided by Web ballot (ended 28 Apr 2004) , after straw poll at Walldorf ftf

Remove appendix C and all references to particular transaction and coordination protocols.
Close these issues (30, 53-59) without other change to the spec.
Mark the issues as "revisitable" - to be reconsidered in future work on BPEL.
Links: Announcement, 26 Aug 2003     Issue E in Choreology BTM submission (document details)     Monica Martin, 14 Sep 2003     Proposed resolution (Peter Furniss, 31 Mar 2004)     Peter Furniss, 31 Mar 2004     Discussed at Walldorf f-t-f (with issue 53) (document details)     Web ballot (ended 28 Apr 2004)
Changes: 26 Aug 2003 - new issue;    26 Aug 2003 - fields: Links;    27 Aug 2003 - fields: Links;    10 Sep 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    31 Mar 2004 - fields: Links, Status, Proposed resolution;    22 Apr 2004 - fields: Vote announcement, Links;    29 Apr 2004 - fields: Status, Proposed resolution, Resolution, Revisitable, Vote announcement, Links;    20 Jun 2004 - fields: In spec


Issue 58: Selective termination of business transaction participants

Status: resolved
In spec: 1.34, 19 June 2004
Date added: 26 Aug 2003
Categories: Process coordination
Origin: Choreology submission on business transaction management (document details), issue F
Date submitted: 26 August 2003
Submitter: Peter Furniss
Champion: Peter Furniss
Description: BTM termination constructs (see issue 57) should allow the selection of registered participants, such that some can be confirmed, some cancelled
Revisitable: Yes
Resolution: Proposed in Peter Furniss, 31 Mar 2004, decided by Web ballot (ended 28 Apr 2004) , after straw poll at Walldorf ftf

Remove appendix C and all references to particular transaction and coordination protocols.
Close these issues (30, 53-59) without other change to the spec.
Mark the issues as "revisitable" - to be reconsidered in future work on BPEL.
Links: Announcement, 26 Aug 2003     Issue F in Choreology BTM submission (document details)     Monica Martin, 14 Sep 2003     Proposed resolution (Peter Furniss, 31 Mar 2004)     Peter Furniss, 31 Mar 2004     Discussed at Walldorf f-t-f (with issue 53) (document details)     Web ballot (ended 28 Apr 2004)
Changes: 26 Aug 2003 - new issue;    26 Aug 2003 - fields: Links;    27 Aug 2003 - fields: Links;    10 Sep 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    31 Mar 2004 - fields: Links, Status, Proposed resolution;    22 Apr 2004 - fields: Vote announcement, Links;    29 Apr 2004 - fields: Status, Proposed resolution, Resolution, Revisitable, Vote announcement, Links;    20 Jun 2004 - fields: In spec


Issue 59: BPEL process as business transaction participant

Status: resolved
In spec: 1.34, 19 June 2004
Date added: 26 Aug 2003
Categories: Process coordination
Origin: Choreology submission on business transaction management (document details), issue G
Date submitted: 26 August 2003
Submitter: Peter Furniss
Champion: Peter Furniss
Description: Constructs are needed to allow a BPEL process to register as a participant in a business transaction, such that the work of the process is confirmed or cancelled in reaction to the appropriate business transaction protocol messages
Revisitable: Yes
Resolution: Proposed in Peter Furniss, 31 Mar 2004, decided by Web ballot (ended 28 Apr 2004) , after straw poll at Walldorf ftf

Remove appendix C and all references to particular transaction and coordination protocols.
Close these issues (30, 53-59) without other change to the spec.
Mark the issues as "revisitable" - to be reconsidered in future work on BPEL.
Links: Announcement, 26 Aug 2003     Issue G in Choreology BTM submission (document details)     Monica Martin, 14 Sep 2003     Proposed resolution (Peter Furniss, 31 Mar 2004)     Peter Furniss, 31 Mar 2004     Discussed at Walldorf f-t-f (with issue 53) (document details)     Web ballot (ended 28 Apr 2004)
Changes: 26 Aug 2003 - new issue;    26 Aug 2003 - fields: Links;    27 Aug 2003 - fields: Links;    10 Sep 2003 - fields: Champion;    15 Sep 2003 - fields: Links;    31 Mar 2004 - fields: Links, Status, Proposed resolution;    22 Apr 2004 - fields: Vote announcement, Links;    29 Apr 2004 - fields: Status, Proposed resolution, Resolution, Revisitable, Vote announcement, Links;    20 Jun 2004 - fields: In spec


Issue 60: process category

Status: resolved
In spec: no change
Date added: 8 Sep 2003
Date submitted: 04 September 2003 For the purposes of internal process execution management and administration of services, one is forced to imagine some property of the process that would identify it with a category. Such internal classification is common practice and can be reflected explicitly:

<process  name="ncname" targetNamespace="uri"
   queryLanguage="anyURI"?
   .
   .
   category="ncname"/>
 
Submitter: Sid Askary
Resolution: Proposed in Dieter Koenig1, 3 Feb 2004, decided 4 February 2004 con call

Close with no change to the specification.
Rationale: The process category (and the process priority) belong to a set of attributes that are independent of the process model and rather subject of the process deployment. Having both covered by WS-Policy (from my point of view a reasonable direction) would also increase the reusability of a process model, as it could be deployed multiple times with different category (and priority, see also the proposed resolution of issue 61) attributes.
Links: Sid Askary, 4 Sep 2003     Ron Ten-Hove, 4 Sep 2003     Satish Thatte, 4 Sep 2003     Ron Ten-Hove, 4 Sep 2003     Edwin Khodabakchian, 4 Sep 2003     Satish Thatte, 4 Sep 2003     Satish Thatte, 4 Sep 2003     Sid Askary, 4 Sep 2003     Ron Ten-Hove, 4 Sep 2003     Ron Ten-Hove, 4 Sep 2003     Edwin Khodabakchian, 4 Sep 2003     Ron Ten-Hove, 5 Sep 2003     Assaf Arkin, 5 Sep 2003     Edwin Khodabakchian, 5 Sep 2003     Ron Ten-Hove, 5 Sep 2003     Announcement, 8 Sep 2003     Proposed resolution (Dieter Koenig1, 3 Feb 2004)
Changes: 8 Sep 2003 - new issue;    8 Sep 2003 - fields: Links;    9 Sep 2003 - fields: Links;    3 Feb 2004 - fields: Links, Status, Proposed resolution;    11 Feb 2004 - fields: Status, Proposed resolution, Resolution, Rationale


Issue 61: process priority

Status: resolved
In spec: no change
Date added: 8 Sep 2003
Date submitted: 04 September 2003 Since we are dealing with an execution language, the question of runtime priority comes to mind. One could imagine an additional process property. While there may be other methods, this could explicitly be expressed as an additional binary attribute to the process element followed, conditionally, by a new element.

a)

<process  name="ncname" targetNamespace="uri"
	queryLanguage="anyURI"?
	.
	.
	prioritize="yes|no"?/>
b)
<priority name="ncname"
	priorityNumber="anynumber"
	PriorityNumberBase="anynumber"/>

NOTE: PriorityNumberBase reflects the devisor for PriorityNumber. Alternatively, one could replace the two by a single floating-point fraction.
Submitter: Sid Askary
Resolution: Proposed in Dieter Koenig1, 3 Feb 2004, decided 4 February 2004 con call

Close with no change to the specification.
Rationale: The process priority (and the process category) belong to a set of attributes that are independent of the process model and rather subject of the process deployment. Having both covered by WS-Policy (from my point of view a reasonable direction) would also increase the reusability of a process model, as it could be deployed multiple times with different priority (and category, see also the proposed resolution of issue 60) attributes.
Links: Sid Askary, 4 Sep 2003     Danny van der Rijn, 4 Sep 2003     Edwin Khodabakchian, 4 Sep 2003     Harvey Reed, 4 Sep 2003     Rajesh Pradhan, 4 Sep 2003     Sid Askary, 4 Sep 2003     Satish Thatte, 4 Sep 2003     Monica Martin, 4 Sep 2003     Ron Ten-Hove, 4 Sep 2003     Sid Askary, 4 Sep 2003     Ron Ten-Hove, 5 Sep 2003     Assaf Arkin, 5 Sep 2003     Monica Martin, 5 Sep 2003     Announcement, 8 Sep 2003     Proposed resolution (Dieter Koenig1, 3 Feb 2004)
Changes: 8 Sep 2003 - new issue;    8 Sep 2003 - fields: Links;    9 Sep 2003 - fields: Links;    3 Feb 2004 - fields: Links, Status, Proposed resolution;    11 Feb 2004 - fields: Status, Proposed resolution, Resolution, Rationale


Issue 62: Event handlers and Serializable Scopes

Status: resolved
In spec: 4 June 2004
Date added: 12 Sep 2003
Date submitted: 12 September 2003
Submitter: Dieter Roller
Description: The specification does not specify exactly the rules that apply for scopes within event handlers and the following behavior is suggested.

Let's assume a scope S, an event handler E associated with S, a scope S-S that is part of S, and a scope S-E that is part of E. Then the following rules apply

  1. If S is marked variableAccessSerializable="yes", then neither scope S-S nor scope S-E can be marked with variableAccessSerializable="yes".

  2. If scope S-S is marked variableAccessSerializable="yes", scope S-E can also be marked variableAccessSerializable="yes"

Related issue: issue 79 : Serializable scopes do not need to be leaf scopes
Resolution: proposed in Dieter Roller, 29 Nov 2003, agreed at Melbourne face-to-face, 10 December 2003

If a serializable scope has an event handler associated with it, no enclosed scope nor a scope in the body of the event handler can be serializable. If a non-serializable scope has an event handler associated with it, an enclosed scope as well as a scope in the body of the event handler can be serializable.

Equivalently: Let's assume a scope S, an event handler E associated with S, a scope S-S that is part of S, and a scope S-E that is part of E. Then the following rules apply

  1. If S is marked variableAccessSerializable="yes", then neither scope S-S nor scope S-E can be marked with variableAccessSerializable ="yes".
  2. If scope S is marked variableAccessSerializable="no", scope S-E and scope S-S can be marked variableAccessSerializable="yes"


Links: Dieter Roller, 15 Sep 2003     Announcement, 12 Sep 2003     Proposed resolution (Dieter Roller, 24 Nov 2003)     Satish Thatte, 24 Nov 2003     Dieter Roller, 24 Nov 2003     Proposed resolution (Dieter Roller, 29 Nov 2003)
Changes: 12 Sep 2003 - new issue;    15 Sep 2003 - fields: Links;    12 Nov 2003 - fields: Related issue;    24 Nov 2003 - fields: Links, Status, Proposed resolution;    29 Nov 2003 - fields: Links, Status, Proposed resolution;    10 Dec 2003 - fields: Status, Proposed resolution, Resolution;    9 Jun 2004 - fields: In spec

Issue 63: Support of Array

Status: open
Date added: 15 Sep 2003
Categories: Data handling, Asynchronous operations
Date submitted: 15 September 2003
Submitter: Ricky Ho
Description: Can BPEL declare a variable as a "collection" for a particular message type ? For example, if there is a <while> which will receive multiple incoming messages into an array variable. How does the BPEL look like ?

I'm not proposing to define a new data type system for BPEL. We should leverage what is already in XML schema. Although in the XML schema there is a construct to declare repetitive occurrence of element structure, it is designed for describing the XML document being exchanged ? There is a difference between "there are some repetitive elements within a document" and "there are multiple documents".

Therefore, I propose that we need to support "Array"

For example, if a seller is receiving multiple POMessage from multiple buyers, (assuming the complex type of POMessage is already defined), the BPEL will look like this ..

<process>
   <variables>
     <array name="poArray" type="POMessage"/>
   </variables>

<sequence> <iterate array="poArray" count="10"> <receive partner="buyer" ... array="poArray"/> </iterate> .... </sequence> </process>


Links: Ricky Ho, 13 Sep 2003     Ricky Ho, 13 Sep 2003     Mark Little, 15 Sep 2003     Ron Ten-Hove, 15 Sep 2003     Announcement, 15 Sep 2003     Ricky Ho, 15 Sep 2003     David RR Webber, 15 Sep 2003     Ricky Ho, 15 Sep 2003     David RR Webber, 15 Sep 2003     Francisco Curbera, 16 Sep 2003     Ricky Ho, 16 Sep 2003     Edwin Khodabakchian, 16 Sep 2003     Ricky Ho, 16 Sep 2003     David RR Webber, 16 Sep 2003     Ugo Corda, 16 Sep 2003     David RR Webber, 16 Sep 2003     Maciej Szefler, 17 Sep 2003     David RR Webber, 17 Sep 2003     Ricky Ho, 17 Sep 2003     Mark Little, 17 Sep 2003     David RR Webber, 17 Sep 2003     Ricky Ho, 17 Sep 2003     David RR Webber, 17 Sep 2003     Eckenfels. Bernd, 23 Sep 2003     David RR Webber, 23 Sep 2003     Eckenfels. Bernd, 23 Sep 2003     David RR Webber, 23 Sep 2003     Yaron Y. Goland, 25 Mar 2004     Kristofer Agren, 29 Mar 2004     Yaron Y. Goland, 9 Apr 2004     Kristofer Agren, 9 Apr 2004     Yaron Y. Goland, 12 Apr 2004     Kristofer Agren, 12 Apr 2004     Alex Yiu, 12 Apr 2004     Dieter Koenig1, 13 Apr 2004     Yaron Y. Goland, 13 Apr 2004     Yaron Y. Goland, 13 Apr 2004     Ivana Trickovic, 14 Apr 2004     Dieter Roller, 14 Apr 2004     Yaron Y. Goland, 14 Apr 2004     Dieter Roller, 14 Apr 2004     Discussed at Walldorf f-t-f (document details)
Changes: 15 Sep 2003 - new issue;    15 Sep 2003 - fields: Links;    16 Sep 2003 - fields: Links;    17 Sep 2003 - fields: Links;    23 Sep 2003 - fields: Links;    24 Sep 2003 - fields: Links;    25 Mar 2004 - fields: Links;    29 Mar 2004 - fields: Links;    10 Apr 2004 - fields: Links;    13 Apr 2004 - fields: Links;    14 Apr 2004 - fields: Links;    15 Apr 2004 - fields: Links;    22 Apr 2004 - fields: Links

Issue 64: Explicit declaration of process instantiation

Status: resolved
In spec: No change
Date added: 15 Sep 2003
Categories: Process lifecycle, State management
Date submitted: 15 September 2003
Submitter: Ricky Ho
Description: There is no way to pass data to "initialize the variables" of a newly creating process instance. The only thing that you can do is to put a <receive ... createInstance="yes"/> as the first activity so that the process instance can receive external data for variable initialization. This model seems attempt to treat every process instance "homogeneous" (they are same when they start). The fact that each process instance may have different values in their process variables is just because they receive different incoming call in their subsequent receive activity.

However, since the spec requires the first basic activity in the process must be a <receive createInstance="yes"/>, the actual intention may try to make the process instance distinct rather than homogeneous.

The current mechanism has the following challenges ...

  1. We need to define additional constraints (such as it must be the first activity ... etc.) which complicates the model.
  2. Locating the "first activity" is not easy. What if the the first activity is a <sequence> which contains another <sequence>, the first basic activity maybe nested multiple levels down. What if the first activity is a <flow> which has multiple starting activities (some are basic activities and some are nested <flows>).

To treat every process instance distinct, I'm suggesting to use a more explicit way to capture the initialization of process instances, which includes

  1. The mechanism to instantiate a new process instance
  2. What variables will be initiated
Therefore, rather than using the following ....
<process>
   ....
   <sequence>
   ....
     <receive partner="buyer" portType="p1" operation="submitOrder" 
variable="var1" createInstance="yes"/>
   ....
     <receive ..../>
   <sequence>
</process>
I suggest to use this ...
<process>
...
   <triggeredBy>
     <receive partner="buyer" portType="p1" variable="var1" 
operation="submitOrder"/>
   </triggeredBy>
...
   <sequence>
   ....
     <receive ..../>
   <sequence>
</process>

Please note the following difference ...

  1. <triggeredBy> is defined outside the root activity, while <receive> is defined inside the root process activity, maybe even multiple level of nesting down. There is no need to locate the first activity in the <triggerBy> case because it is explicitly defined.
  2. <triggeredBy> is using a different element tag which makes the initialization step more explicit.
  3. The subElement of <triggeredBy> is extensible, so we can introduce new ways to instantiate process instances. At this moment, only a <receive> can be nested inside the <triggerBy>.

Resolution: Proposed in Yaron Y. Goland, 5 Oct 2004, decided on 13 Oct 2004 conf call

Closed with no change
Links: Ricky Ho, 13 Sep 2003     Dieter Roller, 13 Sep 2003     Ricky Ho, 13 Sep 2003     Ricky Ho, 13 Sep 2003     Ron Ten-Hove, 15 Sep 2003     Announcement, 15 Sep 2003     Ricky Ho, 15 Sep 2003     Eckenfels. Bernd, 16 Sep 2003     Ricky Ho, 16 Sep 2003     Dieter Roller, 17 Sep 2003     David RR Webber, 17 Sep 2003     Ricky Ho, 17 Sep 2003     Proposed resolution (Yaron Y. Goland, 9 Oct 2004)
Changes: 15 Sep 2003 - new issue;    15 Sep 2003 - fields: Links;    16 Sep 2003 - fields: Links;    17 Sep 2003 - fields: Links;    11 Oct 2004 - fields: Links, Status, Proposed resolution;    14 Oct 2004 - fields: Status, Proposed resolution, Resolution, In spec


Issue 65: Multiple partners of a partner type

Status: resolved
In spec: No change
Date added: 15 Sep 2003
Categories: Partner links, Correlation
Date submitted: 15 September 2003
Submitter: Ricky Ho
Description: Can there be multiple "partners" of a single "partner type" ? For example, in an auction scenario, can I model a seller process that deals with multiple "bidders" (the number of them is unknown) ? If so, how should I declare them in the "partner" section ? Am I actually declaring the "partner type" or the "individual partner" ?

Lets look at an auction scenario ...

  1. Seller announce something to see (for simplicity, let say this is done outside the process)
  2. Seller start the process. There can be many "potential buyers" sending bids to the seller. Seller just collect them.
  3. After the bidding deadline, the seller pick the bid with highest value to be the "buyer"
  4. Seller send a confirmation to the selected buyer

There are three roles. "Seller", "Bidder" and "Buyer". How many <partner> do I have in my BPEL ?
Resolution: Proposed verbally by Satish Thatte and decided at San Francisco f-t-f

Close with no change to spec.
Rationale: Partly a misunderstanding notion of partner, partly covered by other issues, including issue 4.
Links: Announcement, 15 Sep 2003
Changes: 15 Sep 2003 - new issue;    15 Sep 2003 - fields: Links;    22 Jun 2004 - fields: In spec, Resolution, Rationale, Status


Issue 66: Zero or multiple matches of correlation set

Status: resolved
In spec: No change
Date added: 19 Sep 2003
Categories: Correlation
Date submitted: 16 September 2003
Submitter: Ricky Ho
Description:

1) When an incoming message matches multiple process instances, which one will get the message ?

e.g. ProcessA is executing

    <receive portType="PT1" operation="oper" ...   	createInstance="yes"/>

ProcessB is executing

    <receive portType="PT1" operation="oper" ...  	createInstance="yes"/>
An instance of processC is executing
    <receive portType="PT1" operation="oper" ...   createInstance="no"/>

Lets say someone invoke "PT1/oper" and it matches the correlation set of the processC instance. Who gets the message ?

2) When an incoming message matches zero process instances, does the sender get a fault ? or the message will be queued until a matching process instances gets it later

e.g. A sender invoke "PT2/oper2" but no process is listening in that.
Resolution: Proposed verbally by Paco Cabrera and decided at San Francisco f-t-f

No normative change, but the editors' group will add a note for implementors pointing out that there are possible implementation alternatives and that users may need to be aware of these.
Links: Announcement, 20 Sep 2003     Yaron Goland, 23 Sep 2003     Ricky Ho, 23 Sep 2003     Danny van der Rijn, 23 Sep 2003     Prasad Yendluri, 24 Sep 2003     Satish Thatte, 24 Sep 2003     Danny van der Rijn, 24 Sep 2003     Satish Thatte, 24 Sep 2003     Ron Ten-Hove, 24 Sep 2003     Ron Ten-Hove, 24 Sep 2003     Francisco Curbera, 24 Sep 2003     Ugo Corda, 24 Sep 2003     Satish Thatte, 24 Sep 2003     Satish Thatte, 24 Sep 2003     Danny van der Rijn, 24 Sep 2003     Ron Ten-Hove, 24 Sep 2003     Assaf Arkin, 25 Sep 2003     Francisco Curbera, 25 Sep 2003     Satish Thatte, 26 Sep 2003     Ron Ten-Hove, 26 Sep 2003     Ron Ten-Hove, 26 Sep 2003     Tony Fletcher, 29 Sep 2003     Assaf Arkin, 1 Oct 2003     Discussed at San Francisco ftf
Changes: 19 Sep 2003 - new issue;    22 Sep 2003 - fields: Links;    24 Sep 2003 - fields: Links;    25 Sep 2003 - fields: Links;    26 Sep 2003 - fields: Links;    29 Sep 2003 - fields: Links;    1 Oct 2003 - fields: Links;    22 Jun 2004 - fields: Links, In spec, Resolution, Status


Issue 67: Clarify semantics of serializable scopes

Status: resolved
In spec: 4 June 2004
Date added: 24 Sep 2003
Categories: concurrency control
Date submitted: 23 September 2003
Submitter: Satish Thatte
Champion: Satish Thatte
Document: Language specification, section 13.6
Description: There has been some recent discussion regarding the concurrency control semantics of serializable scopes. Yaron Goland had also raised a question regarding the possibility of deadlock among serializable scopes. This section needs additional wording to clarify these issues.
Resolution: Proposed in Satish Thatte, 16 Jan 2004, decided at conf call, 21 January 2004

Add the following sentences to section to Section 13.6 following paragraph 2.

Note that serialization of variable access cannot lead to internal deadlock in a BPEL process instance. The reason being that, conceptually, a serializable scope is not started until it can gain sufficiently exclusive access to all the non-local variables it needs.

Links: Ron Ten-Hove, 15 Sep 2003     Announcement, 24 Sep 2003     Yaron Goland, 24 Sep 2003     Satish Thatte, 26 Sep 2003     Edit group action (Satish Thatte, 14 Jan 2004)     Proposed resolution (Satish Thatte, 15 Jan 2004)     Ron Ten-Hove, 15 Jan 2004     Satish Thatte, 15 Jan 2004     Nickolas Kavantzas, 15 Jan 2004     Ron Ten-Hove, 16 Jan 2004     Proposed resolution (Satish Thatte, 16 Jan 2004)     Goran Olsson, 17 Jan 2004     Satish Thatte, 17 Jan 2004     Ron Ten-Hove, 17 Jan 2004
Changes: 24 Sep 2003 - new issue;    24 Sep 2003 - fields: Links;    25 Sep 2003 - fields: Links;    26 Sep 2003 - fields: Links;    15 Jan 2004 - fields: Links, Status, Proposed resolution;    16 Jan 2004 - fields: Links;    18 Jan 2004 - fields: Links, Status, Proposed resolution;    27 Jan 2004 - fields: Status, Proposed resolution, Resolution;    9 Jun 2004 - fields: In spec

Issue 68: catch syntax broken

Status: resolved
In spec: 4 June 2004
Date added: 26 Sep 2003
Categories: scopes, fault handling, syntax
Date submitted: 26 September 2003
Submitter: Satish Thatte
Document: Language specification
Description: The current catch syntax is broken

This is because we make

  1. The faultName optional, and
  2. the faultVariable is ".. deemed to be declared by virtue of being used as the value of this attribute and is local to the fault handler .."
Thus when the faultName is missing, the type of the faultVariable is unknown.
Resolution: Proposed in Satish Thatte, 15 Jan 2004, decided at conf call, 21 January 2004

Change the syntax of faultHandlers to the following

<faultHandlers>?
    <!-- there must be at least one fault handler or default -->
    <catch faultName="qname"? faultVariable="ncname"?
                              faultMessageType="qname"?>*
      activity
    </catch>
    <catchAll>?
      activity
    </catchAll>
</faultHandlers>

And in addition, add the following sentences immediately following the syntax.

Note that the faultName, faultVariable and faultMessageType attributes are all optional. However, the faultVariable and faultMessageType declarations go together, i.e., they must either both be present or both absent. This is to ensure that the type of the faultVariable is well specified even when the faultName is omitted. Moreover, the faultName and faultVariable attributes cannot both be absent.

Links: Announcement, 26 Sep 2003     Edit group action (Satish Thatte, 14 Jan 2004)     Proposed resolution (Satish Thatte, 15 Jan 2004)     Jim Clune, 15 Jan 2004     Satish Thatte, 15 Jan 2004     jim@parasoft.com, 15 Jan 2004     Satish Thatte, 15 Jan 2004     Proposed resolution (Satish Thatte, 15 Jan 2004)     Yaron Goland, 23 Jan 2004     Satish Thatte, 24 Jan 2004     Yaron Goland, 26 Jan 2004
Changes: 26 Sep 2003 - new issue;    26 Sep 2003 - fields: Links;    15 Jan 2004 - fields: Links, Status, Proposed resolution;    16 Jan 2004 - fields: Links, Status, Proposed resolution;    27 Jan 2004 - fields: Status, Proposed resolution, Resolution;    11 Feb 2004 - fields: Links;    9 Jun 2004 - fields: In spec

Issue 69: When to clear link status

Status: resolved
In spec: 4 June 2004
Date added: 27 Sep 2003
Categories: State management
Date submitted: 27 September 2003
Submitter: Yuzo Fujishima
Document: BPEL 1.1 Specification
Description:

Link target and/or source activities can be run more than once if the process contains a loop (i.e. while acitivity).

When to clear the link status in such cases is not defined in the current specification.
Submitter's Proposal: Possible resolutions are to specify that the link status is cleared:

  1. Only at the very beginning of the process / event handler thread; OR
  2. Every time the scope that directly encloses the link owner flow activity starts; OR
  3. Every time the link owner flow activity starts.

I would propose C. In the following example, A1 and A2 are cleared every time flow A is started and B1 and B2 are cleared every time flow B is started.

<while ...>
  <flow name="base">
    <flow name="A">
      <links>
        <link name="A1"/>
        <link name="A2"/>
      </links>

... activities ... </flow> <while ...> <flow name="B"> <links> <link name="B1"/> <link name="B2"/> </links>

... activities ... </flow> </while> </flow> </while>


Resolution: Proposed in Maciej Szefler, 13 Feb 2004, decided at 18 Feb 2004 con call

Updated proposal for 69: - new subject for script magic - added Satish's clarification of def in 12.5 - replaced "defined" with "declared" (i.e. links are declared)

New text shown in italics, old text as strikeout

Section 12.5: Flow

Change the following text:

In general, a link is said to cross the boundary of a syntactic construct if the source activity for the link is nested within the construct but the target activity is not, or vice versa, if the target activity for the link is nested within the construct but the source activity is not. A link is said to cross the boundary of a syntactic construct if the source or target activity for the link is nested within the construct while the link is declared outside the construct. Note that it is possible for a link to cross the boundary of a syntactic construct even in those cases where both the source and the target activities are nested within the same construct: so long as the link is /declared/ outside that construct.
Section 12.5.1: Link Semantics

Insert the following text:

The precise semantics of link status evaluation are as follows: The link status is a tri-state flag associated with each declared link. This flag may be in the following three states: "positive", "negative", or "unset". Each time a certain flow activity is activated, the link status of all the links declared in that activity is "unset", that is the lifetime of the status of a link is exactly the lifetime of the flow activity within which it is declared. When activity A completes, the following steps are performed to determine the effect of the synchronization links on other activities:

The above changes imply option C (if you all remember the options). The second part is essentially Satish's earlier proposal in the context of the current language, while the first part addresses the problem brought up by Yaron in the conference call relating to while loops that use links declared outside the while loop. The major consequence of the above changes is that the following is no longer permitted:

<flow name="f1">
  <link name="l1">
  <while>
    <flow name="f2">
      <empty>
        <source linkName="l1"/>
      </empty>
      <empty>
        <target linkName="l1"/>
      </empty>
    </flow>
  </while>
</flow>

The link "l1" will now need to be declared in "f2".

The issue of whether links are belong in scopes as opposed to flows will be made a separate issue.
Links: Announcement, 27 Sep 2003     Edit group action (Satish Thatte, 14 Jan 2004)     Proposed resolution (Satish Thatte, 15 Jan 2004)     Maciej Szefler, 22 Jan 2004     Satish Thatte, 26 Jan 2004     Yaron Goland, 26 Jan 2004     Satish Thatte, 26 Jan 2004     Maciej Szefler, 27 Jan 2004     Discussed at 21 January 2004, deferred for further discussion     Satish Thatte, 28 Jan 2004     Maciej Szefler, 28 Jan 2004     Satish Thatte, 28 Jan 2004     Maciej Szefler, 11 Feb 2004     Satish Thatte, 13 Feb 2004     Proposed resolution (Maciej Szefler, 13 Feb 2004)     Eckenfels. Bernd, 13 Feb 2004     Maciej Szefler, 13 Feb 2004
Changes: 27 Sep 2003 - new issue;    27 Sep 2003 - fields: Links;    15 Jan 2004 - fields: Links, Status, Proposed resolution;    22 Jan 2004 - fields: Links;    26 Jan 2004 - fields: Links;    27 Jan 2004 - fields: Links;    28 Jan 2004 - fields: Links;    29 Jan 2004 - fields: Links;    13 Feb 2004 - fields: Links;    16 Feb 2004 - fields: Links, Status, Proposed resolution;    18 Feb 2004 - fields: Links, Status, Proposed resolution, Resolution;    9 Jun 2004 - fields: In spec


Issue 70: suppressJoinFailure default value

Status: resolved
In spec: 4 June 2004
Date added: 30 Sep 2003
Categories: State management
Date submitted: 26 September 2003
Submitter: Jim Clune
Description: The XML schema in the appendix of the BPEL 1.1 spec declares a default value of "no" for the suppressJoinFailure attribute in tActivity and tProcess complexType declarations. This makes sense for tProcess, as it establishes a default to be used until overridden. For tActivity, however, I think that specifying a default value contradicts this statement in section 12.5.2:

A value of "yes" for [suppressJoinFailure] has the effect of suppressing the bpws:joinFailure fault for the activity and all nested activities, except where the effect is overridden by using the suppressJoinFailure attribute with a value of "no" in a nested activity.

By having the schema specify a default value for suppressJoinFailure for each activity element, nested activities always reset the value of suppressJoinFailure instead of inheriting it.
Submitter's proposal: If I am reading this wrong, perhaps someone can clarify. Otherwise, I propose, in the schema's tActivity declaration, replacing this:

<attribute name="suppressJoinFailure" type="bpws:tBoolean" default="no"/>
with this:
<attribute name="suppressJoinFailure" type="bpws:tBoolean" use="optional"/>

Resolution: Proposed in Kevin Liu, 4 Feb 2004, decided at 18 Feb 2004 con call

Make the following changes to the spec:

  1. remove / change the wrong description default value of suppressJoinFailure attribute of an activity from section 6.2:

    Existing Text:

    where the default values are as follows:
    • name. No default value (that is, unnamed)
    • joinCondition. The logical OR of the liveness status of all links that are targeted at this activity
    • suppressJoinFailure. No

    New Text:

    where the default values are as follows:

    • name. No default value (that is, unnamed)
    • joinCondition. The logical OR of the liveness status of all links that are targeted at this activity
    • suppressJoinFailure. In case the suppressJoinFailure attribute is omitted for an activity, it is inherited from its closest enclosing activity.

  2. To remove / change the wrong description from section 11.1 "Standard Attributes for Each Activity": Existing description:
    "The default value of suppressJoinFailure is no."
    New description:
    "In case the suppressJoinFailure attribute is omitted for an activity, it is inherited from its closest enclosing activity"

  3. in Appendix B for Standard Attribute, specify the following in the "Defaults" column for suppressJoinFailure:
    "no for process element. This attribute is optional for activities other than process. When not present for such an activity, it inherits its value from its closest enclosing activity."
  4. To change the description of Section 12.5.2. "Dead-Path-Elimination (DPE)":

    Existing description:

    "The default value of the suppressJoinFailure attribute is "no". This is to avoid unexpected behavior in simple use cases where complex graphs are not involved and links without transition conditions are used for synchronization.
    New description:
    "The default value of the suppressJoinFailure attribute of process element is "no". This is to avoid unexpected behavior in simple use cases where complex graphs are not involved and links without transition conditions are used for synchronization.

  5. change the BPEL schema (in appendix D and its OASIS location) to replace the current tActivity declaration:
    <attribute name="suppressJoinFailure" type="bpws:tBoolean" default="no"/>

    with this:

    <attribute name="suppressJoinFailure" type="bpws:tBoolean" use="optional">

In addition, give the editors action to double check the spec and make editorial changes as they see appropriate to reflect resolution for this issue.
Links: Jim Clune, 26 Sep 2003     Francisco Curbera, 26 Sep 2003     Announcement, 30 Sep 2003     Edit group action (Satish Thatte, 14 Jan 2004)     Proposed resolution (Kevin Liu, 27 Jan 2004)     Alex Yiu, 4 Feb 2004     Kevin Liu, 4 Feb 2004     Satish Thatte, 4 Feb 2004     Proposed resolution (Kevin Liu, 4 Feb 2004)
Changes: 30 Sep 2003 - new issue;    30 Sep 2003 - fields: Links;    15 Jan 2004 - fields: Links;    27 Jan 2004 - fields: Links, Status, Proposed resolution;    4 Feb 2004 - fields: Links, Status, Proposed resolution;    18 Feb 2004 - fields: Status, Proposed resolution, Resolution;    9 Jun 2004 - fields: In spec


Issue 71: Removal of wsdl:message

Status: resolved
In spec: No change
Date added: 1 Oct 2003
Categories: Related standards
Date submitted: 01 October 2003
Submitter: Liu, Kevin
Document: Specification
Description: WSDL 1.2 has removed the message construct. We need to clarify how this WSDL change will impact BPEL.
Resolution: Proposed in Yaron Y. Goland, 5 Oct 2004, decided on 13 Oct 2004 conf call

Closed with no change (c.f resolution of issue 15 : WSDL MEPs )
Links: split from issue 47     Announcement, 1 Oct 2003     Proposed resolution (Yaron Y. Goland, 5 Oct 2004)     Satish Thatte, 6 Oct 2004     Kevin Liu, 9 Oct 2004
Changes: 1 Oct 2003 - new issue;    1 Oct 2003 - fields: Links;    6 Oct 2004 - fields: Links, Status, Proposed resolution;    11 Oct 2004 - fields: Links;    14 Oct 2004 - fields: Status, Proposed resolution, Resolution, In spec


Issue 72: What to do with WS-I BP1.0?

Status: resolved
In spec: 4 June 2004
Date added: 1 Oct 2003
Date submitted: 01 October 2003
Submitter: Liu, Kevin
Champion: Peter Furniss
Document: Specification
Description: WS-I BP1.0 provides clarifications and constraints on the use of WSDL1.1. We need to investigate and decide if BPEL should be aligned with BP1.0. In particular, a few questions need to be answered:

  1. Would BP 1.0 be restricting BPEL to the point that some of BPEL's functionality would not be available?
  2. Would the fact that BP 1.0 only addresses the SOAP/HTTP binding imply that also BPEL should be limited to that type of binding?
  3. Should a BPEL process be offered as a Web service that is BP 1.0 compliant?
  4. Would it be fair to limit BPEL use to interacting with BP 1.0 compliant Web services only?

Resolution: Proposed in Peter Furniss, 12 Nov 2003, agreed at 26 November 2003 conf call meeting

Given that the scope of BP is confined to the specifications it references, and that BPEL is of wider application:

  1. In developing the BPEL language, where reference is made to specifications that are in BP 1.0 scope, the BP 1.0 requirements will normally be followed.

  2. Where use-cases and use-case artifacts are in BP 1.0 scope (i.e. using referenced specifications) they will be BP 1.0 compliant, if possible.

  3. All BPEL implementations SHOULD be configurable such that they can participate in BP1.0 compliant interactions. A BPEL implementation MAY allow the BP 1.0 configuration to be disabled, even for scenarios encompassed by BP 1.0.

Links: Satish Thatte, 1 Oct 2003     Prasad Yendluri, 1 Oct 2003     Satish Thatte, 1 Oct 2003     Ugo Corda, 1 Oct 2003     Eckenfels. Bernd, 1 Oct 2003     Satish Thatte, 1 Oct 2003     Ugo Corda, 1 Oct 2003     Satish Thatte, 1 Oct 2003     Ugo Corda, 1 Oct 2003     Satish Thatte, 1 Oct 2003     Kevin Liu, 1 Oct 2003     Kevin Liu, 1 Oct 2003     Ugo Corda, 1 Oct 2003     Satish Thatte, 1 Oct 2003     Harvey Reed, 1 Oct 2003     Sid Askary, 1 Oct 2003     Eckenfels. Bernd, 1 Oct 2003     Eckenfels. Bernd, 1 Oct 2003     Ugo Corda, 1 Oct 2003     Ugo Corda, 1 Oct 2003     Prasad Yendluri, 1 Oct 2003     Prasad Yendluri, 1 Oct 2003     Announcement, 1 Oct 2003     Ron Ten-Hove, 1 Oct 2003     Francisco Curbera, 2 Oct 2003     Ugo Corda, 2 Oct 2003     Peter Furniss, 2 Oct 2003     Peter Furniss, 2 Oct 2003     Ugo Corda, 2 Oct 2003     Ugo Corda, 2 Oct 2003     Peter Furniss, 2 Oct 2003     Peter Furniss, 2 Oct 2003     Ron Ten-Hove, 2 Oct 2003     Ugo Corda, 2 Oct 2003     Kevin Liu, 2 Oct 2003     Kevin Liu, 2 Oct 2003     Ugo Corda, 2 Oct 2003     Ugo Corda, 2 Oct 2003     Harvey Reed, 2 Oct 2003     Francisco Curbera, 3 Oct 2003     Tony Fletcher, 3 Oct 2003     Ugo Corda, 3 Oct 2003     Ugo Corda, 3 Oct 2003     Harvey Reed, 3 Oct 2003     Tony Fletcher, 3 Oct 2003     Ugo Corda, 3 Oct 2003         Eckenfels. Bernd, 6 Oct 2003         Satish Thatte, 6 Oct 2003     Ugo Corda, 6 Oct 2003     Danny van der Rijn, 6 Oct 2003     Eckenfels. Bernd, 7 Oct 2003     Dieter Roller, 7 Oct 2003     Peter Furniss, 9 Oct 2003     Ugo Corda, 9 Oct 2003     Peter Furniss, 9 Oct 2003     Ugo Corda, 9 Oct 2003     Danny van der Rijn, 9 Oct 2003     Peter Furniss, 9 Oct 2003     Danny van der Rijn, 9 Oct 2003     Kevin Liu, 15 Oct 2003     Yaron Goland, 20 Oct 2003     Ugo Corda, 20 Oct 2003     Proposed resolution (Peter Furniss, 22 Oct 2003)     Satish Thatte, 23 Oct 2003     Ugo Corda, 23 Oct 2003     Satish Thatte, 23 Oct 2003     Yaron Goland, 24 Oct 2003     Ugo Corda, 24 Oct 2003     Peter Furniss, 24 Oct 2003     Ugo Corda, 24 Oct 2003     Yaron Goland, 27 Oct 2003     Ugo Corda, 27 Oct 2003     Francisco Curbera, 28 Oct 2003     Peter Furniss, 3 Nov 2003     Ugo Corda, 3 Nov 2003     Peter Furniss, 3 Nov 2003     Ugo Corda, 3 Nov 2003     Proposed resolution (Peter Furniss, 8 Nov 2003)     Yaron Goland, 10 Nov 2003     Eckenfels. Bernd, 10 Nov 2003     Ugo Corda, 10 Nov 2003     Peter Furniss, 11 Nov 2003     Peter Furniss, 11 Nov 2003     Ugo Corda, 11 Nov 2003     Francisco Curbera, 11 Nov 2003     Ugo Corda, 11 Nov 2003     Danny van der Rijn, 11 Nov 2003     Ugo Corda, 11 Nov 2003     Danny van der Rijn, 11 Nov 2003     Ugo Corda, 11 Nov 2003     Danny van der Rijn, 11 Nov 2003     Eckenfels. Bernd, 11 Nov 2003     Eckenfels. Bernd, 11 Nov 2003     Discussed at 12 Nov meeting     Proposed resolution (Peter Furniss, 12 Nov 2003)     Yaron Goland, 24 Nov 2003
Changes: 1 Oct 2003 - new issue;    1 Oct 2003 - fields: Links;    2 Oct 2003 - fields: Links;    3 Oct 2003 - fields: Links;    6 Oct 2003 - fields: Links;    8 Oct 2003 - fields: Links, Champion;    9 Oct 2003 - fields: Links;    10 Oct 2003 - fields: Links;    16 Oct 2003 - fields: Links;    20 Oct 2003 - fields: Links;    21 Oct 2003 - fields: Links;    22 Oct 2003 - fields: Links, Status, Proposed resolution;    23 Oct 2003 - fields: Links;    24 Oct 2003 - fields: Links;    27 Oct 2003 - fields: Links;    29 Oct 2003 - fields: Links;    3 Nov 2003 - fields: Status, Proposed resolution, Links;    8 Nov 2003 - fields: Links, Status, Proposed resolution;    11 Nov 2003 - fields: Links;    12 Nov 2003 - fields: Links, Status, Proposed resolution;    25 Nov 2003 - fields: Links;    26 Nov 2003 - fields: Status, Proposed resolution, Resolution;    9 Jun 2004 - fields: In spec

Issue 73: "wsdl:fault" element not allowed with one-way operation

Status: resolved
In spec: 4 June 2004
Date added: 6 Oct 2003
Date submitted: 05 October 2003
Submitter: Ugo Corda
Document: main BPEL TC document
Description: The example in section 10.2 incorrectly specifies a wsdl:fault element with a one-way operation, which is not allowed by WSDL 1.1.
<portType name="BuyerPT"> 
    <operation name="AsyncPurchaseResponse"> 
        <input message="smsg:POResponse"/> 
        <fault name="tns:RejectPO" message="smsg:POReject"/> 
    </operation> 
    <operation name="AsyncPurchaseReject"> 
        <input message="smsg:POReject"/> 
    </operation> 
</portType> 

Submitter's proposal: Replace the example with:
<portType name="BuyerPT"> 
    <operation name="AsyncPurchaseResponse"> 
        <input message="smsg:POResponse"/> 
    </operation> 
    <operation name="AsyncPurchaseReject"> 
        <input message="smsg:POReject"/> 
    </operation> 
</portType> 

Resolution: Proposed in Ugo Corda, 8 Jan 2004, decided at conf call, 21 January 2004

Accept the "submitter's proposal".
Links: Announcement, 6 Oct 2003     Proposed resolution (Ugo Corda, 8 Jan 2004)
Changes: 6 Oct 2003 - new issue;    6 Oct 2003 - fields: Links;    8 Jan 2004 - fields: Links, Status, Proposed resolution;    27 Jan 2004 - fields: Status, Proposed resolution, Resolution;    9 Jun 2004 - fields: In spec


Issue 74: Ambiguity in join condition definition

Status: resolved
In spec: 4 June 2004
Date added: 9 Oct 2003
Date submitted: 09 October 2003
Submitter: Dieter Roller
Champion: Bernd Eckenfels
Description: The specs could possibly be interpreted in such a way that activities without an incoming link could also have a join condition. This is not the intended meaning.
Submitter's proposal: Modify the first sentence in the second paragraph in section 12.5.1 as follows :
Every activity that is the target of a link has an implicit or explicit joinCondition attribute associated with it; an activity that is not target of a link has no joinCondition attribute associated with it.
Furthermore it may be helpful to have a similar sentence earlier in the document.
Resolution: proposed in Eckenfels. Bernd, 25 Nov 2003, agreed at Melbourne face-to-face, 10 December 2003

A) remove "joinCondition" from the set of Standard attributes for each activity

B) change standard elements for each activity

- change formal syntax definition:

FROM
  <source .../>*
  <target .../>*
TO
  <sources>
    <source linkName="ncname" transitionCondition="bool-expr"?/>+
  </sources>?
  <targets joinCondition="bool-expr"? >
    <target linkName="ncname"/>+
  </targets>?

- add description of "joinCondition" attribute right below (above 11.3) (removed default value, replaced with default semantic):

The value of the joinCondition attribute is a Boolean-valued expression in the expression language indicated for this document (see Expressions). If this attribute is not present, the join condition is the logical OR of the link status of all incoming links of this activity (see 12.5.1 Link semantics).
(this also aligns the semantic definition with 12.5.1 without using the "default value")

- change text of 11.2: FROM

Each BPEL4WS activity has optional nested standard elements <source> and <target>. The use...
TO
Each BPEL4WS activity has nested standard elements <source> and <target> within the optional containers <sources> and <targets>. The use...
C) update all samples and schema
Links: Announcement, 9 Oct 2003     Eckenfels. Bernd, 14 Oct 2003     Yaron Goland, 20 Oct 2003     Ron Ten-Hove, 20 Oct 2003     Frank Leymann, 21 Oct 2003     Yaron Goland, 22 Oct 2003     Frank Leymann, 23 Oct 2003     Ron Ten-Hove, 23 Oct 2003     Eckenfels. Bernd, 29 Oct 2003     Yaron Goland, 31 Oct 2003     Eckenfels. Bernd, 11 Nov 2003     Eckenfels. Bernd, 25 Nov 2003     Yaron Goland, 1 Dec 2003     Eckenfels. Bernd, 2 Dec 2003     Yaron Goland, 3 Dec 2003     Eckenfels. Bernd, 4 Dec 2003
Changes: 9 Oct 2003 - new issue;    10 Oct 2003 - fields: Links;    14 Oct 2003 - fields: Links;    20 Oct 2003 - fields: Links;    21 Oct 2003 - fields: Links;    22 Oct 2003 - fields: Links;    23 Oct 2003 - fields: Links;    29 Oct 2003 - fields: Links;    31 Oct 2003 - fields: Links;    11 Nov 2003 - fields: Champion;    12 Nov 2003 - fields: Links;    26 Nov 2003 - fields: Links;    2 Dec 2003 - fields: Links;    3 Dec 2003 - fields: Links;    5 Dec 2003 - fields: Links;    9 Dec 2003 - fields: Status, Proposed resolution;    10 Dec 2003 - fields: Status, Proposed resolution, Resolution;    9 Jun 2004 - fields: In spec

Issue 75: Locally Scoped partnerLink declarations

Status: resolved
In spec: 1.35, 30 June 2004
Date added: 21 Oct 2003
Categories: Partner links, Compensation, State management
Date submitted: 21 October 2003
Submitter: Yaron Goland
Document: Main Spec
Description: The inability to define partnerLinks inside of local scopes causes problems, especially with compensation handlers. The group either needs to provide for the ability to define partnerLinks in local scopes or it needs to put in an explanation in the spec for why it isn't possible to have locally scoped partnerLink definitions and then provide some alternate mechanism for dealing with the problems compensation handlers face in dealing with partnerLinks.
Resolution: Proposed in Yaron Y. Goland, 19 May 2004, decided at conf call 9 June 2004

It is proposed that the BPEL specification be modified to allow for the declaration of partnerLinks within scopes. Such a declaration would be accomplished by allowing for the use of the partnerLinks element as a child of the scope element. partnerLinks will be treated similarly to BPEL variable in terms of life cycle management, name collision resolution, etc.
Links: Announcement, 21 Oct 2003     Yaron Goland, 21 Oct 2003     Harvey Reed, 21 Oct 2003     Yaron Goland, 22 Oct 2003     Edwin Khodabakchian, 22 Oct 2003     Assaf Arkin, 23 Oct 2003     Frank Leymann, 23 Oct 2003     Assaf Arkin, 13 Nov 2003     Satish Thatte, 14 Nov 2003     Frank Leymann, 14 Nov 2003     Assaf Arkin, 14 Nov 2003     Assaf Arkin, 14 Nov 2003     Satish Thatte, 16 Nov 2003     Assaf Arkin, 17 Nov 2003     Satish Thatte, 17 Nov 2003     Yaron Goland, 27 Nov 2003     Assaf Arkin, 30 Nov 2003     Assaf Arkin, 2 Dec 2003     Discussed at Walldorf f-t-f (document details)     Yaron Y. Goland, 28 Apr 2004     Proposed resolution (Yaron Y. Goland, 19 May 2004)     Yaron Y. Goland, 20 May 2004
Changes: 21 Oct 2003 - new issue;    21 Oct 2003 - fields: Links;    22 Oct 2003 - fields: Links;    23 Oct 2003 - fields: Links;    13 Nov 2003 - fields: Links;    14 Nov 2003 - fields: Links;    16 Nov 2003 - fields: Links;    17 Nov 2003 - fields: Links;    27 Nov 2003 - fields: Links;    30 Nov 2003 - fields: Links;    2 Dec 2003 - fields: Links;    22 Apr 2004 - fields: Links;    29 Apr 2004 - fields: Links;    19 May 2004 - fields: Links, Status, Proposed resolution;    20 May 2004 - fields: Links;    9 Jun 2004 - fields: Status, Proposed resolution, Resolution;    15 Jul 2004 - fields: In spec


Issue 76: Mandating either Pessimistic or Optimistic Static Analysis

Status: resolved
In spec: no change
Date added: 21 Oct 2003
Categories: Syntax and validation
Date submitted: 21 October 2003
Submitter: Yaron Goland
Document: Main Spec
Description: The spec does not mandate that BPEL engines be either pessimistic or optimistic in their static analysis. Therefore programmers can never know ahead of time what kind of engine they will end up on which all but guarantees portability problems. The spec therefore needs to mandate either pessimistic or optimistic static analysis behavior.
Resolution: Proposed in Yaron Goland, 8 Nov 2003, accepted at 12 November meeting

This issue is a duplicate of issue 9 : Static analysis

Links: Announcement, 21 Oct 2003     Yaron Goland, 21 Oct 2003     Eckenfels. Bernd, 21 Oct 2003     Harvey Reed, 22 Oct 2003     Proposed resolution (Yaron Goland, 8 Nov 2003)
Changes: 21 Oct 2003 - new issue;    21 Oct 2003 - fields: Links;    22 Oct 2003 - fields: Links;    8 Nov 2003 - fields: Links, Status, Proposed resolution;    12 Nov 2003 - fields: Status, Proposed resolution, Resolution


Issue 77: BPEL cannot handle some SOAP header bindings

Status: resolved
In spec: no change
Date added: 21 Oct 2003
Date submitted: 21 October 2003
Submitter: Ugo Corda
Description: Let's suppose we have the following WSDL file:
<message name="In"> 
    <part name="InPart" element="InElement"/> 
</message> 

<message name="Header"> <part name="HeaderPart" element="HeaderElement"/> </message>

<portType name="myPortType"> <operation name="op1"> <input message="In"/> </operation> </portType>

<binding type="myPortType" ... > <soap:binding ..../> <operation name="op1"> <input> <soap:body parts="InPart" ...> <soap:header message="Header" part="HeaderPart" .../> </input> </operation> </binding>

In this example, the abstract operation "op1" refers to message "In", but the binding brings in an additional second message, "Header", for the concrete operation.

It seems that BPEL would not be able to process the "Header" information in any way. For instance, a "receive" operation would only be able to specify one inputVariable, which would be associated with the "In" message and not the "Header" message. In other words, the "Header" message would carry information to the "receive" operation that BPEL would have no access to.

If this is the case, new Web services defined with BPEL in mind could easily modify this scenario by defining both body and header as being part of a single message, but legacy Web services might be out of reach for BPEL.
Resolution: agreed to close with no change in Web ballot (ended 08 Dec 2003)
Vote announcement: Web ballot (ends 08 Dec 2003)
Links: Ugo Corda, 20 Oct 2003     Frank Leymann, 21 Oct 2003     Ugo Corda, 21 Oct 2003     Satish Thatte, 21 Oct 2003     Peter Furniss, 21 Oct 2003     Ugo Corda, 21 Oct 2003     Satish Thatte, 21 Oct 2003     Ugo Corda, 21 Oct 2003     Satish Thatte, 21 Oct 2003     Ugo Corda, 21 Oct 2003     Announcement (erroneously stating as issue 78)     Rajesh Pradhan, 21 Oct 2003     Francisco Curbera, 21 Oct 2003     Ugo Corda, 21 Oct 2003     Reannouncement as issue 77     Peter Furniss, 22 Oct 2003     Peter Furniss, 22 Oct 2003     Ugo Corda, 22 Oct 2003     Yaron Goland, 22 Oct 2003     Satish Thatte, 23 Oct 2003     Satish Thatte, 23 Oct 2003     Frank Leymann, 23 Oct 2003     Peter Furniss, 23 Oct 2003     Ugo Corda, 23 Oct 2003     Ugo Corda, 23 Oct 2003     Frank Leymann, 24 Oct 2003     Maciej Szefler, 27 Oct 2003     jim@parasoft.com, 27 Oct 2003     Yaron Goland, 27 Oct 2003     Frank Leymann, 31 Oct 2003     Ugo Corda, 31 Oct 2003     Ron Ten-Hove, 31 Oct 2003     Ugo Corda, 31 Oct 2003     Ron Ten-Hove, 1 Nov 2003     Ugo Corda, 1 Nov 2003     Satish Thatte, 2 Nov 2003     Ugo Corda, 2 Nov 2003     Ugo Corda, 2 Nov 2003     Satish Thatte, 2 Nov 2003     Ugo Corda, 2 Nov 2003     Satish Thatte, 3 Nov 2003     Satish Thatte, 3 Nov 2003     Frank Leymann, 3 Nov 2003     Ugo Corda, 3 Nov 2003     Satish Thatte, 4 Nov 2003     Ugo Corda, 4 Nov 2003     Satish Thatte, 4 Nov 2003     Ugo Corda, 4 Nov 2003     Satish Thatte, 4 Nov 2003     Ugo Corda, 4 Nov 2003     Satish Thatte, 4 Nov 2003     Harvey Reed, 4 Nov 2003     Satish Thatte, 4 Nov 2003     Ugo Corda, 4 Nov 2003     John Yunker, 4 Nov 2003     Yaron Goland, 19 Nov 2003     Yaron Goland, 19 Nov 2003     Ugo Corda, 19 Nov 2003     Ugo Corda, 19 Nov 2003     Satish Thatte, 19 Nov 2003     Ron Ten-Hove, 19 Nov 2003     Satish Thatte, 19 Nov 2003     Rajesh Pradhan, 19 Nov 2003     Ugo Corda, 19 Nov 2003     Satish Thatte, 19 Nov 2003     Ugo Corda, 19 Nov 2003     Satish Thatte, 19 Nov 2003     Ugo Corda, 19 Nov 2003     Satish Thatte, 19 Nov 2003     Ugo Corda, 19 Nov 2003     Satish Thatte, 19 Nov 2003     Ugo Corda, 19 Nov 2003     Harvey Reed, 19 Nov 2003     Ugo Corda, 19 Nov 2003     Ron Ten-Hove, 19 Nov 2003     Ugo Corda, 19 Nov 2003     Satish Thatte, 19 Nov 2003     Ugo Corda, 19 Nov 2003     Francisco Curbera, 19 Nov 2003     Ugo Corda, 20 Nov 2003     Sanjiva Weerawarana, 20 Nov 2003     Ugo Corda, 20 Nov 2003     Sanjiva Weerawarana, 20 Nov 2003     Ugo Corda, 20 Nov 2003     Ron Ten-Hove, 20 Nov 2003     Ugo Corda, 20 Nov 2003     Ron Ten-Hove, 21 Nov 2003     Ron Ten-Hove, 21 Nov 2003     Ugo Corda, 21 Nov 2003     Ugo Corda, 21 Nov 2003     Sanjiva Weerawarana, 21 Nov 2003     Sanjiva Weerawarana, 21 Nov 2003     Sanjiva Weerawarana, 21 Nov 2003     Francisco Curbera, 21 Nov 2003     Ugo Corda, 21 Nov 2003     Ugo Corda, 21 Nov 2003     Satish Thatte, 21 Nov 2003     Ugo Corda, 21 Nov 2003     Sanjiva Weerawarana, 21 Nov 2003     Ugo Corda, 21 Nov 2003     Satish Thatte, 21 Nov 2003     Ugo Corda, 21 Nov 2003     Sanjiva Weerawarana, 24 Nov 2003     Ugo Corda, 24 Nov 2003     Proposed resolution (Ugo Corda, 24 Nov 2003)     Sanjiva Weerawarana, 24 Nov 2003     Ugo Corda, 24 Nov 2003     Ron Ten-Hove, 25 Nov 2003     Sanjiva Weerawarana, 25 Nov 2003     Edwin Khodabakchian, 25 Nov 2003     Ugo Corda, 25 Nov 2003     Ugo Corda, 25 Nov 2003     Ron Ten-Hove, 25 Nov 2003     Ugo Corda, 25 Nov 2003     Ron Ten-Hove, 26 Nov 2003     Ugo Corda, 26 Nov 2003     Sanjiva Weerawarana, 27 Nov 2003     Ugo Corda, 27 Nov 2003     Sanjiva Weerawarana, 30 Nov 2003     Ugo Corda, 1 Dec 2003     Ron Ten-Hove, 1 Dec 2003     Ugo Corda, 1 Dec 2003     Ron Ten-Hove, 1 Dec 2003     Ugo Corda, 1 Dec 2003     Ron Ten-Hove, 1 Dec 2003     Ugo Corda, 2 Dec 2003     Yaron Goland, 2 Dec 2003     Ron Ten-Hove, 3 Dec 2003     Peter Furniss, 3 Dec 2003
Changes: 21 Oct 2003 - new issue;    22 Oct 2003 - fields: Links;    23 Oct 2003 - fields: Links;    24 Oct 2003 - fields: Links;    27 Oct 2003 - fields: Links;    31 Oct 2003 - fields: Links;    1 Nov 2003 - fields: Links;    2 Nov 2003 - fields: Links;    3 Nov 2003 - fields: Links;    4 Nov 2003 - fields: Links;    19 Nov 2003 - fields: Links;    20 Nov 2003 - fields: Links;    21 Nov 2003 - fields: Links;    24 Nov 2003 - fields: Links, Status, Proposed resolution;    25 Nov 2003 - fields: Links;    26 Nov 2003 - fields: Links;    27 Nov 2003 - fields: Status, Vote announcement, Links;    30 Nov 2003 - fields: Links;    1 Dec 2003 - fields: Links;    2 Dec 2003 - fields: Links;    3 Dec 2003 - fields: Links;    10 Dec 2003 - fields: Status, Proposed resolution, Resolution


Issue 78: New value for initiate on multi-starts

Status: resolved
In spec: No change
Date added: 22 Oct 2003
Categories: Correlation
Date submitted: 22 October 2003
Submitter: Yaron Goland
Description: The use of the initiate attribute on correlations in multi-start activities can easily lead to misunderstanding. The 'initiate='yes'' value is only true on the first multi-start activity that fires, the rest are magically transformed into 'initiate='no'' once the first multi-start fires. One can easily imagine the resulting confusion. To prevent this confusion perhaps we should add a new value for initiate such as 'initiate='multistart''. This shows that the programmer understands the special semantics of correlation sets on multi-start activities.
Resolution: Proposed verbally by Yaron Goland and decided at San Francisco f-t-f

Closed as a subset of issue 37 : Initiating Correlation Set More Than Once
Links: Announcement, 22 Oct 2003     Edit group action (Satish Thatte, 14 Jan 2004)     Yaron Y. Goland, 26 Mar 2004
Changes: 22 Oct 2003 - new issue;    22 Oct 2003 - fields: Links;    15 Jan 2004 - fields: Links;    26 Mar 2004 - fields: Links;    22 Jun 2004 - fields: In spec, Resolution, Status


Issue 79: Serializable scopes do not need to be leaf scopes

Status: resolved
In spec: 4 June 2004
Date added: 22 Oct 2003
Date submitted: 22 October 2003
Submitter: Ron Ten-Hove
Document: BPEL 1.1 Specification
Description: The specification states that "Serializable scopes must not be nested. A scope marked with variableAccessSerializable="yes" must be a leaf scope."

The latter requirement is too restrictive. Sub-scopes can be included in a serializable scope, and will be treated as logically part of the serializable scope. What should be banned are nested serializable scopes.
Proposed resolution: Ron Ten-Hove, 11 Nov 2003
Resolution: Proposed in Ron Ten-Hove, 11 Nov 2003, accepted at 12 November meeting

Section 13.6, first paragraph, in the input text reads:

When the variableAccessSerializable attribute is set to "yes", the scope provides concurrency control in governing access to shared variables. Such a scope is called a serializable scope. Serializable scopes must not be nested. A scope marked with variableAccessSerializable="yes" must be a leaf scope.

The final sentence should be modified such that the paragraph should read a follows:

When the variableAccessSerializable attribute is set to "yes", the scope provides concurrency control in governing access to shared variables. Such a scope is called a serializable scope. Serializable scopes must not be nested. A scope marked with variableAccessSerializable="yes" must not contain other serializable scopes, but may contain scopes that are not marked as serializable. In the latter case, access to shared variables from within such enclosed scopes is controlled by the enclosing serializable scope.

Note that this should be borne in mind in considering and applying issue 36 : Multiple instances of event handler and issue 62 : Event