Fork of https://github.com/oxigraph/oxigraph.git for the purpose of NextGraph project
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
oxigraph/python
Tpt 4c27b43e41 JS: Drop older NodeJS and WebBrowsers support 9 months ago
..
docs Python: exposes the Dataset class 9 months ago
src JS: Drop older NodeJS and WebBrowsers support 9 months ago
tests Python: test Pyodide wheel 11 months ago
Cargo.toml Moves main crate to lib/oxigraph and centralizes dependencies 11 months ago
README.md Python: use rustls by default on anything that is not Windows/macOS/iOS 11 months ago
generate_stubs.py Python: Introduces enums for RDF and SPARQL result formats 1 year ago
mypy_allowlist.txt Auto generates pyoxigraph type stubs 2 years ago
pyproject.toml Python: strips builds by default 10 months ago
requirements.dev.txt Upgrades dependencies including RocksDB 8.11.3 10 months ago

README.md

Pyoxigraph (Oxigraph for Python)

PyPI Conda PyPI - Implementation PyPI - Python Version actions status Gitter

Pyoxigraph is a graph database library implementing the SPARQL standard. It is a Python library written on top of Oxigraph.

Pyoxigraph offers two stores with SPARQL 1.1 capabilities. One of the store is in-memory, and the other one is disk based.

It also provides a set of utility functions for reading, writing and processing RDF files in Turtle, TriG, N-Triples, N-Quads and RDF/XML.

Pyoxigraph is distributed on Pypi and on conda-forge. Run pip install pyoxigraph to install it.

There exists also a small library providing rdflib stores using pyoxigraph: oxrdflib.

Pyoxigraph documentation is available on the Oxigraph website.

Build the development version

To build and install the development version of pyoxigraph you need to clone this git repository including submodules (git clone --recursive https://github.com/oxigraph/oxigraph.git) and to run pip install . in the python directory (the one this README is in).

Note that by default the installation will not use cpython stable ABI. Use --features abi3 feature to use cpython stable ABI.

Help

Feel free to use GitHub discussions or the Gitter chat to ask questions or talk about Oxigraph. Bug reports are also very welcome.

If you need advanced support or are willing to pay to get some extra features, feel free to reach out to Tpt.

How to contribute

Pyoxigraph is written in Rust using PyO3.

Pyoxigraph is built using Maturin. Maturin could be installed using the pip install 'maturin>=0.9,<0.10'. To install a development version of Oxigraph just run maturin develop in this README directory.

Tests

The Python bindings tests are written in Python. To run them use python -m unittest in the tests directory.

Docs

The Sphinx documentation can be generated and viewed in the browser using the following command:

sphinx-autobuild docs docs/_build/html

Note that you will need to have sphinx-autobuild installed.

Alternatively, you can use sphinx-build with Python's http.server to achieve the same thing.

License

This project is licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Oxigraph by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.