/** * Query a local repository, specified in the second argument * @param queryIn sparql query to be performed * @param repository repository on which the query will be performed * @return */ public static ResultSet queryLocalRepository(String queryIn, OntModel repository){ Query query = QueryFactory.create(queryIn); // Execute the query and obtain results QueryExecution qe = QueryExecutionFactory.create(query, repository); ResultSet rs = qe.execSelect(); return rs; } /**
private Collection<String> getReferenceSet(QueryExecutionFactory model, String query) { Collection<String> references = new ArrayList<>(); Query q = QueryFactory.create(query); try (QueryExecution qe = model.createQueryExecution(q)) { qe.execSelect().forEachRemaining( row -> references.add("<" + row.get("reference").toString() + ">") ); } return references; }
@Test public void testConstructRejectsBadTriples2() { String queryString = "CONSTRUCT { ?s ?p ?o } WHERE { ?o ?p ?s }"; Query q = QueryFactory.create(queryString); QueryExecution qExec = QueryExecutionFactory.create(q, m); Iterator<Triple> ts = qExec.execConstructTriples(); long count = 0; while (ts.hasNext()) { count++; ts.next(); } assertEquals(0, count); }
@Test public void sparql3() { // Requires OpDatasetNames Dataset dataset = create() ; Query query = QueryFactory.create("SELECT ?g { GRAPH ?g {} }") ; QueryExecution qExec = QueryExecutionFactory.create(query, dataset) ; ResultSet rs = qExec.execSelect() ; int n = ResultSetFormatter.consume(rs) ; assertEquals(0, n) ; }
@Test public void testResultSetCloseableGood() { String queryString = "SELECT * { ?s ?p ?o. }"; Query q = QueryFactory.create(queryString); QueryExecution qExec = QueryExecutionFactory.create(q, d); try (ResultSetCloseable rs = ResultSetFactory.closeableResultSet(qExec) ) { int x = ResultSetFormatter.consume(rs); assertEquals(1,x); } }
@Test public void sparql3() { // Requires OpDatasetNames Dataset dataset = create() ; Query query = QueryFactory.create("SELECT ?g { GRAPH ?g {} }") ; QueryExecution qExec = QueryExecutionFactory.create(query, dataset) ; ResultSet rs = qExec.execSelect() ; int n = ResultSetFormatter.consume(rs) ; assertEquals(0, n) ; }
@Test public void testARQConstructQuad_ShortForm_bad() { String queryString = "CONSTRUCT WHERE { GRAPH ?g {?s ?p ?o. FILTER isIRI(?o)} }"; try { QueryFactory.create(queryString, Syntax.syntaxARQ); }catch (QueryParseException e){ return; } fail("Short form of construct quad MUST be simple graph patterns!"); }
public static ResultSet query(String string, Model m, String varName, RDFNode value) { Query query = QueryFactory.create(FusekiConst.PREFIXES + string) ; QuerySolutionMap initValues = null ; if ( varName != null && value != null ) initValues = querySolution(varName, value) ; try ( QueryExecution qExec = QueryExecutionFactory.create(query, m, initValues) ) { return ResultSetFactory.copyResults(qExec.execSelect()) ; } }
private Collection<String> getReferenceSet(QueryExecutionFactory model, String query) { Collection<String> references = new ArrayList<>(); Query q = QueryFactory.create(query); try (QueryExecution qe = model.createQueryExecution(q)) { qe.execSelect().forEachRemaining( row -> references.add("<" + row.get("reference").toString() + ">") ); } return references; }
private Model executeSparqlConstruct(Model model, String sparql, boolean lock) { Query query = QueryFactory.create(sparql); try(QueryExecution queryExec = QueryExecutionFactory.create(query, model)) { model.enterCriticalSection(lock); try { return queryExec.execConstruct() ; } finally { model.leaveCriticalSection() ; } } }
@Test public void testConstructRejectsBadTriples1() { String queryString = "CONSTRUCT { ?s ?p ?o } WHERE { ?o ?p ?s }"; Query q = QueryFactory.create(queryString); QueryExecution qExec = QueryExecutionFactory.create(q, m); Model resultModel = qExec.execConstruct(); assertEquals(0, resultModel.size()); }
@Test public void sparql3() { Dataset dataset = create() ; // No triple added Txn.executeRead(dataset, ()->{ Query query = QueryFactory.create("SELECT ?g { GRAPH ?g {} }") ; QueryExecution qExec = QueryExecutionFactory.create(query, dataset) ; ResultSet rs = qExec.execSelect() ; int n = ResultSetFormatter.consume(rs) ; assertEquals(0, n) ; }) ; }
public static ResultSet query(String string, Dataset ds, String varName, RDFNode value) { Query query = QueryFactory.create(FusekiConst.PREFIXES + string) ; QuerySolutionMap initValues = null ; if ( varName != null && value != null ) initValues = querySolution(varName, value) ; try ( QueryExecution qExec = QueryExecutionFactory.create(query, ds, initValues) ) { return ResultSetFactory.copyResults(qExec.execSelect()) ; } }
private Set<TestCase> generate(QueryExecutionFactoryModel qef, SchemaSource source, TestGenerator testGenerator) { Set<TestCase> tests = new HashSet<>(); Pattern tgPattern = testGenerator.getPattern(); Query q = QueryFactory.create(PrefixNSService.getSparqlPrefixDecl() + testGenerator.getQuery()); try (QueryExecution qe = qef.createQueryExecution(q) ) { qe.execSelect().forEachRemaining(result -> { Optional<TestCase> tc = generateTestFromResult(testGenerator, tgPattern, result, source); tc.ifPresent(tests::add); }); } return tests; }
private void test(String queryString, String jsonExpected) { Query query = QueryFactory.create(queryString, Syntax.syntaxARQ); DatasetGraph dsg = new DatasetGraphZero(); Dataset ds = DatasetFactory.wrap(dsg); try ( QueryExecution qExec = QueryExecutionFactory.create(query, ds) ) { JsonValue jvGot = qExec.execJson() ; JsonValue jvExpected = JSON.parseAny(jsonExpected) ; assertEquals(jvExpected, jvGot); } } }
@Test(expected=IllegalArgumentException.class) public void testResultSetCloseableBad() { String queryString = "ASK { ?s ?p ?o. }"; Query q = QueryFactory.create(queryString); QueryExecution qExec = QueryExecutionFactory.create(q, d); try (ResultSetCloseable rs = ResultSetFactory.closeableResultSet(qExec) ) { int x = ResultSetFormatter.consume(rs); assertEquals(1,x); } }
@Test public void customAgg_22() { // GROUP BY, no match +. no rows. Graph g = SSE.parseGraph("(graph (:s :p :o) (:s :p 1))") ; Model m = ModelFactory.createModelForGraph(g) ; String qs = "SELECT (<"+aggIRI+">(?o) AS ?x) {?s ?p ?o FILTER (false) } GROUP BY ?s" ; Query q = QueryFactory.create(qs, Syntax.syntaxARQ) ; try (QueryExecution qExec = QueryExecutionFactory.create(q, m) ) { ResultSet rs = qExec.execSelect() ; assertFalse(rs.hasNext()); } }