You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jena.apache.org by "Michael Schmidt (JIRA)" <ji...@apache.org> on 2015/09/01 12:23:45 UTC

[jira] [Created] (JENA-1018) Variable Scoping Issues

Michael Schmidt created JENA-1018:
-------------------------------------

             Summary: Variable Scoping Issues
                 Key: JENA-1018
                 URL: https://issues.apache.org/jira/browse/JENA-1018
             Project: Apache Jena
          Issue Type: Bug
          Components: Optimizer
    Affects Versions: Jena 3.0.0
            Reporter: Michael Schmidt


Consider the following queries over the sample data

<http://example.com/Alice> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Person> .
<http://example.com/Flipper> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Animal> .

{code}
SELECT ?s ?type WHERE { 
  BIND("http://example.com/" AS ?typeBase)
  {
    BIND(URI(CONCAT(?typeBase,"Person")) AS ?type)
   ?s ?p ?o
   FILTER(?o=?type)
  }
}
{code}

{code}
SELECT ?s ?type WHERE { 
  BIND("http://example.com/" AS ?typeBase)
  {
    BIND(URI(CONCAT(?typeBase,"Person")) AS ?type)
    ?s ?p ?o
    FILTER(?o=?type)
  }
  UNION
  {
    BIND(URI(CONCAT(?typeBase,"Animal")) AS ?type)
    ?s ?p ?o
    FILTER(?o=?type)
  }
}
{code}

{code}
 SELECT ?s ?type WHERE {
   {
     BIND(URI(CONCAT(?typeBase,"Person")) AS ?type)
     ?s a ?o
     FILTER(?o=?type)
   }
   UNION
   {
     BIND(URI(CONCAT(?typeBase,"Animal")) AS ?type)
     ?s a ?o
     FILTER(?o=?type)
   }
 } VALUES (?typeBase) { ("http://example.com/") }
{code}

As discussed in thread https://lists.w3.org/Archives/Public/public-sparql-dev/2015JulSep/0026.html, in all cases variable ?typeBase is not in scope when binding variable ?type. As a consequence, all queries should return the empty result. However, with apache-jena-3.0.0 (tested with sparql batch script) yield results.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)