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

[xsl] Re: Select All Except First and Last

Subject: [xsl] Re: Select All Except First and Last
From: Nathan Tallman <ntallman@xxxxxxxxx>
Date: Mon, 2 Dec 2013 16:49:10 -0500

Thank you, all, for the help.


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