- From: Roland Merrick <roland_merrick@uk.ibm.com>
- Date: Wed, 30 Jan 2002 10:59:52 +0000
- To: Plechsmíd Martin <Martin.Plechsmid@merlin.cz>
- Cc: "'www-forms@w3.org'" <www-forms@w3.org>
Greetings Martin, we now seem to have answered your first question, I'll deal with each question in a separate response. So, for question 3 > 3) I'm not sure what you are asking here. If an element is > required to have > a value and none is supplied then any form control bound to > that element > will need to explain that the required constraint has not > been satisfied. > If no form control is bound to an element which requires a > value and for > which none is supplied, this is an authoring error which the > user cannot > fix. I understood the "required" attribute as "null value cannot be send to the server" rather than "the user himself has to supply the value". If the second interpretation is closer to the truth (=the official interpretation), you are right, this would be an authoring error. But I interpret (maybe wrongly) the form instance as "the form itself" and the form controls as "a mere visualization" - trying to distinguish between the purpose and the presentation. Hence, the "required" constraint could be put even onto an instance-data element that doesn't have a form-control counter-part. Your understanding is correct, if an instance data node has an associated "required="true" then a value must exist before the XForm can be considered "valid" which is a precondition for submit processing. The author is responsible for ensuring that it is possible to supply a value for such an instance data node, this MAY be by binding a form control that would allow the user to supply a value to the node or it may be by an xforms action such as setValue or even by a script. Regards, Roland Ease of Use Strategy Tel: +44 (0)1926-465440, Fax: +44 (0)1926-465323, Mobile: +44 (0)773-0300-937 Internet: Roland_Merrick@uk.ibm.com Ease of Use: http://www.ibm.com/easy/ http://w3.ibm.com/easy/ Plechsmíd Martin <Martin.Plechsmid@ To: Roland Merrick/UK/IBM@IBMGB merlin.cz> cc: "'www-forms@w3.org'" <www-forms@w3.org>, www-forms-request@w3.org 29/01/2002 16:07 Subject: RE: FW: XForms how-to Hello Roland. > 2) The element <name /> should not be readOnly, as you state > the user needs > to be able to supply a value. We supply two form controls > which you should > use. <input /> should be used in the circumstance that the > user is allowed > to change the value and <output /> should be used when you > wish to display > the value but not allow it to be changed. I have several arguments against the solution you offer: a) The suggested default rendering of the xforms:output element is html:span, not readonly html:input. Of course, I could use the "class" attribute to decide how to render the xforms:output element. But if I understand it well, the "class" attribute is to denote the semantic meaning of the element (e.g. class="name"), not how the element is to be rendered (e.g. class="html-input"). b) Imagine you have fields for two persons in a form and a checkbox that denotes whether the second person is the same as the first one: <person-one /> <person-two /> <both-persons-are-equal xsd:type="boolean" /> When the (corresponding form-control) checkbox is checked, I want to copy the values from "person-one" to "person-two", but I don't want to allow the user to edit the values for the second user. If the checkbox is not checked, the values for "person-two" should be freely editable. As the specification doesn't differ between modifications from the corresponding form-control and by an xforms:action, it is impossible (in my opinion) to copy the values from "person-one" to "person-two" when the checkbox is checked (when having e.g. <xforms:bind ref="person-two" readOnly="yes" relevant="both-persons-are-equal = true()" />). c) In some cases, it seems to me much more natural to put the "readOnly" constraint onto the form-control instead onto the corresponding data-element. > 3) I'm not sure what you are asking here. If an element is > required to have > a value and none is supplied then any form control bound to > that element > will need to explain that the required constraint has not > been satisfied. > If no form control is bound to an element which requires a > value and for > which none is supplied, this is an authoring error which the > user cannot > fix. I understood the "required" attribute as "null value cannot be send to the server" rather than "the user himself has to supply the value". If the second interpretation is closer to the truth (=the official interpretation), you are right, this would be an authoring error. But I interpret (maybe wrongly) the form instance as "the form itself" and the form controls as "a mere visualization" - trying to distinguish between the purpose and the presentation. Hence, the "required" constraint could be put even onto an instance-data element that doesn't have a form-control counter-part. > 4) If you application requires information from two sources and that a > subset the "blended" combination is submitted, then this > could be tackled > by merging the two inputs into a single instance at the server (i.e. > outside the scope of XForms) and designing the merged > structure such that > the appropriate subset can be specified by the "single node binding > attributes" of a submitInfo. No, I meant to have one source only. Perhaps I explained it not clearly enough: Consistently with the interpretation "form-instance is primary, form-controls are secondary", the server should not care about what form controls are contained by a particular form (which is a thing of presentation), it should supply only those values that are relevant to it (e.g. those that it can find in the database). Hence, the form can contain also form-controls that the server doesn't know about - and hence didn't supply values for them. But as to each form-control an instance element must correspond, the form has to contain instance data that were not supplied by the server. The supplied and non-supplied data cannot be put into one common xforms:instance, and as each xforms:model element can contain one instance at most, there must be at least two model sections in the form document. This will cause problems when submitting, because each xforms:submitInfo is tied to one particular xforms:model section. Thanks, Martin.
Received on Wednesday, 30 January 2002 06:11:56 UTC