xsl-list
[Top] [All Lists]

Re: Positional tests

2005-03-02 11:40:05
Tempore 19:17:58, die 03/02/2005 AD, hinc in xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com scripsit Paul Clarke <pclarke(_at_)rcpsolutions(_dot_)com>:

I need to find out if a block element that I process is the first one with respect to its ancester S1, S2 or S3 elements. The hierarchy looks something
like this:

        test=". = ancestor::S3//block[1] or . = ancestor::S2//block[1] or .
= ancestor::S1//block[1]"

But this slows down processing enormously.

Hi,

It could be (I'm not sure) that the 'xsl:number' element is faster than XPath.

If that's the case, then you might use this:

<xsl:variable name="cnt">
<xsl:number count="block" from="*[starts-with(local-name(),'S')]" level="any"/>
</xsl:variable>
<xsl:if test="self::block and $cnt='1'">
        <xsl:attribute name="hit">true</xsl:attribute>
</xsl:if>

regards,
--
Joris Gillis (http://www.ticalc.org/cgi-bin/acct-view.cgi?userid=38041)
Spread the wiki (http://www.wikipedia.org)

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



<Prev in Thread] Current Thread [Next in Thread>