Skip to main content

qualia_core_db/sparql_library/
mod.rs

1pub mod range_select_apply;
2#[cfg(not(target_arch = "wasm32"))]
3pub mod range_bind;
4#[cfg(not(target_arch = "wasm32"))]
5pub mod range_hash_join;
6#[cfg(not(target_arch = "wasm32"))]
7pub mod range_join_select;
8#[cfg(not(target_arch = "wasm32"))]
9pub mod range_optional;
10#[cfg(not(target_arch = "wasm32"))]
11pub mod range_union;
12#[cfg(not(target_arch = "wasm32"))]
13pub use range_bind::{
14    apply_bind, execute_range_bind_page_into, execute_range_volume_set_bind_page_into,
15    Q42RangeBindPlan, Q42RangeBindState, Q42RangeVolumeSetBindState,
16};
17#[cfg(not(target_arch = "wasm32"))]
18pub use range_hash_join::{
19    execute_range_hash_join_page_into, execute_range_volume_set_hash_join_page_into,
20    Q42RangeHashJoinPlan, Q42RangeHashJoinSlot, Q42RangeHashJoinState,
21    Q42RangeVolumeSetHashJoinState,
22};
23#[cfg(not(target_arch = "wasm32"))]
24pub use range_join_select::{
25    execute_range_join_select_page_into, execute_range_volume_set_join_select_page_into,
26    Q42RangeJoinSelectPlan, Q42RangeJoinSelectState, Q42RangeVolumeSetJoinSelectState,
27};
28#[cfg(not(target_arch = "wasm32"))]
29pub use range_optional::{
30    execute_range_optional_page_into, execute_range_volume_set_optional_page_into,
31    Q42RangeOptionalPlan, Q42RangeOptionalState, Q42RangeVolumeSetOptionalState,
32};
33#[cfg(not(target_arch = "wasm32"))]
34pub use range_union::{
35    execute_range_union_page_into, execute_range_volume_set_union_page_into, Q42RangeUnionPlan,
36    Q42RangeUnionState, Q42RangeVolumeSetUnionState,
37};
38pub mod external_sort;
39pub mod geosparql;
40/// Immersive SPARQL (QISP) profile — Phase 2 typed values, dense-asset registry,
41/// and (integrated here) the typed function descriptor registry. See
42/// `docs/plans/immersive-sparql-hypermedia-profile.md`.
43pub mod immersive;
44pub mod parsers;
45pub mod quin_sink;
46pub mod rdf_formats;
47pub mod serialisers;
48pub mod sparql_aggregates;
49pub mod sparql_ast;
50pub mod sparql_did;
51pub mod sparql_endpoint;
52pub mod sparql_executor;
53pub mod sparql_federated;
54pub mod sparql_filter;
55pub mod sparql_grammar;
56pub mod sparql_mm;
57pub mod sparql_parser;
58pub mod sparql_planner;
59pub mod sparql_shacl;
60#[cfg(test)]
61pub mod sparql_tests;
62pub mod sparql_update;
63pub mod sparql_websocket;
64pub mod vision_shacl;
65
66// Re-export parsers (explicit, not glob: `CsvDatatype` / `JsonDatatype` are *also* defined
67// independently in the serializer modules, so glob-flattening both made the bare name
68// ambiguous at this level. The parser datatypes keep the top-level name; the serializer
69// ones stay reachable via their module path, e.g. `serialisers::csv_serializer::CsvDatatype`.)
70pub use parsers::csv_parser::{
71    parse_csv_to_quins, CsvColumnMapping, CsvDatatype, CsvMappingProfile,
72};
73pub use parsers::json_parser::{
74    parse_json_to_quins, JsonDatatype, JsonFieldMapping, JsonMappingProfile,
75};
76
77// Re-export serializers (explicit; the serializers' own `CsvDatatype` / `JsonDatatype` are
78// intentionally not re-exported here — use the module path for those).
79pub use rdf_formats::{
80    parse_rdf, serialize_rdf, QuinCollector, QuinSink, RdfFormat, RdfParseError, RdfSerializeError,
81    RdfStarMode, MAX_RDF_QUINS,
82};
83pub use serialisers::csv_serializer::{serialize_quins_to_csv, CsvSerializationProfile};
84pub use serialisers::json_serializer::{serialize_quins_to_json, JsonSerializationProfile};
85pub use serialisers::rdf_serializers::*;