[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

RE: [xsl] Limiting a FOR-EACH loop


Subject: RE: [xsl] Limiting a FOR-EACH loop
From: "Martinez, Brian" <brian.martinez@xxxxxxxx>
Date: Wed, 18 Sep 2002 11:10:18 -0600

> From: Gurnam Bedi [mailto:Gurnam.Bedi@xxxxxxxxxxxxxx]
> Sent: Wednesday, September 18, 2002 10:04 AM
> Subject: [xsl] Limiting a FOR-EACH loop
> 
> 
> How do I ensure that a FOR-EACH loop only iterates over the 
> first x number
> of elements. Or more generally, how can I read the values of 
> first x number
> of elements in a certain node [ex: /SEARCH/RESULTS] and 
> ignore the rest of
> the elements in the /SEARCH/RESULTS (where x itself is the 
> value-of another
> element)?

You could try (assuming x has been defined already):

<xsl:for-each select="/search/results/*[position() &lt;= $x]">
  <xsl:value-of select="."/> <!-- or copy-of if you need the nodes -->
</xsl:for-each>

So if x = 2, only the values of the first two child elements would be
output.

hth,
b.

| brian martinez                              brian.martinez@xxxxxxxx |
| senior gui programmer                                  303.708.7248 |
| trip network, inc.                                 fax 303.790.9350 |
| 6436 s. racine cir.                             englewood, co 80111 |
| http://www.cheaptickets.com/                   http://www.trip.com/ |

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



Current Thread