Function composition becomes a frustrating endeavor if nodes cannot be
constructed within an expression. For example, to create an element
to pass to a function foo
, the only option with vanilla XSLT is to
use a variable to hold that element:
<variable name="element" as="element( bar )"> <bar baz="quux" /> </variable> <sequence select="foo( $element )" />
This easily interrupts pipelines or results in functions whose sole purpose is to create specific nodes for the sake of composition.
Hoxsl provides constructors for nodes that fit cleanly into a functional system.
• Primitive Constructors: | Functional equivalents of XSLT node primitives | |
• Mutators: | Functional node manipulation |