我是新來的XSL和使用版本1.0<xsl:variable name =「pubDate」select =「publicationDate」/>的返回類型,節點集還是字符串?
下面是一些XML源
<?xml version="1.0"?>
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<company>Columbia</company>
<publicationDate>03/31/1985</publicationDate>
</cd>
</catalog>
從上面的XML內容,我將在XSL代碼varialbe通過
<xsl:variable name="pubDate" select="//publicationDate" />
我以爲變量'pubDate'應該包含節點集,因爲'// publicationDate',但是後來我意識到 可以應用String函數,如subString($ pubDate,1,4),它暗示'pubDate'也是一個String 。
是一些自動類型轉換還是其他?
謝謝。所以變量的實際值/類型取決於函數的上下文,對吧?此外,「結果樹片段」是一個2.0的東西,或適用於1.0和2.0? – dunfa 2014-09-10 20:54:34
變量的類型保持不變,無論它如何使用。在這種情況下它仍然是一個節點集。它只是該函數可以從中提取字符串值,但該變量仍然是一個節點集!結果樹片段僅適用於XSLT 1.0(請參閱http://www.xml.com/lpt/a/951) – 2014-09-10 22:24:41