|
Name |
|
Date |
Size |
#Lines |
LOC |
| .. | | 03-May-2022 | - |
| build/ | H | 16-Dec-2014 | - | 24,059 | 19,791 |
| data/ | H | 03-May-2022 | - | 559 | 478 |
| docs/ | H | 03-May-2022 | - | 7,680 | 5,222 |
| getopt/ | H | 03-May-2022 | - | 820 | 646 |
| libmtwist/ | H | 03-May-2022 | - | 1,356 | 916 |
| libsv/ | H | 03-May-2022 | - | 3,211 | 2,265 |
| scripts/ | H | 03-May-2022 | - | 1,683 | 1,141 |
| src/ | H | 03-May-2022 | - | 88,259 | 59,906 |
| tests/ | H | 03-May-2022 | - | 34,441 | 28,184 |
| utils/ | H | 03-May-2022 | - | 6,865 | 5,256 |
| win32/ | H | 03-May-2022 | - | 931 | 805 |
| AUTHORS | H A D | 17-Aug-2010 | 59 | 3 | 2 |
| COPYING | H A D | 15-Jun-2006 | 17.6 KiB | 340 | 281 |
| COPYING.LIB | H A D | 16-Jun-2005 | 25.9 KiB | | |
| ChangeLog | H A D | 16-Dec-2014 | 56.4 KiB | 1,905 | 1,259 |
| ChangeLog.1 | H A D | 22-Jun-2005 | 7.8 KiB | 259 | 174 |
| ChangeLog.10 | H A D | 25-Jan-2013 | 38.4 KiB | 1,168 | 843 |
| ChangeLog.11 | H A D | 28-Mar-2014 | 25.9 KiB | 910 | 585 |
| ChangeLog.2 | H A D | 22-Jun-2005 | 99.5 KiB | 2,987 | 2,068 |
| ChangeLog.3 | H A D | 30-Apr-2006 | 140.6 KiB | 3,829 | 2,893 |
| ChangeLog.4 | H A D | 22-Apr-2007 | 55.6 KiB | 1,475 | 1,141 |
| ChangeLog.5 | H A D | 20-Jul-2008 | 123.8 KiB | 3,235 | 2,548 |
| ChangeLog.6 | H A D | 29-Nov-2009 | 138.2 KiB | 3,716 | 2,908 |
| ChangeLog.7 | H A D | 13-Feb-2010 | 129.6 KiB | 2,947 | 2,399 |
| ChangeLog.8 | H A D | 27-Jan-2011 | 157 KiB | 4,974 | 3,384 |
| ChangeLog.9 | H A D | 15-May-2012 | 116.3 KiB | 3,661 | 2,484 |
| INSTALL | H A D | 17-Mar-2014 | 15.4 KiB | 371 | 288 |
| Makefile.am | H A D | 28-Mar-2014 | 2 KiB | 80 | 40 |
| Makefile.in | H A D | 03-May-2022 | 29.9 KiB | 940 | 819 |
| NEWS | H A D | 16-Dec-2014 | 17.7 KiB | 460 | 352 |
| NOTICE | H A D | 16-Jan-2006 | 180 | 4 | 3 |
| README | H A D | 19-Oct-2014 | 6.3 KiB | 148 | 116 |
| aclocal.m4 | H A D | 23-Nov-2014 | 40.9 KiB | 1,172 | 1,056 |
| autogen.sh | H A D | 15-Jan-2014 | 10.3 KiB | 433 | 293 |
| configure | H A D | 23-Nov-2014 | 535.7 KiB | 18,659 | 15,603 |
| configure.ac | H A D | 23-Nov-2014 | 38.8 KiB | 1,408 | 1,177 |
| gtk-doc.make | H A D | 17-Mar-2014 | 8.4 KiB | 281 | 241 |
| mkinstalldirs | H A D | 17-Jul-2009 | 3.4 KiB | 162 | 112 |
| rasqal-src-config.in | H A D | 12-Jan-2011 | 1.8 KiB | 83 | 47 |
| rasqal.pc.in | H A D | 11-Jan-2011 | 417 | 17 | 13 |
| rasqal.rdf.in | H A D | 15-May-2012 | 3.3 KiB | 90 | 59 |
| rasqal.spec.in | H A D | 15-May-2012 | 3 KiB | 126 | 93 |
README
1 #DOAP
2
3 Rasqal RDF Query Library
4
5Dave Beckett
6
7Overview
8
9 Rasqal is a free software / Open Source C library that handles Resource
10 Description Framework (RDF) query language syntaxes, query construction
11 and execution of queries returning results as bindings, boolean, RDF
12 graphs/triples or syntaxes. The supported query languages are SPARQL
13 Query 1.0, SPARQL Query 1.1, SPARQL Update 1.1 (no executing) and the
14 Experimental SPARQL extensions (LAQRS). Rasqal can write binding query
15 results in the SPARQL XML, SPARQL JSON, CSV, TSV, HTML, ASCII tables,
16 RDF/XML and Turtle / N3 and read them in SPARQL XML, CSV, TSV, RDF/XML
17 and Turtle / N3.
18
19 Rasqal was designed to work closely with the Redland RDF library and
20 the Raptor RDF Syntax Library but is entirely separate from both.
21
22 This is a beta quality library - the code is mature, the API is mostly
23 stable but changing slowly. Rasqal supports all of SPARQL 1.0 query and
24 most of SPARQL 1.1 query. It is a portable library and has been tested
25 on multiple POSIX systems and architectures. Rasqal has no known memory
26 leaks.
27
28 A summary of the changes can be found in the NEWS file and detailed API
29 changes in the release notes.
30
31 Rasqal provides:
32 * An RDF query construction and access API.
33 * Query language support for SPARQL 1.0 Query.
34 * Query language support for most of SPARQL 1.1 Query.
35 * A query execution engine executing sub-queries, aggregate
36 expressions and grouping.
37 * The complete SPARQL 1.1 (draft) built-in function and operator
38 library
39 * A query result binding API.
40 * Query result bindings formatting into SPARQL XML, SPARQL JSON, CSV,
41 TSV, HTML, ASCII tables, RDF/XML, Turtle / N3 and from SPARQL XML,
42 RDF/XML and Turtle / N3.
43 * Triple store querying APIs to support running over external RDF
44 graphs.
45 * No memory leaks.
46 * roqet standalone command line RDF query utility program
47
48 Known bugs and issues are recorded in the Redland issue tracker.
49
50 Rasqal does not provide an RDF API or triple store, but relies on
51 external libraries implementing the triple store API providing matched
52 RDF data originally from a specified content URI. Rasqal ships with a
53 triple store implementation using the output of an RDF parser from
54 Raptor. This can be called using the standalone command line roqet
55 query utility giving a query language identifier (default sparql), the
56 query string and optionally the data to use unless it is declared in
57 the query string.
58
59 Rasqal is used inside Redland to provide support for query languages, a
60 query API and a result bindings API over graphs stored in indexed
61 Redland triple stores. Since this can index the triples it will be
62 faster than the default rasqal triple store of reading the triples from
63 Raptor into memory when the queries are complex.
64
65Supported Query Languages
66
67 SPARQL Query Language for RDF
68
69 Rasqal provides complete support for the W3C SPARQL Query Language 1.0
70 developed by the W3C RDF Data Access Working Group, as defined in
71 SPARQL Query Language for RDF (1.0), W3C Recommendation 15 January
72 2008.
73
74 Rasqal implements most of the SPARQL 1.1 Query Language and SPARQL 1.1
75 Update W3C Recommendations 21 March 2013 including aggregates,
76 subqueries, expression in SELECT, assignment, short form for CONSTRUCT
77 and all the new set of builtin functions and operators.
78
79 Unimplemented parts of SPARQL 1.1:
80 * BIND scope
81 * VALUES: part of federated query
82 * Decimal and double canonical format details
83 * EXISTS / NOT EXISTS
84 * JSON result format reading
85 * MINUS
86 * Property Paths: These are likely never be supported since it is a
87 lot of work (estimate: 3 months full time) and might need multiple
88 new APIs to talk to the storage layer.
89 * SERVICE: Part of federated query
90
91 Out of scope parts of SPARQL 1.1:
92 * Entailment and inference: Rasqal is not an inference engine
93 * SPARQL Federated Query
94 * SPARQL Update (also called SPARQL Protocol): The Update syntax is
95 parsed with parser name 'sparql-update' but nothing is executed
96 inside Rasqal. Supporting SPARQL Update requires a protocol server
97 that responds to requests to perform operations on a graph store.
98 Rasqal is a query library and does not have an event loop or triple
99 store. Redstore is a system supporting SPARQL Update and Service
100 Description built with Rasqal by using Redland librdf for graph
101 storage and query.
102
103 The details on the Rasqal support for SPARQL 1.1 can be found at the
104 rasqal testing SPARQL 1.1 page which shows the SPARQL 1.1 tests that
105 fail and any diagnosis.
106
107 LAQRS Adds to Querying RDF in SPARQL (LAQRS)
108
109 LAQRS is an experimental set of syntax extensions for SPARQL. The
110 syntax and features may change at any time. At present Rasqal provides
111 parsing and API support for alternate update syntaxes, the EXPLAIN
112 keyword, plus executing a few experimental extension functions: NOW() /
113 CURRENT_DATETIME(), FROM_UNIXTIME() and TO_UNIXTIME().
114
115Installation and Documentation
116
117 The public API is described in the API reference. It is demonstrated in
118 the roqet utility program which shows how to call the query engine and
119 operate over the query results. When Rasqal is used inside Redland, the
120 Redland documentation explains how to call the query engine and
121 contains several example programs.
122
123 To build and install Rasqal from sources see the Installation document.
124
125Sources
126
127 The packaged sources are available from
128 http://download.librdf.org/source/. The development GIT sources can
129 also be browsed on GitHub or checked out at
130 git://github.com/dajobe/rasqal.git
131
132 Rasqal requires Raptor 2.0.7 or newer to build and run, which can be
133 downloaded from the same area as the Rasqal source and binaries.
134
135License
136
137 This library is free software / open source software released under the
138 LGPL (GPL) or Apache 2.0 licenses. See LICENSE.html for full details.
139
140Mailing Lists
141
142 The Redland mailing lists discusses the development and use of Rasqal
143 and Redland as well as future plans and announcement of releases.
144 __________________________________________________________________
145
146 Copyright (C) 2003-2014 Dave Beckett
147 Copyright (C) 2003-2005 University of Bristol
148