Open davidshumway opened 2 years ago
Hi @davidshumway, thank you for reporting this. We've begun to work with Oxrdflib
and have support in v0.5.3 of kglab
:
import kglab
kglab.KnowledgeGraph(store="Oxigraph")
NB: note the change in the name of the store, as of Oxrdflib
v0.3.0 on 2022-03-19 https://github.com/oxigraph/oxrdflib/releases/tag/v0.3.0
Pros:
Oxrdflib
runs ~2 orders of magnitude faster than the default RDFlib.Store
implementation.Cons:
Oxrdflib
has some troubles with namespaces ... specifically, any prefixes used in a namespace must be explicitly added to each SPARQL queryOPTIONAL
clausesOxrdflib
uses setup.py
to register its RDFlib
plugins and it's not clear that this is working properlyWe've been able to isolate these issues with a minimum Python code + RDF + SPARQL example, and I'll be opening an issue for Oxrdflib
which is linked to this issue.
See also: PRs #240, #241, #242
The SQLAlchemy
issues are a different matter. Ostensibly, our new support for specifying a store="foo"
in the KnowledgeGraph
constructor similarly applies here. The exceptions listed seem to be in the SQLAlchemy
store's support for required methods, specifically in the support for contexts. Perhaps they didn't quite get that far?
FWIW, we've got a new RDFlib.Store
plugin in development which is based on NumPy
/ cuNumeric
and it does implement the contexts support.
cc: @paoespinozarias @neobernad @jelisf @Mec-iS
Perhaps this is a Google Colab-only issue?
And oxrdflib: