我相信这是一个非常基本的问题,但无论如何,这里仍然存在!我已阅读,内置的模板规则文本和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