Subject: Re: [xsl] Cost of complex match patterns From: "Vladimir Nesterovsky" <vladimir@xxxxxxxxxxxxxxxxxxxx> Date: Thu, 14 Aug 2008 02:39:58 -0700 |
> > In Saxon, //bar is handled by an index, so exists(//bar) should be quite > > fast after the first time (when the index is built). > > What about: > > <xsl:template match="foo"> > <xsl:choose> > <xsl:when test="ancestor::*/@type = 'a'"> > .... > <xsl:when test="ancestor::*/@type = 'b'"> > > vs > > <xsl:template match="foo[ancestor::*/@type = 'a']"> > > <xsl:template match="foo[ancestor::*/@type = 'b']"> > > > Would you say the two are roughly equivalent, or are there other > subtle differences? In my opinion it worth to resolve tasks in xslt in a way that is easier for human understanding. It's an implementer's responsibility to run it smoothly. Xslt is much more closer to a declarative language than to an assembler. -- Vladimir Nesterovsky http://www.nesterovsky-bros.com/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Cost of complex match pat, Michael Kay | Thread | [xsl] xslt count distinct values - , j milo taylor |
Re: [xsl] namespaces declarations t, Andrew Welch | Date | Re: [xsl] efficiently detecting siz, Andrew Welch |
Month |