在XSLT中有
<xsl:value-of select="expression"/>
获取元素的值,但是是否可以选择元素的标记名?
在这种情况下:
<person>
<!-- required stuff -->
<name>Robert</name>
<!-- optional stuff, free form for future extension.
Using XMLSchema's xsd:any -->
<profession>programmer</profession>
<hobby>photography</hobby>
</person>
<xsl:for-each select="person">
<xsl:tag-of select="."/> : <xsl:value-of select="."/>
</xsl:for-each>
要获得这样的输出:
name : Robert profession : programmer hobby : photography
当然,以上XSLT不会编译,因为
<xsl:tag-of select="expression"/>
不存在。但是,怎么办呢?
与该问题最相关的标签是XPath。这两个函数都是XPath标准函数,可以在任何托管语言(C#,XSLT,XQuery等)的上下文中的XPath表达式中使用。请重新标记
—
Dimitre Novatchev 2009年
文本:“在XSLT中,存在<xsd:value-of select =“ expression” />“ –包含错误。XSLT指令通常使用的前缀是“ xsl”。通常,在使用XML模式时,我们使用前缀“ xsd”或“ xs”。请纠正。
—
Dimitre Novatchev 09年