Skip to content

SBOannotator: A Python tool for the automated assignment of Systems Biology Onotology terms

License

Notifications You must be signed in to change notification settings

draeger-lab/SBOannotator

Repository files navigation

SBOannotator

drawing

SBOannotator: a Python tool for the automated assignment of Systems Biology Ontology terms

License (LGPL version 3) Latest version Code Size PyPI version PyPI - Format PyPI downloads DOI

Developers : Nantia Leonidou & Elisabeth Fritze


How to cite the SBOannotator?

The SBOannotator is described in this article: https://doi.org/10.1093/bioinformatics/btad437

Overview

SBOannotator is the first standalone tool that automatically assigns SBO terms to multiple entities of a given SBML model, The main focus lies on the reactions, as the correct assignment of precise SBO annotations requires their extensive classification. Our implementation does not consider only top-level terms but examines the functionality of the underlying enzymes to allocate precise and highly specific ontology terms to biochemical reactions. Transport reactions are examined separately and are classified based on the mechanism of molecule transport. Pseudo-reactions that serve modeling purposes are given reasonable terms to distinguish between biomass production and the import or export of metabolites. Finally, other model entities, such as metabolites and genes, are annotated with appropriate terms. Including SBO annotations in the models will enhance the reproducibility, usability, and analysis of biochemical networks.

Web Application

Web application hosted at TueVis is accessible and ready to use at sbo-annotator-tuevis.cs.uni-tuebingen.de/

Installation

pip install SBOannotator

Prerequisites

This tool has the following dependencies:

python >=3.8.5

Packages:

  • sqlite3
  • libsbml
  • collections
  • requests
  • json
  • time

Input data

  • doc: an SBML document
  • model_libsbml: SBML model of interest
  • modelType: type of modelling framework (see below)
  • database_name: name of imported database, without extension
  • new_filename: file name for output model

Types of modelling framework accepted:

  • constraint-based
  • logical
  • continuous
  • discrete
  • hybrid
  • logical

Outputs

  • model_libsbml: Annotated libSBML model

Usage

To run SBOannotator use the __main__.py script and modify the parameters in the readSBML and sbo_annotator functions as wished.

Alternatively run python __main__.py in the command line within the project folder.

If ERROR occurs, check the current version of Python:

  • python --version'
  • conda install python>=3.8.5

Exemplary models and results

The folder models/BiGG_Models contains all the tested models as they were downloaded from the BiGG database. The annotated models after using the SBOannotator are listed in the folder named models/Annotated_Models.