Yax is an Java implementation of the XProc Specification, an XML Pipeline Language (XProc: An XML Pipeline Language W3C Working Draft 17 November 2006). Yax processes XProc Scripts like:
<?xml version="1.0" encoding="UTF-8"?>
<xproc:pipeline name="pipe1"
xmlns:xproc="http://www.w3.org/TR/2006/xproc/1.0
xmlns:yax="http://opsdesign.de/yax/1.0">
<xproc:step name="trans1" type="xproc:XSLT"
yax:description="transforms 'a*' elements to 'b*' elmenents.">
<xproc:input port="stylesheet" href="test/transformation1.xsl"/>
</xproc:step>
<xproc:step name="trans2" type="xproc:XSLT"
yax:description="transforms 'b*' elements to 'c*' elmenents.">
<xproc:input port="stylesheet" href="test/transformation2.xsl"/>
<xproc:parameter name="transformer" value="Saxon6" />
</xproc:step>
<xproc:step name="trans3" type="xproc:XSLT"
yax:description="transforms 'c*' elements to 'd*' elmenents.">
<xproc:input port="stylesheet" href="test/transformation3.xsl"/>
<xproc:parameter name="transformer" value="XSLTC" />
</xproc:step>
</xproc:pipeline>