Re: Nodeset bug and nested setvalue in a repeat. (2 of 2)

Thanks Ivan for the comments.
The issue with this one is that the 1.0 spec for XForms is a published
specification.
I have close to 150 forms in production with many clients that use the
setvalue in repeats, and outside of repeats.  All of them are using the
1.0 rule.  Across all of the other adopters of XForms there are probably
several thousand forms so changing the rules is not an option.  Anything
has to add-to the spec, not change it.  There is room for clarification
where the spec is ambiguous but in this case I don't think it is.  The
single-node binding is the context for the value:

10.1.9 ...
The evaluation context for this XPath expression is the result from the
Single Node Binding.

So my proposal is to add something to the XPath expression, not change
the rules.

Xforms 1.1 supports the concept of a context attribute on the xf:insert
element.
I doubt if the process would allow for this to go into the 1.1 spec as
it is far too close to closing so would only really be practical to
consider for the next revision of the spec.

For 1.0 and 1.1 adopters the provision of an extension function seems to
me to be the best way to handle this issue.  So I would propose the
following:

Work on a submission to the wg for the next revision of the spec to do:

1. The 'context' attribute from the 1.1 xf:insert element be considered
as a mechanism to provide the context for the value attribute in a
xf:setvalue.  I can see a number of issues with this but will leave it
alone for now.
2. Add a new xpath function called context(QName) that returns the
context of an xforms element.  This will need to be worked on to explain
the scoping rules when used in nested repeats.

For now I am working on a context(QName) extension function that will be
in the next beta of MozzIE but that is outside the scope of the wg
list.  Check the MozzIE wiki after the weekend for a discussion of how I
am implementing it (comments are always most welcome).

regards

Received on Friday, 13 April 2007 23:46:07 UTC