L'élément <xsl:param> permet de déclarer un paramètre utilisable par une règle de modèle <xsl:template>.
<xsl:param name="nom"> Valeur... </xsl:param>
La valeur du paramètre se trouve au sein des marqueurs.
Si l'attribut select est employé, alors l'élément <xsl:param> devra être un élément vide.
Les attributs :<xsl:param name="nom" select="expression"/>
Elément | Description |
---|---|
name="nom" | affecte un nom au paramètre. |
select="expression" | sélectionne la valeur du paramètre dans l'arborescence d'un document XML. |
Dans le cas où le paramètre est déclaré dans l'élément <xsl:stylesheet>, alors il serait valable dans l'ensemble de la feuille.
Déclarée dans une règle de modèle <xsl:template>, le paramètre a une portée locale.
Un paramètre est appelé par l'intermédiaire de son nom qui doit être précédé du signe dollar ($).
Deux éléments <xsl:param> ne peuvent se faire mutuellement référence.
Les paramètres doivent se trouver au sommet de la règle de modèle <xsl:template>.
Les paramètres sont souvent utilisés comme récepteur d'une valeur provenant d'un programme externe.
Cet élément peut être contenu dans les instructions suivantes :
Cet élément peut contenir les instructions suivantes :
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html" encoding="ISO-8859-1" indent="no"/> <xsl:template match="/"> <html> <body> <table border="1"> <tr> <th>Nom</th> <th>Position</th> <th>Profondeur</th> <th>Données contenues</th> </tr> <xsl:for-each select="//*"> <tr> <td> <xsl:value-of select="name()"/> </td> <td> <xsl:value-of select="position()"/> </td> <td> <xsl:call-template name="profondeur"/> </td> <td><pre> <xsl:value-of select="current()"/> </pre></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> <xsl:template name="profondeur"> <xsl:param name="noeud" select="."/> <xsl:value-of select="count($noeud/ancestor::node())"/> </xsl:template> </xsl:stylesheet> |