[
https://issues.apache.org/jira/browse/JENA-2337?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17563990#comment-17563990
]
Holger Knublauch commented on JENA-2337:
----------------------------------------
I saw it at https://www.w3.org/TR/sparql11-protocol/#update-operation and my
expectation was that if that parameter is present, we invoke update.addUsing().
But I just re-read it, and see that USING is the same as FROM in
https://www.w3.org/TR/sparql11-query/#specifyingDataset and that REPLACES the
whole dataset. So I assume the ticket is invalid and I need to find another way
to specify the default graph. We probably had this (wrong) interpretation in
the product for years now.
I find this not very intuitive as I thought it would keep the other graphs, and
the fact that getProjected is never called confirmed my assumption.
Could you confirm the above understanding is the right interpretation and I
will close this issue.
> Dataset of WHERE clause in UPDATEs only contains the default graph if
> using-graph-uri is given
> ----------------------------------------------------------------------------------------------
>
> Key: JENA-2337
> URL: https://issues.apache.org/jira/browse/JENA-2337
> Project: Apache Jena
> Issue Type: Bug
> Affects Versions: Jena 4.3.2
> Reporter: Holger Knublauch
> Priority: Major
>
> Summary: I think this boils down to DynamicDatasetGraph in DynamicDatasets:
> the provided baseDSG is never used except for cloning the context. The
> private function getProjected is never used anywhere, see
> https://github.com/apache/jena/blob/main/jena-arq/src/main/java/org/apache/jena/sparql/core/DynamicDatasets.java#L117
> The problem occurs when we call a SPARQL UPDATE with using-graph-uri which we
> map to UpdateWithUsing.addUsing. On execution of such an update, this
> triggers a code path that goes through DynamicDatasets.dynamicDataset. The
> result is that the WHERE clause of an UPDATE only gets to see the default
> graph, but none of the other named graphs in the original dataset. Then, the
> GRAPH <...> clause does not work correctly.
> My understanding of the USING/using-graph-uri contract is that this only sets
> the default graph yet all other graphs in the dataset remain visible. Is this
> not the case?
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]