let print_xml item =
  let rec print_xml indent doc =
    let prefix = String.make indent ' ' in
      Printf.printf "%s<info>%s</info>\n" prefix (xml_escape doc#get_doc) ;
      List.iter
        (fun (k,v) ->
           Printf.printf "%s<section>\n" prefix ;
           Printf.printf " %s<label>%s</label>\n" prefix (xml_escape k) ;
           print_xml (indent+1) v ;
           Printf.printf "%s</section>\n" prefix
        ) doc#get_subsections
  in
    Printf.printf "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" ;
    Printf.printf "<all>\n" ;
    print_xml 1 item ;
    Printf.printf "</all>\n"