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(_at_)myrealbox(_dot_)com]
Sent: 16 September 2004 22:23
To: XSL-List(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] 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
--+------------------------------------------------------------------
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>
--+--