Correction: "... and the final result on *fuseki-admin* comes out empty."

On Tue, Nov 26, 2024 at 9:56 AM Martynas Jusevičius
<marty...@atomgraph.com> wrote:
>
> Hi,
>
> I have two Fuseki 4.6.1 instances in a Docker network (fuseki-admin
> and fuseki-end-user) that federate SPARQL queries between each other.
>
> When I execute this query on fuseki-admin:
>
> PREFIX  rdfs: <http://www.w3.org/2000/01/rdf-schema#>
> PREFIX  acl:  <http://www.w3.org/ns/auth/acl#>
> PREFIX  sioc: <http://rdfs.org/sioc/ns#>
>
> SELECT  *
> FROM <urn:x-arq:UnionGraph>
> WHERE
>   { VALUES ( ?this ?Container ) {
>       ( <https://localhost:4443/whateverest/> <https://localhost:4443/> )
>     }
>     SERVICE <http://fuseki-end-user:3030/ds/>
>       { GRAPH ?Container
>           { ?Container  a  ?Type }
>       }
>   }
>
> then I can see the ?Container binding was injected into the query
> string executed on fuseki-end-user:
>
> Query = SELECT  * WHERE   { GRAPH <https://localhost:4443/>       {
> <https://localhost:4443/>                   a  ?Type       }   }
>
> However when I add FILTER NOT EXISTS to the federated part
>
> PREFIX  rdfs: <http://www.w3.org/2000/01/rdf-schema#>
> PREFIX  acl:  <http://www.w3.org/ns/auth/acl#>
> PREFIX  sioc: <http://rdfs.org/sioc/ns#>
>
> SELECT  *
> FROM <urn:x-arq:UnionGraph>
> WHERE
>   { VALUES (?this ?Container) { (<https://localhost:4443/whateverest/>
> <https://localhost:4443/>) }
>     SERVICE <http://fuseki-end-user:3030/ds/>
>       {  GRAPH ?Container
>               {
>                 ?Container  a  ?Type
>               }
>             FILTER NOT EXISTS { GRAPH ?this
>                                   { ?this
> sioc:has_parent|sioc:has_container  ?Container }
>                               }
>       }
>   }
>
> I see a single request in fuseki-end-user but none of the variables
> are bound to anything:
>
> Query =  Query = SELECT  * WHERE   { GRAPH ?Container       {
> ?Container  a  ?Type }     FILTER NOT EXISTS { GRAPH ?this
>               { ?this
> <http://rdfs.org/sioc/ns#has_parent>|<http://rdfs.org/sioc/ns#has_container>
> ?Container }
>
> This looks plain wrong because without bindings it eliminates too many
> (positive) results, and the final result on fuseki-end-user comes out
> empty.
>
> Is this a bug or am I misunderstanding something about VALUES and/or SERVICE?
>
> Martynas

Reply via email to