RE: [xsl] Small changes to source XML

Subject: RE: [xsl] Small changes to source XML
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Fri, 14 May 2004 15:40:18 +0100
Write an identity template that copies everything:

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

Then override it for the things you want to change:

<xsl:template match="a/@ID">
  <xsl:attribute name="ID">0</xsl:attribute>
</xsl:template>

Michael Kay 

> -----Original Message-----
> From: Kenny Akridge [mailto:kenny@xxxxxxxxxxxxxxxxx] 
> Sent: 14 May 2004 13:16
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] Small changes to source XML
> 
> Forgive me for seeming ignorant, but I certainly am in this 
> case.  I want to
> mostly copy all of my source XML to the output XML, with some 
> small changes.
> For instance:
> 
> <root>
> 	<a ID="74">
> 	<a ID="75">
> 	<a ID="76">
> </root>
> 
> I want this output:
> 
> <root>
> 	<a ID="0">
> 	<a ID="0">
> 	<a ID="0">
> </root>
> 
> 
> What is the best way to do this with a lot of XML without 
> using xsl:element?

Current Thread