Ant est un complément simple à XSLT pour créer des chaînes de transformation complètes sans recourir ni à une IHM, ni à un langage de programmation.
Ant permet d'exécuter plusieurs transformations en série.
<xslt in="src/fic1.xml" out="tmp/fic1b.xml" style="xsl/transf1.xsl"/>
<xslt in="tmp/fic1b.xml" out="out/result.fo" style="xsl/transf2.xsl"/>
Traiter un fichier de scénarisation XML qui pointe des fichiers de contenu (par exemple une map qui référence des topics en DITA, un paper qui pointe des sections externalisées en Scenari/Optim) pour obtenir un fichier unique par internalisation des fichiers pointés (grâce à la fonction XPath document
) ; puis appliquer une seconde transformation pour obtenir un fichier FO.
L'on pourra aussi ajouter la tâche permettant d'exécuter le rendu en PDF avec FOP typiquement.
Ant permet d'exécuter plusieurs transformations en lot, pour tous les fichiers d'un répertoire par exemple.
<xslt basedir="src" destdir="out" extension=".html" style="xsl/transf.xsl"/>
Traiter un ensemble de sources XML pour produire un site Web, si chaque fichier XML donne un fichier HTML.
Ant permet d'enchaîner plusieurs XSLT sur un même fichier XML afin d'obtenir plusieurs résultats, liés entre eux.
<xslt in="src/xml1.xml" out="out/xml11.html" style="xsl/xsl1.xsl"/>
<xslt in="src/xml1.xml" out="out/xml12.html" style="xsl/xsl2.xsl"/>
Pour produire une publication comprenant plusieurs fichiers résultant liés (une publication temporalisée HTML5+Timesheet ou une publication paginée XHTML+CSS3 par exemple), il est nécessaire d'appliquer plusieurs XSLT à un même fichier XML.
Ant permet d'appliquer une XSLT à un fichier XML source, afin d'obtenir un nouveau fichier Ant qui contient plusieurs ordres de transformation, typiquement pour chacun des fils pointés par le fichier XML source.
<xslt in="src/xml1.xml" out="ant/xml1.ant" style="xsl/xsl1.xsl"/>
<ant antfile="ant/xml1.ant"/>
Le fichier xml1.ant
contenant lui même une série d'exécutions XSLT qui ont été générées par xsl1.xsl
.
<xsl:template match="topicref[@type='task']">
<xslt in="src/{@href}" out="out/{@ref}.html" style="xsl/topic.xsl"/>
</xsl:template>
Traiter un fichier de scénarisation XML qui pointe des fichiers de contenu pour obtenir un site Web (une map DITA qui référence des topics, un paper Scenari/Optim qui pointe des sections externalisées) :
en transformant le fichier de scénarisation en index.html
en générant un script Ant qui va transformer chacun des fils du fichier de scénarisation en fichier HTML (pointé par le index.html
)