Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Redland Raptor RDF syntax library
Failed to load latest commit information.
build Switch libxml and libcurl to use PKG_PROG_PKG_CONFIG and PKG_CHECK_MO…
data delete .cvsignore files
docs 2015
examples Add rdfcount
librdfa Fixes for -Wconversion
scripts Warn if no difference seen in functions
src CMake and windows fixes targetted for Appveyor builds
tests change mKR relation to SPARQL compatible CSV format
utils Restore space between title and version
.gitignore ignore .dirstamp
.travis.yml docs
AUTHORS Add Nicholas J Humfrey
CMakeLists.txt CMake and windows fixes targetted for Appveyor builds
COPYING Add specific versions of GPL (2) and LGPL (2.1) to source control
COPYING.LIB Add specific versions of GPL (2) and LGPL (2.1) to source control
ChangeLog 2.0.16
ChangeLog.1 Import older ChangeLogs
ChangeLog.10 Added ChangeLog.10 for 2009
ChangeLog.11 Add ChangeLog.11 for 2010
ChangeLog.12 Added ChangeLog.12 for 2011
ChangeLog.13 ChangeLog.13 for 2012
ChangeLog.14 ChangeLog.14 for 2013
ChangeLog.2 Import older ChangeLogs
ChangeLog.3 Import older ChangeLogs
ChangeLog.4 Import older ChangeLogs
ChangeLog.5 Import older ChangeLogs
ChangeLog.6 ChangeLog.6 2005
ChangeLog.7 ChangeLog.7
ChangeLog.8 Added ChangeLog.8 for 2007 changes
ChangeLog.9 ChangeLog.9 for 2008
INSTALL.html 2015
LICENSE-2.0.txt +Apache2
LICENSE.html 2015
Makefile.am ChangeLog.14 for 2013
NEWS.html 2015
NOTICE NOTICE
README-cmake.md Delete win32/ subdirectory
README.html Add mKR serializer references to docs
RELEASE.html 2015
TODO.html 2015
UPGRADING.html 2015
appveyor.yml CMake and windows fixes targetted for Appveyor builds
autogen.sh Handle updated glibtoolize (OSX) name in --version
configure.ac Redisable -Wconversion - generated lexer too noisy
raptor2.pc.in Allow xml2-config and curl-config to work for libxml and libcurl
raptor2.rdf.in Normalised tabs into spaces #ws
raptor2.spec.in Update raptor2.spec.in

README.html

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>Raptor RDF Syntax Library</title>
  <link rel="meta" type="application/rdf+xml" title="DOAP" href="raptor.rdf" />
</head>
<body>

<h1 style="text-align:center">Raptor RDF Syntax Library</h1>
<h2 style="text-align:center"><a href="http://www.dajobe.org/">Dave Beckett</a></h2>
  

<h2>Overview</h2>

<p><a href="http://librdf.org/raptor/">Raptor</a>
is a free software / Open Source C library that provides
a set of parsers and serializers that
generate Resource Description Framework (RDF) triples
by parsing syntaxes or serialize the triples into a syntax.
The supported parsing syntaxes are RDF/XML, N-Quads, N-Triples 1.0
and 1.1, TRiG, Turtle 2008 and 2013, RDFa 1.0 and 1.1, RSS tag soup
including all versions of RSS, Atom 1.0 and 0.3, GRDDL and
microformats for HTML, XHTML and XML.  The serializing syntaxes are
RDF/XML (regular, abbreviated, XMP), Turtle 2013, N-Quads, N-Triples
1.1, Atom 1.0, RSS 1.0, GraphViz DOT, HTML, JSON and mKR.
</p>

<p>Raptor was designed to work closely with the
<a href="http://librdf.org/">Redland RDF library</a>
(<b>R</b>DF <b>P</b>arser <b>T</b>oolkit f<b>o</b>r <b>R</b>edland)
but is entirely separate.  It is a portable library that works
across many POSIX systems (Unix, GNU/Linux, BSDs, OSX, cygwin, win32).
</p>

<p>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 <a href="ChangeLog">ChangeLog</a>.
</p>

<p>Details of upgrading from Raptor 1 as described in the
<a href="UPGRADING.html">Upgrading document</a>.
</p>

<ul>
<li>Designed to integrate well with <a href="http://librdf.org/">Redland</a></li>
<li>Parses content on the web if <a href="http://curl.haxx.se/libcurl/">libcurl</a>, <a href="http://xmlsoft.org/">libxml2</a> or BSD libfetch is available.</li>
<li>Supports all RDF terms including datatyped and XML literals</li>
<li>Optional features including parsers and serialisers can be selected at configure time.</li>
<li>Language bindings to Perl, PHP, Python and Ruby when used via Redland</li>
<li>No memory leaks</li>
<li>Fast</li>
<li>Standalone <a href="rapper.html">rapper</a> RDF parser utility program</li>
</ul>

<p>Known bugs and issues are recorded in the
<a href="http://bugs.librdf.org/">Redland issue tracker</a>.
</p>



