|
Subject: Re: [xsl] Traversing the tree From: David Carlisle <davidc@xxxxxxxxx> Date: Thu, 8 Sep 2005 23:54:51 +0100 |
<xsl:variable name="reg">
<xsl:for-each select="//reg">
<xsl:copy-of select="."/>
</xsl:for-each>
</xsl:variable>
..
<xsl:when test="$reg/
Note that's not legal in XSLT1 (as $reg is a result tree fragment) it's
legal but expensive in xslt2 (as you have to copy all the nodes)
better to do
<xsl:variable name="reg" select="//reg"/>
An alternative strategy would be
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="top">
<xsl:for-each select="a/reg">
:<xsl:variable name="x" select="(.|preceding-sibling::reg)[@offset][last()]"/>
<xsl:value-of select="."/>: <xsl:value-of select="sum($x/@offset) +
count(preceding-sibling::reg) - count($x/preceding-sibling::reg)"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
David
________________________________________________________________________
This e-mail has been scanned for all viruses by Star. 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
________________________________________________________________________
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] Traversing the tree, JBryant | Thread | Re: [xsl] Traversing the tree, Agnisys Technology \ |
| Re: [xsl] Apply-templates - how to , Wendell Piez | Date | Re: [xsl] determine if atleast one , David Carlisle |
| Month |