LibSBML

LibSBML provides programmatic support for reading, writing, manipulating, translating, and validating Systems Biology Markup Language (SBML) files and data streams to enable development, exchange, and validation of computational models of biological processes.


Key Features:

  • SBML I/O: Read and write SBML files and data streams.
  • Model manipulation: Programmatic APIs to manipulate SBML model structure and elements.
  • SBML translation: Translate SBML content between representations.
  • SBML validation: Validate SBML content against SBML specifications and constraints.
  • Language bindings: Provide bindings for Common Lisp, Java, Python, Perl, MATLAB, and Octave.
  • Implementation: Implemented in ISO C and C++ as a library for embedding into other applications.

Scientific Applications:

  • Model development and curation: Create, edit, and maintain SBML computational models of biological processes.
  • Model exchange and interoperability: Enable exchange of SBML models across software by reading, writing, and translating SBML.
  • Model validation and quality control: Validate SBML files for conformance to SBML specifications.
  • Integration with simulation and analysis pipelines: Embed LibSBML APIs within applications or workflows to programmatically manipulate SBML models.

Methodology:

LibSBML implements APIs in ISO C and C++ to perform reading, writing, manipulation, translation, and validation of SBML files and data streams and exposes language bindings for Common Lisp, Java, Python, Perl, MATLAB, and Octave.

Topics

Details

Tool Type:
library
Operating Systems:
Linux, Windows, Mac
Programming Languages:
C++, C
Added:
8/3/2017
Last Updated:
7/8/2025

Operations

Data Inputs & Outputs

Data handling

Publications

Bornstein BJ, Keating SM, Jouraku A, Hucka M. LibSBML: an API Library for SBML. Bioinformatics. 2008;24(6):880-881. doi:10.1093/bioinformatics/btn051. PMID:18252737. PMCID:PMC2517632.

Documentation

Links