RE: [xsl] Matching namespaces - one works, one doesn't ?

Subject: RE: [xsl] Matching namespaces - one works, one doesn't ?
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Thu, 29 Nov 2007 11:30:34 -0000
> However, if I have 
> 	<xsl:template match="@*[local-name()='xsi']" /> It has 
> no effect on the xmlns:xsi attribute, which remains in the output.

That's because as far as the XPath data model is concerned it's not an
attribute, it's the serialization of a namespace node.

I assume you're using <xsl:copy>. That copies all the namespace nodes of an
element. In XSLT 2.0 you can specify copy-namespaces="no" to prevent this.
In 1.0, use <xsl:element name="{local-name()}"
namespace="{namespace-uri()}"> instead.

Michael Kay
http://www.saxonica.com/

Current Thread