Re: [xsl] Finding immediately preceding node.

Subject: Re: [xsl] Finding immediately preceding node.
From: Betty Harvey <betty@xxxxxxxxxx>
Date: Mon, 2 Jun 2003 10:26:07 -0400 (EDT)
Thanks Ken:

	Your example reinforces my theory that I was going
to have to rewrite the current model and use the 'for-each'.
I was trying to avoid rewriting some complex models but I
I guess there isn't an easy way of looking back at the
parent, then the immediate preceding node without the template
being in the parent node.

	Thanks again!

Betty

On Mon, 2 Jun 2003, G. Ken Holman wrote:

> At 2003-06-02 09:56 -0400, Betty Harvey wrote:
> >I want to get the a true when I am inside <b name="cde"> and
> >the preceding <b> contains the attribute 'name="abc"'.
> 
>      <xsl:if test="preceding-sibling::b[@name='abc']">
> 
> A complete illustration is below where I start off in the <b name="cde"> 
> and test the preceding-sibling <b>.
> 
> I hope this helps, Betty,
> 
> .............. Ken
> 
> T:\ftemp>type betty.xml
> <?xml version="1.0"?>
> <a>
>    <b name="abc"/>
>       <c/>
>    <b>
>       <c/>
>    </b>
>    <b name="abc">
>       <c/>
>    </b>
>    <b name="cde">
>      <c/>
>    </b>
>    <b>
>       <c/>
>    </b>
>    <b>
>       <c/>
>    </b>
>    <b name="abc">
>       <c/>
>    </b>
> </a>
> 
> T:\ftemp>type betty.xsl
> <?xml version="1.0" encoding="iso-8859-1"?>
> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
>                  version="1.0">
> 
> <xsl:template match="/">
>    <xsl:for-each select="//b[@name='cde']">
>      <xsl:if test="preceding-sibling::b[@name='abc']">
>        <xsl:text>Found it!</xsl:text>
>      </xsl:if>
>    </xsl:for-each>
> </xsl:template>
> 
> </xsl:stylesheet>
> 
> T:\ftemp>saxon betty.xml betty.xsl
> <?xml version="1.0" encoding="utf-8"?>Found it!
> T:\ftemp>
> 
> --
> Upcoming hands-on courses: (registration still open!)
> -      (XSLT/XPath and/or XSL-FO) North America: June 16-20, 2003
> 
> G. Ken Holman                mailto:gkholman@xxxxxxxxxxxxxxxxxxxx
> Crane Softwrights Ltd.         http://www.CraneSoftwrights.com/s/
> Box 266, Kars, Ontario CANADA K0A-2E0   +1(613)489-0999 (F:-0995)
> ISBN 0-13-065196-6                      Definitive XSLT and XPath
> ISBN 0-13-140374-5                              Definitive XSL-FO
> ISBN 1-894049-08-X  Practical Transformation Using XSLT and XPath
> ISBN 1-894049-11-X              Practical Formatting Using XSL-FO
> Member of the XML Guild of Practitioners:    http://XMLGuild.info
> Male Breast Cancer Awareness http://www.CraneSoftwrights.com/s/bc
> 
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> 


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread