XML Processing

Welcome to XProc.org

XProc.org is a website about XProc: An XML Pipeline Language, a specification under development at the W3C, and its use, implementation, and extensions.

What is it?

XProc is a language designed for describing operations to be performed on XML documents. The official specification for XProc is XProc: An XML Pipeline Language. It is currently a Candidate Recommendation Working Draft.

The XProc specification is produced by the XML Processing Model Working Group. The XProc WG operates in the public, anyone is free to read the archives of its mailing list. Public comments on the specification may be sent to the processing model comments mailing list. The archives of the comments list are also open to the public.

Latest snapshots

The Working Group successfully transitioned from Last Call to Candidate Recommendation. It is now working on resolving comments on the CR draft and building a test suite.

The unofficial Editor's Draft provides the most up-to-date snapshot of the specification, though it does not always represent the consensus view of the working group.

Why did you do it?

XProc is designed to address the common problem of how to compose XML processes. Many document processing scenarios involve some combination of XML technologies; canonical examples include XInclude, schema validation, and transformation.

Although it is possible to combine these technologies using general purpose tools such as make and ant (to name only two), these tools are not designed to deal specifically with the semantics of XML processing. As such they are often both more complicated and less useful than would be ideal

XProc has been designed specifically to allow authors to compose XML processes and share these compositions in a standard way.

For more details about the requirements of XProc and the use cases that it was designed to solve, see XML Processing Model Requirements and Use Cases.

How do I participate?

All users, implementors, and other developers with an interest in XProc are encouraged to join the “xproc-dev” mailing list. Send a “subscribe” request to to join.

It too is archived for your pleasure. It is even more usefully archived on MarkMail.

What about examples?

An official test suite for XProc is under development. See http://tests.xproc.org/ for more information.

There is also a very nice tutorial by Roger Costello and James Garriss.