Subject: RE: [xsl] Retrieving data from two XMLs and creating another XML using XSLT From: cknell@xxxxxxxxxx Date: Wed, 15 Feb 2006 14:03:19 -0500 |
I make no claims for it's elegance, but this stylesheet will do what you described if you name Input File 1 "manasi-d2.xml" and Input File 2 "manasi-d1.xml". ============================================ <?xml version="1.0" encoding="UTF-8" ?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" indent="yes" /> <xsl:strip-space elements="*" /> <xsl:variable name="ddoc" select="document('manasi-d2.xml')" /> <xsl:template match="/"> <xsl:apply-templates /> </xsl:template> <xsl:template match="Root"> <xsl:apply-templates /> </xsl:template> <xsl:template match="Form"> <Info> <Person Name="{$ddoc/Data/Section/Specimen/@Name}"> <Data Tag="{Section/@Name}.{Section/Set/@Name}.{Section/Set/Item/@Name}" Value="{$ddoc/Data/Section/Specimen/Test/Result/TextResult/@Value}"/> </Person> </Info> </xsl:template> <xsl:template match="Section" /> <xsl:template match="Set" /> <xsl:template match="Item" /> </xsl:stylesheet> -- Charles Knell cknell@xxxxxxxxxx - email -----Original Message----- From: Manasi Kulkarni <Manasi.Kulkarni@xxxxxxxxxxxxxxxx> Sent: Wed, 15 Feb 2006 13:41:53 -0500 To: 'xsl-list@xxxxxxxxxxxxxxxxxxxxxx' Subject: [xsl] Retrieving data from two XMLs and creating another XML using XSLT I want to read data from two XML files with completely different structure and build third XML using XSLT. The input XML files are of the form: Input File 1: <Data> <Section> <Specimen Name="John Smith"> <Test Name="Test1"> <Result> <TextResult Value="123"/> <Result> </Test> </Section> </Data> Input File 2: <Root> <Form Name="Form1"> <Section Name="Sect1"> <Set Name="Set1"> <Item Name="Item1"/> </Set> </Section> </Form> </Root> Output File: <Info> <Person Name="John Smith"> <Data Tag="Sect1.Set1.Item1" Value="123"/> </Person> </Info> The output XML contains some value from first XML and some from second XML. My mail problem is creating 'Tag' attribute for output XML which is concatenated string of values from second XML. I tried using xsl:variable / param, however it gives me an error when I use concat function with variables. Can this be done using XSL? Or should I write custom converter using Java / C#? Any help would be appreciated. Thanks, Manasi This message contains privileged and confidential information intended only for the use of the addressee(s) named above. If you are not the intended recipient of this message, or the employee or agent responsible for delivering it to the intended recipient, you are hereby notified that any dissemination or copying of this message is strictly prohibited. If you have received this message in error, please immediately notify the sender by return electronic mail and delete the original message without retaining a copy.
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Retrieving data from two , Michael Kay | Thread | Re: [xsl] Sudoku - A solution in XS, andrew welch |
[xsl] Retrieving data from two XMLs, Manasi Kulkarni | Date | Re: [xsl] Finding and processing in, Dan Vint |
Month |