|
Subject: Re: [xsl] merging multiple xml files From: Rick Taylor <taylor@xxxxxxxx> Date: Wed, 04 Jun 2003 14:47:06 -0600 |
<xsl:template match="masterfile">
<merged>
<xsl:apply-templates select="document(doc/@filename)/client">
<xsl:sort select="name"/>
<xsl:sort select="subclient/name"/>
</xsl:apply-templates>
</merged>
</xsl:template> <xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>I have multiple xml files that I wish to merge. An example of the files is below. Note that a file may contain thousands of <detail> nodes. I want to merge them so that the clients are grouped together I have been using a master xml file to try and merge but with no success in keeping the clients together. Also, due to the size of the files, is using xsl:copy and xsl:copy-of the best way to approach this.
Thanks .
<masterfile> <doc filename="file1.xml"/> <doc filename="file2.xml"/> <doc filename="file3.xml"/> </masterfile>
<client> <name>A</name> <subclient> <name>a</name> <detail>....</<detail> <detail>....</<detail> </subclient> </client>
<client> <name>A</name> <subclient> <name>b</name> <detail>....</<detail> <detail>....</<detail> </subclient> </client>
<client> <name>B</name> <subclient> <name>c</name> <detail>....</<detail> <detail>....</<detail> </subclient> </client>
<merged> <client> <name>A</name> <subclient> <name>a</name> <detail>....</<detail> <detail>....</<detail> </subclient> <subclient> <name>b</name> <detail>....</<detail> <detail>....</<detail> </subclient> </client> <client> <name>B</name> <subclient> <name>c</name> <detail>....</<detail> <detail>....</<detail> </subclient> </client> </merged>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Rick Taylor XML Developer PPDM Association
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] merging multiple xml file, G. Ken Holman | Thread | [xsl] Changing sort order via a par, Danny Vint |
| Re: [xsl] How to sort Using Dom and, Karl J. Stubsjoen | Date | [xsl] Changing sort order via a par, Danny Vint |
| Month |