Re: [xsl] for-each filter

Subject: Re: [xsl] for-each filter
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Tue, 22 Mar 2005 18:30:54 -0500
Hi Charles,

At 07:33 PM 3/22/2005, you wrote:
Hello,
I need to extract the first 5 children from an element.
I used the following syntax and I have problems with it.
<xsl:for-each select="/root/element[position()<4]">
...
</xsl:for-each>
Do I need to escape the condition ( position()&lt;4 ).

Well yes, if this XPath is to be used in XSLT (which it is). For XSLT to parse it must be well-formed XML, which includes escaping magic characters in attribute values.


But there's also a difference between the first five elements, and the first five elements of a given type ('element' elements, for example): you might want simply

/*/*[position() &lt;= 5]

to get the first five children of the document element, whatever their names are.

Cheers,
Wendell


====================================================================== Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx Mulberry Technologies, Inc. http://www.mulberrytech.com 17 West Jefferson Street Direct Phone: 301/315-9635 Suite 207 Phone: 301/315-9631 Rockville, MD 20850 Fax: 301/315-8285 ---------------------------------------------------------------------- Mulberry Technologies: A Consultancy Specializing in SGML and XML ======================================================================

Current Thread