
                           Rasqal RDF Query Library

Dave Beckett
Institute for Learning and Research Technology
University of Bristol

Overview

   Rasqal 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.

   Rasqal was designed to work closely with the Redland RDF library 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.

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

   Rasqal provides:
     * An RDF query construction and access API.
     * A query execution engine including constraint expression evaluation.
     * A query result binding API.
     * Query language support for RDQL.
     * Query language support for SPARQL.
     * Triple store querying APIs to support running over external RDF graphs.
     * No memory leaks.
     * roqet standalone RDF query utility program

   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 Raptor and over a
   Redland indexed triple store. These can be called using the standalone roqet
   query utility giving a query language identifier and query string to run the
   query over content described inside the query string (in RDQL, the FROM
   clause).

   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.

Supported Query Languages

  RDF Data Query Language (RDQL)

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

  SPARQL Query Language for RDF

   Rasqal provides initial support for the W3C SPARQL Query Language being
   developed by the W3C RDF Data Access Working Group, as defined in SPARQL
   Query Language for RDF, W3C Working Draft, 12 October 2004. It currently
   implements  only  the  functionality  in common with RDQL. For further
   information on the state, see the Rasqal todo / bugs list.

Installation and Documentation

   The public API is described in the librasqal.3 UNIX manual page and in more
   detail in the API reference. It is demonstrated in the roqet utility program
   which shows how to call the query engine and operate over the query results.
   When Rasqal is used inside Redland, the Redland documentation explains how
   to call the query engine and contains several example programs.

   To install Rasqal see the Installation document.

Sources

   The packaged sources are available from http://librdf.org/dist/source/
   (master  site)  and  also from the SourceForge site. There are nightly
   snapshots  of the development version which is can also be browsed via
   CVSweb. Binary packages of Rasqal and related libraries are available from
   the download area.

   Rasqal  requires  Raptor 1.4.0 or newer to build and run, which can be
   downloaded from the same area as the Rasqal source and binaries.

License

   This library is free software / open source software released under the LGPL
   (GPL) or Apache 2.0 licenses. See LICENSE.html for full details.

Mailing Lists

   The Redland mailing lists discusses the development and use of Rasqal and
   Redland as well as future plans and announcement of releases.
     _________________________________________________________________

   Copyright  2003-2005 Dave Beckett, Institute for Learning and Research
   Technology, University of Bristol
