Re: [xsl] Copying nodes

Subject: Re: [xsl] Copying nodes
From: Juan Carlos Gonzalez <jcgonz@xxxxxxxxx>
Date: Tue, 10 Dec 2002 14:49:40 -0800 (PST)
Hi Joerg:

I think I did what you suggested, but still I don't
get the expected results. Sorry to keep posting the
same question back.
THanks again,
... a frustated newbie on xslt

<xsl:template match="npc">
  <xsl:copy>
    <xsl:apply-templates select="@*"/> 
    <xsl:apply-templates select="*"/>
  </xsl:copy>
</xsl:template>
 
<xsl:template match="@*">
   <xsl:copy-of select="."/>
</xsl:template>

<xsl:template match="*">
  <xsl:copy-of select="."/>
</xsl:template>

<xsl:template match="@URL">
   <xsl:attribute
 name="URL">http://www.mydomain.com</xsl:attribute>
 <!--	            or
 	<xsl:copy>http://www.mydomain.com</xsl:copy>
 -->
</xsl:template>

--- Joerg Heinicke <joerg.heinicke@xxxxxx> wrote:
> Hello Juan,
> 
> the error is obviously:
> 
> Juan Carlos Gonzalez wrote:
> > I'm transforming on the server, using MSXML 3.0.
> > 
> > This is my stylesheet:
> > 
> > <?xml version="1.0"?>
> > <xsl:stylesheet version="1.0"
> > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; >
> > <xsl:output method="html"/>
> > 
> > <xsl:template match="/">
> >   <xsl:apply-templates select="/Products/npc"/>
> > </xsl:template>
> > 
> > <xsl:template match="npc">
> >   <xsl:copy>
> >     <xsl:apply-templates select="@*"/> 
> >     <xsl:copy-of select="*"/>
> 
> Here you copy all elements without any processing,
> so you never apply 
> templates on @URL. Change it to <xsl:apply-templates
> select="*"/> and 
> the the template match to "*". Then it shell work.
> 
> Joerg
> 
> >   </xsl:copy>		
> > </xsl:template>
> > 
> > <xsl:template match="@*">
> >   <xsl:copy-of select="."/>
> > </xsl:template>
> > 
> > <xsl:template match="@URL">
> >    <xsl:attribute
> > name="URL">http://www.mydomain.com</xsl:attribute>
> > <!--	            or
> > 	<xsl:copy>http://www.mydomain.com</xsl:copy>
> > -->
> > </xsl:template>
> > 
> > </xsl:stylesheet>
> > 
> > Source file:
> > 
> > <Products>
> > <npc CatId="01" Descr="Accessories">
> > <p Price="5.61" Sku="C45-4022" ManfPartNo="4502"
> > URL="http://www.xxx.com/item.asp?sku=C45-4022"; />
> > <p Price="9.99" Sku="I30-1032" ManfPartNo="6333"
> > URL="http://www.xxx.com/item.asp?sku=I30-1032"/> 
> > </npc>
> > </Products>
> > 
> > I just want to replace once I copy the content of
> the
> > URL attribute.
> > 
> > Thanks again.
> 
> 
>  XSL-List info and archive: 
> http://www.mulberrytech.com/xsl/xsl-list
> 


__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com

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


Current Thread