<h2>Parsers</h2>

<h3>RDF/XML Parser</h3>

<p>A Parser for the standard
<a href="http://www.w3.org/TR/rdf-syntax-grammar/">RDF/XML syntax</a>.
</p>
<ul>
<li>Fully handles the <a href="http://www.w3.org/TR/rdf-syntax-grammar/">RDF/XML syntax updates</a> for <a href="http://www.w3.org/TR/xmlbase/">XML Base</a>, <code>xml:lang</code>, RDF datatyping and Collections.</li>
<li>Handles all RDF vocabularies such as <a href="http://www.foaf-project.org/">FOAF</a>, <a href="http://www.purl.org/rss/1.0/">RSS 1.0</a>, <a href="http://dublincore.org/">Dublin Core</a>, <a href="http://www.w3.org/TR/owl-features/">OWL</a>, <a href="http://usefulinc.com/doap">DOAP</a></li>
<li>Handles <code>rdf:resource</code> / <code>resource</code> attributes</li>
<li>Uses <a href="http://xmlsoft.org/">libxml</a> XML parser</li>
</ul>


<h3>N-Quads Parser</h3>

<p>A parser for the
<a href="http://www.w3.org/TR/2013/CR-n-quads-20131105/">RDF 1.1 N-Quads - A line-based syntax for an RDF datasets</a>, W3C Candidate Recommendation, 05 November 2013.
This is an extension to N-Triples, providing an optional 4th context
graph term at the end of the line when a triple is associated with a
named graph.
</p>


<h3>N-Triples Parser</h3>

<p>A parser for the
<a href="http://www.w3.org/TR/2013/CR-n-triples-20131105/">RDF 1.1 N-Triples - A line-based syntax for an RDF graph</a>, W3C Candidate Recommendation, 05 November 2013 (aka N-Triples 2013)
based on the older
<a href="http://www.w3.org/TR/rdf-testcases/#ntriples">N-Triples</a>.
</p>


<h3>Turtle Parser</h3>

<p>A parser for the
<a href="http://www.w3.org/TR/2013/CR-turtle-20130219/">Turtle Terse RDF Triple Language</a> W3C Candidate Recommendation, 19 February 2013
based on earlier work
<a href="http://www.dajobe.org/2004/01/turtle/">Turtle Terse RDF Triple Language</a> (2004)
</p>


<h3>TRiG Parser</h3>

<p>A parser for the
<a href="http://www.w3.org/TR/2014/REC-trig-20140225/">RDF 1.1 TriG RDF Dataset Language</a>.
</p>

<p>The parser does not support the entire 1.1 TRiG specification; the
'{' ... '}' around a graph and the <code>GRAPH</code> keyword may not
be omitted.
</p>


<h3>RSS "tag soup" parser</h3>

<p>A parser for the multiple XML RSS formats that use the elements
such as channel, item, title, description in different ways.
Attempts to turn the input into
<a href="http://www.purl.org/rss/1.0/">RSS 1.0</a>
RDF triples.  True <a href="http://www.purl.org/rss/1.0/">RSS 1.0</a>,
as a full RDF vocabulary, is best parsed by the RDF/XML parser.
It also generates triples for RSS enclosures.
</p>

<p>This parser also provides support for the Atom 1.0 syndication
format defined in IETF
<a href="http://www.ietf.org/rfc/rfc4287.txt">RFC 4287</a>
</p>


<h3>GRDDL and microformats parser</h3>

<p>A parser/processor for
<a href="http://www.w3.org/TR/2007/REC-grddl-20070911/">Gleaning Resource Descriptions from Dialects of Languages (GRDDL)</a>
syntax, W3C Recommendation of 2007-09-11 which allows reading XHTML
and XML as RDF triples by using profiles in the document that declare
XSLT transforms from the XHTML or XML content into RDF/XML or other
RDF syntax which can then be parsed.  It uses either an XML or
a lax HTML parser to allow HTML tag soup to be read.
</p>

<p>The parser passes the all the GRDDL tests as of Raptor 1.4.16.
</p>

<p>The parser also handles hCard and hReview using public XSL sheets.
</p>


<h3>RDFa parser</h3>

<p>A parser for
<a href="http://www.w3.org/TR/2008/REC-rdfa-syntax-20081014/">RDFa 1.0</a>
(W3C Recommendation 14 October 2008) and
<a href="http://www.w3.org/TR/2012/REC-rdfa-core-20120607/">RDFa 1.1</a>
(W3C Recommendation 07 June 2012)
implemented via <a href="https://github.com/rdfa/librdfa">librdfa</a>
linked inside Raptor.  librdfa was, written primarily by Manu Sporny
of Digital Bazaar and is licensed with the same license as Raptor.
</p>

<p>As of Raptor 2.0.8 the RDFa parser passes all of the
<a href="http://www.w3.org/2006/07/SWD/RDFa/testsuite/xhtml1-testcases/">RDFa 1.0 test suite</a>
except for 4 tests and all of the
<a href="http://rdfa.info/dev/">RDFa 1.1 test suite</a>
except for 30 tests.
</p>


