Open Yotlan opened 1 year ago
I debugged q03 and found these interesting clues:
p1
, p3
and testVar
are accompanied by FILTER
clausep1
and p3
have binary operator inside FILTER
and the said exception was not raised.testVar
has !bound()
inside FILTER
and the exception was raised.My guess is that bound()
is not supported, therefore you have to implement it. However it is not within the scope of the project, thus you can let it slide.
Semagrow uses RDF4J, which has bound function. https://rdf4j.org/javadoc/3.3.0/org/eclipse/rdf4j/query/algebra/Bound.html
Weird behavior
When you execute these 2 queries with the following command:
You get a working query who return an empty result ... because of the sameAs predicate inside an OPTIONAL clause. For the query 3 is weird because you get an error when you execute the following command:
The corresponding stack trace we get:
And when you want to fix this bug by replacing this line 435 in
RSFB/engines/semagrow/core/src/main/java/org/semagrow/plan/queryblock/QueryBlockBuilder.java
:by these lines:
This query work but return an empty result ..... the same for all queries.