Re: Variables and parameters

On 5/12/06, Norman Walsh <Norman.Walsh@sun.com> wrote:
> Yes, but it puts variables/parameters and input/output labels all into
> the same "symbol space" which worries me a bit.

We could solve the "symbol space" issue by introducing an XPath
function. The function would take a label as parameter. So this:

    <p:input ref="label"/>

would be equivalent to:

    <p:input select="output('label')"/>

Pipeline author won't use XPath if the XPath expression is just
output('label'). However using XPath would enable the pipeline author
to pass a subset of the document returned by another step.

One could maybe even think about using XQuery instead of XPath, which
would allow multiple outputs to be combined in a "simple" expression.
But is this going too far? For instance this combines what is returned
for label "doc1" and what is returned for label "doc2" under a <root>
element:

    <p:input select="element root {output('doc1'), output('doc2')}"/>

> | This is more flexible because it means that you can refer to more than one
> | document within the XPath expression.
>
> Indeed. Is that valuable enough to warrant the added complexity?

In my experience, taking a subset of an output and passing it as an
input is a very frequent use case. So I would say that yes, exposing
outputs to XPath expressions is worth the effort.

Alex
-- 
Blog (XML, Web apps, Open Source):
http://www.orbeon.com/blog/

Received on Thursday, 18 May 2006 02:27:06 UTC