cliff wrote: >Now how can I go about appending each node to its matching parent? Or >is there a completely better way? All you need is a record number for each element and an "up" pointer in each child record pointing to its parent's record number.