-
Notifications
You must be signed in to change notification settings - Fork 13
Description
Is your feature request related to a problem? Please describe.
I do not find any mention of RDF/JS spec in the docs. It would be really useful if the query engine was usable with any RDF/JS DatasetCore. It's a shame that the library uses its own abstraction of the RDF model.
Describe the solution you'd like
Ideally, the usage would be something like
import { PlanBuilder } from 'sparql-engine'
// or any other RDF/JS compatible factory
import $rdf from 'rdf-ext'
const dataset = $rdf.dataset()
// the rest unchanged
const builder = new PlanBuilder(dataset)
const iterator = builder.build(query)Describe alternatives you've considered
An adapter would also be an option like below, but I think that given the incompatibility of the graph and triple models this would not make a great solution
import { PlanBuilder, RdfjsDatasetAdapter } from 'sparql-engine'
import $rdf from 'rdf-ext'
const dataset = $rdf.dataset()
const builder = new PlanBuilder(new RdfjsDatasetAdapter(dataset))Additional context
RDF/JS is a de-facto standard, driven by community, and widely supported. N3 is compatible, graph.js is compatible, comunica is compatible. I think it beneficiary to also use RDF/JS as the underlying model for sparql-engine