# Redland librdf RDF API Library

## Dave Beckett

## Overview

Redland librdf is a library that provides a high-level interface for the Resource Description Framework (RDF) allowing the RDF graph to be parsed from XML, stored, queried and manipulated. Redland librdf implements each of the RDF concepts in its own class via an object based API, reflected into the language APIs, currently C#, Java, Perl, PHP, Python, Ruby and Tcl. Several classes providing functionality such as for parsers, storage are built as modules that can be loaded at compile or run-time as required.

This is a mature and stable RDF library developed since 2000 used in multiple projects. See the FAQS for general information and the Redland issue tracker for known bugs and issues. 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 Subversion ChangeLog.

Redland librdf provides:

- A modular, object based library written in C
- APIs for manipulating the RDF graph and parts - Statements, Resources and Literals
- Language Bindings in Perl, PHP, Python and Ruby via the Redland Bindings package.
- Reading and writing multiple RDF syntaxes with Parsers and Serializers via the Raptor RDF Parser Toolkit.
- Storage for graphs in memory and persistently with Sleepycat/Berkeley DB, MySQL 3-5, PostgreSQL, SQLite, Openlink Virtuoso, in-memory Trees, files or URIs.
- Query language support for SPARQL 1.0 (some 1.1) and RDQL using Rasqal.
- APIs for accessing the graph by Statement (triples) or by Nodes and Arcs
- Contexts for managing aggregating named graphs and recording provenance.
- Statement Streams for efficient construction, parsing and serialisation of graphs
- rdfproc RDF processor utility program
- No memory leaks.

## Sources

The packaged sources are available from http://download.librdf.org/source/ (master site) and also from the SourceForge site. The development GIT sources can also be browsed on GitHub or checked out at git://github.com/dajobe/librdf.git

librdf requires Raptor 1.4.19 or newer (or Raptor V2 1.9.0 or newer) and Rasqal 0.9.19 or newer to build and run, which can be downloaded from the same area as the librdf source and binaries.

## License

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

## Installation and Documentation

See INSTALL.html for general installation and configuration information.

Further documentation is available in the documents area including the API reference document and detailed storage modules information.

## Mailing Lists

The Redland mailing lists discuss the development and use of the Redland libraries as well as future plans and announcement of releases.

Copyright (C) 2000-2011 Dave Beckett
Copyright (C) 2000-2005 University of Bristol