/** Create a service request for remote execution over HTTP. The returned class, * {@link QueryEngineHTTP}, * allows various HTTP specific parameters to be set. * @param service Endpoint URL * @param query Query * @param client HTTP client * @return Remote Query Engine */ static public QueryEngineHTTP createServiceRequest(String service, Query query, HttpClient client) { QueryEngineHTTP qe = new QueryEngineHTTP(service, query, client) ; return qe ; }
/** Create a service request for remote execution over HTTP. The returned class, * {@link QueryEngineHTTP}, * allows various HTTP specific parameters to be set. * @param service Endpoint URL * @param query Query * @param client HTTP client * @param httpContext HTTP Context * @return Remote Query Engine */ static public QueryEngineHTTP createServiceRequest(String service, Query query, HttpClient client, HttpContext httpContext) { QueryEngineHTTP qe = new QueryEngineHTTP(service, query, client, httpContext) ; return qe ; }
@Override public QueryExecution createQueryExecution(String queryString) { QueryEngineHTTP qe = new QueryEngineHTTP(service, queryString, httpClient); QueryExecution result = postProcesss(qe); return result; }
@Override public QueryExecution createQueryExecution(Query query) { QueryEngineHTTP qe = new QueryEngineHTTP(service, query, httpClient); QueryExecution result = postProcesss(qe); return result; }
QueryEngineHTTP qe = new QueryEngineHTTP("http://dbpedia.org/sparq","select ..."); ResultSet rs = qe.execSelect();
public boolean sendAsk() { isRunning = true; String service = sparqlEndpoint.getURL().toString(); queryExecution = new QueryEngineHTTP(service, sparqlQueryString); boolean result = queryExecution.execAsk(); isRunning = false; return result; }
@Override public void sparqlConstructQuery(String queryStr, Model model) throws RDFServiceException { QueryEngineHTTP qeh = new QueryEngineHTTP( readEndpointURI, queryStr); try { qeh.execConstruct(model); } finally { qeh.close(); } }
private Model constructWithReplacement(SparqlEndpoint endpoint, String query) throws Exception{ QueryEngineHTTP qe = new QueryEngineHTTP(endpoint.getURL().toString(), query); qe.setDefaultGraphURIs(endpoint.getDefaultGraphURIs()); String request = qe.toString().replace("GET ", ""); URL url = new URL(request); java.net.HttpURLConnection conn = (java.net.HttpURLConnection) url.openConnection(); conn.setRequestMethod("GET"); conn.addRequestProperty(HttpNames.hAccept, WebContent.contentTypeRDFXML); try(BufferedReader rdr = new BufferedReader(new InputStreamReader(conn.getInputStream()))) { Model model = ModelFactory.createDefaultModel(); String buf = null; StringBuilder doc = new StringBuilder(); while ((buf = rdr.readLine()) != null) { // Apply regex on buf if(buf.contains("&#")) { buf = buf.replace("&#", ""); } // build output doc.append(buf); } try(InputStream is = new ByteArrayInputStream(doc.toString().getBytes(StandardCharsets.UTF_8))) { model.read(is, null); } return model; } }
/** * Performs a SPARQL ASK query against the knowledge base. The query may have * an embedded graph identifier. * * @param queryStr - the SPARQL query to be executed against the RDF store * * @return boolean - the result of the SPARQL query */ @Override public boolean sparqlAskQuery(String queryStr) throws RDFServiceException { QueryEngineHTTP qeh = new QueryEngineHTTP( readEndpointURI, queryStr); try { return qeh.execAsk(); } finally { qeh.close(); } }
void std_query() { String query = "select distinct ?super where {?super (^skos:broader){0,3} category:Nationalist_parties, category:New_Delhi}"; QueryEngineHTTP qe = new QueryEngineHTTP("http://dbpedia.org/sparql", query); try { com.hp.hpl.jena.query.ResultSet results = qe.execSelect(); while(results.hasNext()) { QuerySolution s=results.nextSolution(); String strg=s.getResource("?super").toString(); System.out.println("########### Standard Sparql Result #########"); System.out.println(strg); } //ResultSetFormatter.out(System.out, results, query); } finally { qe.close(); } }
@Override public void sparqlSelectQuery(String queryStr, ResultSetConsumer consumer) throws RDFServiceException { QueryEngineHTTP qeh = new QueryEngineHTTP( readEndpointURI, queryStr); try { consumer.processResultSet(qeh.execSelect()); } finally { qeh.close(); } }
mon.start(); QueryEngineHTTP queryExecution = new QueryEngineHTTP(endpoint.getURL().toString(), query); queryExecution.setTimeout(maxExecutionTimeInSeconds * 1000); for (String dgu : endpoint.getDefaultGraphURIs()) {
/** * Performs a SPARQL describe query against the knowledge base. The query may have * an embedded graph identifier. * * @param queryStr - the SPARQL query to be executed against the RDF store * @param resultFormat - type of serialization for RDF result of the SPARQL query * * @return InputStream - the result of the query * */ @Override public InputStream sparqlDescribeQuery(String queryStr, RDFServiceImpl.ModelSerializationFormat resultFormat) throws RDFServiceException { Model model = ModelFactory.createDefaultModel(); QueryEngineHTTP qeh = new QueryEngineHTTP( readEndpointURI, queryStr); try { qeh.execDescribe(model); } finally { qeh.close(); } ByteArrayOutputStream serializedModel = new ByteArrayOutputStream(); model.write(serializedModel,getSerializationFormatString(resultFormat)); InputStream result = new ByteArrayInputStream(serializedModel.toByteArray()); return result; }
/** * Performs a SPARQL construct query against the knowledge base. The query may have * an embedded graph identifier. * * @param queryStr - the SPARQL query to be executed against the RDF store * @param resultFormat - type of serialization for RDF result of the SPARQL query */ @Override public InputStream sparqlConstructQuery(String queryStr, RDFServiceImpl.ModelSerializationFormat resultFormat) throws RDFServiceException { Model model = ModelFactory.createDefaultModel(); //Query query = QueryFactory.create(queryStr); //QueryExecution qe = QueryExecutionFactory.sparqlService(readEndpointURI, queryStr); QueryEngineHTTP qeh = new QueryEngineHTTP( readEndpointURI, queryStr); try { qeh.execConstruct(model); } finally { qeh.close(); } ByteArrayOutputStream serializedModel = new ByteArrayOutputStream(); model.write(serializedModel,getSerializationFormatString(resultFormat)); InputStream result = new ByteArrayInputStream(serializedModel.toByteArray()); return result; }
public static void main(String[] args) { String query = "SELECT ?dt (count(distinct ?o) AS ?cnt)\n" + " WHERE\n" + " { ?s <http://dbpedia.org/ontology/birthDate> ?o }\n" + " GROUP BY (datatype(?o) AS ?dt)"; QueryEngineHTTP qe = new QueryEngineHTTP("http://dbpedia.org/sparql", query); qe.setDefaultGraphURIs(Collections.singletonList("http://dbpedia.org")); ResultSet rs = qe.execSelect(); System.out.println(rs.next()); }
public InputStream sparqlSelectQuery(String queryStr, RDFService.ResultFormat resultFormat) throws RDFServiceException { QueryEngineHTTP qeh = new QueryEngineHTTP( readEndpointURI, queryStr);
queryExecution = new QueryEngineHTTP(service, sparqlQueryString);
private ResultSet executeSelectQuery(String query){ ResultSet rs; if(model == null){ QueryEngineHTTP queryExecution = new QueryEngineHTTP(endpoint.getURL().toString(), query); queryExecution.setTimeout(maxExecutionTimeInSeconds * 1000); for (String dgu : endpoint.getDefaultGraphURIs()) { queryExecution.addDefaultGraph(dgu); } for (String ngu : endpoint.getNamedGraphURIs()) { queryExecution.addNamedGraph(ngu); } rs = queryExecution.execSelect(); } else { rs = QueryExecutionFactory.create(query, model).execSelect(); } return rs; }
private QueryExecution createQueryExecution(Query query, String queryStringToSend) { QueryExecution qExec = new QueryEngineHTTP(svcQuery, queryStringToSend, httpClient, httpContext); QueryEngineHTTP qEngine = (QueryEngineHTTP)qExec; // Set the accept header - use the most specific method. if ( query != null ) { if ( query.isSelectType() && acceptSelectResult != null ) qEngine.setAcceptHeader(acceptSelectResult); if ( query.isAskType() && acceptAskResult != null ) qEngine.setAcceptHeader(acceptAskResult); if ( ( query.isConstructType() || query.isDescribeType() ) && acceptGraph != null ) qEngine.setAcceptHeader(acceptGraph); if ( query.isConstructQuad() ) qEngine.setDatasetContentType(acceptDataset); } // Use the general one. if ( qEngine.getAcceptHeader() == null && acceptSparqlResults != null ) qEngine.setAcceptHeader(acceptSparqlResults); // Make sure it was set somehow. if ( qEngine.getAcceptHeader() == null ) throw new JenaConnectionException("No Accept header"); return qExec ; }
private QueryExecution createQueryExecution(Query query, String queryStringToSend) { QueryExecution qExec = new QueryEngineHTTP(svcQuery, queryStringToSend, httpClient, httpContext); QueryEngineHTTP qEngine = (QueryEngineHTTP)qExec; // Set the accept header - use the most specific method. if ( query != null ) { if ( query.isSelectType() && acceptSelectResult != null ) qEngine.setAcceptHeader(acceptSelectResult); if ( query.isAskType() && acceptAskResult != null ) qEngine.setAcceptHeader(acceptAskResult); if ( ( query.isConstructType() || query.isDescribeType() ) && acceptGraph != null ) qEngine.setAcceptHeader(acceptGraph); if ( query.isConstructQuad() ) qEngine.setDatasetContentType(acceptDataset); } // Use the general one. if ( qEngine.getAcceptHeader() == null && acceptSparqlResults != null ) qEngine.setAcceptHeader(acceptSparqlResults); // Make sure it was set somehow. if ( qEngine.getAcceptHeader() == null ) throw new JenaConnectionException("No Accept header"); return qExec ; }