antoniogarrote / rdfstore-js

JS RDF store with SPARQL support
MIT License
564 stars 109 forks source link

ASK query returns wrong result or error #130

Open GeorgesAlkhouri opened 8 years ago

GeorgesAlkhouri commented 8 years ago

Hello,

I am trying to implement the integrity constraints from the RDF Data Cube Vocabulary and I encountered some strange ASK behaviours.

If you want to reproduce the behaviour, I used this Data Cube with rdfstore-js and for revalidation I used the virtuoso store.

Query 1 (IC-16)

PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 
PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#> PREFIX skos:    <http://www.w3.org/2004/02/skos/core#> 
PREFIX qb:      <http://purl.org/linked-data/cube#> 
PREFIX xsd:     <http://www.w3.org/2001/XMLSchema#> 
PREFIX owl:     <http://www.w3.org/2002/07/owl#>    

ASK { 
          ?obs qb:dataSet/qb:structure ?dsd ;
              qb:measureType ?measure ;              
                                ?omeasure [] .         
          ?dsd qb:component/qb:componentProperty qb:measureType;
                            qb:component/qb:componentProperty ?omeasure .         
          ?omeasure a qb:MeasureProperty .         

          FILTER (?omeasure != ?measure)    }  

Should produce a false value (tested with virtuoso) but rdf-store returned an error: TypeError: callback is not a function

Query 2 (IC-4)

PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 
PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX qb:      <http://purl.org/linked-data/cube#> PREFIX xsd:     <http://www.w3.org/2001/XMLSchema#> 
PREFIX owl:     <http://www.w3.org/2002/07/owl#>    
ASK {  ?dim a qb:DimensionProperty .       FILTER NOT EXISTS { ?dim rdfs:range [] } }  

Should produce a true value (tested with virtuoso) but rdf-store returned an false.

Is there something wrong with the queries, are there some unsupported features?

Thank you