Re: [xsl] Help needed to make XSL for my XML

Subject: Re: [xsl] Help needed to make XSL for my XML
From: Geert Josten <Geert.Josten@xxxxxxxxxxx>
Date: Sat, 06 Nov 2004 12:23:38 +0100
Lim Siew Yin wrote:

<xsl:apply-templates select="//tagXX[position() &gt;= $pStartRecord and position() &lt; ($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

Current Thread