Subject:Problem with handling multiple records Author:Ish ganesh Date:29 Apr 2008 03:32 PM
Hi
I am new to xml. I am just trying to do transformation and facing problems dealing with multiple records.
I am attaching the i/p xsd here. (input.xsd)
The o/p xsd has same structure as i/p.
The sample i/p xml looks like this
<Root-Element>
-<RECORD1>
<C2>1</C2>
<C3>name</C3>
</RECORD1>
-<RECORD2>
<C2>voucher1</C2>
<C3>amount1</C3>
</RECORD2>
-<RECORD3>
<C2>Detail1</C2>
<C7>total1</C7>
</RECORD3>
-<RECORD2>
<C2>voucher2</C2>
<C3>amount2</C3>
</RECORD2>
-<RECORD3>
<C2>Detail2</C2>
<C7>total2</C7>
</RECORD3>
</Root-Element>
Now in the transformation file ... Using 'for-each' on Root-element(i/p) to Root-Element of the o/p xsd just gives me the whole i/p file assigned to the o/p.
If I do a count on Root-Element it is returning 1 (instead of total). But count on Record1 returns 1, Record2 returns 2 and Record3 returns 3.
Using for-each on Record2/Record3 loops within Record2/Record3.
I am not able to use for-each on the Root-Element and retrieve all the records individually.
Subject:Problem with handling multiple records Author:James Durning Date:30 Apr 2008 11:04 AM
Not sure what you're asking, but maybe:
<xsl:for-each select="/Root-Element/*">
or
<xsl:for-each select="/Root-Element/*[starts-with(name(),'RECORD')]">