xsl-list
[Top] [All Lists]

RE: [xsl] Testing for Last Group in For-Each-Group

2007-12-18 03:15:33
The value of last() is an integer greater than zero, and its effective
boolean value is therefore always true.

You want the old favourite: if (position() = last()).

Alternatively, given the way you are doing the grouping, you could do

if (not(following-sibling::br))

Michael Kay
http://www.saxonica.com/ 

-----Original Message-----
From: Jeff Sese [mailto:jsese(_at_)asiatype(_dot_)com] 
Sent: 18 December 2007 08:24
To: XSL List List
Subject: [xsl] Testing for Last Group in For-Each-Group

Hi,

I have a for-each-group instruction, how can i test if the 
group i'm processing is the last one?

<xsl:for-each-group select="node()" group-starting-with="br">
      <group last="{if (last()) the 'yes' else 'no'}">
              <xsl:copy-of select="current-group()"/>
      </group>
</xsl:for-each-group>

I keep on getting 'yes'...

TIA
-- Jeff

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>