MetabolomicsHub Common Data Model and Utility Tools (mhd-model)
You can find documentation on Github
Development Environment
Development environment for linux or mac
# install python package manager uv
curl -LsSf https://astral.sh/uv/install.sh | sh
# add $HOME/.local/bin to your PATH, either restart your shell or run
export PATH=$HOME/.local/bin:$PATH
# install git from https://git-scm.com/downloads
# Linux command
apt update; apt install git -y
# Mac command
# brew install git
# clone project from github
git clone https://github.com/MetabolomicsHub/mhd_model.git
cd mhd-model
# install python if it is not installed
uv python install 3.12
# install python dependencies
uv sync
# install pre-commit to check repository integrity and format checking
uv run pre-commit
# open your IDE (vscode, pycharm, etc.) and set python interpreter as .venv/bin/python
Commandline Usage
# you can use any python version >= 3.12
pip install mhd-model
mhd-cli
Example API Usage
from mhd_model.mhd_client import MhdClient, MhdClientError
mhd_webservice_base_url = "https://www.metabolomicshub.org/api/submission"
api_key = "<your-api-key>"
def get_new_mhd_accession_example():
mhd_client: MhdClient = MhdClient(mhd_webservice_base_url, api_key)
try:
accession = mhd_client.get_new_mhd_accession(
dataset_repository_identifier="MTBLS1234567", accession_type="mhd"
)
print("Accession: %s" % accession)
except MhdClientError as ex:
print("Error: %s" % ex.message)
def get_new_test_mhd_accession_example():
mhd_client: MhdClient = MhdClient(mhd_webservice_base_url, api_key)
try:
accession = mhd_client.get_new_mhd_accession(
dataset_repository_identifier="MTBLS4444", accession_type="test"
)
print("Accession: %s" % accession)
except MhdClientError as ex:
print("Error: %s" % ex.message)
def submit_legacy_dataset_example():
announcement_file_path = "MTBLS9876543.announcement.json"
dataset_repository_id = "MTBLS9876543"
announcement_reason = "Initial revision"
mhd_client: MhdClient = MhdClient(mhd_webservice_base_url, api_key)
try:
revision: SubmittedRevision = mhd_client.submit_announcement_file(
dataset_repository_id=dataset_repository_id,
mhd_id=None,
file_path=announcement_file_path,
announcement_reason=announcement_reason,
)
print("Revision: %s" % revision.revision)
except MhdClientError as ex:
print("Error: %s" % ex.message)
def submit_mhd_dataset_example():
announcement_file_path = "MTBLS9876543.announcement.json"
mhd_id = "MHD0000001"
dataset_repository_id = "MTBLS22222"
announcement_reason = "Initial revision"
mhd_client: MhdClient = MhdClient(mhd_webservice_base_url, api_key)
try:
revision: SubmittedRevision = mhd_client.submit_announcement_file(
dataset_repository_id=dataset_repository_id,
mhd_id=mhd_id,
file_path=announcement_file_path,
announcement_reason=announcement_reason,
)
print("Revision: %s" % revision.revision)
except MhdClientError as ex:
print("Error: %s" % ex.message)
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
mhd_model-0.1.96.tar.gz
(222.0 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
mhd_model-0.1.96-py3-none-any.whl
(278.4 kB
view details)
File details
Details for the file mhd_model-0.1.96.tar.gz.
File metadata
- Download URL: mhd_model-0.1.96.tar.gz
- Upload date:
- Size: 222.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7c8fe53360130c397c1be18f276f66e9bda02e4977eee76681b85bfbed442e95
|
|
| MD5 |
146eadfc30678cc68c614ac971238b26
|
|
| BLAKE2b-256 |
26c6e37272563c424bcf341b93faf64c6c46d9c7a429d0819f67283f8f8c1c87
|
File details
Details for the file mhd_model-0.1.96-py3-none-any.whl.
File metadata
- Download URL: mhd_model-0.1.96-py3-none-any.whl
- Upload date:
- Size: 278.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8c6f5fea0bfef78853d4e1b16aea080c105b5ee21bf43007cacc7b94a1260b5e
|
|
| MD5 |
aa2528343a934bb4d5400cbb5e3ba62d
|
|
| BLAKE2b-256 |
c4154e254565454cea50188a1f12d4db85ea69e809058711a072eb2f13a406af
|