Skip to content

matthiaskoenig/libsbgn-python

Repository files navigation

libsbgnpy : Python library for SBGN

GitHub Actions CI/CD Status Current PyPI Version Supported Python Versions GNU Lesser General Public License 3 Codecov Documentation Status Zenodo DOI Black

Python library to work with the Systems Biology Graphical Notation (SBGN). This library is based on the SBGN XML schema and supports reading, writing and validation of SBGN files.

The initial library was generated using generateDS. Additional utility functions for reading, writing, and rendering SBGN documents are provided.

Documentation with examples is available at https://libsbgn-python.readthedocs.io.

  • libsbgn.py python library
  • libsbgnTypes.py SBGN type definitions (GlyphClasses, ArcClasses, Languages)
  • utils.py SBGN utility function like writing & reading of files
  • render.py SBGN rendering
  • test/ unittests
  • examples/ python examples
  • validation/ validation of SBGN files

How to cite

Zenodo DOI

Installation

libsbgnpy is available from pypi and can be installed via:

pip install libsbgnpy

Support

To report bugs, request features or asking questions please file an issue.

License

The libsbgnpy source is released under both the GPL and LGPL licenses version 2 or later. You may choose which license to use the software under.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License or the GNU Lesser General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Funding

Matthias König is supported by the Federal Ministry of Education and Research (BMBF, Germany) within the research network Systems Medicine of the Liver (LiSyM, grant number 031L0054).

Software using libsbgnpy

  • Mimoza takes a model in SBML format and visualizes it in several formats (downloadable as a COMBINE archive).

Python Language Bindings

The python language bindings were created from the XML schema using generateDS and than adapted to include GlyphClasses and ArcClasses.:

/usr/local/bin/generateDS.py -o "libsbgn.py" -s "libsbgnSubs.py" SBGN.xsd

The necessary constraints for GlyphClasses, ArcClasses and Languages were added and some utility functions created.

© 2016-2020 Matthias König