package rdf

  1. Overview
  2. Docs
module OrderedString : sig ... end
module SSet = Types.SSet
module SMap = Types.SMap
type loc = Loc.loc = {
  1. loc_start : Stdlib.Lexing.position;
  2. loc_end : Stdlib.Lexing.position;
}
type pname_ns = {
  1. pname_ns_loc : loc;
  2. pname_ns_name : string;
}
type pname_local = {
  1. pname_local_loc : loc;
  2. pname_local_name : string;
}
type var = {
  1. var_loc : loc;
  2. var_name : string;
}
type iriref = {
  1. ir_loc : loc;
  2. ir_iri : Iri.t;
}
type prefixed_name = {
  1. pname_loc : loc;
  2. pname_ns : pname_ns;
  3. pname_local : pname_local option;
}
type iriloc = {
  1. iri_loc : loc;
  2. iri_iri : Iri.t;
}
type iri =
  1. | Iri of iriloc
  2. | Iriref of iriref
  3. | PrefixedName of prefixed_name
type prefix_decl = pname_ns * iriref
type query_prolog_decl =
  1. | BaseDecl of iriref
  2. | PrefixDecl of prefix_decl
type query_prolog = query_prolog_decl list
type rdf_literal = {
  1. rdf_lit_loc : loc;
  2. rdf_lit : Term.literal;
  3. rdf_lit_type : iri option;
}
type data_block_value =
  1. | DataBlockValueIri of iri
  2. | DataBlockValueRdf of rdf_literal
  3. | DataBlockValueNumeric of rdf_literal
  4. | DataBlockValueBoolean of rdf_literal
  5. | DataBlockValueUndef
type data_full_block_value =
  1. | Nil
  2. | Value of data_block_value list
type inline_data_one_var = {
  1. idov_loc : loc;
  2. idov_var : var;
  3. idov_data : data_block_value list;
}
type inline_data_full = {
  1. idf_loc : loc;
  2. idf_vars : var list;
  3. idf_values : data_full_block_value list;
}
type datablock =
  1. | InLineDataOneVar of inline_data_one_var
  2. | InLineDataFull of inline_data_full
type values_clause = datablock option
type path_mod =
  1. | ModOptional
  2. | ModList
  3. | ModOneOrMore
type var_or_iri =
  1. | VIVar of var
  2. | VIIri of iri
type blank_node = {
  1. bnode_loc : loc;
  2. bnode_label : string option;
}
type select_clause_flag =
  1. | Distinct
  2. | Reduced
type select_var = {
  1. sel_var_loc : loc;
  2. sel_var_expr : expression option;
  3. sel_var : var;
}
and select_vars =
  1. | SelectAll
  2. | SelectVars of select_var list
and select_clause = {
  1. sel_flag : select_clause_flag option;
  2. sel_vars : select_vars;
}
and source_selector = iri
and dataset_clause =
  1. | DefaultGraphClause of source_selector
  2. | NamedGraphClause of source_selector
and arg_list = {
  1. argl_loc : loc;
  2. argl_distinct : bool;
  3. argl : expression list;
}
and function_call = {
  1. func_loc : loc;
  2. func_iri : iri;
  3. func_args : arg_list;
}
and binary_op =
  1. | EPlus
  2. | EMinus
  3. | EMult
  4. | EDiv
  5. | EEqual
  6. | ENotEqual
  7. | ELt
  8. | EGt
  9. | ELte
  10. | EGte
  11. | EOr
  12. | EAnd
and expr =
  1. | EVar of var
  2. | EIri of iri
  3. | EBin of expression * binary_op * expression
  4. | ENot of expression
  5. | EUMinus of expression
  6. | EBic of built_in_call
  7. | EFuncall of function_call
  8. | ELit of rdf_literal
  9. | ENumeric of rdf_literal
  10. | EBoolean of rdf_literal
  11. | EIn of expression * expression list
  12. | ENotIn of expression * expression list
and expression = {
  1. expr_loc : loc;
  2. expr : expr;
}
and built_in_call =
  1. | Bic_agg of aggregate
  2. | Bic_fun of string * expression list
  3. | Bic_BOUND of var
  4. | Bic_EXISTS of group_graph_pattern
  5. | Bic_NOTEXISTS of group_graph_pattern
and aggregate =
  1. | Bic_COUNT of bool * expression option
  2. | Bic_SUM of bool * expression
  3. | Bic_MIN of bool * expression
  4. | Bic_MAX of bool * expression
  5. | Bic_AVG of bool * expression
  6. | Bic_SAMPLE of bool * expression
  7. | Bic_GROUP_CONCAT of bool * expression * string option
and group_var = {
  1. grpvar_loc : loc;
  2. grpvar_expr : expression option;
  3. grpvar : var option;
}
and group_condition =
  1. | GroupBuiltInCall of built_in_call
  2. | GroupFunctionCall of function_call
  3. | GroupVar of group_var
and constraint_ =
  1. | ConstrBuiltInCall of built_in_call
  2. | ConstrFunctionCall of function_call
  3. | ConstrExpr of expression
and having_condition = constraint_
and order_condition =
  1. | OrderAsc of expression
  2. | OrderDesc of expression
  3. | OrderConstr of constraint_
  4. | OrderVar of var
