Après de nombreux échanges déclenchés par un
message de
Thorbjørn Ravn sur XSL-LIST, deux contributions
récentes de
Norman Walsh et
Dave Pawson
donnent des suggestions pour documenter des feuilles de style XSLT à
la manière de Javadoc.
Par Eric van der Vlist,
Dyomedea (vdv@dyomedea.com).
mercredi 12 juillet 2000
L'
"essai grossier dans cette direction"
fait par Norman Walsh pour
documenter ses feuilles de style XSLT pour DocBook
est comparable au mécanisme Javadoc qui extrait la documentation
des sources Java si ce n'est que cette documentation
est elle même formalisée en XML et non sous forme de commentaires
pour pouvoir être extraite par des transformations XSLT.
Les éléments de plus haut niveau (sous l'élément document xsl:stylesheet)
appartenant à d'autres espaces de noms sont ignorés par les processeurs
XSLT ainsi que le stipule le chapitre 2.2 de la recommandation XSLT :
"De plus, l'élément xsl:stylesheet peut contenir n'importe quel élement
qui n'appartiennent pas à l'espace de noms XSLT, pourvu que
le nom complet de l'élément ait une URI d'espace de noms non nulle. La présence
de tels éléments ne doit pas changer le comportement des éléments et fonctions
XSLT définis dans ce document; il ne serait pas permis,
par exemple pour un tel élément de spécifier que xsl:apply-templates doive utiliser
d'autres règles pour résoudre des conflits. Un processeur XSLT
est donc toujours libre d'ignorer ces éléments et doit les ignorer sans émettre d'erreur
s'il ne connaît pas l'URI d'espace de noms."
Norman Walsh met à profit cette fonctionnalité pour
ajouter des éléments d'un espace de noms défini pour cet usage pour
documenter ses feuilles de style en gardant la documentation dans
la feuille de style elle même sous une forme qui permette son extraction
par une autre transformation XSLT pour
la présenter sous une forme lisible.
Dave Pawson partant de cette idée a défini un nouveau
vocabulaire (en utilisant deux espaces de noms) pour inclure la documentation
et la logique dans des fichiers source qui peuvent être transformés en
feuilles de style XSLT d'une part et en
documentation d'autre part.
Bien que ce nouveau format ne puisse pas être directement utilisé comme
feuille de style, ce procédé permet une meilleure imbrication de la
documentation dans la logique de la feuille de style puisque l'approche de
Norman Walsh ne permet d'inclure de la documentation que
dans des éléments de haut niveau.
Dave Pawson note que son format permet également d'ajouter
des fonctionnalités lors de la transformation en feuille de style, comme
notamment le compilateur de boucles XSLT récemment proposé
par Oliver Becker.
Copyright 2000,
Eric van der Vlist.
|