Composes a pluggable Repository into a fully-featured Store via
createSPARQLStore, translating Store-level read and write operations into SPARQL queries and updates.
Application developers select a ready-made connector (Oxigraph, HTTP, …) or implement Repository
directly to support a new SPARQL backend.
The SPARQL layer shared by every connector is defined in @metreeca/wire-sparql:
SPARQL text and Tuple solution rows.
The RDF data model those rows carry is defined in @metreeca/trio: Triple
statements and Term values (Named,
Blank, Tagged, Typed),
together with the named/tagged/typed constructors used to mint
Term values from backend results.
Wiring a Connector
Pick a ready-made connector and feed it to createSPARQLStore to obtain a store:
To support a new SPARQL backend, implement a Repository and use
named, tagged, and
typed to lift backend node values into the shared
Term representation. The reference implementation in
@metreeca/wire-sparql-oxigraph exemplifies the pattern:
SPARQL 1.1 repository connector.
Composes a pluggable Repository into a fully-featured Store via createSPARQLStore, translating Store-level read and write operations into SPARQL queries and updates. Application developers select a ready-made connector (Oxigraph, HTTP, …) or implement Repository directly to support a new SPARQL backend.
The SPARQL layer shared by every connector is defined in
@metreeca/wire-sparql: SPARQL text and Tuple solution rows. The RDF data model those rows carry is defined in@metreeca/trio: Triple statements and Term values (Named, Blank, Tagged, Typed), together with the named/tagged/typed constructors used to mint Term values from backend results.Wiring a Connector
Pick a ready-made connector and feed it to createSPARQLStore to obtain a store:
Implementing a Connector
To support a new SPARQL backend, implement a Repository and use named, tagged, and typed to lift backend node values into the shared Term representation. The reference implementation in
@metreeca/wire-sparql-oxigraphexemplifies the pattern:See