Jump to content

XML pipeline

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Avernet (talk | contribs) at 22:46, 4 July 2003 (Initial version). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

When XML processes, sometime also called XML transformations, are connected together, they form an XML pipeline. For instance, given a two transformations T1 and T2, the two can be connected together so that an input XML document is transformed by T1 and then the output of T1 is fed as input document to T2. Simple pipeline like this one are called linear, as a single input document always goes through the same sequence of transformation to produce a single output document. Non-linear pipelines can include:

  • Conditionals -- where a given transformation is executed if a condition is met while another transformation is executed otherwise
  • Loops -- where a transformation is execute on each node of a node set selected from a document
  • Tees -- where a document is fed to multiple transformations potentially happening in parallel
  • Aggregations -- where multiple documents are aggregated into a single document

Pipeline languages

XML Pipeline languages are used to define pipelines. The definition can understood by a pipeline engine that given a pipeline definition can create the processes, connect them together and execute the pipeline. Existing pipeline languages include:

  • W3C XML Pipeline Definition Language is specified in a W3C Note and Sun provides an implementation.
  • Cocoon sitemap allows the declaration of linear pipelines
  • XPL is the OXF XML Pipeline Language. It allows the declaration of complex pipeline with conditionals, tees and aggregations.