xsl-list
[Top] [All Lists]

Re: [xsl] optimization of complex XPath

2010-11-18 19:30:11
On Thu, 2010-11-18 at 20:20 -0500, Graydon wrote:
[...]

I am currently using the XPath expression:

for $x in (//link[(_at_)area='decisions']/@cite) return
    (if ($x = (//num/@cite))
     then 'good'
     else concat('bad cite value ',$x,'
')
    )

to check the links.
[..]

How can I make this check faster?

Since this is xsl-list, I'll note that xsl:key is generally a good
way to make this faster.

In XQuery you could try making a sequence of all the distinct
link/@cite values and all the distinct num/@cite values, and then
find the set difference (XQuery use cases has a similar example,
I think) and then process only those -- this assumes that most of
the links are correct.

It's also sometimes worth trying more implementations - your 2G of
data is too much for the zero-dollar qixz-fe, but maybe BaseX could
handle it.

Liam

PS: 
 is the same as 
 although that change won't make a
measurable performance difference :-)

-- 
Liam Quin - XML Activity Lead, W3C, http://www.w3.org/People/Quin/
Pictures from old books: http://fromoldbooks.org/
Ankh: irc.sorcery.net irc.gnome.org www.advogato.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>
--~--