key

Syntax

key(name, value) -> node-set


Argumente
Bezeichnung Datentyp Bedeutung
name string spezifiziert den Namen des Schlüssels; falls es sich bei dem Wert nicht um einen String handelt, wird dieser zunächst nach den Regeln der string( ) Funktion umgewandelt
value beliebig spezifiziert den Wert für den Schlüssel

key( )

liefert den Knotenset, der einen bestimmten Wert für den spezifischen Schlüssel besitzt.


Definition

XSLT Kapitel 12.2


Beispiel

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    
<xsl:output method="html"/>

<xsl:key name="department-id" match="/shop/order/product" use="@department"/>

<xsl:template match="/">
     <HTML>
          <HEAD>
               <TITLE>Funktion: key() / Beispiel 01</TITLE>
          </HEAD>
          <BODY>
               <xsl:apply-templates select="shop"/>
          </BODY>
     </HTML>
</xsl:template>

<xsl:template match="shop">
     <TABLE BORDER="1">
          <TR>
               <TH WIDTH="150">Abteilung:</TH>
               <TH WIDTH="100">Artikel:</TH>
               <TH WIDTH="100">Preis:</TH>
          </TR>
          <xsl:for-each select="key('department-id', 'A02')">
               <TR>
                    <TD><xsl:value-of select="@department"/></TD>
                    <TD><xsl:value-of select="name"/></TD>
                    <TD ALIGN="RIGHT">
                         <xsl:value-of select="price"/>
                         <xsl:text> </xsl:text>
                         <xsl:value-of select="currency"/>
                    </TD>
               </TR>
          </xsl:for-each>
     </TABLE>
</xsl:template>

</xsl:stylesheet>


© 2001 by Timo Schäfer