[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: flat XML to normal XML
For a worked solution to a very similar problem (using XSLT 2.0) see: http://www.idealliance.org/proceedings/xml04/papers/111/mhk-paper.html Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Borut Bolcina [mailto:bob@xxxxxxxx] > Sent: 16 May 2005 11:25 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: flat XML to normal XML > > Hello list, > > I wish to transform an xml which has level information in each item > (Table) to xml which has hierarchy as stated in those item's element. > > <DataSet xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> > <Table> > <Level>1</Level> > <Description>Cars</Description> > </Table> > <Table> > <Level>2</Level> > <Description>BMW</Description> > </Table> > <Table> > <Level>3</Level> > <Description>316</Description> > </Table> > <Table> > <Level>3</Level> > <Description>Z4</Description> > </Table> > <Table> > <Level>2</Level> > <Description>Citroen</Description> > </Table> > <Table> > <Level>3</Level> > <Description>C2</Description> > </Table> > <Table> > <Level>3</Level> > <Description>C4 coupe</Description> > </Table> > <Table> > <Level>2</Level> > <Description>Alfa Romeo</Description> > </Table> > <Table> > <Level>3</Level> > <Description>156</Description> > </Table> > <Table> > <Level>1</Level> > <Description>Motorcycles</Description> > </Table> > ... > ... > </DataSet> > > > Target xml should look something like this: > > <NewDataSet> > <Transport name="Cars"> > <Brand name="BMW"> > <Model>316</Model> > <Model>Z4</Model> > </Brand> > <Brand name="Citroen"> > <Model>C2</Model> > <Model>C4 coupe</Model> > </Brand> > <Brand name="Alfa Romeo"> > <Model>156</Model> > </Brand> > </Transport> > <Transport name="Motorcycle"> > ... > </Transport> > </NewDataSet> > > > So, based on the Level element in the source xml for each > Table entry, > an appropriate subtree must be constructed and inserted in > target xml. > Levels are ordered following this pattern: > 1,2,3,3,...,3,2,3,...,3,...,1,2,3,3,...,2,3,...,3 > > Busting my head over this for two days now, help appreciated. > If only I > could find the guy who created this "flat" xml...$%##@@! > > --Bob
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|