Package rdflib.sparql
For a general description of the SPARQL API, see the separate, more
complete description.
Variables, Imports
The top level (__init__.py) module of the Package imports the
important classes. In other words, the user may choose to use the
following imports only:
from rdflibUtils import myTripleStore
from rdflibUtils import retrieveRDFFiles
from rdflibUtils import SPARQLError
from rdflibUtils import GraphPattern
The module imports and/or creates some frequently used Namespaces,
and these can then be imported by the user like:
from rdflibUtils import ns_rdf
Finally, the package also has a set of convenience string defines
for XML Schema datatypes (ie, the URI-s of the datatypes); ie, one can
use:
from rdflibUtils import type_string
from rdflibUtils import type_integer
from rdflibUtils import type_long
from rdflibUtils import type_double
from rdflibUtils import type_float
from rdflibUtils import type_decimal
from rdflibUtils import type_dateTime
from rdflibUtils import type_date
from rdflibUtils import type_time
from rdflibUtils import type_duration
These are used, for example, in the sparql-p implementation.
The three most important classes in RDFLib for the average user are
Namespace, URIRef and Literal; these are also imported, so the user can
also use, eg:
from rdflibUtils import Namespace, URIRef, Literal
History
-
Version 1.0: based on an earlier version of the SPARQL, first
released implementation
-
Version 2.0: version based on the March 2005 SPARQL document,
also a major change of the core code (introduction of the separate
GraphPattern class, etc).
-
Version 2.01: minor changes only: - switch to epydoc as a
documentation tool, it gives a much better overview of the classes
- addition of the SELECT * feature to sparql-p
-
Version 2.02: - added some methods to
myTripleStore
to handle Alt and Bag the same way as
Seq - added also methods to add collections and
containers to the triple store, not only retrieve them
-
Version 2.1: adapted to the inclusion of the code into rdflib,
thanks to Michel Pelletier
-
Version 2.2: added the sorting possibilities; introduced the
Unbound class and have a better interface to patterns using this
(in the BasicGraphPattern class)
Version: 2.2
Author: Ivan Herman
Contact: Ivan Herman, ivan@ivan-herman.net
License: This software is available for use under the W3C
Software License
| Submodules |
-
graphPattern: Graph pattern class used by the SPARQL implementation
-
parser: SPARQL Lexer, Parser and Function-Mapper
By Shawn Brown <http://shawnbrown.com/contact>
TO DO:
swap current parser functions for Michelp's pyparsing setup
add mapping for FILTER/constraints
typed literals
integer, double or boolean abbreviations
language tags (e.g., @fr)
nested OPTIONALs ???
blank node and RDF collection syntax ???
GRAPH statements ???
CURRENTLY SUPPORTED:
Simple SELECT queries
Predicate-object and object list shorthand
(e.g., ?x foaf:name ?name ; foaf:mbox ?mbox ; vcard:TITLE ?title)
Multi-line/triple-quoted literals
BASE, PREFIX, SELECT, WHERE, UNION, OPTIONAL, multiple UNIONs and multiple
OPTIONALs (but not nested OPTIONALs)
USAGE:
#from sparql_lpm import doSPARQL
from rdflib.sparql.parser import doSPARQL
...load graph...
-
QueryResult
-
sparql: SPARQL implementation on top of RDFLib
-
sparqlGraph: Some utility functions built on the top of rdflib
-
sparqlOperators
|
| Function Summary |
| a function suitable as a sparql filter
|
generateCollectionConstraint(triplets,
collection,
item)
Generate a function that can then be used as a global constaint in
sparql to check whether the 'item' is an element of the 'collection'
(a.k.a. |
generateCollectionConstraint(triplets,
collection,
item)
Generate a function that can then be used as a global constaint in
sparql to check whether the 'item' is an element of the 'collection'
(a.k.a. list). Both collection and item can be a real resource or a
query string. Furthermore, item might be a plain string, that is then
turned into a literal run-time.
The function returns an adapted filter method that can then be
plugged into a sparql request.
-
- Parameters:
triplets -
the SPARQLGraph instance
collection -
is either a query string (that has to be bound by the query)
or an RDFLib Resource representing the collection
item -
is either a query string (that has to be bound by the query)
or an RDFLib Resource that must be tested to be part of the
collection
- Returns:
-
a function suitable as a sparql filter
- Raises:
SPARQLError -
if the collection or the item parameters are illegal (not
valid resources for a collection or an object)
|