News from W3C
XForms: the Next Generation of Web Forms
by Steven Pemberton, CWI and W3C
HTML Forms formed the basis of the e-commerce revolution. Now after 10 years experience with them, W3C has released XForms, the next generation of Web Forms. In contrast to HTML forms, in which functional and presentation markup are 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.
The design of XForms is based on an analysis of how HTML Forms have been used in the last ten years, and what could be changed to make them even more useful. In brief, XForms lets you do everything that HTML Forms can do, and more, such as:
- check data values while the user is typing them in
- indicate that certain fields are required, and that the form cannot be submitted without them
- constrain values in certain ways, such as requiring them to be in a certain range
- submit forms data as XML
- integrate with Web services, for instance by using SOAP and XML RPC
- submit the same form to different servers (for instance a search string to different search engines)
- save and restore a form to and from a file
- use the result of a submit as input to a further form
- get the initial data for a form from an external document
- calculate submitted values from other values
- build 'shopping basket' and 'wizard' style forms without needing to resort to scripting.
Properties of XForms
In detail, XForms has several important properties:
- XForms improves the user experience: XForms has been designed to allow much to be checked by the browser, such as types of fields being filled in, that a particular field is required, or that one date is later than another. This reduces the need for round trips to the server or for extensive script-based solutions, and improves the user experience by giving immediate feedback on what is being filled in.
- It makes it easier to author complicated forms: Because XForms uses declarative markup to declare properties of values, and to build relationships between values, it is much easier for the author to create complicated, adaptive forms, without having to resort to scripting. An HTML Form converted to XForms looks pretty much the same, but when you start to build forms that HTML wasn't designed for, XForms becomes much simpler. See XForms for HTML Authors for some examples.
- It is XML, and it can submit XML: XForms is properly integrated into XML: it is in XML, the data it collects in the form is XML, it can load external XML documents as initial data, and can submit the results as XML. By including the user in the XML pipeline, it at last means you can have end-to-end XML, right up to the user's desktop.
- It combines existing XML technologies: Rather than reinventing the wheel, XForms uses a number of existing XML technologies, such as XPath for addressing and calculating values, and XML Schema for defining data types. This has a dual benefit: ease of learning for people who already know these technologies, and the ability for implementors to use off-the-shelf components to build their systems.
- It is device independent: The same form can be delivered without change to a traditional browser, a PDA, a mobile phone, a voice browser, and even some more exotic emerging clients such as an Instant Messenger. This greatly eases providing forms to a wide audience, since forms only need to be authored once.
- It is internationalized: Because the data submitted is XML, it is properly internationalized.
- It is accessible: XForms has been designed so that it will work as well with accessible technologies (for instance for blind users) as with traditional visual browsers.
The XForms Working Group that created XForms contains representatives from many major computing companies. On top of this there are a large number of implementations emerging. In fact XForms is the most-implemented W3C specification ever at this stage in its life-cycle.
There are several implementations that let you use XForms with existing browsers, either with plugins or by transforming the forms at the server, as well as a number of browsers that implement XForms natively.
At the time of writing, XForms has been demonstrated on PDAs and mobile phones using proxies, using the same techniques that are often used to present web content on smaller devices. We anticipate that native XForms clients will appear on mobile devices soon.
There is a list of XForms Implementations that contains details of many of these implementations; an editorial review including screen shots of several of them can be found at www.xml.com/pub/a/2003/09/10/xforms.html. XForms does not need any extra support from servers: it works with all current servers. Although XForms has several new submission methods compared with HTML Forms, these are all standard HTTP methods for sending data over the network. XForms can use 'PUT' to put data to a server, can talk to a SOAP or XML RPC servers, but also supports legacy formats allowing forms to work with all existing forms servers.
Finally, some large user populations are beginning to emerge, including some government e-government initiatives, a country's tax service, and a country's insurance industry.
Steven Pemberton is a senior researcher at the CWI in Amsterdam. He is chair of the W3C XForms Working Group.
XForms home page: http://www.w3.org/MarkUp/Forms
Introduction to XForms for HTML Authors: http://www.w3.org/MarkUp/Forms/2003/xforms-for-html-authors.htm
XForms implementations: http://www.w3.org/MarkUp/Forms/#implementations
W3C Launched Spanish Office
W3C is pleased to announce the opening the W3C Spanish Office, based at the Fundación para el Fomento de la Investigación Científica y la Tecnología (FICYT) in Oviedo. Although the primary goal of this Office is to be dedicated to outreach in Spain, this is also the first W3C Office with active contacts with Spanish-speakers worldwide. The new W3C Spanish Office will be of help in coordinating with Latin American communities by also disseminating information in Latin America, encouraging and co-ordinating new translations to Spanish, etc.
The W3C Spanish Office joins the complement of W3C European Offices in The Benelux Countries, Finland, Germany & Austria; Greece; Hungary, Italy; Sweden; and the United Kingdom and Ireland. Francisco Sanchez is Office Manager. The opening ceremonies were held on 20 October in Oviedo.
W3C Spanish Office Web site: http://www.w3c-es.org/
Press release: http://www.w3.org/2003/10/spoffice-pressrelease
W3C Requests Eolas Patent Review
On 29 October the W3C has presented the United States Patent and Trademark Office with prior art establishing that US Patent No. 5,838,906 (the '906 patent) is invalid and should therefore be re-examined in order to eliminate this unjustified impediment to the operation of the Web, because the critical prior art was neither considered at the time the patent was initially examined and granted, nor during recent patent infringement litigation.
In an unprecedented step, Tim Berners-Lee, W3C Director and inventor of the Web, sent a letter to Under Secretary Rogan requesting that his office reinvestigate the matter. "W3C urges the USPTO to initiate a reexamination of the '906 patent in order to prevent substantial economic and technical damage to the operation of World Wide Web," stated Berners- Lee. "The impact of this patent will be felt not only by those who are alleged to directly infringe, but all whose web pages and application rely on the stable, standards-based operation of browsers threatened by this patent. In many cases, those who will be forced to incur the cost of modifying Web pages or software applications do not even themselves infringe the patent - assuming it is even valid."
US Patent 5,838,906 'Distributed hypermedia method for automatically invoking external application providing interaction and display of embedded objects within a hypermedia document' was filed in October 1994 and granted in November 1998. The patent, owned by the University of California with licensing handled through Eolas Technologies, covers mechanisms for embedding objects within distributed hypermedia documents, where at least some of the object's data is located external to the document, and there is a control path to the object's implementation to support user interaction with the object. The implementation can be local or distributed across a network, and is automatically invoked based upon type information in the document or associated with the object's data.
The practical impact of withholding unrestricted access to the patented technology from use by the Web community will be to substantially impair the usability of the Web for hundreds of millions of individuals in the United States and around the world. Nearly every Web user relies on plug-in applications that add services such as streaming audio and video, advanced graphics and a variety of special purpose tools. On 30 October, the US PTO have announced that they will be conducting a re-examination of all claims relating to US Patent 5,838,906 citing "a substantial outcry from a widespread segment of the affected industry."
20 Oct. 03 press release: http://www.w3.org/2003/10/28-906-briefing
TimBerners-Lee's letter: http://www.w3.org/2003/10/27-rogan.html
Prior art filing: http://www.w3.org/2003/10/301-filing.html
W3C Holds Ad Hoc Meeting on Recent Court Decision, Launches Public Discussion List: http://www.w3.org/2003/08/patent
W3C Held its First Outreach Event in Mainland China
The China International Forum on WWW's Development 2003 was held in Beijing on 12-13 November. Attendees discussed the future of the Web, accessibility, SVG, the mobile Web, the Semantic Web and internationalization. The event was co-organized by the China Computer Federation and the W3C Office in Hong Kong.
China International Forum on WWW's Development 2003 Web site:
Press Release: http://www.w3.org/2003/10/beijingevent-pressrelease
Last W3C Recommendations
- Portable Network Graphics (PNG) Specification (Second Edition): First published 1 October 1996, revised 10 November 2003, David Duce
- XForms 1.0: 14 October 2003, Micah Dubinko, Leigh L. Klotz, Roland Merrick, T. V. Raman
- XML Events: 14 October 2003, Shane McCarron, Steven Pemberton, T. V. Raman
- An exhaustive list of all W3C Technical Reports: http://www.w3.org/TR/
ERCIM is the European host of W3C.