The W3C XForms Working Group published a Candidate Recommendation version of the XForms 1.0 specification. XForms 1.0 "provides a new platform-independent markup language for online interaction between a person (through an XForms Processor) and another, usually remote, agent. XForms is an XML application that represents the next generation of forms for the Web. By splitting traditional XHTML forms into three parts -- XForms model, instance data, and user interface -- it separates presentation from content, allows reuse, gives strong typing -- reducing the number of round-trips to the server, as well as offering device independence and a reduced need for scripting. XForms is not a free-standing document type, but is intended to be integrated into other markup languages, such as XHTML or SVG. The Candidate Recommendation provides an opportunity for these changes to be reflected in implementations, and for the XForms Working Group to collect test cases and information about implementations. The WG expects that sufficient feedback to determine its future will have been received by 05-March-2003."
Bibliographic information: XForms 1.0. W3C Candidate Recommendation 12-November-2002. Edited by Micah Dubinko (Cardiff Software), Leigh L. Klotz, Jr. (Xerox Corporation), Roland Merrick (IBM), and T. V. Raman (IBM). Version URL: http://www.w3.org/TR/2002/CR-xforms-20021112/. Latest version URL: http://www.w3.org/TR/xforms/. Previous version URL: http://www.w3.org/TR/2002/WD-xforms-20020821/.
From the W3C website: "XForms are comprised of separate sections that describe what the form does, and how the form looks. This allows for flexible presentation options, including classic XHTML forms, to be attached to an XML form definition... A single device-independent XML form definition, called the XForms Model, has the capability to work with a variety of standard or proprietary user interfaces... The XForms User Interface provides a standard set of visual controls that are targeted toward replacing today's XHTML form controls. These form controls are directly usable inside XHTML and other XML documents, like SVG. Other groups, such as the Voice Browser Working Group, may also independently develop user interface components for XForms. An important concept in XForms is that forms collect data, which is expressed as XML instance data. Among other duties, the XForms Model describes the structure of the instance data. This is important, since like XML, forms represent a structured interchange of data. Workflow, auto-fill, and pre-fill form applications are supported through the use of instance data. Finally, there needs to be a channel for instance data to flow to and from the XForms Processor. For this, the XForms Submit Protocol defines how XForms send and receive data, including the ability to suspend and resume the completion of a form..."
Exit criteria to be used by the XForms Working Group to advance the CR specification to Proposed Recommendation: "(1) Sufficient reports of implementation experience have been gathered to demonstrate that XForms Processors based on the specification are implementable and have compatible behavior. (2) An implementation report shows that there is at least one fully conforming XForms Full processor, one fully conforming XForms Basic processor, and one interoperable implementation of each feature. (3) Formal responses to all comments received by the Working Group."
From the W3C announcement:
In contrast to HTML Forms, with functional and presentation markup intertwined, XForms lets forms authors distinguish the descriptions of the purpose of the form; the presentation of the form, and how the results (the instance data) are written in XML.
By splitting traditional HTML forms into three parts -- XForms model, instance data, and the XForms user interface -- it cleanly separates presentation from content. This separation brings new advantages:
- Reuse: XForms modules can be reused independent of the information they collect
- Device Independence: as the User Interface controls are abstract - that is, their generic features are the only thing indicated - they can easily be re-presented on different devices with different capabilities
- Accessibility: separation of presentation from content leaves information more readily available for users of assistive technologies; in addition, the User interface controls encapsulate all relevant metadata such as labels, thereby enhancing accessibility of the application when using different modalities
Practically speaking, XForms technologies make it possible to use forms from a PDA, a cell phone, screen reader or conventional desktop machine - without loss of functionality for the end user.
XML is at the core of the XForms model, and delivers key advantages to the XForms technology:
- Data received from an XForm is already strongly typed, well-formed, easy to validate, and process -- in other words, it's XML. This also speeds up form filling since it reduces the need for round trips to the server for validation.
- XML Schemas may be reused and updated by XForms, which allows one form to remain useful and functional even if there are changes in the Schema.
- Using XML 1.0 for the description of results -- called 'instance data' -- ensures that the submitted data may be easily internationalized.
Moreover, XForms, while initially designed to be integrated into XHTML, may be adopted by any suitable markup language, such as Scalable Vector Graphics (SVG). By defining XML-based declarative event handlers that cover common use cases, the majority of XForms documents can be statically analyzed, reducing the need for imperative scripts for event handlers.
Principal references:
- XForms 1.0. W3C Candidate Recommendation 12-November-2002. Also as single HTML document and ZIP archive.
- Announcement 2002-11-12: "World Wide Web Consortium Publishes XForms 1.0 as a W3C Candidate Recommendation. W3C's Next-generation Forms Technology Ready for Implementors."
- "Testimonials for W3C's XForms 1.0 Candidate Recommendation. From Blast Radius, Cardiff Software, E-XMLMedia, Handwise, Helsinki University of Technology, IBM, Mozquito Technologies/SAP, Novell, PureEdge Solutions, Xerox, and x-port.net Ltd.
- "W3C Publishes Preview Candidate Recommendation for XForms Specification." Announcement 2002-08-21.
- W3C XForms Working Group
- XForms Implementations
- XForms Working Group Charter
- "XForms Requirements." W3C Working Draft 04-April-2001.
- Workshop website. W3C XForms Implementation Workshop. February 27 -28, 2003. Cambridge, MA, USA.
- List archive for 'www-forms-editor'
- "XML and Forms" - Main reference page.