Iwan Aucamp
Iwan Aucamp
### Discussed in https://github.com/RDFLib/rdflib/discussions/1543 Originally posted by **alexdutton** July 20, 2021 This is mostly related to rdflib-jsonld, but the dereferencing implementation is in rdflib, hence raising it here. # Scenario...
We have a couple of LSP violations in Store class hierarchy. One example: https://github.com/RDFLib/rdflib/blob/0856ac8842697fb00199d2beb9ae1ee5b9152c68/rdflib/store.py#L175 https://github.com/RDFLib/rdflib/blob/0856ac8842697fb00199d2beb9ae1ee5b9152c68/rdflib/plugins/stores/berkeleydb.py#L100 If someone does ```python store: rdflib.store.Store = rdflib.plugins.stores.berkeleydb.BerkeleyDB(...) store.open(configuration="/var/tmp/eg.db") ``` Then it will fail, even...
When using a graph with SPARQLStore, `Graph.query` will call `Store.query`: https://github.com/RDFLib/rdflib/blob/0856ac8842697fb00199d2beb9ae1ee5b9152c68/rdflib/graph.py#L1381-L1391 And this will then proceed to assert that the query is a `str`: https://github.com/RDFLib/rdflib/blob/0856ac8842697fb00199d2beb9ae1ee5b9152c68/rdflib/plugins/stores/sparqlstore.py#L183-L192 And even without this assert,...
`SPARQLStore` inherits from `SPARQLConnector` and `rdflib.store.Store`, however, these two classes have the same methods with different signatures: https://github.com/RDFLib/rdflib/blob/0856ac8842697fb00199d2beb9ae1ee5b9152c68/rdflib/plugins/stores/sparqlstore.py#L39 Methods in `rdflib.store.Store`: https://github.com/RDFLib/rdflib/blob/0856ac8842697fb00199d2beb9ae1ee5b9152c68/rdflib/store.py#L334 https://github.com/RDFLib/rdflib/blob/0856ac8842697fb00199d2beb9ae1ee5b9152c68/rdflib/store.py#L350 Methods in `SPARQLConnector`: https://github.com/RDFLib/rdflib/blob/0856ac8842697fb00199d2beb9ae1ee5b9152c68/rdflib/plugins/stores/sparqlconnector.py#L81 https://github.com/RDFLib/rdflib/blob/0856ac8842697fb00199d2beb9ae1ee5b9152c68/rdflib/plugins/stores/sparqlconnector.py#L144-L149 This situation...
I'm not sure why these methods exists: https://github.com/RDFLib/rdflib/blob/0856ac8842697fb00199d2beb9ae1ee5b9152c68/rdflib/plugins/stores/sparqlstore.py#L379-L442 https://github.com/RDFLib/rdflib/blob/0856ac8842697fb00199d2beb9ae1ee5b9152c68/rdflib/plugins/stores/sparqlstore.py#L839-L875 They seem to be duplicating functionality from `rdflib.graph.Graph` and it seems like it would be best to keep this functionality in...
I'm not sure what is happening with [`test/test_misc/test_bnode_ncname.py`](https://github.com/RDFLib/rdflib/blob/54018fc810e08b708ff735e721b292159bfb4fa9/test/test_misc/test_bnode_ncname.py), it seems like the doctests should ideally go into RDFLib, but it is testing a function that is not in RDFLib, i.e....
Currently `NamespaceManager` is coupled with Store/Graph and cannot be used without a Store, it is not entirely clear why, and it seems a better option may be to invert this...
The PR branch contains work I'm doing to rework out test suites, some of the goals: - Improve reporting accuracy - Simplify test implementations - Always generate reports This PR...
All original test data should have clear provenance so we know that we are testing the right things, this is in part to mitigate problems like like [this](https://github.com/RDFLib/rdflib/issues/1839#issuecomment-1100881280). The best...
We should be running all JSON-LD 1.1 tests For JSON-LD 1.0 test see #1832.