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: Re: [wsbpel] Issue 147 - making <forEach> more extensible



Hi all,

I have circulated a proposal of adding XPath-expression iteratorVariable logic back to the <forEach> construct among a number of TC members. The iteratorVariable syntax will look like the following:
----------------------------------------
<forEach> 
          <iterator name="expensiveItem" type="po:itemType">
                <expression> $po/items[@amt>300] </expression>
          </iterator>
     <scope>
        <sequence>
          <invoke inputVariable="expensiveItem" ...  />
          ...
        </sequence>
     </scope>
</forEach>
----------------------------------------

[ The main theme of the iterator proposal is based on macro-expansion. It is similar to how propertyAlias works today and in BPEL 1.1. The iteratorVariable provides users convenience and encapsulation and the higher level encapsulation will ease code optimization.]

I have received some warm responses to this iterator idea. However, at the same time, Yaron still have some concern about the iteratorVariable model. E.g. whether we can wrap up the BPEL 2.0 spec on time.  I had some offline chat with him. I came up with a compromised proposal, which Yaron prefers.

Basically, dropping the iteratorVariable and adding an xsd:any extension point for us to add iteratorVariable in future (maybe as an extension first).
-------------------------
<forEach counterName="ncname" standard-attributes >
     standard-elements
    <iteration> 
        (
           <numericCounter>
                 <startCounterValue expressionLanguage="anyURI"?>
                       ...
                 </startCounterValue>
                 <finalCounterValue expressionLanguage="anyURI"?>
                        ...
                 </finalCounterValue>
           </numericCounter>
           |
           xsd:any namespace="##other"
        )
    </iteration>
     scope
</forEach>

------------------------

I am OK with the new compromised proprosal mainly because I want to finish the spec earlier also. :-)

Please voice your opinion here. (I can send out the full proposal of iteratorVariable, if the TC members request.)


Thanks!



Regards,
Alex Yiu





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