
it is possible to convert a tree structrure to xml/html list with the
tree.traverse_group function

these examples come from the tutorial.txt

SAMPLE TREE DATA STRUCTURE FROM THE TUTORIAL:
you can see the tutorial.txt for more information about this structure

             category 1
           /          \
          /            \
   category 1.2     category 1.2
        |
        |
   category 1.2.1




#SELECT
 CASE
  WHEN group_tag = 1 THEN '<ul>'
  WHEN group_tag = 2 THEN '</ul>'
  WHEN group_tag is null THEN  '<li>'  || node_data_id  || '</li>'
 END AS tags
 from tree.traverse_group(1,8,true) t ;
    tags    
------------
 <ul>
 <li>1</li>
 <ul>
 <li>2</li>
 <ul>
 <li>4</li>
 </ul>
 <li>3</li>
 </ul>
 </ul>
(10 rows)



#SELECT
 CASE
  WHEN group_tag = 1 THEN '<ul>'
  WHEN group_tag = 2 THEN '</ul>'
  WHEN group_tag is null THEN  '<li>'  || d.cat_name  || '</li>'
 END AS tags
 from tree.traverse_group(1,8,true) t LEFT JOIN public.category d ON (t.node_data_id =  d.id) order by traversal_index ;

          tags           
-------------------------
 <ul>
 <li>category 1</li>
 <ul>
 <li>category 1.1</li>
 <ul>
 <li>category 1.2.1</li>
 </ul>
 <li>category 1.2</li>
 </ul>
 </ul>
(10 rows)


HTML RENDERING:

       *  category 1
             o category 2
                + category 4
             o category 3




#SELECT 
 CASE
  WHEN group_tag = 1 THEN '<ul>' 
  WHEN group_tag = 2 THEN '</ul>' 
 END AS grou_tags, d.cat_name  
 from tree.traverse_group(1,8,true) t LEFT JOIN public.category d ON (t.node_data_id =  d.id) order by traversal_index ;

 grou_tags |    cat_name    
-----------+----------------
 <ul>      | 
           | category 1
 <ul>      | 
           | category 1.1
 <ul>      | 
           | category 1.2.1
 </ul>     | 
           | category 1.2
 </ul>     | 
 </ul>     | 
(10 rows)

