It turns out that when I do this:
<xsl:template match="*">
<xsl:copy><xsl:copy-of select="@*"/><xsl:apply-templates/></xsl:copy>
</xsl:template>
I get all the values in the document, but none of the XML tags. I need to
reproduce the entire XML document, tags and all, with the changes in it.
Am I missing something simple?
-----Original Message-----
From: Michael Kay [mailto:mhk(_at_)mhk(_dot_)me(_dot_)uk]
Sent: Thursday, July 15, 2004 8:01 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: [xsl] Correcting an XML
documentxsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
So, basically, I need to change two types of things and then
copy over the
entire XML document with the changes in it. This would seem
very simple, but I'm at a loss.
You write an identity template to copy all elements
<xsl:template match="*">
<xsl:copy><xsl:copy-of select="@*"/><xsl:apply-templates/></xsl:copy>
</xsl:template>
and then add template rules to modify the ones you want to modify, e.g.
<xsl:template match="Datatype[.='DATE']">
<Datatype>TIMESTAMP</Datatype>
</xsl:template>
Michael Kay
--+------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--+--