Thank you, that was the problem! Still after a year using SPARQL I'm missing the basic stuff...

Mikael


On 10.1.2017 13:18, Rob Vesse wrote:
The two ?child variables occur in different scopes. Therefore your MINUS is 
subtracting all resources that have any value for dcterms:subject which is 
almost certainly not your intent

Movingthe earlier pattern that selects specific ?child values of interest 
inside of the minus likely gives you the results you were after because that 
puts the two variables in the same scope

Rob

On 10/01/2017 10:32, "Mikael Pesonen" <[email protected]> wrote:

Hi, Could anyone help, whats the issue with my query using MINUS? First, this returns all ~700 resources : SELECT DISTINCT ?resource
     WHERE {
        GRAPH <http://www.lingsoft.fi/ontologies/574ef1a40236a/>
        {
     <http://www.lingsoft.fi/ontologies/574ef1a40236a/9db41bbf2114c46e>
     skos:narrower* ?child
        }
        GRAPH <http://www.lingsoft.fi/resource-meta/> {
          ?resource dcterms:isPartOf
     <http://www.lingsoft.fi/rdf/uid/574ef1a40236a> .
        }
     }
And adding one condition (dcterms:subject) returns correctly ~300 resources SELECT DISTINCT ?resource
     WHERE {
        GRAPH <http://www.lingsoft.fi/ontologies/574ef1a40236a/>
        {
     <http://www.lingsoft.fi/ontologies/574ef1a40236a/9db41bbf2114c46e>
     skos:narrower* ?child
        }
        GRAPH <http://www.lingsoft.fi/resource-meta/> {
          ?resource dcterms:isPartOf
     <http://www.lingsoft.fi/rdf/uid/574ef1a40236a> .
          ?resource dcterms:subject ?child
        }
     }
But I would like to get the rest of docs, about ~400, that above is not
     returning
SELECT DISTINCT ?resource
     WHERE {
        GRAPH <http://www.lingsoft.fi/ontologies/574ef1a40236a/>
        {
     <http://www.lingsoft.fi/ontologies/574ef1a40236a/9db41bbf2114c46e>
     skos:narrower* ?child
        }
        GRAPH <http://www.lingsoft.fi/resource-meta/> {
          ?resource dcterms:isPartOf
     <http://www.lingsoft.fi/rdf/uid/574ef1a40236a> .
          MINUS {
          ?resource dcterms:subject ?child
        }
        }
     }
This query returns 0 results. I don't get what's wrong here. I'm using
     Jena Fuseki 2.3.1.
Thanks,
     Mikael
--
     Lingsoft - 30 years of Leading Language Management
www.lingsoft.fi Speech Applications - Language Management - Translation - Reader's and Writer's Tools - Text Tools - E-books and M-books Mikael Pesonen
     System Engineer
e-mail: [email protected]
     Tel. +358 2 279 3300
Time zone: GMT+2 Helsinki Office
     Eteläranta 10
     FI-00130 Helsinki
     FINLAND
Turku Office
     Linnankatu 10 A
     FI-20100 Turku
     FINLAND




--
Lingsoft - 30 years of Leading Language Management

www.lingsoft.fi

Speech Applications - Language Management - Translation - Reader's and Writer's 
Tools - Text Tools - E-books and M-books

Mikael Pesonen
System Engineer

e-mail: [email protected]
Tel. +358 2 279 3300

Time zone: GMT+2

Helsinki Office
Eteläranta 10
FI-00130 Helsinki
FINLAND

Turku Office
Linnankatu 10 A
FI-20100 Turku
FINLAND

Reply via email to