This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: Accessing nth element
- To: xsl-list at lists dot mulberrytech dot com
- Subject: RE: [xsl] Accessing nth element
- From: Robert Seber <robert dot seber at netdecisions dot co dot uk>
- Date: Tue, 1 May 2001 15:01:07 +0100
- Reply-To: xsl-list at lists dot mulberrytech dot com
You can use apply-templates. The trick is to add a select when you apply
templates:
<xsl:apply-templates select="*[position() < 4]"/>
Example:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="root">
<html>
<head>
</head>
<body>
<b>Less than four:</b> <xsl:apply-templates select="*[position() < 4]"/>
<br/>
<b>Fifth:</b> <xsl:apply-templates select="*[5]"/>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
<?xml version="1.0" encoding="UTF-8"?>
<root>
<item>one</item>
<item>two</item>
<item>three</item>
<item>four</item>
<item>five</item>
<item>six</item>
</root>
> -----Original Message-----
> From: Bharat.Chintapally@CommerceQuest.com
> [mailto:Bharat.Chintapally@CommerceQuest.com]
> Sent: Tuesday, May 01, 2001 2:31 PM
> To: xsl-list@lists.mulberrytech.com
> Subject: Re: [xsl] Accessing nth element
>
>
>
> I am sorry correction: I am not using for-each but I am using
> templates.
> Should I switch to for-each with a selection to achieve what
> I am doing..
>
> Thanks
> --bharat
> ---------------------------------------------------------------
> Bharat Chintapally
> CommerceQuest Inc.
> bharat.chintapally@commercequest.com
> New Phone # 813-639-6478
> ---------------------------------------------------------------
>
>
>
>
> Janning Vygen
>
> <vygen@planwerk6.de> To:
> xsl-list@lists.mulberrytech.com,
> Sent by:
> Bharat.Chintapally@CommerceQuest.com
>
> owner-xsl-list@lists.mulber cc:
>
> rytech.com
> Subject: Re: [xsl] Accessing nth element
>
>
>
>
>
> 05/01/01 09:23 AM
>
> Please respond to xsl-list
>
>
>
>
>
>
>
>
>
> Am Dienstag, 1. Mai 2001 15:04 schrieb
> Bharat.Chintapally@CommerceQuest.com:
> > Hello all:
> > I think I need to replace for-each in my XSLT's with
> recursion. I am
> > interested in picking 'x' elements from 'y' (20 for each
> page from 500
> > records) for paging. for-each is working fine, but it is overkill, I
> should
> > be able to terminate (return from as in procedural lang's)
> processing
> when
> > I finish processing 20 records for a given page.
> > I am trying to switch to recursion, but have a quick
> question. Is
> > there a way to fetch an n'th element from given bunch of
> records. For
> > example when I am processing records 20 thru records 40 out of 500
> records,
> > I would like directly fetch the record #20 from all the
> records. Is it
> > possible..
>
> try something like this
>
> <xsl:for-each select="./records[position() < 20]">
>
> not tested, but with position function inside your XPath
> expression you
> should get the records you want.
>
> janning
>
> --
> Planwerk 6 /websolutions
> Herzogstraße 86
> 40215 Düsseldorf
>
> fon 0211-6015919
> fax 0211-6015917
> http://www.planwerk6.de
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
>
>
>
>
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list