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)
Metadata
Release files for mhd-model 0.1.104
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mhd_model-0.1.104.tar.gz | 223.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mhd_model-0.1.104-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 502.9 kB
Release files / mhd_model-0.1.104.tar.gz
| Download URL | mhd_model-0.1.104.tar.gz |
|---|---|
| Size | 223.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9932533e9fc3ce31ea41705ad5037aba32b689fffe5900b8e48c03ab3a6047f3
|
|
BLAKE2b-256 checksum How to use checksums |
111f1dcf701e99b84dcab371072e5f48a6b5b156bfa5ddd13fd6d42cdcaf527d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.15 {"installer":{"name":"uv","version":"0.12.15","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}
|
Release files / mhd_model-0.1.104-py3-none-any.whl
| Download URL | mhd_model-0.1.104-py3-none-any.whl |
|---|---|
| Size | 279.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7c09c04180b0fb7e1a8e0fa121554eeac078256f883b099d540a265e9da9d73b
|
|
BLAKE2b-256 checksum How to use checksums |
a4cc8f172e02f965451d76641a3741d26a66d99cf6ada682e5d5a24e93a4f5a0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.15 {"installer":{"name":"uv","version":"0.12.15","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}
|