xsl-list
[Top] [All Lists]

[xsl] AW: extrem performance break down

2012-12-12 09:03:02
Say no more....It's the xpath it should be:

<xsl:variable name="special" 
select="//*[not(ancestor-or-self::span[@class='heading' and 
count(preceding::span[@class='heading']) = 0])][self::p or self::ul or 
self::span[not(@class='heading' and count(preceding::span[@class='heading']) = 
0)]][following::text()[starts-with(.,'Zum aktuellen Rechtsstand')] and 
ancestor::div[@class='comm.body'] and .//text()][1]"/>


thx



. . . . . . . . . . . . . . . . . . . . . . . . . .
Ing. Patrick Szabo
Developer
LexisNexis
A-1030 Wien, Marxergasse 25

mailto:Patrick(_dot_)Szabo(_at_)lexisnexis(_dot_)at
Tel.: +43 1 53452 1573
Fax.: +43 1 534 52 146

. . . . . . . . . . . . . . . . . . . . . . . . . .

-----Ursprüngliche Nachricht-----
Von: Szabo, Patrick (LNG-VIE) 
[mailto:patrick(_dot_)szabo(_at_)lexisnexis(_dot_)at]
Gesendet: Mittwoch, 12. Dezember 2012 16:02
An: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Betreff: [xsl] AW: extrem performance break down

Hi again,

Okay I followed your advice and now I got this:

<xsl:variable name="special" 
select="*[not(ancestor-or-self::span[@class='heading' and 
count(preceding::span[@class='heading']) = 0])][self::p or self::ul or 
self::span[not(@class='heading' and count(preceding::span[@class='heading']) = 
0)]][following::text()[starts-with(.,'Zum aktuellen Rechtsstand')] and 
ancestor::div[@class='comm.body'] and .//text()][1]"/>

<xsl:template match="*[. intersect $special]" priority="20">
        ***something happens***
</xsl:template>

While having that cumbersome xpath as a match works, this does not. It just 
doesn't match.
Did i do anything wrong ?



. . . . . . . . . . . . . . . . . . . . . . . . . .
Ing. Patrick Szabo
Developer
LexisNexis
A-1030 Wien, Marxergasse 25

mailto:Patrick(_dot_)Szabo(_at_)lexisnexis(_dot_)at
Tel.: +43 1 53452 1573
Fax.: +43 1 534 52 146

. . . . . . . . . . . . . . . . . . . . . . . . . .

-----Ursprüngliche Nachricht-----
Von: Szabo, Patrick (LNG-VIE) 
[mailto:patrick(_dot_)szabo(_at_)lexisnexis(_dot_)at]
Gesendet: Mittwoch, 12. Dezember 2012 09:14
An: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Betreff: [xsl] extrem performance break down

Hi,

I'm using Saxon-B 9.0.0.6 that comes with Oxygen 9 for profiling.
My Stylesheet is quite long so i don't wan't to post the whole thing but my 
problems seems to reside within one template anyway.

I have the following template:

<xsl:template match="*[self::p or 
self::ul][following::text()[starts-with(.,'Zum aktuellen Rechtsstand')] and 
ancestor::div[@class='comm.body'] and text()][1]" priority="20">
        ***something happens***
</xsl:template>

When i change the xpath to

<xsl:template match="*[not(ancestor-or-self::span[@class='heading' and 
count(preceding::span[@class='heading']) = 0])][self::p or self::ul or 
self::span[not(@class='heading' and count(preceding::span[@class='heading']) = 
0)]][following::text()[starts-with(.,'Zum aktuellen Rechtsstand')] and 
ancestor::div[@class='comm.body'] and .//text()][1]" priority="20">
        **still same things happens**
</xsl:template>

it adds 104 seconds to the execution time. Problem is i need to change it 
because otherwise it matches thing it's not supposed to.

Can anyone tell me what exactly I'm doing that is causing this performance 
break ?
As soo as i revert that one change execution time goes down again.

cheers


. . . . . . . . . . . . . . . . . . . . . . . . . .
Ing. Patrick Szabo
Developer
LexisNexis
A-1030 Wien, Marxergasse 25

mailto:Patrick(_dot_)Szabo(_at_)lexisnexis(_dot_)at
Tel.: +43 1 53452 1573
Fax.: +43 1 534 52 146

. . . . . . . . . . . . . . . . . . . . . . . . . .


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


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