functor (O : Xml_sigs.Output->
  sig
    val print_list : ?encode:(string -> string) -> 'a elt list -> O.out
    val print : ?encode:(string -> string) -> ?advert:string -> doc -> O.out
  end