This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Identity transformation (without using xsl:copy)
Roger L. Costello wrote:
> If this is the start document:
>
> <?xml version="1.0"?>
> <j:juicers xmlns:j="http://www.juicers.org">
> <j:juicer id="omega">
...
> Then this should be the result document:
>
> <?xml version="1.0"?>
> <j:JUICERS xmlns:j="http://www.juicers.org">
> <j:JUICER id="omega">
...
> If I could use <xsl:element> then I could easily accomplish this
> transformation. However, it escapes me how to do it if I am forced to
> use <xsl:copy>.
Check whether this can be modified to fit your needs. Don't count
on namespace prefixes being preserved.
<xsl:template match="*">
<xsl:element name="{local-name(.)}" namespace={namespace-uri(.)}>
<xsl:for-each select="@*">
<xsl:attribute name="{local-name(.)} namespace={namespace-uri(.)}">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:for-each>
<xsl:apply-templates/>
</xsl:element>
</xsl:template>
J.Pietschmann
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list