[xsl] Identity without namespaces

Subject: [xsl] Identity without namespaces
From: "Joe Fawcett" <joefawcett@xxxxxxxxxxx>
Date: Sun, 2 Oct 2005 11:00:47 -0700
Dear All

I'm trying to write a transform that is basically an identity transform but without any namespaces being copied.
I know this is easier in version 2.0 but would anyone comment on my effort below, it seems to work but have I missed anything or could it be simplified?


<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>

 <xsl:template match="/">
   <xsl:copy>
     <xsl:apply-templates select="node()|@*"/>
   </xsl:copy>
 </xsl:template>


<xsl:template match="@*"> <xsl:attribute name="{local-name()}"> <xsl:value-of select="." /> </xsl:attribute> </xsl:template>

 <xsl:template match="comment() | processing-instruction() | text()">
   <xsl:copy />
 </xsl:template>

 <xsl:template match="node()">
   <xsl:element name="{local-name()}">
     <xsl:apply-templates select="node()|@*"/>
   </xsl:element>
 </xsl:template>

</xsl:stylesheet>


Thanks


Joe

Current Thread