pyjelly is a Python implementation of Jelly, a high-performance binary serialization format and streaming protocol for RDF knowledge graphs.
Documentation, usage guide and more: https://w3id.org/jelly/pyjelly
- Fast reading and writing of RDF knowledge graphs in the Jelly format
- Seamless integration with rdflib
- Stream processing support for large datasets or streams of many RDF graphs/datasets
Install pyjelly from PyPI:
pip install pyjelly[rdflib]
To write an RDF graph to a Jelly file:
from rdflib import Graph
g = Graph()
g.parse("http://xmlns.com/foaf/spec/index.rdf")
g.serialize(destination="foaf.jelly", format="jelly")
To read a Jelly file and convert it to an rdflib Graph
:
from rdflib import Graph
g = Graph()
g.parse("foaf.jelly", format="jelly")
See our documentation for further examples, a full API reference, and more.
This project is being actively developed – you can stay tuned by watching this repository.
Join the Jelly Discord chat to ask questions about pyjelly and to be up-to-date with the development activities.
NeverBlink provides commercial support services for Jelly, including implementing custom features, system integrations, implementations for new frameworks, benchmarking, and more.
If you'd like to contribute, check out our contributing guidelines.
The pyjelly library is licensed under the Apache 2.0 license.
The development of the Jelly protocol, its implementations, and supporting tooling was co-funded by the European Union. More details.