<h2>Serializers</h2>

<h3>RDF/XML Serializer</h3>

<p>A serializer to the standard
<a href="http://www.w3.org/TR/rdf-syntax-grammar/">RDF/XML syntax</a>
as revised by the
<a href="http://www.w3.org/2001/sw/RDFCore/">W3C RDF Core working group</a>
in 2004.   This writes a plain triple-based RDF/XML serialization with
no optimisation or pretty-printing.
</p>

<p>A second serializer is provided using several of the RDF/XML
abbreviations to provide a more compact readable format, at the cost
of some pre-processing.  This is suitable for small documents.
</p>


<h3>N-Quads Serializer</h3>

<p>A serializer for the
<a href="http://www.w3.org/TR/2013/CR-n-quads-20131105/">RDF 1.1 N-Quads -A line-based syntax for an RDF datasets</a>, W3C Candidate Recommendation, 05 November 2013.
This is an extension to N-Triples, providing an optional 4th context
graph term at the end of the line when a triple is associated with a
named graph.
</p>


<h3>N-Triples Serializer</h3>

<p>A serializer for the
<a href="http://www.w3.org/TR/2013/CR-n-triples-20131105/">RDF 1.1
N-Triples - A line-based syntax for an RDF graph</a> (aka N-Triples 2013)
based on the earlier
<a href="http://www.w3.org/TR/rdf-testcases/#ntriples">N-Triples</a>
syntax as used by the 
<a href="http://www.w3.org/2001/sw/RDFCore/">W3C RDF Core working group</a>
for the <a href="http://www.w3.org/TR/rdf-testcases/">RDF Test Cases</a>.
</p>


<h3>Atom 1.0 Serializer</h3>

<p>A serializer to the Atom 1.0 syndication format defined in IETF
<a href="http://www.ietf.org/rfc/rfc4287.txt">RFC 4287</a>.
</p>


<h3>JSON Serializers</h3>

<p>Two serializers for to write triples encoded in JSON:</p>
<ol>
<li><code>json</code>: in a resource-centric abbreviated form
like Turtle or RDF/XML-Abbreviated as defined by:
<a href="http://www.w3.org/TR/2013/NOTE-rdf-json-20131107/">RDF 1.1
JSON Alternate Serialization (RDF/JSON)</a>, W3C Working Group Note, 07 November 2013
</li>
<li><code>json-triples</code>: a triple-centric format based on the
SPARQL results in JSON format.</li>
</ol>
<p>JSON-LD is not supported - too complex to implement.</p>


<h3>GraphViz DOT Serializer</h3>

<p>An serializer to the GraphViz
<a href="http://www.graphviz.org/doc/info/lang.html">DOT format</a>
which aids visualising RDF graphs.
</p>


<h3>RSS 1.0 Serializer</h3>

<p>A serializer to the
<a href="http://purl.org/rss/1.0/spec">RDF Site Summary (RSS) 1.0</a>
format.
</p>


<h3>Turtle Serializer</h3>

<p>A serializer for the
<a href="http://www.w3.org/TR/2013/CR-turtle-20130219/">Turtle Terse RDF Triple Language</a> W3C Candidate Recommendation, 19 February 2013
</p>

<h3>XMP Serializer</h3>

<p>An alpha quality serializer to the Adobe XMP profile of RDF/XML
suitable for embedding inside an external document.
</p>

<h3>mKR Serializer</h3>

<p>A serializer for the
<a href="http://contextknowledgesystems.org/CKS.html">mKR (my Knowledge Representation) Language</a>
</p>

<h2>Documentation</h2>

<p>The public API is described in the
<a href="libraptor.html">libraptor.3</a> UNIX manual page.
It is demonstrated in the
<a href="rapper.html">rapper</a>
utility program which shows how to call the parser and write
the triples in a serialization.  When Raptor is used inside
<a href="http://librdf.org/">Redland</a>,
the Redland documentation explains
how to call the parser and contains several example programs.
There are also further examples in the <tt>example</tt> directory
of the distribution.
</p>

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


<h2>Sources</h2>

<p>The packaged sources are available from
<a href="http://download.librdf.org/source/">http://download.librdf.org/source/</a> (master site)
The development GIT sources can also be
<a href="http://github.com/dajobe/raptor">browsed at GitHub</a>
or checked out at git://github.com/dajobe/raptor.git
</p>


<h2>License</h2>

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

<p>The <a href="http://librdf.org/lists/">Redland mailing lists</a>
discusses the development and use of Raptor and Redland as well as
future plans and announcement of releases.
</p>

<hr />

<p>Copyright (C) 2000-2014 <a href="http://www.dajobe.org/">Dave Beckett</a><br />Copyright (C) 2000-2005 <a href="http://www.bristol.ac.uk/">University of Bristol</a></p>

</body>
</html>
Something went wrong with that request. Please try again.