Expand description
oxilite core: an I/O-free SPARQL-to-SQLite compiler.
Every operation is a job::Job that produces SQL sql::Requests and consumes
sql::Responses, so the same code drives in-process SQLite, a dynamically loaded
libsqlite3, Cloudflare D1, or a JavaScript host.
Re-exports§
pub use compiler::QueryOptions;pub use compiler::ValueType;pub use error::Error;pub use error::Result;pub use job::run_async;pub use job::run_sync;pub use job::AsyncBackend;pub use job::Job;pub use job::Step;pub use job::SyncBackend;pub use query::compile_query;pub use query::CompiledQuery;pub use query::QueryJob;pub use query::QueryOutput;pub use registry::SchemaGraph;pub use registry::SchemaRole;pub use schema::StoreOptions;pub use shapes::PropertyShape;pub use shapes::ShapeIndex;pub use sql::Capabilities;pub use sql::Mode;pub use sql::Request;pub use sql::Response;pub use sql::ResultSet;pub use sql::SqlValue;pub use sql::Statement;pub use stats::Stats;pub use version::CommitInfo;pub use version::LevelChange;pub use version::VersionRef;pub use version::VersionState;pub use version::Versioning;
Modules§
- compiler
- SPARQL algebra → SQL.
- encoding
- Term encoding: every RDF term maps to a tagged 64-bit integer id.
- error
- fallback
- Fallback evaluation with
sparevalfor queries the SQL compiler cannot express. - functions
- Host functions: user code callable from SPARQL, Cypher and Datalog.
- job
- Step machines: the sans-IO execution model.
- ops
- Store operations as sans-IO jobs, shared by the sync, async and JavaScript drivers.
- query
- Query compilation entry point, execution job and result decoding.
- reason
- RDFS / OWL reasoning: the schema closure, query rewriting and OWL 2 RL materialization.
- registry
- The schema registry: which named graphs hold schema rather than data, and which graphs each
one applies to — kept as RDF in the system graph
<oxilite:schema>. - resolve
- Batched id → term resolution.
- schema
- Database schema.
- shapes
- The compiled SHACL shape index.
- sql
- The sans-IO contract between oxilite and a SQLite-compatible engine.
- stats
- Statistics used by the join-order planner.
- text
- Optional full-text search over string literals with SQLite FTS5.
- update
- SPARQL UPDATE planning.
- vector
- Vector indexes over embeddings stored as RDF literals (backends with vector functions: Turso).
- version
- Optional versioning: a store clock, an immutable change log, and time travel.
- writer
- Write path: turns quads into chunked, self-contained SQL statements.