XSLT <xsl:key> Element
Definition und Verwendung
<xsl:key> ist ein oberster Element, der eine benannte Schluessel (d.h. Name und Wert-Paare für die im XML-Dokument angegebenen Elemente) deklariert.
Dieser Schlüssel wird durch die key()-Funktion im Stil verwendet, um Ihnen zu helfen, effektiv auf zugewiesene Elemente in komplexen XML-Dokumenten zuzugreifen.
Anmerkung:Der Schlüssel muss nicht einzigartig sein!
Syntax
<xsl:key name="name" match="pattern" use="expression"/>
Attribut
Attribut | Wert | Beschreibung |
---|---|---|
name | name | Erforderlich. Bestimmen Sie den Namen des Schlüssels. |
match | pattern | Erforderlich. Definieren Sie, auf welchen Knoten dieser Schlüssel angewendet wird. |
use | expression |
Erforderlich. Geben Sie den Ausdruck an, der als Wert dieses Schlüssels verwendet werden soll. Der Schlüsselwert kann einer der folgenden Werte sein: Attribut, Kindelement oder Inhalt des abgestimmten Elements. |
Beispiel
Beispiel 1
Angenommen, Sie haben eine XML-Datei namens "persons.xml":
<persons> <person name="Tarzan" id="050676"/> <person name="Donald" id="070754"/> <person name="Dolly" id="231256"/> </persons>
Sie können einen Schlüssel in der XSL-Datei definieren, wie folgt:
<xsl:key name="preg" match="person" use="@id"/>
Um die Person mit id="050676" zu finden, verwenden Sie diesen Code (im XSL-Datei):
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" <xsl:key name="preg" match="person" use="@id"/> <xsl:template match="/"> <html> <body> <xsl:for-each select="key('preg','050676')"> <p> Id: <xsl:value-of select="@id"/><br /> Name: <xsl:value-of select="@name"/> </p> </xsl:for-each> </body> </html> </xsl:template> </xsl:stylesheet>