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

RE: [xsl] merge using keys, xslt 2.0


Subject: RE: [xsl] merge using keys, xslt 2.0
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Tue, 5 Apr 2005 08:17:20 +0100

Don't use keys, use grouping

<xsl:for-each-group select="$doc1/body/outline/outline,
$doc2/body/outline/outline"
 group-by="@xmlUrl">
  <xsl:copy-of select="current-group()[1]"/>
</xsl:for-each-group>

Michael Kay
http://www.saxonica.com/ 

> -----Original Message-----
> From: Pawson, David [mailto:David.Pawson@xxxxxxxxxxx] 
> Sent: 05 April 2005 08:09
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] merge using keys, xslt 2.0
> 
> 
> I want to merge two instances, both valid to a single dtd, 
> removing duplicates
> 
> 
> Outline structure is
> 
> <body>
> <outline>
> <outline type="rss" text="O'Reilly Network Safari Bookshelf" 
> title="O'Reilly Network Safari Bookshelf" 
> xmlUrl="http://safari.oreilly.com/rss"/>
> </outline>
> </body>
> 
> Two documents $home and $work 
>     <xsl:variable name="home" select="document('home.opml')"/>
>     <xsl:variable name="work" select="document('work.opml')"/>
> 
> Stylesheet has
> 
> <xsl:key name='outline' match='outline/outline' use='@xmlUrl'/> 
> 
>   <xsl:template match="outline[outline]">
>       <xsl:copy>
>         <xsl:copy-of select="@*"/>
>           <xsl:apply-templates 
> select="key('outline',outline,$home)[1]| 
> key('outline',outline,$work)[1]"/>
>       </xsl:copy>
>     </xsl:template>
> 
> 
> I'm unsure where to go from here?
> 
> Any help appreciated.
> 
> 
> 
> 
> Regards DaveP.
> 
> **** snip here *****
> 
> -- 
> DISCLAIMER:
> 
> NOTICE: The information contained in this email and any 
> attachments is 
> confidential and may be privileged.  If you are not the intended 
> recipient you should not use, disclose, distribute or copy any of the 
> content of it or of any attachment; you are requested to notify the 
> sender immediately of your receipt of the email and then to delete it 
> and any attachments from your system.
> 
> RNIB endeavours to ensure that emails and any attachments generated by
> its staff are free from viruses or other contaminants.  However, it 
> cannot accept any responsibility for any  such which are transmitted.
> We therefore recommend you scan all attachments.
> 
> Please note that the statements and views expressed in this email and 
> any attachments are those of the author and do not 
> necessarily represent
> those of RNIB.
> 
> RNIB Registered Charity Number: 226227
> 
> Website: http://www.rnib.org.uk


Current Thread
Keywords