<xsl:template match="//Header/ID">
You should never start a match with // it doesn't change th enodes that
are matched, and just changes the default priority in somce cases. In
this case where you already have a / in the pattern it does nothing at
all.
Your simplest option is probably to do something like
<xsl:template match="Reference">
^^^^^^^^^^ no need for //
probably no need for Body/Status/ either
<xsl:choose>
<xsl:when test="preceding-sibling::Command='Add'">
<Reference><xsl:copy-of select="@*"
/>(ref)<xsl:number level="any"/></Reference>
^^^^^^^^^^^^^^^^^^^^^^^^^^
</xsl:when>
<xsl:otherwise>
<xsl:copy-of select="." />
</xsl:otherwise>
</xsl:choose>
</xsl:template>
You only want to copy the attributes in the case you are doing (ref) and
not in the other case?
David
________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list