XForms 1.0: Data Model

W3C Working Draft 15 August 2000

This Version:

Latest Version:

Previous Version:

Micah Dubinko (Cardiff) <mdubinko@Cardiff.com>
Sebastian Schnitzenbaumer (Stack Overflow) <schnitz@overflow.de>
Dave Raggett (W3C/HP) <dsr@w3.org>


"XForms" is the name for W3C's work on the next generation of Web forms. This work was started in a subgroup of the HTML Working Group and recently spun off into an independent Working Group, with a broadened focus. The Working Group is currently studying how to support forms where the data model is defined by an XML Schema plus form specific properties. The previous version of the XForms Data Model is being obsoleted while this work is underway.

The plan is for the next revision to this Working Draft to provide a description of the functional requirements for the XForms data model and logic, together with proposals for meeting these requirements using XML Schema plus XForms property annotations, and an alternative lighter weight syntax aimed at HTML authors. Later specifications will focus on the user interface aspects of XForms, and the means to submit, suspend and resume forms. For more information on the goals of work on XForms, please look at the XForms Requirements.

Status of this document

This document is a W3C Working Draft for review by W3C members and other interested parties. It is a draft document and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use W3C Working Drafts as reference material or to cite them as other than "work in progress". A list of current public W3C Working Drafts can be found at http://www.w3.org/TR.

Future revisions to this Working Draft will present a proposal for explicitly representing data models for XForms, the next generation of Web forms. This document has been produced as part of the W3C HTML Activity, following the procedures set out for the W3C Process. The authors of this document are members of the XForms Working Group (W3C Members only). This document is for public review, and comments and discussion are welcomed on the public mailing list <www-forms@w3.org>. To subscribe, send an email to <www-forms-request@w3.org> with the word subscribe in the subject line (include the word unsubscribe if you want to unsubscribe). The archive for the list is accessible online.

1. What are XForms?

"XForms" is the W3C's name for work on the next generation of Web forms. It follows on the extraordinary success of HTML.


To develop W3C specifications for the next generation of Web forms The key idea is to separate the user interface and presentation from the data model and logic, allowing the same form to be used on a wide variety of devices such as voice browsers, handhelds, desktops and even paper. XForms bring the benefits of XML to Web forms, transferring form data as XML. XForms aim to reduce the need for scripting, and to make it easier to achieve the desired layout of form fields without having to resort to using nested tables etc. For further information, see the Charter.

XForms target two main user communities

What has been achieved so far?

Work on XForms started within a subgroup of the HTML Working Group. This has recently been spun off into an independent Working Group, albeit as part of the HTML Activity. The former subgroup developed two documents:

XForms Requirements
This is the basis of the charter for the new XForms Working Group. It sets out requirements under a number of categories: basic, data modelling, logic, protocols, user interface, and areas identified for future study.

XForms Data Model
This sets out a proposal for a data modelling language and expression syntax for forms. It uses XML Schema for the semantics of the data types, but re-expresses this in a simple syntax more likely to win the hearts and minds of typical HTML authors. This draft has now been obsoleted while the Working Group studies how to combine XForms with XML Schema.

Work in the subgroup left open the issue of what to do to support people who prefer to focus on developing business schemas and who are keen to exploit XML standards such as XML Schema, XPath, and XML Query etc. While it is easy to transform the simpler syntax into XML Schema, the reverse is much harder. To support people who already have developed their business schemas, we need a way to express the forms specific information in a way that complements XML Schema.

Where next?

The new XForms Working Group (W3C members only) is now working on a re-evaluation of the functional requirements for XForms The data model is being reworked to allow people to use XML Schema to define the data model together with annotations that define form specific properties. This will be presented in the next revision to this Working Draft. To address the needs of the HTML authoring community, we plan to retain a light weight syntax for the data model and logic. Authors will be able to choose between the light weight syntax and the use of XML Schema together with the XForms property annotation syntax. The Working Group expects to publish the revised Working Draft in October 2000.

2. References

[XForms Req]
"XForms Requirements", M. Dubinko, D. Ragget, S. Schnitzenbaumer, and M. Wedel, 2000.
Available at: http://www.w3.org/TR/xhtml-forms-req

[XML 1.0]
"Extensible Markup Language (XML) 1.0", T. Bray, J. Paoli, and C. M. Sperberg-McQueen, 10 Feb 1998.
Available at: http://www.w3.org/TR/REC-xml

"XML Schema Part 1: Structures", H. S. Thompson, D. Beech, M. Maloney, and N. Mendelsohn, 2000.
Available at: http://www.w3.org/TR/xmlschema-1

"XML Schema Part 2: Datatypes", P. V. Biron, and A. Malhotra, 2000.
Available at: http://www.w3.org/TR/xmlschema-2