SBML software and models

The SBML Team produces software libraries and some specific software tools for working with SBML. (Many more third-party packages also support SBML – check the software documentation to find out.)

Main programming libraries and tools

libSBML
LibSBML is a library for reading, writing, and manipulating files and data streams in SBML format . It is written in C++ and C and provides APIs for C, C++, C#, Java, JavaScript, MATLAB, Octave, Perl, PHP, Python, R, and Ruby.
JSBML
JSBML is a pure Java library for reading, writing, and manipulating SBML. It maps all SBML elements to a flexible and extended object hierarchy in Java. JSBML is an alternative to the mixed Java/native code-based interface provided in libSBML.
Deviser
SBML Level 3 is modular, with optional packages that can add features to a core. Deviser helps development of SBML Level 3 packages by automating the generation of basic specifications, UML diagrams, and LibSBML plug-ins.

Test suite

SBML Test Suite
The SBML Test Suite is a conformance testing system for SBML. It can be used software implementation of SBML support. The Test Suite consists of a collection of test models and a framework for running software through the suite.

Format conversion tools

libSBML and JSBML include some built-in format conversion capabilities, particularly between SBML Levels/Versions. Converters for other formats also exist, and we list the ones we know about below.

All known converters
In addition to the converters listed below, a number of other groups have written converters that can translate between SBML and other formats. We provide a list of those known to us.
MOCCASIN
Written in Python and made freely available under LGPL terms, MOCCASIN can read certain forms of ODE-based models written in MATLAB and translate them into SBML format. It does not use or need MATLAB itself. It offers both a GUI and a command-line interface.
SBFC
The Systems Biology Format Converter (SBFC) is both a framework and an online service for converting between formats used in systems biology. The SBFC framework currently supports conversion from SBML to BioPAX Levels 2 and 3, MATLAB, XPP, GraphViz, and APM.
SBMLToolbox
SBMLToolbox is an open-source tool that provides a set of basic functions allowing SBML models to be used in both MATLAB and Octave. It provides functions for creating and validating models; and manipulating and simulating these models using ordinary differential equation solvers.

SBML models

The SBML Project does not itself produce models; our efforts are more directed towards developing infrastructure for modeling. However, our alliances and related projects do produce models.

BioModels Database
An open and free database of models curated by humans, BioModels Database allows biologists to store, search and retrieve published mathematical models of biological interests. Models are annotated and linked to relevant data resources, such as publications, databases of compounds and pathways, controlled vocabularies, and more.