Smarter Everyone, Smarter Everything, Smarter Everywhere
John M. Boyer 060000VMNY 1,032 Views
XForms 1.0 Second Edition has been published today at http://www.w3.org/TR/xforms/
To get an idea of the quality and quantity of improvements made to XForms, please see http://www.w3.org/2003/10/REC-xforms-10-20031014-errata.html
Based on this improved foundation, the XForms working group will now be focusing its energies on the completion of XForms 1.1. To get an idea of what will be available, check here: http://www.w3.org/TR/xforms11/
The one comment I would make about the above working draft is that the we will almost certainly revert to using the same namespace currently used for XForms 1.0, and instead use some mechanism within the language to do versioning.
In keeping with my prior post about signatures and namespaces, it is important to version a language either internally or by updating the namespace URI. Previously, we chose the namespace route because XForms is designed to be hosted within another language, so it has no root element of its own to which a version could be attached.
However, XForms 1.1 is using some special schema wizardry that allows it to have a "chameleon" namespace, which will make it easier to import XForms into a host language like XHTML without namespace qualification. I'm not a big fan of doing this, especially for host languages other than XHTML because it becomes harder to find the XForms within another document and host the XForms functionality separately from the original host language.
Nonetheless, the feature is there and it occurred to me during the W3C tech plenary that the chameleon namespace could be used to put XForms 1.1 back into the XForms 1.0 namespace. That means that XForms processors trying to determine what semantics to attach to the vocabulary need some other way to make their decisions. So we simply have to solve the versioning problem without using a change of namespace URI.
The camp that wanted us not to change namespaces will be happy. My own XSLTs will be happy too.[Read More]
The World Wide Web Consortium, or W3C, produces the "standards" for all sorts of web technologies with which we are all familiar, including XML, XSLT, XML Schema, HTML, CSS, PNG, ..., and XForms. The W3C calls these things "Recommendations" because after due process and careful review and implementation, the World Wide Web Consortium recommends the technical specification for world-wide development and deployment. And this is what has happened to all the recommendations listed above.
But just as software goes through maintenance and refinement, so to do the specifications that describe the software. For example, XML 1.0 is itself currently at fourth edition, and XML Schema 1.0 is at second edition.
On October 29, 2007, the W3C approved the third Edition of XForms 1.0 as a Recommendation, superceding the second edition from March 2006 and the first edition from October 2003. This release of the specification is quite important to the XForms community as it represents over 300 refinements, clarifications and corrections that have arisen in the last 18 months. The W3C Forms Working Group has worked very hard these past 18 months on what I would call "enterprise hardening" of XForms, and the numerous differences produced by the group can be viewed in the second edition errata page as well as the third edition diff-marked version.
Next up from the W3C Forms Working Group is an expected transition of XForms 1.1 to Candidate Recommendation. Stay tuned for more on that...[Read More]
The theme song to Star Trek started to play in my head last night when I thought about the imminent publication of XForms 1.1 as a W3C standard (which the W3C calls a Recommendation). It's been five years since I started putting the working group's content into the first "thin spec" working draft of XForms 1.1.
Since that time, the working group has substantially upgraded XForms to enable it to better address the emerging requirements of cutting edge web applications and interactive documents. This has included well over a thousand spec changes to resolve differences in understanding both great and small. Many times it has happened that one person's editorial clarification is another's substantive change, so there was a significant improvement in mindshare and consensus at a much deeper level than was the case for XForms 1.0.
The biggest change, in my view, is the substantial increase in web connectivity features added to the XForms submission module. This enables XForms to properly act as a smart Web 2.0 application client. XForms handles the interactive rich user experience of the web application, and at any point in that interaction, XForms can directly inject information into and extract information from server-side data sources and business processes exposed as web services, REST services, ATOM feeds and publishing services, etc.
As powerful as these features are when used within a web application's HTML pages, they are all the more interesting when used to connect open standard ODF office-style documents to data sources and business processes. Then, you get the blend of ease-of-user and familiarity features of a word processing or spreadsheet document and the desirable connectivity features of a Web 2.0 application. For further details on these thoughts, please see my document engineering conference papers on ODF and XForms: "Interactive Office Documents: A New Face for Web 2.0 Applications", "An Office Document Mashup for Document-Centric Business Processes", and "Enriching the Interactive User Experience of Open Document Format" (these papers are likely to be available to you through your institutional account with the ACM, e.g. through KnowledgeGate for IBMers).
There are many other additions and refinements in XForms 1.1, which are summarized in the introduction. Suffice it to say that five years of effort have gone into making XForms ready for prime-time, and we at IBM are very pleased to see this version of XForms advance to W3C Recommendation, especially due to the number of products we already have in market that support this computing industry standard. With XForms 1.1, we will soon be able to realize the vision of delivering Web 2.0 applications via "A REST Protocol and Composite Format for Interactive Web Documents".
Well, now that I can finally log in to the blog system again, it's time for an update on XForms 1.1.
The working group has been addressing the "last call" comments of the community since last call officially ended back at the end of April. Although we got a pretty healthy review during the March and April review period, it so happens that we have received an equal or slightly greater number of review comments after the official review period. The working group has been treating these comments with the special "last call" status as well. This not only maximizes our responsiveness to our community but also, frankly, makes for the highest quality specification, which I think is quite important at the current stage of XForms within the big wide world.
As a side comment, I would say that the bar of technical precision is extremely high, in my opinion, relative to most other W3C groups, and in XForms 1.1 (as well as the new editions of XForms 1.0), we have had great success at tightening up our most sophisticated and powerful features, which is to the benefit of our users.
Since last call started on XForms 1.1, there have been nearly 150 comment records created in our database, which is quite a lot, but the number of records does not tell the full story because very many of those records report half a dozen or a dozen issues at a time, usually amounting to one person's feedback about an entire module within the spec. It is more telling to have a look at the diff marks in the editor's draft of XForms 1.1. There are over 650 and counting!
The working group met in Madrid last week to continue work on the last call. Many thanks go to our gracious hosts at SATEC, who not only provided all the facilities we needed to do the work (and a great dinner on Thursday), but whose members went out of their way for us after the meetings by driving us back to our hotels in the evenings!
When the meetings began in Madrid, we had 48 remaining last call comment records to address. I organized them into related categories, provide a sensible order of attack, and did my best to predict how long to spend on each topic. It was pretty daunting, though, because some of these issues were still open because they were the hardest to deal with and were deferred to the face to face meeting for that reason. I was mightily pleased with how hard the Forms Working Group worked in Madrid. Everyone did their best to elucidate all sides of each technical issue, and to compromise in order to reach consensus. We had a number of issues that were hard because both sides of a debate were crystal clear and each side could even see the sensibility and consistency of the other side, depending on the fundamental set of "axioms" one accepts about XForms as a language and application platform. Yet still, we managed to produce resolutions and then action items for 39 of the last call comment records.
Of the 9 remaining, 3 were resolved on the latest teleconference. Suffice it to say that the next month or so will be busy indeed as we complete all the action items related to the working group's decision and also come to consensus on those last six issues. Hopefully, we can advance XForms 1.1 to "Candidate Recommendation" before the publishing moratorium that is coming before the W3C Technical Plenary in Boston in November. It'll be a close call, but either way the long-awaited "CR" for XForms 1.1 should occur in the next two months at the outside.
Candidate Recommendation is a very important step in the W3C process. It says that the working group thinks the language is done, and the concerns of the wider community about it being done have all been addressed. This is the level of stability in the specification that is needed to support the second meanning of "Candidate Recommendation", which is that it is the "Call for Implementations". To be honest, many implementers have already added support for half or more of the new XForms 1.1 features, but this is the time period in which the working group must formally show a full implementation and at least two interoperating implementations of all features. XForms has no shortage of implementations, but starting to "dot the i's and cross the t's" on the implementation report before the year end.
Clearly, there has never been a better time to be working on XForms![Read More]
The XForms 1.1 specification was approved for transition to Proposed Recommendation. Publication as a Proposed Recommendation is currently expected next Tuesday.
In order to achieve this transition, we presented a report of multiple implementations of XForms based on an expansive test suite, we presented the disposition of all formal comments received on the candidate recommendation, and we presented the important changes, which were those changes that the community would reasonably want to hear why they were not substantive deviations and were interoperably implementable.
Advancement to Proposed Recommendation essentially says we're "putting it to a vote" now. The member companies of W3C vote on advancement of XForms 1.1 to Recommendation, and they have until Sept. 22 to cast their votes. Based on the many significant improvements that have been made in XForms 1.1, and the rigorous standardization process we have followed, we are obviously quite optimistic about the outcome of the vote.
I am also especially pleased that both the IE7 and FF3 browser implementations of Ubiquity XForms were included in the implementation report.