RDFLib is a pure Python package for working with RDF. It contains:
Parsers & Serializers
for RDF/XML, N3, NTriples, N-Quads, Turtle, TriX, JSON-LD, HexTuples, RDFa and Microdata
persistent, on-disk stores, using databases such as BerkeleyDB
remote SPARQL endpoints
to a single graph
or to multiple Named Graphs within a dataset
SPARQL 1.1 implementation
both Queries and Updates are supported
RDFLib is designed to access arbitrary network and file resources, in some cases these are directly requested resources, in other cases they are indirectly referenced resources.
If you are using RDFLib to process untrusted documents or queries you should take measures to restrict file and network access.
For information on available security measures, see the RDFLib Security Considerations documentation.
If you have never used RDFLib, the following will help get you started:
If you are familiar with RDF and are looking for details on how RDFLib handles it, these are for you:
The nitty-gritty details of everything.
RDFLib follows Semantic Versioning 2.0.0, which can be summarized as follows:
Given a version number
MAJOR.MINOR.PATCH, increment the:
MAJORversion when you make incompatible API changes
MINORversion when you add functionality in a backwards-compatible
PATCHversion when you make backwards-compatible bug fixes
The rdflib source code is hosted on GitHub at https://github.com/RDFLib/rdflib where you can lodge Issues and create Pull Requests to help improve this community project!
The RDFlib organisation on GitHub at https://github.com/RDFLib maintains this package and a number of other RDF and RDFlib-related packaged that you might also find useful.
Further help & Contact¶
If you would like help with using RDFlib, rather than developing it, please post
a question on StackOverflow using the tag
[rdflib]. A list of existing
[rdflib] tagged questions can be found