We are very happy to see that things are moving along at the W3C with the creation this week of the W3C XML Processing Model Working Group. But first, you might wonder, what is XML processing?
XML can be "processed" in a number of ways: validating XML with XML Schema or Relax NG and transforming XML with XSLT are examples of processing one can do on XML data. Any type of operation either consuming or producing XML documents can be seen as XML processing. Calling web services, querying an XML database, participating in a BPEL-driven business process are some more examples of XML processing.
Libraries are available to do all those things, and today XML processing is in general done by writing code that calls those libraries. As each library has its own API, one has to be familiar with a number of different APIs to do simple things. This unnecessary complexity can be solved by using a higher level language that abstract the intricateness and peculiarities of each API. A number of companies and individuals have been favorable to the creation of such a higher level language and this has become one of the major goals of the XML Processing Model Working Group.
An example of such a language is the XML Pipeline Language (XPL). We have been working on XPL here at Orbeon since 2002, and XPL is now implemented in the open source Orbeon PresentationServer. Earlier this year, we have submitted a specification for XPL to the W3C. Now we are joining the XML Processing Model Working Group and we are looking forward to contributing to the group towards the creation of a standard XML processing language.