L'élément <xsl:call-template> permet d'appeler un template par son nom.
Le nom du template sollicité est déclaré par l'intermédiaire d'un attribut name d'ailleurs obligatoire dans cet élément.
Attributs<xsl:call-template name="nom_template"> ... </xsl:call-template>
| Attribut | Description |
|---|---|
| name="nom" | permet d'appeler une règle de modèle par son nom |
Cet élément peut être contenu par les instructions suivantes :
L'élément <xsl:call-template> ne peut contenir que l'élément <xsl:with-param> permettant de faire passer des paramètres à un template.
Exemple : [voir]<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"
media-type="text/html; charset=ISO-8859-1"/>
<xsl:template match="/">
<html>
<head>
<title>La logithèque</title>
</head>
<body>
<table border="0" width="60%" class="produit">
<tr>
<th>Logiciel</th>
<th>Lien</th>
</tr>
<xsl:apply-templates select="logitheque/categorie/logiciel"/>
</table>
</body>
</html>
</xsl:template>
<xsl:template name="cellule">
<td>
<xsl:value-of select="commentaire"/>
</td>
</xsl:template>
<xsl:template match="logitheque/categorie/logiciel">
<xsl:choose>
<xsl:when test="editeur/@lien != ''">
<tr>
<td class="c1">
<xsl:variable name="url" select="editeur/@lien"/>
<a href="{editeur/@lien}" target="_blank"
style="font-size:10pt; font-weight:bold">
<xsl:apply-templates select="nom"/>
</a>
</td>
<xsl:call-template name="cellule"/>
</tr>
</xsl:when>
<xsl:otherwise>
<tr>
<td class="c1">
<xsl:variable name="url">failed.html</xsl:variable>
<a href="failed.html" target="_blank"
style="font-size:10pt; font-weight:bold">
<xsl:apply-templates select="nom"/>
</a>
</td>
<xsl:call-template name="cellule"/>
</tr>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet> |