XSLT <xsl:variable>Element


XSLT 元素参考手册Vollständige XSLT-Elementreferenz

Definition und Verwendung

Das <xsl:variable>-Element wird verwendet, um lokale oder globale Variablen zu deklarieren.

Hinweis:Wenn es als Element der obersten Ebene deklariert wird, ist es eine globale Variable. Wenn es innerhalb einer Vorlage deklariert wird, ist es eine lokale Variable.

Hinweis:Sobald Sie den Wert einer Variable festgelegt haben, können Sie diesen Wert nicht ändern oder modifizieren!

Tipp:Sie können einer Variable einen Wert durch den Inhalt des <xsl:variable>-Elements oder durch das select-Attribut hinzufügen!


Syntax

<xsl:variable
name="name"
select="expression">

<!-- Content:template -->

</xsl:variable>

Attribute

Attribute Wert Beschreibung
name name Erforderlich. Gibt den Namen der Variable an.
select expression Optional. Definiert den Wert der Variable.

Beispiel 1

Wenn das select-Attribut gesetzt ist, darf das <xsl:variable>-Element keinen Inhalt enthalten. Wenn das select-Attribut eine wörtliche Zeichenfolge enthält, muss diese Zeichenfolge in Anführungszeichen gesetzt werden. Die folgenden beiden Beispiele weisen der Variablen "color" den Wert "red" zu:

<xsl:variable name="color" select="'red'" />

<xsl:variable name="color" select='"red"' />

Beispiel 2

Wenn das <xsl:variable>-Element nur das name-Attribut enthält und keinen Inhalt hat, ist der Wert der Variablen eine leere Zeichenfolge:

<xsl:variable name="j" />

Beispiel 3

Das folgende Beispiel weist der Variablen "header" einen Wert durch den Inhalt des <xsl:variable>-Elements zu:

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

<xsl:variable name="header">
<tr>
<th>Element</th>
<th>Description</th>
</tr>
</xsl:variable>

<xsl:template match="/">
<html>
<body>
<table>
<xsl:copy-of select="$header" />
<xsl:for-each select="reference/record">
<tr>
<xsl:if category="XML">
<td><xsl:value-of select="element"/></td>
<td><xsl:value-of select="description"/></td>
</xsl:if>
</tr>
</xsl:for-each>
</table>
<br />
<table>
<xsl:copy-of select="$header" />
<xsl:for-each select="table/record">
<tr>
<xsl:if category="XSL">
<td><xsl:value-of select="element"/></td>
<td><xsl:value-of select="description"/></td>
</xsl:if>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>

</xsl:stylesheet>


XSLT 元素参考手册Vollständige XSLT-Elementreferenz Weitere Erweiterungen