XSLT <xsl:key> -elementti
Määrittely ja käyttö
<xsl:key> -elementti on ylätaso-elementti, joka voi määrittää nimetyn avaimen (nimet ja arvot parille XML-dokumentin määrittämiä elementtejä).
Tämä avain käytetään key()-funktiossa tyylilaudassa ja auttaa sinua tehokkaasti saavuttamaan osoitettuja elementtejä monimutkaisissa XML-dokumenteissa.
Huomautus:Avain ei tarvitse olla ainutlaatuinen!
Syntaksi
<xsl:key name="name" match="pattern" use="expression"/>
Ominaisuus
Ominaisuus | Arvo | Kuvaus |
---|---|---|
name | name | Välttämätön. Määritä avaimen nimi. |
match | pattern | Välttämätön. Määritä, mihin solmuun avain sovelletaan. |
use | expression |
Välttämätön. Määritä lauseke, joka käytetään avaimen arvona. Avaimen arvo voi olla seuraavista arvoista: ominaisuus, alielementti tai vastaavan elementin sisältö. |
Esimerkki
Esimerkki 1
Oletetaan, että sinulla on XML-tiedosto nimeltä "persons.xml":
<persons> <person name="Tarzan" id="050676"/> <person name="Donald" id="070754"/> <person name="Dolly" id="231256"/> </persons>
Voit määritellä avaimen XSL-tiedostossa tällä tavalla:
<xsl:key name="preg" match="person" use="@id"/>
Jos haluat löytää person, jonka id="050676", käytä näitä koodia (XSL-tiedostossa):
<?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 /> Nimi: <xsl:value-of select="@name"/> </p> </xsl:for-each> </body> </html> </xsl:template> </xsl:stylesheet>