问题
How can I match the xmlns:* attributes with XSLT 1.0 ? Using a RDF document I tried:
<xs:template match="rdf:RDF">
(...)
<xsl:for-each select="@*">
<xsl:value-of select="."/>
</xsl:for-each>
(...)
</xsl:template>
but it doesn't seem to work for the xmlns attributes.
Thanks.
回答1:
The xmlns attributes aren't normal attributes, they are namespace declarations. You need to use the namespace axis to access them.
e.g.:
<xsl:for-each select="namespace::*">
<xsl:value-of select="name()" />
</xsl:for-each>
回答2:
You can't directly, but have a look at the namespace axis:
<xsl:for-each select="namespace::*">
<xsl:value-of select="."/>
</xsl:for-each>
来源:https://stackoverflow.com/questions/2094203/how-can-i-match-the-xmlns-attributes-with-xslt