
|
If you were logged in you would be able to see more operations.
|
|
|
Environment:
|
MemoryStore used
|
|
When having the following example data
@prefix example: <http://www.example.com/> .
{
example:person1 example:name "piet" .
example:person1 example:surname "jansen"
}
with the following query
PREFIX example: <http://www.example.com/>
SELECT * WHERE
{
?person example:name ?name .
?person example:surname ?surname .
FILTER EXISTS
{
FILTER (regex(?name,"pi") && regex(?surname,"jan")) #should give result but no result is returned
# FILTER regex(?name,"pi") works fine
# FILTER (regex(?name,"nomatch") || regex(?surname,"jan")) works fine
# FILTER (regex(?name,"pi") || regex(?surname,"nomtach")) works fine
# FILTER (regex(?name,"pi") && 10 > 3) works fine
}
}
Then it does not return any results anymore, while it should return 1 result
|
|
Not a bug as per SPARQL spec
Requires further investigation.
possible problem with workaround in FilterIterator.accept which skips limiting bindings to inscopebindings when the filter's parent is an exists function: due to the use of && the parent is not directly an exists.
Caused by a bug in FilterIterator. Test case and fix checked in, test case now greenlines.
|
|