librasqal3
Rasqal rdf query library
Usage
#include <rasqal.h>
rasqal_world*world=rasqal_new_world();
rasqal_query_results *results;
raptor_uri *base_uri=raptor_new_uri("http://example.org/foo");
rasqal_query *rq=rasqal_new_query(world,"rdql",NULL);
const char *query_string="select * from <http://example.org/data.rdf>";
rasqal_query_prepare(rq,query_string,base_uri);
results=rasqal_query_execute(rq);
while(!rasqal_query_results_finished(results)) {
for(i=0;i<rasqal_query_results_get_bindings_count(results);i++) {
const char *name=rasqal_query_results_get_binding_name(results,i);
rasqal_literal *value=rasqal_query_results_get_binding_value(results,i);
/* ... */
}
rasqal_query_results_next(results);
}
rasqal_free_query_results(results);
rasqal_free_query(rq);
raptor_free_uri(base_uri);
rasqal_free_world(world);
cc prog.c -o prog `pkg-config rasqal --cflags` `pkg-config rasqal --libs`
Overview
The Rasqal library provides a high-level interface to RDF query parsing, query construction, query execution over an RDF graph and query results manipulation and formatting. The library provides APIs to each of the steps in the process and provides support for handling multiple query language syntaxes. At present Rasqal supports most of the W3C SPARQL 1.0 Query language, some of SPARQL 1.1 draft and fully supports RDQL.
Rasqal uses the libraptor(3) library for providing URI handling, WWW content retrieval and other support functions.
API reference
See the HTML API docs that may be installed system wide at /usr/share/gtk-doc/html/rasqal/ or on the web at http://librdf.org/rasqal/docs/api/ ⟨http://librdf.org/rasqal/docs/api/⟩
API changes
See the Raptor API docs changes section at http://librdf.org/rasqal/docs/api/rasqal-changes.html ⟨http://librdf.org/rasqal/docs/api/rasqal-changes.html⟩
Releases
12 releases since Debian 3.1 (Sarge); the text changed 4 times.