Forms Working Group - Publications
XForms is an XML application that represents the next generation of forms for the Web. XForms is not a free-standing document type, but is intended to be integrated into other markup languages, such as XHTML, ODF or SVG. An XForms-based web form gathers and processes XML data using an architecture that separates presentation, purpose and content. The underlying data of a form is organized into instances of data schema (though formal schema definitions are not required). An XForm allows processing of data to occur using three mechanisms:
a declarative model composed of formulae for data calculations and constraints, data type and other property declarations, and data submission parameters
a view layer composed of intent-based user interface controls
an imperative controller for orchestrating data manipulations, interactions between the model and view layers, and data submissions.
Thus, XForms accommodates form component reuse, fosters strong data type validation, eliminates unnecessary round-trips to the server, offers device independence and reduces the need for scripting.
XForms 1.1 refines the XML processing platform introduced by [XForms 1.0] by adding several new submission capabilities, action handlers, utility functions, user interface improvements, and helpful datatypes as well as a more powerful action processing facility, including conditional, iterated and background execution, the ability to manipulate data arbitrarily and to access event context information.
Candidate Recommendation Snapshots
XForms 2.0 adds support for defining custom functions, variables, a pluggable expression language with extra functions (XPath 2.0), model-based switch and repeat, Attribute Value Templates, consuming and submitting JSON and CSV instance data, amongst other things.
This specification defines how XPath can be used for addressing instance data nodes in binding expressions, to express constraints, and to specify calculations in XForms. This module is based on XPath 2.0, but an XPath 1.0 backwards compatibility mode is provided to ensure that nearly all XPath 1.0 expressions continue to deliver the same result with XPath 2.0.
This specification also defines the XForms Function Library which contains additional functions that are useful for creating forms.
XForms for HTML provides a set of attributes and script methods that can be used by the tags or elements of an HTML or XHTML web page to simplify the integration of data-intensive interactive processing capabilities from XForms.
Forms were introduced into HTML in 1993. Since then they have gone on to become a critical part of the Web. The existing mechanisms in HTML for forms are now outdated, and W3C has started work on developing an effective replacement. This document outlines the requirements for "XForms", W3C's name for the next generation of Web forms.