List<String> varNames = results.getResultVars(); while(results.hasNext()) { QuerySolution sol = (QuerySolution) results.next(); for (String var: varNames) { System.out.println("value of " + var + ": " + sol.get(var)); } }
/** Touch every var/value */ private static void materialize(QuerySolution qs) { for ( Iterator<String> iter = qs.varNames() ; iter.hasNext() ; ) { String vn = iter.next(); RDFNode n = qs.get(vn) ; } }
protected String getVarValueAsString(QuerySolution rBind, String varName) { RDFNode obj = rBind.get(varName); if ( obj == null ) return notThere; return FmtUtils.stringForRDFNode(obj, context); }
/** Add all of the solutions from one QuerySolution into this QuerySolutionMap */ public void addAll(QuerySolution other) { Iterator<String> iter = other.varNames() ; for ( ; iter.hasNext(); ) { String vName = iter.next() ; RDFNode rdfNode = other.get(vName) ; map.put(vName, rdfNode); } }
for ( ; rs.hasNext() ; ){ QuerySolution soln = rs.nextSolution() ; RDFNode x = soln.get("pizza") ; out.println(x.asNode().getLocalName()); }
List<RDFNode> result = new ArrayList<RDFNode>(); ResultSet rs = qexec.execSelect(); for ( ; rs.hasNext() ; ) { QuerySolution soln = rs.nextSolution() ; RDFNode a = soln.get("x") ; // avg = a.asNode().getLocalName(); System.out.println(a.asNode().getLocalName()); result.add(a); }
/** * Builds a valid messageLine * @param soln To extract the msg text * @param quote String to indicate the quotationhierachy * @return returns a human readable message line */ private static String buildMessageLine(QuerySolution soln, String quote) { StringBuilder messageLine = new StringBuilder(quote); String message = soln.get("msg").asLiteral().getString(); messageLine.append(message); return messageLine.toString().replaceAll("\\n", "\n" + quote); }
private URI getUriVar(QuerySolution solution, String name) { RDFNode node = solution.get(name); if (node == null) { return null; } return URI.create(node.asResource().getURI()); } }
public SparqlSelectFunction<T> addInitialBindings(QuerySolution moreInitialBindings) { if (this.initialBinding == null) { this.initialBinding = new QuerySolutionMap(); } for (Iterator<String> it = moreInitialBindings.varNames(); it.hasNext();) { String varName = it.next(); this.initialBinding.add(varName, moreInitialBindings.get(varName)); } return this; }
public static SortedSet<String> getStringSetForVariableFromResultSet( ResultSetRewindable rs, String variable) { final SortedSet<String> result = new TreeSet<>(); @SuppressWarnings("unchecked") final List<QuerySolution> l = ResultSetFormatter.toList(rs); for (QuerySolution resultBinding : l) { result.add(resultBinding.get(variable).toString()); } rs.reset(); return result; }
private static RDFNode getExactlyOne(ResultSet rs, String varname) { if ( ! rs.hasNext() ) return null; QuerySolution qs = rs.next(); if ( rs.hasNext() ) return null; return qs.get(varname); }
public int getIndividualsCount(OWLClass cls){ String query = String.format("SELECT (COUNT(?s) AS ?cnt) WHERE {?s a <%s>.}", cls.toStringID()); ResultSet rs = executeSelectQuery(query); int cnt = rs.next().get(rs.getResultVars().get(0)).asLiteral().getInt(); return cnt; }
public int getPropertyCount(OWLObjectProperty property){ String query = String.format("SELECT (COUNT(*) AS ?cnt) WHERE {?s <%s> ?o.}", property.toStringID()); ResultSet rs = executeSelectQuery(query); int cnt = rs.next().get(rs.getResultVars().get(0)).asLiteral().getInt(); return cnt; }
public static List<String> getResult(QueryExecutionFactory qef, Query query, Var targetVar) throws Exception{ try(QueryExecution qe = qef.createQueryExecution(query)) { ResultSet rs = qe.execSelect(); return StreamSupport.stream(((Iterable<QuerySolution>)() -> rs).spliterator(), false) .map(qs -> qs.get(targetVar.getName()).toString()) .collect(Collectors.toList()); } catch (Exception e) { throw new Exception("Failed to get result for query\n" + query, e); } }
@Override public Integer call() throws Exception{ String query = "SELECT DISTINCT (count(?s) AS ?count) { { ?s ?p ?o . } UNION { GRAPH ?g { ?s ?p ?o .} } }"; QueryEngineHTTP qe = (QueryEngineHTTP) QueryExecutionFactory.sparqlService(sparqlEndPoint,query); int size = qe.execSelect().next().get("count").asLiteral().getInt(); return size; } });
private static SortedSet<Node> toSet(QuerySolution qs) { SortedSet<Node> nodes = new TreeSet<>(new NodeComparator()); ArrayList<String> vars = Lists.newArrayList(qs.varNames()); vars.forEach(var -> nodes.add(qs.get(var).asNode())); return nodes; }
public static RDFNode getOne(Resource svc, String property) { ResultSet rs = FusekiBuildLib.query("SELECT * { ?svc " + property + " ?x}", svc.getModel(), "svc", svc) ; if ( !rs.hasNext() ) throw new FusekiConfigException("No property '" + property + "' for service " + FusekiBuildLib.nodeLabel(svc)) ; RDFNode x = rs.next().get("x") ; if ( rs.hasNext() ) throw new FusekiConfigException("Multiple properties '" + property + "' for service " + FusekiBuildLib.nodeLabel(svc)) ; return x ; }
public static RDFNode getOne(Resource svc, String property) { ResultSet rs = FusekiBuildLib.query("SELECT * { ?svc " + property + " ?x}", svc.getModel(), "svc", svc) ; if ( !rs.hasNext() ) throw new FusekiConfigException("No property '" + property + "' for service " + FusekiBuildLib.nodeLabel(svc)) ; RDFNode x = rs.next().get("x") ; if ( rs.hasNext() ) throw new FusekiConfigException("Multiple properties '" + property + "' for service " + FusekiBuildLib.nodeLabel(svc)) ; return x ; }