This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Algoritm for this Hierarchy?
- From: "Ruggier, Mario" <Mario dot Ruggier at softplumbers dot com>
- To: <xsl-list at lists dot mulberrytech dot com>
- Date: Sun, 3 Feb 2002 05:04:23 +0100
- Subject: [xsl] Algoritm for this Hierarchy?
- Reply-to: xsl-list at lists dot mulberrytech dot com
Hello,
I would like to convert the list of <obj> elements to
the hierarchical XML output, as below, but am having
problems identifying a workable algorithm. Can anyone
suggest a simplest (or so ;-) algorithm for this?
Mario Ruggier
--
SoftPlumbers SA, 26 rue Maunoir, CH-1207 Genève
Mobile +41.79.240.8636 | Office +41.22.849.1038
===================================
Input XML (<obj> elements may occur
in any order):
<r>
<obj>
<p.array size="1">
<v>en</v>
</p.array>
</obj>
<obj>
<p.array size="1">
<v>it</v>
</p.array>
</obj>
<obj>
<p.array size="1">
<v>fr</v>
</p.array>
</obj>
<obj>
<p.array size="2">
<v>one</v>
<v>en</v>
</p.array>
</obj>
<obj>
<p.array size="2">
<v>uno</v>
<v>it</v>
</p.array>
</obj>
<obj>
<p.array size="2">
<v>un</v>
<v>fr</v>
</p.array>
</obj>
<obj>
<p.array size="3">
<v>two</v>
<v>one</v>
<v>en</v>
</p.array>
</obj>
<obj>
<p.array size="3">
<v>due</v>
<v>uno</v>
<v>it</v>
</p.array>
</obj>
<obj>
<p.array size="3">
<v>doo</v>
<v>un</v>
<v>fr</v>
</p.array>
</obj>
<obj>
<p.array size="4">
<v>trois</v>
<v>doo</v>
<v>un</v>
<v>fr</v>
</p.array>
</obj>
</r>
===================================
Desired Output (order of sibling <obj>
elements is not important):
<r>
<obj name="en">
<obj name="one">
<obj name="two" />
</obj>
</obj>
<obj name="fr">
<obj name="un">
<obj name="doo">
<obj name="trois"/>
</obj>
</obj>
</obj>
<obj name="it">
<obj name="uno">
<obj name="due" />
</obj>
</obj>
</r>
===================================
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list