Skip to main content

A simple interface to interact with a GraphDB instance

Project description

graph_db_interface

PyPI version Python License

This repository acts as an interface to abstract SPARQL queries to callable methods to interact with a running GraphDB instance in an easier way.

Installation

To install the current PyPI release, simply run the following command using your preferred python interpreter:

pip install graph-db-interface

Or after cloning this repository you can also use poetry to install the package:

poetry install

Getting Started

The package uses a single class named GraphDB. To use the interface, simply generate an object from this class:

from graph_db_interface import GraphDB, GraphDBCredentials

credentials = GraphDBCredentials(
    base_url="<your_graph_db_url>",
    username="<your_graph_db_user>",
    password="<your_graph_db_password>",
    repository="<your_selected_repository_id>",
)

my_db = GraphDB(credentials=credentials)

Running Tests

The test suite expects a running GraphDB instance and uses a dedicated test repository.

Required environment variables for tests:

  • GRAPHDB_URL
  • GRAPHDB_USERNAME
  • GRAPHDB_PASSWORD
  • GRAPHDB_TEST_REPOSITORY

Example:

export GRAPHDB_URL="http://localhost:7200"
export GRAPHDB_USERNAME="admin"
export GRAPHDB_PASSWORD="root"
export GRAPHDB_TEST_REPOSITORY="test-repo"
poetry run pytest tests -v

Note: application/runtime credentials loaded via GraphDBCredentials.from_env() still use GRAPHDB_REPOSITORY by default.

License

The package is licensed under the MIT license.

Acknowledgements

This package is developed as part of the INF subproject of the CRC 1574: Circular Factory for the Perpetual Product. This work is therefore supported by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) [grant-number: SFB-1574-471687386]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

graph_db_interface-2.0.1.tar.gz (27.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

graph_db_interface-2.0.1-py3-none-any.whl (35.3 kB view details)

Uploaded Python 3

File details

Details for the file graph_db_interface-2.0.1.tar.gz.

File metadata

  • Download URL: graph_db_interface-2.0.1.tar.gz
  • Upload date:
  • Size: 27.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for graph_db_interface-2.0.1.tar.gz
Algorithm Hash digest
SHA256 cfc98e0c858a915fdf992bb9b33841c2cc6d048aae2f0c8e8497033e7af294ff
MD5 00d3e557738ab5ac6f2d57c2ca8be8b3
BLAKE2b-256 1ddc64016b9c7e9fd9571c699c1ac42444a359f6071df6e6e449e63e09c782bc

See more details on using hashes here.

Provenance

The following attestation bundles were made for graph_db_interface-2.0.1.tar.gz:

Publisher: publish-to-pypi.yml on JaFeKl/graph_db_interface

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file graph_db_interface-2.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for graph_db_interface-2.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 befee2ba2fc9da43cf82d1d4a975fc4066a3c2f1a12c2de8d3ef41d6c1407e3f
MD5 dca08c04979af8ff3f310819cc9bd590
BLAKE2b-256 3d4f8e8789c1d1d478d9d15eda73618145129137f8e6c4c8b9ea2a8c0b8d98ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for graph_db_interface-2.0.1-py3-none-any.whl:

Publisher: publish-to-pypi.yml on JaFeKl/graph_db_interface

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page