OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

wsbpel message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Issue 6 - Rough draft of proposal for vote


A very common business process design pattern is to have multiple 
simultaneous actions where only one of the actions needs to complete in 
order for the process to continue. A classic example is a search 
operation. The proposal given below enables the programmer to directly 
express this pattern in the BPEL process.

The schema for flow would change to:

<flow standard-attributes orJoin="Boolean"?>
         standard-elements
        <links>?
	 <link name="ncname">+
        </links>
        activity+
</flow>

Section 12.5

Change: A flow completes when all of the activities in the flow have 
completed.

To: The orJoin attribute controls the behavior of the flow. If orJoin is 
set to false then the flow completes when all of the activities in the 
flow have completed. The default value of orJoin is false. If orJoin is 
set to true then the flow successfully completes when at least one 
activity completes, any uncompleted activities are immediately 
terminated as defined in section 13.4.2. The phrase "at least one" is 
used in the previous sentence to account for the inherent difficulties 
in determining which activity completes first in a parallel execution 
environment. As such it is at least theoretically possible that more 
than one activity could successfully complete in an orJoin="true" flow 
before termination of uncompleted activities begins. When an 
orJoin="true" flow successfully completes, as previously defined, its 
compensation handler is instantiated.


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]