Subject: RE: performance issues and selecting
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Thu, 16 Sep 2004 23:14:58 +0100
|
This sort of thing is very dependent on the product you are using. My first
guess is that the version that uses a union operation is more likely to
require a sort, and therefore likely to be slower. On the other hand, it may
avoid searching large parts of the subtree underneath $source - I don't
know. You really can't tell without making measurements.
Michael Kay
> -----Original Message-----
> From: Bruce D'Arcus [mailto:bdarcus@xxxxxxxxxxxxx]
> Sent: 16 September 2004 22:23
> To: XSL-List@xxxxxxxxxxxxxxxxxxxxxx
> Subject: performance issues and selecting
>
> As a general rule, what is likely to be the performance difference
> between this:
>
> <xsl:template match="cs:place">
> <xsl:param name="source"/>
> <xsl:apply-templates select="$source/mods:originInfo/mods:place |
>
> $source/mods:relatedItem/mods:originInfo/mods:place">
> <xsl:with-param name="prefix" select="@before"/>
> <xsl:with-param name="suffix" select="@after"/>
> </xsl:apply-templates>
> </xsl:template>
>
> .... and this:
>
> <xsl:template match="cs:place">
> <xsl:param name="source"/>
> <xsl:apply-templates select="$source/descendant::mods:place">
> <xsl:with-param name="prefix" select="@before"/>
> <xsl:with-param name="suffix" select="@after"/>
> </xsl:apply-templates>
> </xsl:template>
>
> .... and splitting these into two separate templates each with a more
> specific match? I notice my stylesheet has slowed down a
> bit, and want
> to understand the performance implications of what I'm doing before I
> go farther.
>
> Bruce
|