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

Re: [xsl] Re: Select All Except First and Last

Subject: Re: [xsl] Re: Select All Except First and Last
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxx>
Date: Mon, 2 Dec 2013 17:05:47 -0500


I also think the spec needs to be revisited.

What if there are only two 'extent' elements, or one? Do you want them
to be dropped?

Of course that's not an XSLT problem. :-)

Cheers, Wendell

Wendell Piez | http://www.wendellpiez.com
XML | XSLT | electronic publishing
Eat Your Vegetables

On Mon, Dec 2, 2013 at 4:49 PM, Nathan Tallman <ntallman@xxxxxxxxx> wrote:
> Thank you, all, for the help.
> Nathan
> On Mon, Dec 2, 2013 at 4:10 PM, Nathan Tallman <ntallman@xxxxxxxxx> wrote:
>> This should be an easy one, but I can't figure it out. How do I select
>> all but the first and last matching nodes?
>> XML input:
>> <physdesc>
>>     <extent>285.42 linear feet</extent>
>>     <extent>227.5 record cartons</extent>
>>     <extent>2.5 Hollinger boxes</extent>
>> </physdesc>
>> HTML output:
>> 285.42 linear feet (227.5 record cartons, 2.5 Hollinger boxes)
>> The input will vary, with different people encoding. I'd like to
>> select all but the first and last extent. While this time, that's only
>> one node at extent[2], there may be 8 or more extents. This is all
>> because a I want to format a list and insert commas. (Although the
>> second-to-end values will be wrapped in parenthesis.)
>> I'm using XSLT 2.0 and Saxon EE 9.4; I thought (and hoped) that the
>> below would work, alas it's not.
>> <xsl:for-each select="extent[not(extent[1])]">
>>     <xsl:value-of select="." separator=", "/>
>> </xsl:for-each>
>> Any help is appreciated.
>> Nathan

Current Thread