In Why XForms? An Apologia and Exegesis, Elliotte Rusty Harold, IBM developerWorks explores some of the many problems XForms are intended to solve, including internationalization, accessibility, and device independence. As with XML, XForms is designed to separate intent from action, meaning from presentation, content from format. XForms allows you to create forms that can be rendered different ways—one way to users who interact with it in a web browser, a different way to users who encounter the form on the telephone (touchtone activated or voice-recognition controlled), and quite another way to users who interact with the form on paper.
Just like moving to structured XML authoring, moving to XForms involves a paradigm shift—a major change in the way you think about and design forms. With XForms, content is king. Presentation is secondary. And it’s this change that some people struggle with. Because XForms is a new technology that is not quite ready for prime time, there’s still plenty of time to learn to make the changes needed and master the specifics.
In the right situations, considering a move to XForms makes great sense, XForms can provide additional flexibility, help eliminate many manual, error-prone tasks, and address issues of importance in our global economy—things like access, localization, personalization, security, and user experience.
“Because XForms is more ambitious,” Harold writes, “it’s both more promising and more disappointing: promising in what may be possible one day not too far off; disappointing in that these things aren’t possible today. Nonetheless, it’s important to understand what XForms attempts to achieve, in order to fairly judge the alternatives. If the goals XForms is striving for aren’t your goals, then it won’t be interesting. If the goals XForms is striving for are of practical interest to you today, however, then it may be worth your while to struggle through the inevitable birth pains of a new technology.”