This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: how to find out the first occurence of a node with a certain string value.
- From: "Joerg Heinicke" <joerg dot heinicke at gmx dot de>
- To: <xsl-list at lists dot mulberrytech dot com>
- Date: Wed, 27 Mar 2002 02:28:27 +0100
- Subject: Re: [xsl] how to find out the first occurence of a node with a certain string value.
- References: <000501c1d518$6f0e15d0$6501a8c0@pcukmka>
- Reply-to: xsl-list at lists dot mulberrytech dot com
> > I'm trying to find out if a node with certain string value is occuring
> > first time.
>From this I suggest the following:
<xsl:if test="count(preceding-sibling::letter[text() = current()/text()]) =
0">
for first occurence, otherwise change the number at the end.
Regards,
Joerg
> > I'm trying to find out if a node with certain string value is occuring
> > first time. This is the XML snippet:
> > .....
> > <letter>A</letter>
> > <letter>D</letter>
> > <letter>C</letter>
> > <letter>D</letter>
> > ......
> >
> > I want to test if;
> > <xsl:if test="starts-with($mod-init,'D')[1]"> or <xsl:if
> > test="starts-with($mod-init,'D')[2]"> and so forth, but this code does
> > not work. What should I do?
> >
> It's not easy to guess your requirements from looking at incorrect code
> (Jeni Tennison is brilliant at it, but most of us fail miserably). But
> perhaps what you are looking for is:
>
> <xsl:if test="starts-with($mod-init[1],'D')">
>
> You can only apply a predicate such as [1] to a node-set, and the result
of
> starts-with is not a node-set, it is a boolean.
>
> Michael Kay
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list