| name()-Funktion | |
| Diese Funktion liefert den qualifizierten Namen eines Knotens. Ein qualifizierter Name umfasst auch das zugehörige Namensraumpräfix. Für Informationen über den Namensraum-URI (nicht das Präfix), stellt XPath die Funktion namespace-uri() bereit. | |
| Eingaben | |
|
Eine optionale Knotenmenge. Wird keine Knotenmenge angegeben, erstellt die Funktion eine Knotenmenge, deren einziger Inhalt der Kontextknoten ist. |
|
| Ausgabe | |
|
Der erweiterte Name des Knotens. Ist die Knotenmenge im Argument leer oder hat der erste Knoten in der Knotenmenge keinen erweiterten Namen, wird ein leerer String zurückgegeben. |
|
| Definition | |
|
XPath-Abschnitt 4.1, Funktionen auf Knotenmengen |
|
| Beispiel | |
|
Hier das XML-Dokument, mit dem die Funktion name() demonstriert werden soll:
<?xml version="1.0"?>
<report>
<title>Miles Flown in 2001</title>
<month sequence="01">
<miles-flown>12379</miles-flown>
<miles-earned>35215</miles-earned>
</month>
<month sequence="02">
<miles-flown>32857</miles-flown>
<miles-earned>92731</miles-earned>
</month>
<month sequence="03">
<miles-flown>19920</miles-flown>
<miles-earned>76725</miles-earned>
</month>
<month sequence="04">
<miles-flown>18903</miles-flown>
<miles-earned>31781</miles-earned>
</month>
</report>
Das folgende Stylesheet wird dazu verwendet, für jeden Knoten im XML-Dokument den Wert der Funktion name() auszugeben:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:months="Lookup table for month names">
<months:name sequence="12">December</months:name>
<months:name sequence="01">January</months:name>
<months:name sequence="02">February</months:name>
<months:name sequence="03">March</months:name>
<months:name sequence="04">April</months:name>
<months:name sequence="05">May</months:name>
<months:name sequence="06">June</months:name>
<months:name sequence="07">July</months:name>
<months:name sequence="08">August</months:name>
<months:name sequence="09">September</months:name>
<months:name sequence="10">October</months:name>
<months:name sequence="11">November</months:name>
<xsl:output method="text"/>
<xsl:variable name="newline">
<xsl:text>
</xsl:text>
</xsl:variable>
<xsl:template match="/">
<xsl:value-of select="$newline"/>
<xsl:text>A test of the name() function:</xsl:text>
<xsl:value-of select="$newline"/>
<xsl:value-of select="$newline"/>
<xsl:for-each select="document('')//*">
<xsl:text>name: </xsl:text>
<xsl:value-of select="name()"/>
<xsl:value-of select="$newline"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Hier das Ergebnis, wenn Sie das XML-Dokument mit diesem Stylesheet transformieren: A test of the name() function: name: xsl:stylesheet name: months:name name: months:name name: months:name name: months:name name: months:name name: months:name name: months:name name: months:name name: months:name name: months:name name: months:name name: months:name name: xsl:output name: xsl:variable name: xsl:text name: xsl:template name: xsl:value-of name: xsl:text name: xsl:value-of name: xsl:value-of name: xsl:for-each name: xsl:text name: xsl:value-of name: xsl:value-of |
|