and limit_offset_clause = {
  1. limoff_loc : loc;
  2. limoff_offset : int option;
  3. limoff_limit : int option;
}
and solution_modifier = {
  1. solmod_loc : loc;
  2. solmod_group : group_condition list;
  3. solmod_having : having_condition list;
  4. solmod_order : order_condition list option;
  5. solmod_limoff : limit_offset_clause option;
}
and bind = {
  1. bind_loc : loc;
  2. bind_expr : expression;
  3. bind_var : var;
}
and service_graph_pattern = {
  1. servgp_loc : loc;
  2. servgp_silent : bool;
  3. servgp_name : var_or_iri;
  4. servgp_pat : group_graph_pattern;
}
and graph_graph_pattern = {
  1. graphgp_loc : loc;
  2. graphgp_name : var_or_iri;
  3. graphgp_pat : group_graph_pattern;
}
and graph_pattern_elt =
  1. | Triples of triples_block
  2. | Union of group_graph_pattern list
  3. | Optional of group_graph_pattern
  4. | Minus of group_graph_pattern
  5. | GGP of graph_graph_pattern
  6. | Service of service_graph_pattern
  7. | Filter of constraint_
  8. | Bind of bind
  9. | InlineData of datablock
and graph_term =
  1. | GraphTermIri of iri
  2. | GraphTermLit of rdf_literal
  3. | GraphTermNumeric of rdf_literal
  4. | GraphTermBoolean of rdf_literal
  5. | GraphTermBlank of blank_node
  6. | GraphTermNil
  7. | GraphTermNode of Term.term
and var_or_term =
  1. | Var of var
  2. | GraphTerm of graph_term
and path_one_in_prop_set =
  1. | PathOneInIri of iri
  2. | PathOneInA
  3. | PathOneInNotIri of iri
  4. | PathOneInNotA
and path_primary =
  1. | PathIri of iri
  2. | PathA
  3. | PathNegPropSet of path_one_in_prop_set list
  4. | Path of path
and path_elt = {
  1. pelt_loc : loc;
  2. pelt_primary : path_primary;
  3. pelt_mod : path_mod option;
}
and path_elt_or_inverse =
  1. | Elt of path_elt
  2. | Inv of path_elt
and path_sequence = path_elt_or_inverse list
and path = path_sequence list
and verb =
  1. | VerbPath of path
  2. | VerbVar of var
  3. | VerbIri of iri
  4. | VerbA
and triples_node =
  1. | TNodeCollection of graph_node list
  2. | TNodeBlank of prop_object_list list
and graph_node =
  1. | GraphNodeVT of var_or_term
  2. | GraphNodeTriples of triples_node
and object_ = graph_node
and prop_object_list = {
  1. propol_loc : loc;
  2. propol_verb : verb;
  3. propol_objects : object_ list;
}
and triples_block = {
  1. triples_loc : loc;
  2. triples : triples_same_subject list;
}
and triples_same_subject =
  1. | TriplesVar of var_or_term * prop_object_list list
  2. | TriplesNode of triples_node * prop_object_list list
and ggp_sub = {
  1. ggp_sub_loc : loc;
  2. ggp_sub_elts : graph_pattern_elt list;
}
and group_graph_pattern =
  1. | SubSelect of sub_select
  2. | GGPSub of ggp_sub
and sub_select = {
  1. subsel_loc : loc;
  2. subsel_select : select_clause;
  3. subsel_where : group_graph_pattern;
  4. subsel_modifier : solution_modifier;
  5. subsel_values : values_clause;
}
type select_query = {
  1. select_select : select_clause;
  2. select_dataset : dataset_clause list;
  3. select_where : group_graph_pattern;
  4. select_modifier : solution_modifier;
}
type triples_template = triples_same_subject list
type construct_template = triples_template
type construct_where =
  1. | Constr_ggp of group_graph_pattern
  2. | Constr_template of triples_template
type construct_query = {
  1. constr_template : construct_template option;
  2. constr_dataset : dataset_clause list;
  3. constr_where : construct_where;
  4. constr_modifier : solution_modifier;
}
type describe_query = {
  1. desc_sel : var_or_iri list;
  2. desc_dataset : dataset_clause list;
  3. desc_where : group_graph_pattern option;
  4. desc_modifier : solution_modifier;
}
type ask_query = {
  1. ask_dataset : dataset_clause list;
  2. ask_where : group_graph_pattern;
  3. ask_modifier : solution_modifier;
}
type quads_not_triples = {
  1. quadsnt_loc : loc;
  2. quadsnt_graph : var_or_iri;
  3. quadsnt_triples : triples_template option;
}
type quads = {
  1. quads_loc : loc;
  2. quads_triples : triples_template option;
  3. quads_list : (quads_not_triples * triples_template option) list;
}
type quad_pattern = quads
type quad_data = quads
type update_modify = {
  1. umod_loc : loc;
  2. umod_iri : iri option;
  3. umod_delete : quad_pattern option;
  4. umod_insert : quad_pattern option;
  5. umod_using : (bool * iri * loc) list;
  6. umod_where : group_graph_pattern;
}
type update_action =
  1. | Update_load
  2. | Update_clear
  3. | Update_drop
  4. | Update_add
  5. | Update_move
  6. | Update_copy
  7. | Update_create
  8. | Update_insert_data of quad_data
  9. | Update_delete_data of quad_data
  10. | Update_delete_where of quad_pattern
  11. | Update_modify of update_modify
type query_kind =
  1. | Select of select_query
  2. | Construct of construct_query
  3. | Describe of describe_query
  4. | Ask of ask_query
  5. | Update of update_action list
type query = {
  1. q_prolog : query_prolog;
  2. q_kind : query_kind;
  3. q_values : values_clause;
}
module VarSet : sig ... end