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

Subject: RE: [xsl] Help needed to make XSL for my XML
From: "Lim Siew Yin" <limsy@xxxxxxxxxxxxxxxxxx>
Date: Mon, 8 Nov 2004 10:27:52 +0800
Geert,

THANKS A MILLION!!!!  It solved my problem right on!

Yipeee!     :)


SY Lim.

-----Original Message-----
From: Geert Josten [mailto:Geert.Josten@xxxxxxxxxxx]
Sent: Saturday, November 06, 2004 7:24 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] Help needed to make XSL for my XML


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


---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.786 / Virus Database: 532 - Release Date: 10/29/2004

Current Thread