Skip to content

Latest commit

 

History

History
54 lines (31 loc) · 3.48 KB

researching-xproc.md

File metadata and controls

54 lines (31 loc) · 3.48 KB

Researching XProc

What is XProc 3.0

XProc 3.0 is an information processing and pipelining stack based on (W3C Recommendation) XDM XQuery and XPath Data Model 3.1, a technology published and supported by its developer, customer and user community. The problems addressed by XProc — the configuration, management and execution of complex, composable information processing subsystems (pipelines in XProc) — are at the center of any XML system, yet they are commonly dealt with — or worked around — by painful means and methods including carefully engineered and customized build utilities (Apache Ant or GNU make), scripts (bash and other), execution environments (web processing stacks), IDE workflows and proprietary solutions — almost inevitably platform-dependent, if only because a single link with a dependency brings that dependency to every chain that includes it.

This has hindered the propagation of XML-based technology despite its demonstrated generality, usefuless and power, because wherever it is painful and awkward to integrate, its strengths and virtues are obscured or (worse) obstructed and left unexplored.

As a standard supporting a common semantics across implementations — itself proof-tested by a history of earlier work — XProc 3.0 promises greater adaptability, accessibility, and scalability than prior solutions to the problem of pipeline orchestration.

XProc 1.0 was published as a W3C Recommendation in 2010. In addition to integrating the latest XSLT and XQuery technologies such as XSLT 3.0, XProc 3.0 (finalized 2022) represents a significant advance over XProc 1.0, being

  • More streamlined and easier to learn and use
  • Open to any format or data notation, including JSON and plain-text-based formats (e.g. CSV, TSV etc.), in addition to XML*

Both of these are important for OSCAL, which comes in both XML and JSON and whose users vary from the highly technical, to the bare beginner (in data formats, in OSCAL or both).

* Especially when combined with Invisible XML.

XProc enthusiasts with current links or news should please contact the project or offer a PR with a listing.

Landing pages

XProc.org site - with links to specs and other resources

XProc 3.0 Overview - with links to component specifications (important to have) such as the Standard Step Library and the additional steps

XProc.org Learning page - valuable hub page with outgoing links

Tutorials

Book

Erik Siegel's XProc 3.0 Programmer Reference