sig
  type xml = Element of Xml.elt | CData of string
  and elt = {
    tag : string;
    attribs : (string * string) list;
    children : Xml.xml list;
  }
  val tag : Xml.xml -> string
  val children : Xml.xml -> Xml.xml list
  val attribs : Xml.xml -> (string * string) list
  val get_cdata : Xml.elt -> string
  val find_by_tag : string -> Xml.xml list -> Xml.elt
  val find_by_attrib : string -> string -> Xml.xml list -> Xml.elt
  val try_children : string -> Xml.elt -> Xml.xml list
  val assoc_attrib : string -> Xml.xml -> string
  type xml_parser
  val parser_create : unit -> Xml.xml_parser
  val parse : Xml.xml_parser -> string -> unit
  val parse_sub : Xml.xml_parser -> string -> int -> int -> unit
  val final : Xml.xml_parser -> Xml.elt
  val parse_string : string -> Xml.elt
  val parse_in_obj_channel : Netchannels.in_obj_channel -> Xml.elt
  val print_xml : Pervasives.out_channel -> Xml.elt -> unit
end