RE: [xsl] Moving an attribute from a node to a child node

Subject: RE: [xsl] Moving an attribute from a node to a child node
From: Jarno.Elovirta@xxxxxxxxx
Date: Thu, 3 Jul 2003 09:19:25 +0300
Hi,

> I am trying to move an attribute from one node to child node. 

With XSLT you can't move anything, just create a modified copy.


>  This seems like an easy
> task, but I've been having issues.
> 
> Here is a sample XML document:
> 
> <myXML>
> <NodeA reason="because">
> <NodeB> ..... </NodeB>
> </NodeA>
> </myXML>
> 
> I need to move the attribute 'reason' to NodeB.  

E.g.

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

Cheers,

Jarno - Linnunradan käsikirja liftareille: Osa 16

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


Current Thread