L'élément <xsl:key> permet de créer un identifiant pour des éléments sélectionnés par un pattern et désigné par l'expression de l'attribut use.
<xsl:key
name="nom"
match="pattern"
use="expression"/>
L'attribut use permet de faire une différenciation entre les éléments sélectionnés par l'attribut match.
La valeur extraite par l'attribut use crée un identifiant à deux niveaux.
key("nom_identifiant", "valeur_use")
La référence à ce type d'identifiant s'effectue par la fonction key.
Les attributs :| Elément | Description |
|---|---|
| name="nom" | affecte un nom à l'identifiant créé. |
| match="pattern" | sélectionne un type de noeud dans l'arborescence d'un document XML. |
| use="expression" | désigne une valeur de différenciation. |
Cet élément peut être contenu dans les instructions <xsl:stylesheet> et <xsl:transform>.
Cet élément ne peut contenir aucunes instructions.
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="xml" version="1.0" encoding="ISO-8859-1"/>
<xsl:key name="logiciel" match="logiciel" use="editeur"/>
<xsl:param name="editeur" select="'Microsoft'"/>
<xsl:template match="/">
<xsl:element name="logitheque">
<xsl:copy-of select="key('logiciel', $editeur)"/>
</xsl:element>
</xsl:template>
</xsl:stylesheet> |