summaryrefslogtreecommitdiff
path: root/README
blob: 027d299dfc415cb599c0db947215e190e82a680b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
   #DOAP

                           Raptor RDF Syntax Library

Dave Beckett

Overview

   Raptor 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,
   TRiG, Turtle, 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, and abbreviated), Atom
   1.0, GraphViz, JSON, N-Quads, N-Triples, RSS 1.0 and XMP.

   Raptor was designed to work closely with the Redland RDF library (RDF
   Parser Toolkit for Redland) but is entirely separate. It is a portable
   library that works across many POSIX systems (Unix, GNU/Linux, BSDs,
   OSX, cygwin, win32).

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

   Details of upgrading from Raptor 1 as described in the Upgrading
   document.
     * Designed to integrate well with Redland
     * Parses content on the web if libcurl, libxml2 or BSD libfetch is
       available.
     * Supports all RDF terms including datatyped and XML literals
     * Optional features including parsers and serialisers can be selected
       at configure time.
     * Language bindings to Perl, PHP, Python and Ruby when used via
       Redland
     * No memory leaks
     * Fast
     * Standalone rapper RDF parser utility program

   Known bugs and issues are recorded in the Redland issue tracker.

Parsers

  RDF/XML Parser

   A Parser for the standard RDF/XML syntax.
     * Fully handles the RDF/XML syntax updates for XML Base, xml:lang,
       RDF datatyping and Collections.
     * Handles all RDF vocabularies such as FOAF, RSS 1.0, Dublin Core,
       OWL, DOAP
     * Handles rdf:resource / resource attributes
     * Uses libxml XML parser

  N-Quads Parser

   A parser for the N-Quads 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.

  N-Triples Parser

   A parser for the N-Triples syntax as defined by the W3C RDF Core
   working group for the RDF Test Cases.

  Turtle Parser

   A parser for the Turtle Terse RDF Triple Language syntax, designed as a
   useful subset of Notation 3.

  TRiG Parser

   A parser for the TriG - Turtle with Named Graphs syntax.

   The parser is alpha quality and may not support the entire TRiG
   specification.

  RSS "tag soup" parser

   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 RSS 1.0 RDF triples. True RSS 1.0, as a full RDF
   vocabulary, is best parsed by the RDF/XML parser. It also generates
   triples for RSS enclosures.

   This parser also provides support for the Atom 1.0 syndication format
   defined in IETF RFC 4287

  GRDDL and microformats parser

   A parser/processor for Gleaning Resource Descriptions from Dialects of
   Languages (GRDDL) 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.

   The parser passes the all the GRDDL tests as of Raptor 1.4.16.

   The parser also handles hCard and hReview using public XSL sheets.

  RDFa parser

   A parser for RDFa 1.0 (W3C Recommendation 14 October 2008) and RDFa 1.1
   (W3C Recommendation 07 June 2012) implemented via librdfa linked inside
   Raptor. librdfa was, written primarily by Manu Sporny of Digital Bazaar
   and is licensed with the same license as Raptor.

   As of Raptor 2.0.8 the RDFa parser passes all of the RDFa 1.0 test
   suite except for 4 tests and all of the RDFa 1.1 test suite except for
   30 tests.

Serializers

  RDF/XML Serializer

   A serializer to the standard RDF/XML syntax as revised by the W3C RDF
   Core working group in 2004. This writes a plain triple-based RDF/XML
   serialization with no optimisation or pretty-printing.

   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.

  N-Quads Serializer

   A serializer to the N-Quads 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.

  N-Triples Serializer

   A serializer to the N-Triples syntax as used by the W3C RDF Core
   working group for the RDF Test Cases.

  Atom 1.0 Serializer

   A serializer to the Atom 1.0 syndication format defined in IETF RFC
   4287.

  JSON Serializers

   Two serializers for to write triples encoded in JSON, one (json) in a
   resource-centric abbreviated form RDF/JSON like Turtle or
   RDF/XML-Abbreviated; the other a triple-centric format (json-triples)
   based on the SPARQL results in JSON format.

  GraphViz DOT Serializer

   An serializer to the GraphViz DOT format which aids visualising RDF
   graphs.

  RSS 1.0 Serializer

   A serializer to the RDF Site Summary (RSS) 1.0 format.

  Turtle Serializer

   A serializer for the Turtle Terse RDF Triple Language syntax.

  XMP Serializer

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

Documentation

   The public API is described in the libraptor.3 UNIX manual page. It is
   demonstrated in the rapper utility program which shows how to call the
   parser and write the triples in a serialization. When Raptor is used
   inside Redland, the Redland documentation explains how to call the
   parser and contains several example programs. There are also further
   examples in the example directory of the distribution.

   To install Raptor see the Installation document.

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 at
   GitHub or checked out at git://github.com/dajobe/raptor.git

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 Raptor
   and Redland as well as future plans and announcement of releases.
     __________________________________________________________________

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