type node = [ `Tree ] Node.t type t (** The type for documents *) val parse_xml_uri : string -> t val parse_xml_string : string -> t val save : t -> string -> unit val load : ?sample:int -> ?load_text:bool -> string -> t val nil : node val root : node val size : t -> int val is_root : node -> bool val is_nil : node -> bool type tag_list val tag_list_of_set : Ptset.Int.t -> tag_list val first_child : t -> node -> node val first_element : t -> node -> node val tagged_child : t -> node -> Tag.t -> node val select_child : t -> node -> tag_list -> node val next_sibling : t -> node -> node val prev_sibling : t -> node -> node val next_element : t -> node -> node val tagged_sibling : t -> node -> Tag.t -> node val select_sibling : t -> node -> tag_list -> node val tagged_descendant : t -> node -> Tag.t -> node val tagged_next : t -> node -> Tag.t -> node val select_descendant : t -> node -> tag_list -> node val tagged_following_before : t -> node -> Tag.t -> node -> node val select_following_before : t -> node -> tag_list -> node -> node val parent : t -> node -> node val is_first_child : t -> node -> bool val is_right_descendant : t -> node -> node -> bool val tag : t -> node -> Tag.t val attribute_tags : t -> Ptset.Int.t val element_tags : t -> Ptset.Int.t val node_tags : t -> Ptset.Int.t val tags : t -> Tag.t -> Ptset.Int.t*Ptset.Int.t*Ptset.Int.t*Ptset.Int.t val dump_tag_table : t -> unit val subtree_tags : t -> node -> Tag.t -> int val subtree_size : t -> node -> int val subtree_elements : t -> node -> int val closing : t -> node -> node val stats : t -> unit val num_tags : t -> int val tag_operations : t -> Tag.operations val print_xml : t -> node -> Unix.file_descr -> unit val flush : t -> Unix.file_descr -> unit module Predicate : Hcons.S with type data = (t -> node -> bool) ref val mk_pred : [ `Prefix | `Suffix | `Equals | `Contains ] -> string -> Predicate.t val full_text_query : [ `Prefix | `Suffix | `Equals | `Contains ] -> t -> string -> node array val full_text_prefix : t -> string -> node array val full_text_suffix : t -> string -> node array val full_text_equals : t -> string -> node array val full_text_contains : t -> string -> node array type bit_vector val bit_vector_create : int -> bit_vector val bit_vector_unsafe_set : bit_vector -> int -> bool -> unit val bit_vector_unsafe_get : bit_vector -> int -> bool val reinit : unit -> unit type tree_pointer val get_tree_pointer : t -> tree_pointer