XSLT <xsl:key> na elemento

Pagsasalin at Paggamit

<xsl:key> na elemento ay pang-unang elemento, na maaring ideklara ang isang pinangalang key (ang pangalan at halaga ng pares na inilagay sa mga tinukoy na element ng XML document).

Ang key na ito ay ginagamit sa pamamagitan ng key() function sa stylesheet, tumutulong sa iyo na mahusay na ma-access ang inilagay na element sa kumplikadong XML document.

Komentaryo:Ang key ay hindi dapat maging nag-iisang!

Gramata

<xsl:key
name="name"
match="pattern"
use="expression"/>

Attribute

Attribute Halaga Paglalarawan
name name Hindi dapat kumukunwa. Ispesify ang pangalan ng key.
match pattern Hindi dapat kumukunwa. Idefinirin kung saan ang key ay gagamitin.
use expression

Hindi dapat kumukunwa. Ispesify ang expression na gagamitin bilang halaga ng key.

Ang maaaring maging halaga ng key ay maaaring maging alinman sa mga sumusunod na halaga: attribute, child element o content ng matched element.

Eksemplo

Halimbawa 1

Ipagpalagay na mayroon kang XML file na may pangalan na "persons.xml":

<persons>
  <person name="Tarzan" id="050676"/>
  <person name="Donald" id="070754"/>
  <person name="Dolly" id="231256"/>
</persons>

Maaari mong idefinin ang isang key sa XSL file tulad ng ito:

<xsl:key name="preg" match="person" use="@id"/>

Kung naisipang hanapin ang person na may id="050676", gamitin ang mga ito na code (sa XSL na file):

<?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>