Apache Ant/Running Saxon

Motivation Edit

You want to have an Apache Ant task that runs the Saxon XSLT transform.

Method Edit

Download the Saxon jar file. Put the saxon.jar file in a lib folder. Run the following test.

Source Code Edit

Build File Edit

The following is how Saxon is invoked from Apache Ant.

<target name="test-saxon">
   <xslt classpath="lib\saxon8.jar"
      <factory name="net.sf.saxon.TransformerFactoryImpl"/>

Note that if you are running in Eclipse you will have to go to the "Preferences" menu and add the saxon9.jar file to Ant/Runtime/Ant Home Entries. Just click the "Add JARs" and add the saxon9jar file the end of this list.

XSLT Version Check Edit


<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output omit-xml-declaration="yes" indent="yes"/>
    <xsl:template match="/">
            <Version><xsl:value-of select="system-property('xsl:version')" /></Version>
            <Vendor><xsl:value-of select="system-property('xsl:vendor')" /></Vendor>
            <Vendor-URL><xsl:value-of select="system-property('xsl:vendor-url')" /></Vendor-URL>

Or if you are generating a web page:

<xsl:stylesheet version="1.0"
   <xsl:template match="/">
         <title>XSL Version</title>
           <xsl:value-of select="system-property('xsl:version')" />
           <br />
           <xsl:value-of select="system-property('xsl:vendor')" />
           <br />
           Vendor URL:
           <xsl:value-of select="system-property('xsl:vendor-url')" />

Results for XALAN Edit

Results for Apache XALAN

  Vendor: Apache Software Foundation (Xalan XSLT)
  Vendor URL: http://xml.apache.org/xalan-j

Results for Saxon Edit

Version: 2.0 Vendor: SAXON from Saxonica Vendor URL: http://www.saxonica.com/