Competing standards good, competing standards bad
With multiple standards bodies (W3C, Oasis, Java Community Process), standards from the same body covering similar related areas, and de-facto standards from individual organisations it is inevitable that there will be multiple standards covering the same problem space.
I have written several times about reliable messaging and the competing specifications where I feel that it is important that a single standard emerges. My reasons are two fold. Firstly the competing specification cover exactly the same problem space and define a very similar solution so there will just be confusion as developers get involved with both. Secondly, and more importantly, implementations of the two specs will have to communicate directly and interoperate, and the small differences will create an extra layer of complexity and risk for no definable benefit.
As compared to this there are three newish standards in user interface space: XFORMS from W3C, JavaServer faces (JSF) from JCP, and InfoPath from Microsoft. Although they are all defining new ways of creating user interfaces and trying to remove some of the low level 'coding' from the developers they all use quite different paradigms and come from different starting points.
XFORMS comes from the XML community and provides an XML dialect that defines an abstract description of a form, for example, it will say that a particular field in an XML message will map to a drop down list but does not define how the list should be rendered on the screen. The renderer on the specific device will take the XFORMS definition and the XML message and render it appropriately. XFORMS is likely to be especially useful when developing relatively straightforward forms applications such as those required by e-government.
Java Server Faces is a set of Java classes and API definitions that enable Java developers to define and interacts with abstract form components. Again, the exact rendering on a device is independent of this code. JSF is likely to make it easier to develop rich user interfaces with some code running on the device.
InfoPath is likely to become a de facto standard for the .Net community, and is really an extension of Microsoft Office with the familiarity that gives. It also accepts XML messages as input and output.
I find this set of competing standards is not a problem for several reasons:
- They are distinctly different solutions with different heritages so developers if they have to use more than one will not be confused.
- They each have particular strengths and weaknesses and the competition between them should be good as they all improve and feed off each other.
- They will be able to coexist with relative ease with a single user interacting with interfaces developed by all of them without difficulty.
- We may well see amalgamation especially with XFORMS and JSF as the communities begin to see the strengths of the different paradigms.
- The real test of which one will prevail will revolve around the tools that become available to support them.
Copyright 2004. Originally published by IT-Director.com, reprinted with permission. IT-Director.com provides IT decision makers with free daily e-mails containing news analysis, member-only discussion forums, free research, technology spotlights and free on-line consultancy. To register for a free e-mail subscription, click here.