Re: [xsl] Grouping output based on value in another document

Subject: Re: [xsl] Grouping output based on value in another document
From: Florent Georges <lists@xxxxxxxxxxxx>
Date: Mon, 26 May 2008 09:39:13 +0200 (CEST)
Alex Maddern wrote:

  Hi

  First, you are using version="1.0" and xsl:for-each-group.  Any
particular reason for that?

> This now looks to me like grouping on the Alert/@status in the
> MAPPING DOCUMENT after I have mapped the values through.

  Why don't you apply templates on the mapping elements instead? 
Something like (sorry, don't have time for exact code):

    <xsl:variable name="root" select="/"/>

    <xsl:template match="/">
       <...>
          <xsl:for-each-group
              select="document('mapping.xml')/..."
              group-by="@alertid">
             <xsl:apply-templates select="."/>
          </xsl:for-each-group>
       </...>
    </xsl:template>

  And in the template rule for the mapping elements you use $root to
select the right elements in the main input.

  Hope that helps.  Feel free to ask if you want me to be more precise.

  Regards,

--drkm























__________________________________________________
Do You Yahoo!?
En finir avec le spam? Yahoo! Mail vous offre la meilleure protection possible contre les messages non sollicitis 
http://mail.yahoo.fr Yahoo! Mail 

Current Thread