Xslt 變數

全域性變數: 此變數在 xsl 樣式表中的任何位置都可用。此變數應該只是<xsl:stylesheet>元素的子元素。

區域性變數: 此變數僅在宣告它的位置可用。

見下面的程式碼:

<?xml version="1.0" encoding="UTF-8"?> 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                 xmlns:xs="http://www.w3.org/2001/XMLSchema"
                 exclude-result-prefixes="xs"
                 version="2.0">
  <xsl:output omit-xml-declaration="yes"/>

  <xsl:variable name="a" select="5"/>     <!-- Global Variable -->

  <xsl:template match="/">
     <xsl:variable name="b" select="2"/> <!--Local Variable -->
     <xsl:value-of select="$a+$b"/>      <!--Addition of 'a' and 'b' -->
  </xsl:template> 
</xsl:stylesheet>

上述程式碼的輸出為: 7

有兩種方法可以為變數定義值,如:

通過 <xsl:variable>元素@select 屬性中的 xpath 表示式,如:

<xsl:variable name="apple" select="'RED'"/>

要麼

通過 <xsl:variable>元素的內容如:

<xsl:variable name="apple">RED</xsl:variable>

要呼叫宣告的變數,請使用 $ Sign with variable name,如上面的程式碼’$ a'