sig
  type tname = Namespace_names.uqname
  type gname = Namespace_names.uqname
  type ename = Namespace_names.uqname
  type aname = Namespace_names.uqname
  type sname = Namespace_names.uqname
  type vname = Namespace_names.uqname
  type fname = Namespace_names.uqname
  type fname_arity = Namespace_names.uqname * int
  type ctname = Namespace_names.rqname
  type cename = Namespace_names.rqname
  type caname = Namespace_names.rqname
  type cvname = Namespace_names.rqname
  type cfname = Namespace_names.rqname
  type cfname_arity = Namespace_names.rqname * int
  type crname = Xquery_common_ast.cvname
  type namespace_declaration = Namespace_names.ncname * Namespace_names.uri
  type nillable = Nillable | NonNillable
  type mixed = Mixed | NonMixed
  type principal = PrincipalElement | PrincipalAttribute
  type unaryop = UEPlus | UEMinus
  type binop =
      BEIntersect
    | BEUnion
    | BEExcept
    | BEBar
    | BEAnd
    | BEOr
    | BEPrecedes
    | BEFollows
    | BEEq
    | BENEq
    | BELtOp
    | BELte
    | BEGtOp
    | BEGte
    | BEEqual
    | BENEqual
    | BEIs
    | BELt
    | BEGt
    | BELteq
    | BEGteq
    | BEPlus
    | BEMinus
    | BEMult
    | BEDiv
    | BEIDiv
    | BEMod
  type axis =
      Ancestor
    | Ancestor_or_self
    | Attribute
    | Child
    | Descendant
    | Descendant_or_self
    | Following_sibling
    | Preceding_sibling
    | Parent
    | Self
    | Following
    | Preceding
  type literal =
      IntegerLiteral of Decimal._integer
    | DecimalLiteral of Decimal._decimal
    | DoubleLiteral of float
    | StringLiteral of string
    | BooleanLiteral of bool
    | URILiteral of AnyURI._uri
  val delimited_string_of_literal :
    string -> Xquery_common_ast.literal -> string
  val string_of_literal : Xquery_common_ast.literal -> string
  val literal_of_string :
    Datatypes.atomic_type -> string -> Xquery_common_ast.literal
  val atomic_type_of_literal :
    Xquery_common_ast.literal -> Datatypes.atomic_type
  type validation_mode = Lax | Strict
  type sortkind = Ascending | Descending
  type emptysortkind = EmptyGreatest | EmptyLeast
  type stablekind = Stable | NonStable
  type value_of_flag = Normal_Replace | Value_Of_Replace
  type snap_modifier =
      Snap_Ordered_Deterministic
    | Snap_Unordered_Deterministic
    | Snap_Nondeterministic
  type updating_modifier = Updating | NonUpdating
  type strip_or_preserve = Strip | Preserve
  type ordered_or_unordered = Ordered | Unordered
  type preserve_or_no_preserve = NSPreserve | NSNoPreserve
  type inherit_or_no_inherit = NSInherit | NSNoInherit
  val fs_dot : Xquery_common_ast.cvname
  val fs_sequence : Xquery_common_ast.cvname
  val fs_position : Xquery_common_ast.cvname
  val fs_last : Xquery_common_ast.cvname
end