W3C home > Mailing lists > Public > www-forms@w3.org > April 2000

Comments on XML forms data model

From: Martin Bryan <mtbryan@sgml.u-net.com>
Date: Tue, 18 Apr 2000 11:01:20 -0400 (EDT)
Message-ID: <045b01bfa946$f2455c60$35cc66c3@sgml>
To: <www-forms@w3.org>
Congratulations on a good first draft. What I found to missing, however, was an explanation of how data captuire would work in a non-XHTML environment. Is it presumed that the data model must always be part of an XHTML header and can only ever be referenced using input, select and the existing set of button fields? If so, how do you reconcile this with the stated requirements for XML Forms user interfaces?

One thing that I would like to see is the possibility of creating more than one instance from the same set of data, e.g. 

<instance post-to=http://www.mysupplier.com/orders>>
    <purchaseOrder>
      <shipTo>
        <name>Alice Smith</name>
        <street>123 Maple Street</street>
        <city>Mill Valley</city>
        <state>CA</state>
        <zip>90952</zip>
      </shipTo>
    </purchaseOrder>
  </instance>
<instance post-to="http://www.mybank.com/payments">
    <paymentInstruction>
      <from>
        <name>Alice Smith</name>
        <street>123 Maple Street</street>
        <city>Mill Valley</city>
        <state>CA</state>
        <zip>90952</zip>
      </from>
    </paymentInstruction>
  </instance>

The mapping of the input field names to the names of elements in the instance would be more explicit if you added instance to the start of each one, e.g. instance.purchaseOrder.shipTo.name, though this might not help in those instances where two messages of the same type were generated by a form (e.g. a copy to go to an accountant or auditor, and another to go to the supplier). In such cases you may need to be able to assign ID to each instance and allow this to be used to identify the instance (e.g. instance[id="auditor"].PurchaseOrder and instance[id="supplier"].PurchaseOrder (not sure how this could be made ECMAScript compatible.)

Re your comments:

1. Will it be possible for attributes in the instance data to be edited with XForms?

It is essential this functionality is provided. One simple way of allowing for this would be to add a qualifying facet wherever the name facet is used of type="attribute", e.g. <uri name="src" type="attribute">

2. Should we split off special datatypes for email addresses and HTTP URLs?

Separation of email addresses would be useful, e.g. <mailto name="e-mail">, but I am not sure HTTP URLs are any different from other uri's, particularly in the longer term.

3. Is there a need for facets to further constrain the data, for instance, to place limits on the size of the data?

Yes, particularly for things like currency, where you need to set maximum values to limit transactions

4. It may be worth allowing the default attribute on the datatype elements such as <string> and <number>

A very necessary shorthand.

5. If the same datatype is used multiple times in the same data model, it might become tiresome to keep repeating the same definition over and over. Is it worth providing a short cut for this situation?

Yes

6. Should these be in an optional financial library? (re Financial Models)

These are too complex to be part of the main standard. They are best handled as an appendix suggesting a referencable library.

Martin Bryan
Chair, CEN/ISSS Defining and Managing Semantics and Datatypes project group
Received on Tuesday, 18 April 2000 11:19:36 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Saturday, 10 March 2012 06:21:47 GMT