ontology_loader
Project description
ontology_loader
Suite of tools to configure and load an ontology from the OboFoundary into the data object for OntologyClass as specified by NMDC schema.
Development Environment
Pre-requisites
-
=Python 3.9
- Poetry
- Docker
- MongoDB
- NMDC materialized schema
- ENV variable for MONGO_PASSWORD (or pass it in via the cli/runner itself directly)
% docker pull mongo
% docker run -d --name mongodb-container -p 27018:27017 mongo
Basic mongosh commands
% docker ps
% docker exec -it [mongodb-container-id] bash
% mongosh mongodb://admin:root@mongo:27017/nmdc?authSource=admin
% show dbs
% use nmdc
% db.ontology_class_set.find().pretty()
% db.ontology_relation_set.find().pretty()
Command line
% poetry install
% poetry run ontology_loader --help
% poetry run ontology_loader --source-ontology "envo"
% poetry run ontology_loader --source-ontology "go"
Running the tests
% make test
Running the linter
% make lint
python example usage
pip install nmdc-ontology-loader
from nmdc_ontology_loader.ontology_loader import OntologyLoader
import tempfile
def test_load_ontology():
"""Test the load_ontology method."""
ontology_loader = OntologyLoader(
source_ontology="envo",
output_directory=tempfile.gettempdir(),
generate_reports=True,
)
ontology_loader.load_ontology()
assert ontology_loader.ontology_class_set
assert ontology_loader.ontology_relation_set
assert ontology_loader.ontology_class_set.count() > 0
assert ontology_loader.ontology_relation_set.count() > 0
Reset collections in dev
% docker exec -it mongodb-container bash
% mongosh mongodb://admin:root@mongo:27017/nmdc?authSource=admin
% db.ontology_class_set.drop()
% db.ontology_relation_set.drop()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ontology_loader-0.1.7.tar.gz
(8.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ontology_loader-0.1.7.tar.gz.
File metadata
- Download URL: ontology_loader-0.1.7.tar.gz
- Upload date:
- Size: 8.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.8.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a361140c3f9b53d32bfce68a833d81c7c84ff11b76464dfb76be9658cd485c31
|
|
| MD5 |
9b6d95dc704d1d975072b814f0537982
|
|
| BLAKE2b-256 |
69aca8727be4392e586f5e10800a6a615d315b3a6a3ef7966db17f60d2efbfe1
|
File details
Details for the file ontology_loader-0.1.7-py3-none-any.whl.
File metadata
- Download URL: ontology_loader-0.1.7-py3-none-any.whl
- Upload date:
- Size: 10.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.8.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
618eb86d64930a2a1b2fcf8e95b7ad0b5823a9a4d3fc60e384fb4f7b4275ecf1
|
|
| MD5 |
fb22c9b7a7f16ce7633f4311e4bf1683
|
|
| BLAKE2b-256 |
fc9f1c7681657e3f15f2c809c64c39d7cf1a2bb521c4bb9fc1874d47857c59e5
|