XSLT <xsl:key> element
Definition and Usage
<xsl:key> na element ay pinakamataas na element, na nagdeklara ng isang pinangalang key (na inilalaan ang pangalan at halaga na mga pares para sa mga tinukoy na element ng XML na dokumento).
Ang key na ito ay ginagamit sa pamamagitan ng key() function sa style sheet, tumutulong sa iyo na makapagabot ng kahusayan sa pagbabasa ng pinagkakalooban ng element sa malalim na XML na dokumento...
Komentaryo:Ang key ay hindi dapat maging exclusive!
Grammar
<xsl:key name="name" match="pattern" use="expression"/>
Attribute
Attribute | Value | Description |
---|---|---|
name | name | Mandatoryo. Tukuyin ang pangalan ng key. |
match | pattern | Mandatoryo. Tukuyin kung anong node ang magiging pinagkilala ng key. |
use | expression |
Mandatoryo. Tukuyin ang expression na gagamitin bilang halaga ng key. Ang key value ay maaaring maging alinman sa mga sumusunod: attribute, child element, o ang content ng match na element. |
Mga Halimbawa
Halimbawa 1
Humingi ng haka-haka na mayroon kang XML na file na may pangalan na "persons.xml":
<persons> <person name="Tarzan" id="050676"/> <person name="Donald" id="070754"/> <person name="Dolly" id="231256"/> </persons>
Maaaring itakda mo ang isang key sa XSL na file tulad nito:
<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>