| 
 
Subject: RE: [xsl] problems with xsl:copy instruction From: "Andrew Welch" <ajwelch@xxxxxxxxxxxxxxx> Date: Thu, 26 May 2005 15:55:28 +0100  | 
> My understanding of how the <xsl:copy> and <xsl:copy-of> commands is
> weak and so am having trouble figuring out the exact problem.
xsl:copy will copy the current element only, without it's attributes or
children, to the result tree.
xsl:copy-of copies everything, attributes and children.
In your root matching template you create a literal result element
<TopConcept>, and then apply-templates on the <TopConcept> element under
the root.  The first instruction in the matching template that gets
applied is xsl:copy, so you will get another <TopConcept> in your
output.
The rest of the stylesheet also needs looking at, eg:
 <xsl:for-each select="/*/*/O/Class[text()=$notPresent]">
   <xsl:apply-templates select="/*/*/O/Class[text()=$notPresent]"/>
 </xsl:for-each>
and:
 <xsl:template match="@* | node()">
   <xsl:copy>
     <xsl:copy-of select="@*"/>
     <xsl:apply-templates select="@*"/>
   </xsl:copy>
 </xsl:template>
...are both a bit off but I'm guessing you are trying things out?
| Current Thread | 
|---|
  | 
| <- Previous | Index | Next -> | 
|---|---|---|
| [xsl] problems with xsl:copy instru, Rahil | Thread | [xsl] XSL call to validate using XM, 67pat odowd | 
| RE: [xsl] problem with document(con, Michael Kay | Date | Re: [xsl] problem with document(con, Wolfhart Totschnig | 
| Month |