Kursus anbefaling:
XSLT <xsl:key> element
Definition og brug
<xsl:key> elementet er en toppunkts-element, der kan deklarere en navngivet nøgle (dvs. tildeling af navn og værdi par til specifikke elementer i XML-dokumentet).
Denne nøgle bruges gennem key() funktion i stilen, hvilket hjælper dig med at effektivt få adgang til tildelte elementer i komplekse XML-dokumenter.Bemærkninger:
Nøglen behøver ikke at være unik!
Syntaks <xsl:key navn="navn" match="mønster"
use="udtryk"/>
use="udtryk"/> | Egenskab | Værdi |
---|---|---|
Beskrivelse | Beskrivelse | navn |
Obligatorisk. Angiv nøgleens navn. | match | mønster |
Obligatorisk. Definer, hvilken node nøglen anvendes på. | udtryk |
Obligatorisk. Angiv udtrykket, der skal bruges som værdi for denne nøgle. Nøgleværdien kan være en af følgende værdier: egenskab, underelement eller indhold af matchende element. |
Eksempel
Eksempel 1
Antag, at du har en XML-fil ved navn "persons.xml":
<persons> <person name="Tarzan" id="050676"/> <person name="Donald" id="070754"/> <person name="Dolly" id="231256"/> </persons>
Du kan definere en nøgle i XSL-filen, sådan her:
<xsl:key name="preg" match="person" use="@id"/>
For at finde person med id="050676", brug følgende kode (i XSL-filen):
<?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 /> Navn: <xsl:value-of select="@name"/> </p> </xsl:for-each> </body> </html> </xsl:template> </xsl:stylesheet>