XProc core steps in Componize

Several XProc steps are defined as requirements in the "core" subset the XProc specification. Componize implements core actions like looping, conditional processing, or exception handling.

p:pipeline
Declares a pipeline that can be evaluated by the XProc processor. The children declare inputs, outputs, and options that the pipeline exposes and identify the steps in its subpipeline. A p:pipeline is a simplified form of step declaration.
p:for-each
Compound step that processes a sequence of documents, applying its subpipeline to each document in turn.
p:choose
Multi-container step that selects exactly one of a list of alternative subpipelines based on the evaluation of XPath expressions.
p:when
Specifies one subpipeline guarded by a test expression.
p:otherwise
Specifies the default branch. The subpipeline selected if no test expression on any preceding p:when evaluates to true.
p:group
A group encapsulates the behavior of its subpipeline. In a p:try, a group is a non-step wrapper, everywhere else, it is a compound step.
p:try
Specifies a try/catch. It is a multi-container step that isolates a subpipeline, preventing any dynamic errors that arise within it from being exposed to the rest of the pipeline.
p:catch
Identifies the recovery pipeline of a p:try.
p:input
Identifies an input port for a step. In some contexts, p:input declares that a port with the specified name exists and identifies the properties of that port. In other contexts, it provides a connection for a port declared elsewhere. And in some contexts, it does both.
p:iteration-source
Identifies input to a p:for-each.
p:output
Identifies an output port, optionally connecting an input for it, if necessary.
p:option
Declares an option and may associate a default value with it. The p:option tag can only be used in a p:declare-step or a p:pipeline (which is a syntactic abbreviation for a step declaration).
p:with-option
Provides an actual value for an option when a step is invoked.
p:with-param
Used to establish the value of a parameter. The parameter must be given a value when it is used.
p:declare-step
Provides the type and signature of an atomic step or pipeline. Declares the inputs, outputs, and options for all steps of that type.
p:library
A collection of step declarations and/or pipeline definitions.
p:import
Loads a pipeline or pipeline library, making it available in the pipeline or library which contains the p:import.
p:pipe
Connects an input to a port on another step.
p:document
Reads an XML document from a URI.