たなかこういちの資料室

システム開発に携わる筆者があれこれ試したことや学んだことについてのまとめ

Apache Ant XSLTタスクをXSLT 2.0対応化する

Apache Antには「XSLT」タスクが含まれています。
 
"Apache Ant User Manual - XSLT Task" :
 
標準ではXSLT 1.0対応ですが、XSLT 2.0対応の外部ライブラリーを追加することで、XSLT 2.0の.xslファイルを扱えるようになります。
 
※XSLT 2.0の活用例は下記記事が参考になりました。
 
 
XSLT 2.0のOSS、Mozilla Public Licenseな実装が下記より提供されています。
 
"SAXON, The XSLT and XQuery Processor" :
 
「home edition」が選択できます。ダウンロード・ファイル名は、(2016年8月18日時点で、)下記となります。
 
"SaxonHE9-7-0-7J.zip"
 
Antへの導入手順
 
"SaxonHE9-7-0-7J.zip"内に
 
"saxon9he.jar"
 
が含まれています。この.jarファイルを取り出して、Antのlibサブディレクトリ内にコピーしてください。That's all.
 
使い方
 
Antの"build.xml"に「XSLT」タスクを記述するとき、<xslt>タグの子要素に下記例の通りに<factory>タグを記述します。
 
【記述例】
-----(ここから)-----
<target name="transform" depends="init">
    <xslt style="${my-xslt2-compliant-xsl}"
            basedir="${source-dir}" destdir="${target-dir}">
        <factory name="net.sf.saxon.TransformerFactoryImpl"/>
        ...
----(ここまで)----
 
"Apache Ant User Manual - XSLT Task - factory" :
 
◆以上