I do not know what I am doing wrong. I have the following Ask sparql query which returns true (what I expect). The same query but using select returns nothing. There are no errors.
Here are my queries:
<code>String askQuery1 = "Ask WHERE {?x <http://www.example.org#share> <http://example.com/MediaCoverage/l.premierleague.com-2020-coverage>. "
+ "<< ?x <http://www.example.org#share> <http://example.com/MediaCoverage/l.premierleague.com-2020-coverage> >> <http://purl.org/specialprivacy/splog#occurs> ?t . rn"
+ " FILTER (?t <"2021-02-25T21:00:00Z"^^<http://www.w3.org/2001/XMLSchema#dateTime> ) } rn";
String selectQuery2 = "SELECT * WHERE {?x <http://www.example.org#share> <http://example.com/MediaCoverage/l.premierleague.com-2020-coverage>. "
+ "<< ?x <http://www.example.org#share> <http://example.com/MediaCoverage/l.premierleague.com-2020-coverage> >> <http://purl.org/specialprivacy/splog#occurs> ?t . rn"
+ " FILTER (?t <"2021-02-25T21:00:00Z"^^<http://www.w3.org/2001/XMLSchema#dateTime> ) } rn";
</code>
<code>String askQuery1 = "Ask WHERE {?x <http://www.example.org#share> <http://example.com/MediaCoverage/l.premierleague.com-2020-coverage>. "
+ "<< ?x <http://www.example.org#share> <http://example.com/MediaCoverage/l.premierleague.com-2020-coverage> >> <http://purl.org/specialprivacy/splog#occurs> ?t . rn"
+ " FILTER (?t <"2021-02-25T21:00:00Z"^^<http://www.w3.org/2001/XMLSchema#dateTime> ) } rn";
String selectQuery2 = "SELECT * WHERE {?x <http://www.example.org#share> <http://example.com/MediaCoverage/l.premierleague.com-2020-coverage>. "
+ "<< ?x <http://www.example.org#share> <http://example.com/MediaCoverage/l.premierleague.com-2020-coverage> >> <http://purl.org/specialprivacy/splog#occurs> ?t . rn"
+ " FILTER (?t <"2021-02-25T21:00:00Z"^^<http://www.w3.org/2001/XMLSchema#dateTime> ) } rn";
</code>
String askQuery1 = "Ask WHERE {?x <http://www.example.org#share> <http://example.com/MediaCoverage/l.premierleague.com-2020-coverage>. "
+ "<< ?x <http://www.example.org#share> <http://example.com/MediaCoverage/l.premierleague.com-2020-coverage> >> <http://purl.org/specialprivacy/splog#occurs> ?t . rn"
+ " FILTER (?t <"2021-02-25T21:00:00Z"^^<http://www.w3.org/2001/XMLSchema#dateTime> ) } rn";
String selectQuery2 = "SELECT * WHERE {?x <http://www.example.org#share> <http://example.com/MediaCoverage/l.premierleague.com-2020-coverage>. "
+ "<< ?x <http://www.example.org#share> <http://example.com/MediaCoverage/l.premierleague.com-2020-coverage> >> <http://purl.org/specialprivacy/splog#occurs> ?t . rn"
+ " FILTER (?t <"2021-02-25T21:00:00Z"^^<http://www.w3.org/2001/XMLSchema#dateTime> ) } rn";
This is the code that I use to retrieve results:
<code>String logFile1 ="C:/Extension/kb-traces.ttl";
Dataset dataset1;
dataset1 = RDFDataMgr.loadDataset(logFile1) ;
// test ask query
Boolean exist = false;
String askSparql = askQuery1;
Query sparql = QueryFactory.create(askSparql);
QueryExecution qe = QueryExecutionFactory.create(sparql, dataset1);
boolean result = qe.execAsk();
if(result == true){
exist= true;
}
System.out.println(exist);
// test select query
Query sparql1 = QueryFactory.create(selectQuery2);
QueryExecution qe1 = QueryExecutionFactory.create(sparql1, dataset1);
ResultSet results = qe1.execSelect();
System.out.println(results.getRowNumber());
if (results.hasNext()) {
while (results.hasNext()) {
QuerySolution qs = results.next();
ResultSetFormatter.out(results);
}
} else {
System.out.println("No results found");
}
</code>
<code>String logFile1 ="C:/Extension/kb-traces.ttl";
Dataset dataset1;
dataset1 = RDFDataMgr.loadDataset(logFile1) ;
// test ask query
Boolean exist = false;
String askSparql = askQuery1;
Query sparql = QueryFactory.create(askSparql);
QueryExecution qe = QueryExecutionFactory.create(sparql, dataset1);
boolean result = qe.execAsk();
if(result == true){
exist= true;
}
System.out.println(exist);
// test select query
Query sparql1 = QueryFactory.create(selectQuery2);
QueryExecution qe1 = QueryExecutionFactory.create(sparql1, dataset1);
ResultSet results = qe1.execSelect();
System.out.println(results.getRowNumber());
if (results.hasNext()) {
while (results.hasNext()) {
QuerySolution qs = results.next();
ResultSetFormatter.out(results);
}
} else {
System.out.println("No results found");
}
</code>
String logFile1 ="C:/Extension/kb-traces.ttl";
Dataset dataset1;
dataset1 = RDFDataMgr.loadDataset(logFile1) ;
// test ask query
Boolean exist = false;
String askSparql = askQuery1;
Query sparql = QueryFactory.create(askSparql);
QueryExecution qe = QueryExecutionFactory.create(sparql, dataset1);
boolean result = qe.execAsk();
if(result == true){
exist= true;
}
System.out.println(exist);
// test select query
Query sparql1 = QueryFactory.create(selectQuery2);
QueryExecution qe1 = QueryExecutionFactory.create(sparql1, dataset1);
ResultSet results = qe1.execSelect();
System.out.println(results.getRowNumber());
if (results.hasNext()) {
while (results.hasNext()) {
QuerySolution qs = results.next();
ResultSetFormatter.out(results);
}
} else {
System.out.println("No results found");
}
Can you tell me if I’m doing something wrong?
I can also share my log file if you’re interested.