Skip to main content

No project description provided

Project description

Python PyPI

Biolink Model Toolkit

Biolink Model Toolkit (BMT): A Python API for working with the Biolink Model.

BMT provides utility functions to look up Biolink Model for classes, relations, and properties based on Biolink CURIEs or external CURIEs that have been mapped to Biolink Model.

Note: Each release of BMT is pinned to a specific version of the Biolink Model to ensure consistency.

Installation

For users

BMT is available on PyPI and can be installed via pip:

pip install bmt

For developers

You can install BMT from GitHub as follows:

# clone the repo
git clone https://github.com/biolink/biolink-model-toolkit

# cd into the folder
cd biolink-model-toolkit

# install
python setup.py install

Documentation

The technical documentation for BMT can be found at bmt.readthedocs.io

Usage

BMT provides convenience methods to operate on the Biolink Model.

Using this toolkit you can,

  • Get Biolink Model elements corresponding to a given Biolink class or slot name
  • Get Biolink Model elements corresponding to a given external CURIE/IRI
  • Get ancestors for a given Biolink Model element
  • Get descendants for a given Biolink Model element
  • Get parent for a given Biolink Model element
  • Get children for a given Biolink Model element
  • Check whether a given Biolink Model element is part of a specified subset

Using the Toolkit class

The main entrypoint is the Toolkit class that provides various methods for accessing and working with the Biolink Model.

Getting a Biolink Model element based on its name

from bmt import Toolkit
t = Toolkit()
element = t.get_element('gene') # This returns the element for 'biolink:Gene'

Get a Biolink Model element based on its mappings

from bmt import Toolkit
t = Toolkit()
element_name = t.get_element_by_mapping('SEMMEDDB:CAUSES') # This returns 'causes'
element = t.get_element(element_name)

element_name = t.get_element_by_mapping('RO:0002410') # This returns 'causes'
element = t.get_element(element_name)

Get ancestors for a given Biolink Model element

from bmt import Toolkit
t = Toolkit()
ancestors = t.get_ancestors('gene')

The above returns a list of ancestors: ['gene', 'gene or gene product', 'macromolecular machine', 'genomic entity', 'molecular entity', 'biological entity', 'named thing']

Get descendants for a given Biolink Model element

from bmt import Toolkit
t = Toolkit()
descendants = t.get_descendants('gene or gene product')

The above returns a list of descendants: ['gene', 'gene product', 'gene product isoform', 'RNA product', 'noncoding RNA product', 'microRNA', 'RNA product isoform', 'transcript', 'protein', 'protein isoform']

Check whether a given string is a valid Biolink Model category

from bmt import Toolkit
t = Toolkit()
t.is_category('gene') # True
t.is_category('treats') # False

Check whether a given string is a valid Biolink Model predicate

from bmt import Toolkit
t = Toolkit()
t.is_predicate('related to') # True
t.is_predicate('interacts with') # True
t.is_predicate('disease') # False

Using the Toolkit class with different versions of Biolink Model

BMT is pinned to a specific version of Biolink Model at each release. This can be configured to use your custom version of Biolink Model YAML:

from bmt import Toolkit
t = Toolkit('/path/to/biolink-model.yaml')

The path can be a file path or a URL.

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

bmt-0.6.0.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

bmt-0.6.0-py3-none-any.whl (10.7 kB view details)

Uploaded Python 3

File details

Details for the file bmt-0.6.0.tar.gz.

File metadata

  • Download URL: bmt-0.6.0.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.3

File hashes

Hashes for bmt-0.6.0.tar.gz
Algorithm Hash digest
SHA256 d1bc5824654e59f87cc3dcc97e4f5c04e1f04aa409a5f5bf7f5406b7d199ab74
MD5 1f5e40e7f25fd3d32c384cfa4dabc8c9
BLAKE2b-256 c2b42098ed98843b6bdbd8a50c2240f7fc1cc0c1f77d0d7ec1706489bb3f9263

See more details on using hashes here.

Provenance

File details

Details for the file bmt-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: bmt-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 10.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.3

File hashes

Hashes for bmt-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 88ab790047eb14970e10f0578c800f49962dd22d04ff797292fc6abd64760c66
MD5 9b67ac40f547212b90a081ef8c5331f1
BLAKE2b-256 afbd34a600ee7ae6f5e694d83d35ded61dfbf5aee03877cebc53c8e3d35d6e89

See more details on using hashes here.

Provenance

Supported by

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