xsl-list
[Top] [All Lists]

RE: [xsl] Xpath to count occurances within a single parent

2006-08-28 11:46:25
Thanks Dave,

Didn't consider XSLT! 

I am using an XSLT file to manage this and determine if the <caution>
elements need a column break or not...so maybe 
Xsl:number will help for that.

I have an fo:block for a caution..


<xsl:template name="safety.box">
<fo:block>

<xsl:if test="count(preceding-sibling::caution) != 0 and self::caution">
        <xsl:attribute name="break-before">column</xsl:attribute>
</xsl:if> 

</fo:block>
</xsl:template>

So in the XML:

<book>
        <chapter>
                <caution/>
                <caution/>
                <caution/>
        </chapter>
        <chapter>
                <sect1>
                        <caution/>
                </sect1>
                <caution/>
                <caution/>
        </chapter>
</book>

That template safety.box would kick in for every <caution/> in the XML.  It
would create a block then using that xsl:if statement, decided if it breaks
columns or not.  So that?s where I'm running into trouble with my XPATH cuz
its not working right.  

Hope that sheds more light on it.

Thanks for the input btw I appreciate the help!

David White

-----Original Message-----
From: David Carlisle [mailto:davidc(_at_)nag(_dot_)co(_dot_)uk] 
Sent: Monday, August 28, 2006 1:05 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] Xpath to count occurances within a single parent


Doesn?t work, because that will include ALL siblings even in other 
chapters.

it will be restricted to one chapter but doesn't work as you ned to count
inside nested sections. (Which you said in your original message but I
didn't take onboard) Do you need to do this in XPath1?
in xslt it's easier to do it with xsl:number (xsl:number from="chapter"
level="any") does just what you want) or if you have to do it in xpath
rather than xslt can you use xpath 2?

David

--~------------------------------------------------------------------
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>
--~--