Steven Pemberton, CWI, Amsterdam and W3C
Chair, W3C HTML and Forms Working Groups
XForms integrates a large number of W3C Products:
And XForms is designed to be integrated into other products (it is not a host language in itself):
XForms have two orthogonal parts:
The Model contains a number of things:
Data that is being used, manipulated, and/or submitted by the Form
May be in the XForms document, or external.
Any XML document
Data types can be checked on the client; better usability, less trips to the server.
Values can be calculated without resorting to scripting
Submission is as an XML document (plus legacy formats)
The User Interface binds into data in an instance.
The XForms set of UI controls are abstract controls, representing the intent of the control, not its look. You can then use CSS etc., for generating a presentation.
This means (amongst other things) that you can generate different presentations for different devices from the same form.
For instance a select1
represents the notion of selecting a
single value from a list. It can then be rendered as
You can even use different presentations for different devices.
In integrating products, we have met a few hurdles:
XForms is now in CR, coming close to PR.
Last week we had an implementation workshop. There are at least 20 implementations that we know of, as well as 2 that only implement the model.
David Landwehr is from Novell. They have a Java-based XForms implementation, and he will be demonstrating some basic XForms functionality.
Mikko Honkala is from Helsinki University of Technology, and he will be demonstrating his X-Smiles browser, which not only implements XForms, but integrates loads of different W3C (and other) technologies (SMIL, SVG, XHTML, CSS, XFrames, ...). He will be demonstrating XForms integrated with just a few of these.