Re: [xsl] changing the namespace of a document and copy everthing...

Subject: Re: [xsl] changing the namespace of a document and copy everthing...
From: David Carlisle <davidc@xxxxxxxxx>
Date: Mon, 29 Mar 2004 15:40:38 +0100
<FpML version="4-0"
xmlns="http://www.fpml.org/2003/FpML-4-0";


This means that _all_ the (unprefixed) element nodes  contained in this
document ar in this namespace so you don't want to copy any element
nodes as you need to change the name of all of them (the namespace is
part of the name).

so you don't want

          <xsl:copy-of select="node()|@*"/>

as that copies all the child elements of fpml:trade.

Instead you want a template that matches every element in that namespace 

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

You may want to add a namespace attribute to  <xsl:element depending on
what namespace you want the result to be in.

-- 
http://www.dcarlisle.demon.co.uk/matthew

________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________

Current Thread