Re: [xml-dev] Representing binary trees in XML … flat versus recursive

From
John Cowan <>
To
"Costello, Roger L." <>
Date
2019-07-04T17:13:27Z
ID
<CABzTEQDrKUphkZ4WWC6Sh6p-st8eKj0OukF6=>
Thread
Re: [xml-dev] Representing binary trees in XML … flat versus recursive


On Thu, Jul 4, 2019 at 9:45 AM Costello, Roger L. <[email protected]> wrote:
 

Recursive Implementation

The root node consists of a value, an optional left subtree, and an optional right subtree.

A subtree is a node.

A node consists of a value, an optional left subtree, and an optional right subtree.

Here is a recursive XML representation of the above binary tree:

A simpler XML approach is to use elements named root-node, left-node, and right-node.  That reduces the number of levels in the tree by half.

In addition, I don't know of any parsers that use recursion in the language to support recursion in the tree; the nesting is normally stored as an array of element objects, either fixed (in which case you get an error) or growable.  Such a structure can of course be traversed in XSLT, but not with native traversal mechanisms..  Your flat representation doesn't gain you much, then.


John Cowan          http://vrici.lojban.org/~cowan        [email protected]
Cash registers don't really add and subtract;
        they only grind their gears.
But then they don't really grind their gears, either;
        they only obey the laws of physics.  --Unknown