[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Speeding up processing (with sablotron or saxon)


Subject: Re: [xsl] Speeding up processing (with sablotron or saxon)
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Tue, 13 Jul 2004 14:24:46 -0400

Tony,

Both the key declaration, and the variable declarations should go at the top level.

Sorry 'bout that, too ... I assumed you'd be able to interpolate those critical details. The idea is to pull the deduplication out completely from your template logic, since now it'll be done once and once only, for all the nodes you want to handle.

So (tuning up just a bit more):

<xsl:key name="resource-by-id" match="resource" use="@swgcraft_id"/>

<xsl:variable name="unique-resources"
  select="//resources[generate-id() =
                       generate-id(key('resources-by-id',@swgcraft_id))]"/>

<xsl:template match="server[@name='Ahazi']">
  <resources>
    <xsl:for-each select="$unique-resources">
      <xsl:sort select="."/>
        <resource>
          <xsl:copy-of select="@swgcraft_id"/>
          <xsl:copy-of select="name | type"/>
        ...etc

HTH--
Wendell


====================================================================== Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx Mulberry Technologies, Inc. http://www.mulberrytech.com 17 West Jefferson Street Direct Phone: 301/315-9635 Suite 207 Phone: 301/315-9631 Rockville, MD 20850 Fax: 301/315-8285 ---------------------------------------------------------------------- Mulberry Technologies: A Consultancy Specializing in SGML and XML ======================================================================


Current Thread
Keywords
xml