Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Redland Rasqal RDF Query Library

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.


<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "">
<html xmlns="" lang="en" xml:lang="en">
  <title>Rasqal RDF Query Library</title>

<h1 style="text-align:center">Rasqal RDF Query Library</h1>
<h2 style="text-align:center"><a href="">Dave Beckett</a><br /><a href="">Institute for Learning and Research Technology</a><br /><a href="">University of Bristol</a></h2>


<p><a href="">Rasqal</a>
is a free software / Open Source C library that handles Resource
Description Framework (RDF) query syntaxes, query construction and
query execution returning result bindings.  The supported query
languages are RDQL and SPARQL.</p>

<p>Rasqal was designed to work closely with the
<a href="">Redland RDF library</a>
but is entirely separate.  It is intended to be a portable library
working across many POSIX systems (Unix, GNU/Linux, BSDs, OSX, cygwin)
win32 and others.

<p>This is a beta quality library - the code is mature
but the API is still changing. See the <a href="TODO.html">todo list</a>
for the current state information.  A summary
of the changes can be found in the <a href="NEWS.html">NEWS</a> file,
detailed API changes in the <a href="RELEASE.html">release notes</a>
and file-by-file changes in the CVS <a href="ChangeLog">ChangeLog</a>.</p>

<p>Rasqal provides:</p>
<li>An RDF <a href="docs/api/query.html">query</a> construction and access API.</li>
<li>A query execution engine including constraint expression evaluation.</li>
<li>A query result binding API.</li>
<li>Query language support for <a href="">RDQL</a>.</li>
<li>Query language support for <a href="">SPARQL</a>.</li>
<li>Triple store querying APIs to support running over external RDF graphs.</li>
<li>No memory leaks.</li>
<li><a href="roqet.html">roqet</a> standalone RDF query utility program</li>

<p>Rasqal does not provide an RDF API or triple store, but relies on
external libraries implementing the triple store API providing
matched RDF data originally from a specified content URI.  Rasqal
ships with triple store implementations using the output of an RDF
parser from
<a href="">Raptor</a>
and over a
<a href="">Redland</a>
indexed triple store. These can be called using the standalone
<a href="roqet.html">roqet</a>
query utility giving a query language
identifier and query string to run the query over content
described inside the query string (in RDQL, the <code>FROM</code> clause).

<p>Rasqal also works inside Redland (0.9.17 or newer) to provide
support for query languages, a query API and a result bindings API
over graphs stored in Redland.

<h2>Supported Query Languages</h2>

<h3>RDF Data Query Language (RDQL)</h3>

<p>Rasqal provides a complete parser and query constructor for the RDQL
language, as defined in
<a href="">RDQL - A Query Language for RDF</a>,
W3C Member Submission 9 January 2004
based on the earlier versions in Jena defined in
<a href="">RDQL RDF Data Query Language</a>
and the
<a href="">RDQL Grammar</a>.
<a href="">Jena RDQL Tutorial</a>
gives an introduction on the language.
Rasqal currently passes the majority of the
<a href="">Jena RDQL test suite</a>.
Further information on the status of the RDQL support is given in the
Rasqal <a href="TODO.html#rdql">todo / bugs list</a>.</p>

<h3>SPARQL Query Language for RDF</h3>

<p>Rasqal provides initial support for the W3C SPARQL Query Language
being developed by the W3C
<a href="">RDF Data Access Working Group</a>,
as defined in
<a href="">SPARQL Query Language for RDF</a>,
W3C Working Draft, 19 April 2005.
It currently implements primarily the functionality in common with RDQL
with some additions.
For further information on the state, see the Rasqal
<a href="TODO.html#sparql">todo / bugs list</a>.</p>

<h2>Installation and Documentation</h2>

<p>The public API is described in the
<a href="librasqal.html">librasqal.3</a> UNIX manual page
and in more detail in the
<a href="docs/api/index.html">API reference</a>.
It is demonstrated in the
<a href="roqet.html">roqet</a>
utility program which shows how to call the query engine and
operate over the query results.  When Rasqal is used inside
<a href="">Redland</a>,
the Redland documentation explains
how to call the query engine and contains several example programs.

<p>To install Rasqal see the <a href="INSTALL.html">Installation document</a>.


<p>The packaged sources are available from
<a href=""></a> (master site) and also from the
<a href="">SourceForge site</a>.
There are 
<a href="">nightly snapshots</a> of the development version which is can also be browsed via
<a href="">CVSweb</a>.
Binary packages of Rasqal and related libraries are available from the
<a href="">download area</a>.

<p>Rasqal requires <a href="">Raptor</a> 1.4.0
or newer to build and run, which can be downloaded from the same area
as the Rasqal source and binaries.</p>


<p>This library is free software / open source software released
under the LGPL (GPL) or Apache 2.0 licenses.  See
<a href="LICENSE.html">LICENSE.html</a> for full details.</p>

<h2>Mailing Lists</h2>

<a href="">Redland mailing lists</a>
discusses the development and use of Rasqal and Redland as well as
future plans and announcement of releases.</p>

<hr />

<p>Copyright 2003-2005 <a href="">Dave Beckett</a>, <a href="">Institute for Learning and Research Technology</a>, <a href="">University of Bristol</a></p>

Something went wrong with that request. Please try again.