Tubular is a Java implementation of an XProc pipeline processor.
An XML Pipeline specifies a sequence of operations to be performed on zero or more XML documents. Pipelines generally accept zero or more XML documents as input and produce zero or more XML documents as output. Pipelines are made up of simple steps which perform atomic operations on XML documents and constructs similar to conditionals, iteration, and exception handlers which control which steps are executed.
Tubular project is applying test-driven development (TDD) principles. Implementation is validated against the test suite from XProc.org.
Tubular is implemented with as much immutable objects as possible, in order to facilitate the addition of parallelism support, thus reducing the need for locking mechanisms.