先看個例子:
<xsl:call-template name="footer">
<xsl:with-param name="date" select="@lastupdate"/>
</xsl:call-template>
<xsl:template name="footer">
<xsl:param name="date">today</xsl:param>
<hr/>
<xsl:text>Last update: </xsl:text>
<xsl:value-of select="$date"/>
</xsl:template>
對xml模板 來說,name屬性是很關(guān)鍵的 call-template /apply-template 的name必須要和模板的name
相對應(yīng)。模板相當(dāng)于一個函數(shù),可以暫時這么看。而name相當(dāng)于函數(shù)名稱把。
在call-template中 使用xsl:with-param 相當(dāng)于函數(shù)參數(shù)輸入
而參數(shù)聲明相當(dāng)就是在xsl:template的 xsl:param
說到xsl:variable。
可以用<xsl:variable name="ShowDepth"><計算的值></xsl:variable>來聲明
相當(dāng)于c中的 const 因為變量一旦聲明就無法再被改變。
對于xsl:param和xsl:variable 都可以用 $+name 來直接選擇比如
<xsl:value-of select="$date"/> 就是選擇date變量或者參數(shù)
變量和參數(shù),都是有聲明范圍的 這點和語言中的道理一樣。
最后最最重要一點 :xsl的variable是常量不能再改變
不要被它的名稱迷惑、