- From: Erik Bruchez <ebruchez@orbeon.com>
- Date: Fri, 19 Jun 2009 10:52:27 -0700
- To: Forms WG <public-forms@w3.org>
Nick, Thanks for the feedback. > I have general remark on using the select attribute instead of > nodeset is that when we are going to allow XPath 2.0 there are also > use cases for allowing sequences of item() instead of a nodeset as > we know it today for repeat. So I'm not really sure what the best > solution for this is, introducing a new attribute that supports > item()* or relax the value space of nodeset. I know that the name > nodeset hints a set or sequence of node() but on the other hand > introducing a new attribute for item()* complicates XForms. Maybe we should think about the bigger issue of binding/selection attribute proliferation in XForms. We have * @model * @ref * @nodeset * @bind * @value * @context * And possibly a new attribute like @select to express item()* That's a lot of attributes! Do we have a way out of it? I think it would be wrong (tm) to use @nodeset to refer to anything but an actual node-set! Note that with XPath 2.0, a mechanism to select item()* is also needed for variables, and could also be used by itemset: <itemset select="(1 to 20)"> <label value="."/> <value value="concat('value-', .)"/> </itemset> Or even: <itemset select="(1 to 20)"> <label select="."/> <value select="concat('value-', .)"/> </itemset> Another solution could consist in using @value all the way. There are two drawbacks to this: * In XForms, @value is currently always used to express that the result is used a string. * For variables, if XForms has <variable name="..." value="..."/>, then it is confusing for people used to XSLT. >> Should the element support the "model", "ref", "value", "bind" >> attributes as well? > If we do not introduce a new select attribute I think we should also > support "model", "ref", "value", "bind" (I think model should be > supported either way) Either way we could support all single-node binding attributes. They would simply determine the context evaluation node for the value. In fact, this is what we do in our implementation for xforms:variable. So you could write: <context model="my-model" ref="names" select="string-join(name, ', ')"/> >> Can we support a QName for the context information name? > I agree that this should be names according to the DOM-Level-2- > Events spec (are mapped to members in JavaScript for example), and > therefore we can't allow QNames because other consumers won't be > able to handle our events. Sounds reasonable. We support QNames in our implementation, but it seems like we shouldn't if we want to remain compatible with DOM! -Erik -- Orbeon Forms - Web Forms for the Enterprise Done the Right Way http://www.orbeon.com/
Received on Friday, 19 June 2009 17:53:08 UTC