Lim Siew Yin wrote:
<xsl:apply-templates select="//tagXX[position() >= $pStartRecord and position()
< ($pStartRecord + $pDataPageSize)]"/>
the position() is evaluated on basis of the current context list. For the
following expression:
//tagXX[position() ...]
position() is evaluated on basis of the document position of the tagXX within its parent. So this is
evaluated for each tagXX separately. This explains the results you get.
What you are looking for is the count within the list of _all_ tagXX. You can do this by simply
wrapping //tagXX in braces:
(//tagXX)[position() ...]
This forces //tagXX to be evaluated first, resulting the list of all tagXX elements and setting that
as current context list for the predicate with the position()...
Grtz,
Geert