Module Alg_path_struct


module Alg_path_struct: sig .. end

type path = (Xquery_common_ast.axis * Xquery_algebra_ast.anode_test) list 

type source_id =
| Document_id of string
| Constructor_id of int

type subtree =
| Subtree
| NoSubtree
type path_fragment = path * subtree 
type path_fragment_sequence = path_fragment list 
type rooted_path = source_id * path_fragment 
type rooted_path_sequence = rooted_path list 
type paths = rooted_path_sequence *
(Xquery_common_ast.crname * rooted_path_sequence) list *
rooted_path_sequence * rooted_path_sequence

type full_annotation = {
   mutable path_analysis : paths option;
   mutable streaming_annot : rooted_path_sequence option;
}
type path_annotation = full_annotation option Pervasives.ref