X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=src%2Ftree.ml;h=e729034eb705774684a7b97f9ab35b66fcf65ea3;hb=16e61f135ed3043f4c656c423c67654ceb058411;hp=ec253bcdae8345849eb0c5680d4a45c897a66096;hpb=0da8c3c7c76ab06d5ccfc6ae52488d7549735059;p=SXSI%2Fxpathcomp.git diff --git a/src/tree.ml b/src/tree.ml index ec253bc..e729034 100644 --- a/src/tree.ml +++ b/src/tree.ml @@ -572,7 +572,7 @@ let parse_xml_string str = node_of_t (TreeBuilder.parse_string str) let size t = tree_size t.doc;; let magic_string = "SXSI_INDEX" -let version_string = "3" +let version_string = "4" let pos fd = Unix.lseek fd 0 Unix.SEEK_CUR @@ -785,7 +785,7 @@ let stats tree = in traverse tree.doc root [] 0; let sumdepth = Hashtbl.fold (fun p c acc -> (List.length p) * c + acc) h 0 in - + let alltags = Ptset.Int.union tree.elements tree.attributes in Logger.print err_formatter "Statistics :@\n\ Average depth: %f@\n\ Longest path: %i@\n\ @@ -793,14 +793,16 @@ Number of distinct paths: %i@\n\ Number of nodes: %i@\n\ Number of leaves: %i@\n\ Number of pcdata/cdata nodes: %i@\n\ -Number of distinct tags: %i@\n@?" +Number of distinct tags: %i@\n\ +Largest tag id: %i@\n@?" (float_of_int sumdepth /. float_of_int !numleaves) !depth (Hashtbl.length h) (tree_subtree_size tree.doc root) !numleaves !numtexts - (Ptset.Int.cardinal (Ptset.Int.union tree.elements tree.attributes)) + (Ptset.Int.cardinal alltags) + (Ptset.Int.max_elt alltags) (* Logger.print err_formatter "Average depth: %f, number of leaves %i@\n@?" ((float_of_int a)/. (float_of_int b)) b