XForms Tiny

From W3C XForms Group Wiki (Public)

XForms-Tiny is an incremental extension of HTML4 forms that is being defined by the W3C Forms activity in cooperation with the HTML activity as a way for Web application developers to leverage the XForms architecture to reduce the cost of deploying forms-based Web applications. Web developers who have existing forms assets, and who are reaching the practical limits of what they can do with HTML forms, can now take incremental advantage of the XForms architecture without first having to switch to XML.

  • Simple declarative expressions in field attribute values using an extensible and familiar ECMAScript syntax
  • Much easier to maintain than custom scripts, with the benefit of reduced development and maintenance costs for HTML forms applications
  • Export data model, constraints and controls to XForms when needed, e.g. for server-side data validation

XForms-Tiny doesn't require, but doesn't preclude, native implementations in browsers. This allows it to be widely deployed today without waiting for new browser releases.

  • Open source script library that works on Internet Explorer 6 and 7, Firefox 1.5, Firefox 2, Opera 9, Konqueror 3.5, Safari, Opera Mobile 8.6 and NetFront 3.4.
  • Only 6 KBytes download when compressed

The library is available now, and will be updated to reflect changes to the specification as XForms-Tiny progresses along the W3C Recommendation Track. The first public Working Draft specification is expected in the first quarter of 2007. This is aimed at authors and authoring tools, and will take advantage of native browser implementations where available. The specification is intended to provide a replacement for the HTML4 forms module, and will include the corresponding object model, building upon the HTML DOM as defined in DOM2, and widely implemented by modern web browsers.

XForms-Tiny consists of a small set of new attributes and new attribute values that enable

  • Simple expressions for validating field values and spreadsheet like formulae for computed fields
  • Repeating groups of fields, e.g. for line items in a purchase order or expense claim
  • Suppression of irrelevant parts of forms and context dependent control over which fields must be filled out
  • Date pickers for easy entry of dates, range controls and editable selection lists
  • Author control over which fields support auto-completion based upon previously entered values
  • Avoids the need for writing client-side code but can be extended with author defined functions

For more information, see the XForms-Tiny Testbed and Dave Raggett's XForms Tiny presentation to the W3C Advisory Committee at the November 2006 meeting in Tokyo.

Here is a comparision between XForms-Tiny and WebForms 2.0.