Re: [xsl] Replacing DTD reference with xsd reference

Subject: Re: [xsl] Replacing DTD reference with xsd reference
From: David Carlisle <davidc@xxxxxxxxx>
Date: Wed, 2 Apr 2003 09:35:37 +0100
> Because copy-of select copies also the namespace, this is not an option for
> me (because I want to transform from no namespace into mynamespace.uri). Is
> there a good way to do this with XSLT, or should I better use a script for
> transforming my xml files ?

You change the namespace the same way you'd change the local name, walk
over the tree and generate the new names with xsl:element
something like

<xsl:template match="*">
<xsl:element name="local-name()" namespace="mynamespace.uri">
<xsl:copy-of select="@*"/>
<xsl:apply-templates/>
</xsl:element>
<xsl:template>

<xsl:template match="/*">
<xsl:element name="local-name()" namespace="mynamespace.uri">
<xsl:copy-of select="@*"/>
<xsl:attribute name="xsl:schemaLocation"
  >mynamespace.uri trap.xsd"</xsl:attribute>
<xsl:apply-templates/>
</xsl:element>
<xsl:template>


David

________________________________________________________________________
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
________________________________________________________________________

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread