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 11 - Creation of Repeating/Optional XML Structures


At our September F2F, I presented some alternatives for addressing issue 11.
The alternative were met with some opposition to even addressing the issue
at all.  In order to get the conversations going again, I'd like to present
a very high level view of the pros and cons of addressing the issue.  It
seems most appropriate to me to begin at this level, before spending any
more time actually trying to solve the issue.

The issue:  To modify a variable's XML structure, one uses the <assign>
<from/> <to variable="ncname" part="ncname"? query="queryString"?/>
</assign> syntax.

"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. The location path MUST
select exactly one node. If the location path selects zero nodes or more
than one node during execution, then the standard fault
bpws:selectionFailure MUST be thrown by a compliant implementation."

What this ends up meaning is that if there is a repeating element that has N
instances of the element, the N+1th may not be created.  Additionally, if
there is an optional element that is not present, it can not be created.

Pro-Issue 11:  There are many use cases where the creation of repeating
and/or optional elements is required.  A notable one is looping over an
array of inputs, calling a service on each one, and creating an array of
outputs.  There are many more.  BPEL would be crippled without this feature.

Anti-Issue 11:  BPEL has some very primitive data handling capabilities, but
should never have full-blown data handling capabilities.  If the language is
modified to solve this problem, we are starting down a slippery slope.  What
will the next data handling addition be?  When will the ocean be boiled?  If
data handling capabilites beyond what are currently included are needed,
then simply call out to a data handling/modification service.



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