我相信這是一個非常基本的問題,但無論如何,這裏仍然存在!我已閱讀,內置的模板規則文本和XSLT屬性節點是XSLT內置模板屬性規則
<xsl:template match="text()|@*">
<xsl:value-of select="."/>
</xsl:template>
但是源文檔
<?xml version="1.0"?>
<booker>
<award>
<author blah="test">Aravind Adiga</author>
<title>The White Tiger</title>
<year>2008</year>
</award>
</booker>
和XSLT
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
</xsl:stylesheet>
我得到以下輸出在Visual Studio中應用轉換。有人能解釋爲什麼我在輸出中看不到「測試」嗎?
阿拉文·阿迪加
白虎
我同意,只是爲了增加完整性 - 默認的' '選擇所有的子節點,不僅僅是元素(否則沒有什麼會被代碼從問題中輸出)。 –
Krab
2010-05-14 16:06:00
謝謝,我不需要真的這樣做,我只是想了解規則。所以基本上,內建規則的「@ *」部分將永遠不會被調用,除非它被明確調用? – 2010-05-14 16:10:01