Re: [xsl] Fwd: Combing two different documents

Subject: Re: [xsl] Fwd: Combing two different documents
From: "andrew welch" <andrew.j.welch@xxxxxxxxx>
Date: Mon, 17 Jul 2006 15:54:51 +0100
On 7/17/06, Mukul Gandhi <gandhi.mukul@xxxxxxxxx> wrote:
Taking hint from Andrew's answer, I think you need a stylesheet
something like this:

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>

<xsl:output method="xml" indent="yes" />

<xsl:variable name="doc2" select="document('file2.xml')" />

 <xsl:template match="node() | @*">
   <xsl:copy>
     <xsl:apply-templates select="node() | @*" />
   </xsl:copy>
 </xsl:template>

 <xsl:template match="*[not(*)]">
   <xsl:copy-of select="." />
   <xsl:copy-of select="$doc2//*[not(*)]" />
 </xsl:template>

The problem here, Mukul, is that for each leaf node in the source document, all leaf nodes in $doc2 will be copied. If you were to add a few extra leaf nodes to the examples this would become apparent.

cheers
andrew

Current Thread