eclipse-rdf4j / rdf4j

Eclipse RDF4J: scalable RDF for Java
https://rdf4j.org/
BSD 3-Clause "New" or "Revised" License
362 stars 165 forks source link

SPARQLRepository uses DELETE DATA with blank nodes #2962

Open abrokenjester opened 3 years ago

abrokenjester commented 3 years ago

To execute the RepositoryConnection.remove(Iterable) API method, SPARQLRepository constructs a DELETE DATA request. However, when the input statements contain blank nodes, this results in an illegal SPARQL operation: DELETE DATA is not allowed to contain blank node identifiers.

abrokenjester commented 2 years ago

There's no full-proof way to support this kind of thing with SPARQL only. We should solve this issue by catching the error and wrapping it in a new error to indicate removing statements with specific blank nodes is unsupported in the SPARQL client.