https://github.com/brsynth/neo4jsbml
Bridge the gap between SBML data and Neo4j
https://github.com/brsynth/neo4jsbml
bioinformatics neo4j sbml
Last synced: 10 days ago
JSON representation
Bridge the gap between SBML data and Neo4j
- Host: GitHub
- URL: https://github.com/brsynth/neo4jsbml
- Owner: brsynth
- License: mit
- Created: 2023-01-06T09:17:36.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-09-02T11:52:54.000Z (over 1 year ago)
- Last Synced: 2025-12-09T03:14:49.187Z (about 2 months ago)
- Topics: bioinformatics, neo4j, sbml
- Language: Python
- Homepage: https://neo4jsbml.readthedocs.io/
- Size: 27.8 MB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: .github/CONTRIBUTING.rst
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.rst
- Citation: CITATION.bib
Awesome Lists containing this project
README
# Neo4jSbml
[](version) [](https://github.com/psf/black)
[](https://neo4jsbml.readthedocs.io/en/latest/?badge=latest) [](https://github.com/marketplace/actions/super-linter)
[](https://zenodo.org/badge/latestdoi/585859244)
## Install
```sh
conda install -c conda-forge neo4jsbml
```
## Usage
### Step 1
Create a schema with [arrows](https://arrows.app) like:

Rules:
* Nodes are labelled based on SBML object name as defined in the [SBML specification](https://sbml.org)
* Properties are labelled based on SBML object properties as defined the [SBML specification](https://sbml.org)
### Step 2
Export your schema at the JSON format.

### Step 3
Import your data with `neo4jsbml` into Neo4j.
* Use either a configuration file `ini` or individual parameters
* Password needs to be store in a file for safety security
* If you have multiple model in the database, pass a `tag` to identify the model loaded into the database if you want to avoid collision
```sh
neo4jsbml sbml-to-neo4j \
# Database parameters
--input-protocol-str ["neo4j", "neo4j+s", "neo4j+ssc", "bolt", "bolt+s", "bolt+ssc"] \
--input-url-str "localhost" \
--input-user-str "neo4j" \
--input-port-int \
--input-password-file \
--input-database-str \
# Config file
--input-config-file \
# AuraDB file
--input-auradb-file \
# Input
--input-file-sbml \
--input-modelisation-json \
# Parameter
--input-tag-str ""
```
## Config file
### Neo4jsbml
A config file is expected `.ini`
```ini
[connection]
protocol = neo4j
url = localhost
port = 7687
[database]
user = neo4j
password = abc
name = neo4j
```
### AuraDB
A file provided by AuraDB
```bash
# one comment
NEO4J_URI=neo4j+s://test.neo4j.io
NEO4J_USERNAME=neo4j
NEO4J_PASSWORD=thepassword
# second comment
AURA_INSTANCEID=422DEf4
AURA_INSTANCENAME=Instance01
```