sig
  type ncname = string
  type prefix =
      NSDefaultElementPrefix
    | NSDefaultFunctionPrefix
    | NSWildcardPrefix
    | NSPrefix of Namespace_names.ncname
    | NSInterfacePrefix of Namespace_names.ncname
    | NSServerPrefix of Namespace_names.ncname
  val new_prefix : string -> Namespace_names.prefix
  val string_of_prefix : Namespace_names.prefix -> string
  type uri = NSUri of string | NSWildcardUri
  val string_of_uri : Namespace_names.uri -> string
  val quoted_string_of_uri : Namespace_names.uri -> string
  val curly_string_of_uri : Namespace_names.uri -> string
  type uqname = Namespace_names.prefix * Namespace_names.ncname
  val uqname_element_of_string : string -> Namespace_names.uqname
  val uqname_element_of_raw_string : string -> Namespace_names.uqname
  val uqname_function_of_string : string -> Namespace_names.uqname
  val wildcard_uqname_of_string : string -> Namespace_names.uqname
  val escaped_uqname_of_string : string -> Namespace_names.uqname
  val string_of_uqname : Namespace_names.uqname -> string
  type rqname =
      Namespace_names.prefix * Namespace_names.uri * Namespace_names.ncname
  val rqname_compare :
    Namespace_names.rqname -> Namespace_names.rqname -> int
  val rqname_equal : Namespace_names.rqname -> Namespace_names.rqname -> bool
  val rqname_int_equal :
    Namespace_names.rqname * int -> Namespace_names.rqname * int -> bool
  val uqname_of_rqname : Namespace_names.rqname -> Namespace_names.uqname
  val prefixed_string_of_rqname : Namespace_names.rqname -> string
  val quoted_uri_string_of_rqname : Namespace_names.rqname -> string
  val curly_uri_string_of_rqname : Namespace_names.rqname -> string
  val parse_curly_uri_string : string -> Namespace_names.rqname
  val prefix_hash : Namespace_names.prefix -> int
  val uri_hash : Namespace_names.uri -> int
  val ncname_hash : Namespace_names.ncname -> int
end