Running Saxon

Apache Ant · Wikibooks

0%

Contents

    Text

    Size
    100%
    Theme
    Typeface
    Line length
    Spacing

    From Wikibooks, under CC BY-SA 4.0, as the source states it. This page at Wikibooks.

    Running Saxon

    Motivation

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

    Method

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

    Source Code

    Build File

    The following is how Saxon is invoked from Apache Ant.

    <target name="test-saxon">
       <xslt classpath="lib\saxon8.jar"
          in="in.xml" 
          out="out.html" 
          style="check-version.xsl">
          <factory name="net.sf.saxon.TransformerFactoryImpl"/>
       </xslt>
    </target>
    

    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

    check-version.xsl:

    <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="/">
            <results>
                <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>
            </results>
        </xsl:template>
    </xsl:stylesheet>
    

    Or if you are generating a web page:

    <xsl:stylesheet version="1.0"
       xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
       <xsl:template match="/">
          <html>
            <head>
             <title>XSL Version</title>
            </head>
            <body>
               <p>Version:
               <xsl:value-of select="system-property('xsl:version')" />
               <br />
               Vendor:
               <xsl:value-of select="system-property('xsl:vendor')" />
               <br />
               Vendor URL:
               <xsl:value-of select="system-property('xsl:vendor-url')" />
               </p>
            </body>
         </html>
      </xsl:template>
    </xsl:stylesheet>
    

    Results for XALAN

    Results for Apache XALAN

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

    Results for Saxon

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