如何将 xmlns:* 属性与XSLT 1.0相匹配?我尝试使用RDF文档:
<xs:template match="rdf:RDF">
(...)
<xsl:for-each select="@*">
<xsl:value-of select="."/>
</xsl:for-each>
(...)
</xsl:template>
但它似乎不适用于 xmlns 属性。
感谢。
答案 0 :(得分:8)
xmlns属性不是普通属性,它们是名称空间声明。您需要使用命名空间轴来访问它们。
e.g:
<xsl:for-each select="namespace::*">
<xsl:value-of select="name()" />
</xsl:for-each>
答案 1 :(得分:1)
你不能直接,但看看namespace
轴:
<xsl:for-each select="namespace::*">
<xsl:value-of select="."/>
</xsl:for-each>