Eetu Mäkelä created JENA-1187:
---------------------------------

             Summary: Wrong results/performance regression when using BIND and 
graph pattern groups
                 Key: JENA-1187
                 URL: https://issues.apache.org/jira/browse/JENA-1187
             Project: Apache Jena
          Issue Type: Bug
          Components: ARQ
    Affects Versions: Fuseki 2.4.0, Jena 3.1.0
            Reporter: Eetu Mäkelä


I've been using SPARQL queries with BINDs and/or VALUESs that precede UNION 
blocks. These used to work efficiently (at least in Jena 2 times) with the 
bound value being bound also in the subpattern, but no longer do. In addition, 
at certain times, they produce nonsensical results. For example, the below 
returns {{rdf:type}} statements in the dataset without any regard to ?cl:
{code}
SELECT * {
  {
    BIND("nonexistant" AS ?cl)
    {
      BIND(?cl AS ?cl2)
      ?c a ?cl2 .
    } UNION {
      BIND(?cl AS ?cl2)
      ?c a ?cl2 .
    }
  }
}
LIMIT 10
{code}
while if you change _just one_ of the subpatterns in the union to directly 
refer to ?cl, it returns an empty result set:
{code}
SELECT * {
  {
    BIND("nonexistant" AS ?cl)
    {
      BIND(?cl AS ?cl2)
      ?c a ?cl .
    } UNION {
      BIND(?cl AS ?cl2)
      ?c a ?cl2 .
    }
  }
}
LIMIT 10
{code}



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

Reply via email to