Re: [xsl] XSL taking very long

Subject: Re: [xsl] XSL taking very long
From: Josh Canfield <joshcanfield@xxxxxxxxx>
Date: Thu, 26 Aug 2004 12:14:02 -0700
The XML provided doesn't have a Category element...

You probably shouldn't be using //vform which translates to
/descendant-or-self::node()/child::vform and causes the entire node
tree to be searched for vform elements from the root to the deepest
leaf. Depending on your context you probably just need vform, or
perhaps /Search/SearchResults/vform.

Josh

On Thu, 26 Aug 2004 14:02:58 -0500, Tengshe, Ashish
<tengshe.ashish@xxxxxxxxxxxxx> wrote:
> This XSL transformation has been taking very long and after trying to minimize all the other inefficiencies, I'm left with the following code that I don't know how to minimize.
> 
>                <xsl:call-template name="process-categories">
>                        <xsl:with-param name="cats" select="//vform[not(Category=preceding::vform/Category)]"/>
>                </xsl:call-template>
> 
>                <xsl:template name="process-categories">
>                        <xsl:param name="cats"/>
>                        <xsl:for-each select="$cats">
>                        <xsl:if test="Category != ''">
>                        <TR>
>                        <TD NOWRAP="NOWRAP" VALIGN="TOP" ALIGN="LEFT">Cat: <xsl:value-of select="Category"/></TD>
>                        </TR>
>                        </xsl:if>
>                        </xsl:for-each>
>                </xsl:template>
> 
> The XML is of the following format
> 
>        <?xml version="1.0" encoding="UTF-8"?>
>        <Search>
>        <SearchResults>
>                <vform>
>                        <item_id>78987ghg98</item_id><rvsn_id>1</rvsn_id><title_txt><![CDATA[MY NEWSLETTER]]></title_txt></vform>
>                <vform>
>                ---
>                ---
>                ---
>                100s of vform elements
>                ---
>                ---
>        </SearchResults>
>        </Search>
> 
> Let me know if you'd like the full XSL code.
> Any ideas why it is taking so long (using Xalan) and can this output be achieved by other means?
> I appreciate your help!
> 
> Ashish D. Tengshe
> IT System Analyst
> Principal Financial Group
> Tengshe.Ashish@xxxxxxxxxxxxx

Current Thread