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

Subject: RE: [xsl] Grouping output based on value in another document
From: "Alex Maddern" <alex@xxxxxxxxxxxx>
Date: Mon, 26 May 2008 18:16:55 +1000
>> First, you are using version="1.0" and xsl:for-each-group.  Any
particular reason for that?

Yep, sorry it was just a mashup of the original XSLT. It throws a warning in
Saxon but still runs, I'll fix that now


>> 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.

An interesting approach. I'll have a play with that one in the morning.

Thanks drkm

Current Thread