[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Double processing

Subject: Re: Double processing
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Fri, 30 Jan 2004 14:11:34 -0500
xsl call template empty template
At 2004-01-30 13:25 -0500, you wrote:
What I'm trying to do is: if there is more than one consecutive warning
the first para of each warning needs a bullet. This is working but once
it processes that, it repeats the second and third warning again and
then the third one again before continuing.
...
<xsl:template name="warning-list">
...
        <xsl:variable name="next" select="following-sibling::*[1]"/>
            <xsl:for-each select="$next[self::warning]">
                <xsl:call-template name="warning-list"/>

The above will process all warnings, one at a time, walking to each immediately following sibling until there are no immediately following sibling warnings.


<xsl:template match="warning">

This fires for all warnings.


<xsl:choose>
<xsl:when test="following-sibling::warning">

And looks at *all* following siblings for *any* warnings, not just the immediately following sibling ...


    <fo:block text-indent="2cm" font-weight="bold" font-size="12pt"
text-decoration="underline" text-align="center"
keep-with-next.within-page="always"
keep-with-previous.within-page="always" space-after="4mm">
        <xsl:text>WARNINGS</xsl:text>
    </fo:block>
        <fo:block>
            <xsl:call-template name="warning-list"/>

... and displays all adjacent siblings.


Can anyone tell me how to
get it to stop after the last warning in a group and move on? I'm stuck.

Perhaps if your first <xsl:when> in your choose was something along the lines of "do nothing for preceding-sibling::*[1][self::warning]" using an empty template since the warning being processed would already have been processed the first time around?


I hope this helps.

........................... Ken

--
Public courses: sign up for one or both soon to reserve your seat!
Each week:  Monday-Wednesday: XSLT/XPath;  Thursday-Friday: XSL-FO
Washington, DC: 2004-03-15           San Francisco, CA: 2004-03-22
Hong Kong, China: 2004-05-17           Bremen, Germany: 2004-05-24
World-wide on-site corporate, government & user group XML training

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)
Male Breast Cancer Awareness  http://www.CraneSoftwrights.com/s/bc


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



Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.