Expand description
This crate defines the execution engine of RDF Fusion.
§RDF Fusion Context
Similar to DataFusion’s SessionContext
,
RDF Fusion provides an RdfFusionContext
.
This context manages the state of the RDF Fusion engine, including the registered RDF term
encodings.
For more details, see the RdfFusionContext
documentation.
§Executing SPARQL Queries
DataFusion operates on the concept of a logical plan. While DataFusion includes an SQL front-end, it does not provide a SPARQL front-end. To execute SPARQL queries, we convert them into logical plans through the following pipeline:
Query String -> SPARQL Algebra (Oxigraph) -> Logical Plan
The query string is first parsed by Oxigraph’s SPARQL parser, which produces a SPARQL algebra
graph pattern. This graph pattern already includes high-level concepts such as Join
, Filter
,
and Projection
.
We then convert this algebra pattern into a DataFusion logical plan through a rewriting step. The resulting logical plan is executed by DataFusion.
Modules§
Structs§
- RdfFusion
Context - Represents a connection to an instance of an RDF Fusion engine.