sig
  type nilled = bool
  type _NodeKind =
      DocumentNodeKind
    | ElementNodeKind
    | AttributeNodeKind
    | TextNodeKind
    | ProcessingInstructionNodeKind
    | CommentNodeKind
  type 'a access_ops = {
    get_node_kind : '-> Dm_types._NodeKind;
    get_elem_node_name : '-> Namespace_symbols.relem_symbol;
    get_attr_node_name : '-> Namespace_symbols.rattr_symbol;
    get_elem_node_name_with_type :
      '-> Namespace_symbols.relem_symbol * Namespace_symbols.rtype_symbol;
    get_attr_node_name_with_type :
      '-> Namespace_symbols.rattr_symbol * Namespace_symbols.rtype_symbol;
    get_single_element_node : '-> 'a;
    get_document_node_children : '-> 'Cursor.cursor;
    get_element_node_children : '-> 'Cursor.cursor;
    get_pi_target : '-> string;
  }
end