|
Subject: Re: [xsl] XSLT 1.0 support in browsers, as of June 2008 From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx> Date: Wed, 18 Jun 2008 16:21:00 +0100 |
>> <xsl:if test="not(ancestor::ed:del) and not(//xref[@target=$anchor])">
>>
>> ...very much :0)
>
> The only way to avoid the "//" above would be to use xsl:key, which didn't
> seem necessary so far because Saxon and MSXML seem to perform well without.
> I'll give that a try when I have time.
I would definitely use a key... and you seem to check for the
existence of elements a lot doing things like:
<xsl:if test="//elem[cond]">
so you should be able to improve performance if you key all elements
by name and use that instead eg:
<xsl:key name="elems-by-name" match="*" use="name()"/>
with
<xsl:if test="key('elems-by-name', 'elem')[cond]">
Basically just go through the code replacing // with a key and where
possible don't use the ancestor axis... performance tuning step 1 :)
--
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] XSLT 1.0 support in brows, Liam Quin | Thread | Re: [xsl] XSLT 1.0 support in brows, Wendell Piez |
| Re: [xsl] XSLT 1.0 support in brows, Michael Ludwig | Date | Re: [xsl] XSLT 1.0 support in brows, M. David Peterson |
| Month |