xsl-list
[Top] [All Lists]

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

2013-12-02 16:05:59
Hi,

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
_____oo_________o_o___ooooo____ooooooo_^


On Mon, Dec 2, 2013 at 4:49 PM, Nathan Tallman <ntallman(_at_)gmail(_dot_)com> 
wrote:
Thank you, all, for the help.

Nathan

On Mon, Dec 2, 2013 at 4:10 PM, Nathan Tallman 
<ntallman(_at_)gmail(_dot_)com> 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

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--