[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: AW: [wsbpel] Issue - 147 - Serial and Parallel For-Each
Yaron – initial questions:
How is the output of the set of activities running in parallel combined?
What is the fault model, i.e. what happens if a subset of the forked activities fail?
Best regards, Frank Leymann Phone:......+49-711-7816 470 Mobile:.....+49-162-322 4444 e-Mail: Frank.Leymann@informatik.uni-stuttgart.de
-----Ursprüngliche Nachricht-----
This issue has been added to the wsbpel issue list. The issues list is posted as a Technical Committee document to the OASIS WSBPEL TC pages on a regular basis. The current edition, as a TC document, is the most recent version of the document entitled in the "Issues" folder of the WSBPEL TC document list - the next posting as a TC document will include this issue. The list editor's working copy, which will normally include an issue when it is announced, is available at this constant URL. Issue - 147 - Serial and Parallel For-EachStatus:
open <foreach iteratorVariableName="ncname" iteratorVariableType="qname"\ parallel="xs:Boolean" standard-attributes> standard-elements <expression expressionLanguage="anyURI">...</query> activity </foreach>
The expression element would be responsible for returning a node-set with 0 or more nodes in it. Each node MUST be of the type specified by iteratorVariableType. If parallel equals false then each node would be assigned, serially and in document order, to the variable created in an implicit local scope by the attribute iteratorVariableName and the activity would be executed. After the activity successfully completes the variable would be assigned to the next node and the activity run again. If parallel equals true then a series of parallel scopes, with the same operational semantics as parallel executing event handlers, equal in number to the number of nodes in the node-set would be created and each node would be assigned to a variable local to each of the scopes. Note that the scope in which the iterator variable is defined is local to the foreach activity and does not contain either an implicit fault or compensation handler. The lack of these handlers is very similar to the logic that was discuss at the 6/2004 F2F for issue 126. For example: foreach iteratorVariableName="anOrder" iteratorVariableType="b:ar"/ expression expressionLanguage="http://www.w3.org/TR/1999/REC-xpath-19991116" parallel="false" $orderManifest/somePart/ordermanifest/orders ...
Would be equivalent to: scope variables variable name="anOrder" type="b:ar" variable name="currentInstanceNum" type="xs:int" sequence assign replace from expressionLanguage="static" "1" to expressionLanguage="xpath" $currentInstanceNum while condition expressionLanguage="xpath" $currentInstanceNum <= count($orderList/somePart/ordermanifest/orders) sequence assign replace from expressionLanguage="xpath" $orderList/somePart/(ordermanifest/orders)[$currentInstanceNum] to expressionLanguage="xpath" $anOrder assign replace from expressionLanguage="xpath" $currentInstanceNum+1 to expressionLanguage="xpath" $currentInstanceNum ...
To comment on this issue, please follow-up to this announcement on the wsbpel@lists.oasis-open.org list (replying to this message should automatically send your message to that list), or ensure the subject line as you send it starts "Issue - 147 - [anything]" or is a reply to such a message. If you want to formally propose a resolution, please start the subject line "Issue - 147 - Proposed resolution", without any Re: or similar. To add a new issue, see the issues procedures document (but the address for new issue submission is the sender of this announcement). |
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]