XProc

Source: Wikipedia, the free encyclopedia.
XProc
Filename extension
.xpl
Internet media type
application/xproc+xml
Developed byWorld Wide Web Consortium
Type of formatStylesheet language
Extended fromXML
Standard1.0 (Recommendation)

XProc is a W3C Recommendation to define an XML transformation language to define XML Pipelines.

Below is an example abbreviated XProc file:

<p:pipeline name="pipeline" xmlns:p="http://www.w3.org/ns/xproc" version="1.0">
  <p:input port="schemas" sequence="true"/>

  <p:xinclude/>

  <p:validate-with-xml-schema>
    <p:input port="schema">
      <p:pipe step="pipeline" port="schemas"/>
    </p:input>
  </p:validate-with-xml-schema>
</p:pipeline>

This is a pipeline that consists of two atomic steps, XInclude and Validate. The pipeline itself has three inputs, “source” (a source document), “schemas” (a list of W3C XML Schemas) and “parameters” (for passing parameters). The XInclude step reads the pipeline input “source” and produces a result document. The Validate step reads the pipeline input “schemas” and the output from the XInclude step and produces a result document. The result of the validation, “result”, is the result of the pipeline.

Here is an equivalent less abbreviated XProc pipeline:

<p:pipeline name="pipeline" xmlns:p="http://www.w3.org/ns/xproc" 
  version="1.0">
  <p:input port="schemas" sequence="true"/>

  <p:xinclude name="included">
    <p:input port="source">
      <p:pipe step="pipeline" port="source"/>
    </p:input>
  </p:xinclude>

  <p:validate-with-xml-schema name="validated">
    <p:input port="source">
      <p:pipe step="included" port="result"/>
    </p:input>
    <p:input port="schema">
      <p:pipe step="pipeline" port="schemas"/>
    </p:input>
  </p:validate-with-xml-schema>
</p:pipeline>

Implementations

See also

External links

References

  1. ^ Berndzen, Achim; Imsieke, Gerrit (June 2016). "Interoperability of XProc pipelines". XML London 2016: 82–98. doi:10.14337/XMLLondon16.Berndzen01 (inactive 2024-02-27). ISBN 978-0-9926471-3-1.{{cite journal}}: CS1 maint: DOI inactive as of February 2024 (link)
  2. ^ Fuller, James (June 2013). "xproc.xq - Architecture of an XProc Processor". XML London 2013: 113–134. doi:10.14337/XMLLondon13.Fuller01 (inactive 2024-02-27). ISBN 978-0-9926471-0-0.{{cite journal}}: CS1 maint: DOI inactive as of February 2024 (link)
This page is based on the copyrighted Wikipedia article: XProc. Articles is available under the CC BY-SA 3.0 license; additional terms may apply.Privacy Policy