Sesame: A Generic Architecture for Storing and Querying RDF and RDF Schema
- ISBN: 3540437606
- DOI: 10.1007/3-540-48005-6_7
Abstract
RDF and RDF Schema are two W3C standards aimed at enriching the Web with machine-processable semantic data. We have developed Sesame, an architecture for efficient storage and expressive querying of large quantities of metadata in RDF and RDF Schema. Sesames design and implementation are independent from any specific storage device. Thus, Sesame can be deployed on top of a variety of storage devices, such as relational databases, triple stores, or object-oriented databases, without having to change the query engine or other functional modules. Sesame offers support for concurrency control, independent export of RDF and RDFS information and a query engine for RQL, a query language for RDF that offers native support for RDF Schema semantics. We present an overview of Sesame as a generic architecture, as well as its implementation and our first experiences with this implementation.
Sesame: A Generic Architecture for Storing and Querying RDF and RDF Schema
Querying RDF and RDF Schema
Jeen Broekstra1, Arjohn Kampman1, and Frank van Harmelen2
1 Aidministrator Nederland b.v., Amersfoort, The Netherlands
{jeen.broekstra, arjohn.kampman}@aidministrator.nl
2 Faculty of Sciences, Vrije Universiteit, Amsterdam, The Netherlands
frank.van.harmelen@cs.vu.nl
Abstract. RDF and RDF Schema are two W3C standards aimed at
enriching the Web with machine-processable semantic data.
We have developed Sesame, an architecture for efficient storage and
expressive querying of large quantities of metadata in RDF and RDF
Schema. Sesame’s design and implementation are independent from any
specific storage device. Thus, Sesame can be deployed on top of a va-
riety of storage devices, such as relational databases, triple stores, or
object-oriented databases, without having to change the query engine or
other functional modules. Sesame offers support for concurrency control,
independent export of RDF and RDFS information and a query engine
for RQL, a query language for RDF that offers native support for RDF
Schema semantics. We present an overview of Sesame as a generic archi-
tecture, as well as its implementation and our first experiences with this
implementation.
1 Introduction
The Resource Description Framework (RDF) [14] is a W3C Recommendation
for the formulation of metadata on the World Wide Web. RDF Schema [4]
(RDFS) extends this standard with the means to specify domain vocabulary
and object structures. These techniques will enable the enrichment of the Web
with machine-processable semantics, thus giving rise to what has been dubbed
the Semantic Web.
We have developed Sesame, an architecture for storage and quering of RDF
and RDFS information. Sesame is being developed by Aidministrator Nederland
b.v.3 as part of the European IST project On-To-Knowledge4 [9]. Sesame allows
persistent storage of RDF data and schema information, and provides access
methods to that information through export and querying modules. It features
ways of caching information and offers support for concurrency control.
This paper is organized as follows. In section 2 we give a short introduction
to RDF and RDFS. Readers who are already familiar with these languages can
3 See http://www.aidministrator.nl/
4 On-To-Knowledge (IST-1999-10132). See http://www.ontoknowledge.org/
safely skip this section. In section 3 we discuss why a query language specifically
tailored to RDF and RDFS is needed, over and above existing query languages
such as XQuery. In section 4 we look at Sesame’s modular architecture in some
detail. In section 5 we give an overview of the SAIL API and a brief comparison
to other RDF API approaches. Section 6 discusses our experiences with Sesame
until now, and section 7 looks into possible future developments. Finally we
provide our conclusions in section 8.
2 RDF and RDFS
RDF is a W3C recommendation that was originally designed to standardize the
definition and use of metadata-descriptions of Web-based resources. However,
RDF is equally well suited for representing arbitrary data, be they metadata or
not.
The basic building block in RDF is an subject-predicate-object triple, com-
monly written as P (S,O). That is, a subject S has an predicate (or property)
P with value O. Another way to think of this relationship is as a labeled edge
between two nodes: [S]− P → [O].
This notation is useful because RDF allows subjects and objects to be in-
terchanged. Thus, any object from one triple can play the role of a subject in
another triple, which amounts to chaining two labeled edges in a graphic repre-
sentation. The graph in figure 1 for example, expresses three statements.
RDF also allows a form
of reification in which any
RDF statement itself can
be the subject or object of
a triple. This means graphs
can be nested as well as
.../twain/mark .../ISBN0001047582
"The Adventures of Tom Sawyer""Mark Twain"
hasWritten
hasName title
Fig. 1: An example RDF graph.
chained. On the Web this allows us, for example, to express doubt or support
for statements created by other people.
The RDF Model and Syntax specification also proposes an XML syntax for
RDF data models. One possible serialization of the above relations in this syntax
looks like this:
<rdf:Description rdf:about="http://www.famouswriters.org/twain/mark">
<s:hasName>Mark Twain</s:hasName>
<s:hasWritten rdf:resource="http://www.books.org/ISBN0001047582"/>
</rdf:Description>
<rdf:Description rdf:about="http://www.books.org/ISBN0001047582">
<s:title>The Adventures of Tom Sawyer</s:title>
<rdf:type rdf:resource="http://www.description.org/schema#Book"/>
</rdf:Description>
Since the proposed XML syntax allows many alternative ways of writing down
information, the above XML syntax is just one of many possibilities of writing
down an RDF model in XML.
It is important to note that RDF is designed to provide a basic subject-
predicate-object model for Web-data. Other than this intended semantics – de-
Sign up today - FREE
Mendeley saves you time finding and organizing research. Learn more
- All your research in one place
- Add and import papers easily
- Access it anywhere, anytime



