Overview - RDFLib (original) (raw)
RDFLib is a pure Python package for working with RDF. It contains:
- Parsers & Serializers
- for RDF/XML, N3, NTriples, N-Quads, Turtle, TriG, TriX, JSON-LD, HexTuples, RDFa and Microdata
- Store implementations
- memory stores
- persistent, on-disk stores, using databases such as BerkeleyDB
- remote SPARQL endpoints
- Graph interface
- to a single graph
- or to multiple Named Graphs within a dataset
- SPARQL 1.1 implementation
- both Queries and Updates are supported
Security considerations
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 RDFLibSecurity Considerationsdocumentation.
Getting started
If you have never used RDFLib, the following will help get you started:
- Getting Started
- Introduction to Parsing
- Introduction to Creating RDF
- Introduction to Graphs
- Introduction to SPARQL
- Utilities
- Examples
In depth
If you are familiar with RDF and are looking for details on how RDFLib handles it, these are for you:
- RDF Terms
- Namespaces and Bindings
- Persistence
- Merging
- Changelog
- Upgrade 6 to 7
- Upgrade 5 to 6
- Upgrade 4 to 5
- Security Considerations
Versioning
RDFLib follows Semantic Versioning 2.0.0, which can be summarized as follows:
Given a version number MAJOR.MINOR.PATCH
, increment the:
MAJOR
version when you make incompatible API changesMINOR
version when you add functionality in a backwards-compatible mannerPATCH
version when you make backwards-compatible bug fixes
For developers
- Developers guide
- Documentation guide
- Contributing guide
- Code of Conduct
- Persisting N3 Terms
- Type Hints
- Decisions
Source Code
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.
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 here.
You might also like to join RDFlib’s dev mailing list or use RDFLib’s GitHub discussions section.
The chat is available at gitter or via matrix #RDFLib_rdflib:gitter.im.