Converters

Table of Contents

SBML is a lingua franca in systems biology. In order to further facilitate exchange of models, many software tools have been developed to convert between SBML and other formats. For the benefit of the SBML-using community, this page provides a list of conversion tools of which we are aware. Please contact sbml-team@googlegroups.com if we have missed any. Note that most of these tools are third-party software, and not the product of the SBML Team.

Also, please note that the conversion tools listed here differ in their degree of coverage of SBML – some may be more complete than others. In addition, different tools are in different states of development, maturity and maintenance status.

To SBML

From BioPAX

The Biological Pathways Exchange format (BioPAX) is a standard language that aims to enable integration, exchange and analysis of biological pathway data.
Qualitative translation of relations from BioPAX to SBML Büchel F, Wrzodek C, Mittag F, Dräger A, Eichner J, Rodriguez N, Le Novère N, and Zell A. Bioinformatics, 28:2648-2653, 2012.Description of BioPAX2SBML, a tool capable of translating BioPAX (Level 2 and 3) into SBML (Level 3 Version 1) with the SBML ‘qual’ package, including reactions and relations in a single model.

From CellML

CellML is a language being developed by the Auckland Bioengineering Institute to store and exchange computer-based mathematical models.
SBML and CellML Translation in Antimony and JSim Smith L.P., Butterworth E., Bassingthwaighte J., Sauro H. Bioinformatics, 10.1093/bioinformatics/btt641, 2013.Description of two tools that each convert CellML and SBML models, and the challenges discovered. Both Antimony and JSim can be used to convert between SBML and CellML, in addition to each program’s native model definition languages.

From JSON

COBREXA.jl: constraint-based reconstruction and exascale analysis Miroslav Kratochvíl, Laurent Heirendt, St Elmo Wilken, Taneli Pusa, Sylvain Arreckx, Alberto Noronha, Marvin van Aalst, Venkata P Satagopam, Oliver Ebenhöh, Reinhard Schneider, Christophe Trefois, Wei Gu. Bioinformatics 38(4):1171–1172, 2022.A constraint-based modeling toolkit for the Julia environment that includes functionality for converting between constraint-based metabolic models using SBML FBC and multiple other formats including MATLAB and JSON.

From KEGG

The KEGG PATHWAY database uses a format called KGML.

Precise generation of systems biology models from KEGG pathways Wrzodek C., Büchel F., Ruff M., Dräger A., Zell A. BMC Systems Biology, 7:15, 2013.Description of an updated version of KEGGtranslator.
KEGGtranslator: visualizing and converting the KEGG PATHWAY database to various formats Wrzodek C., Dräger A., Zell A. Bioinformatics, 27: 2314-2315, 2011.Description of a tool to convert KEGG Pathway files into SBML.

From MATLAB

MATLAB® is a popular interactive numerical computing environment with a matrix-based language. MATLAB is used in all technical fields, including biology.
COBREXA.jl: constraint-based reconstruction and exascale analysis Miroslav Kratochvíl, Laurent Heirendt, St Elmo Wilken, Taneli Pusa, Sylvain Arreckx, Alberto Noronha, Marvin van Aalst, Venkata P Satagopam, Oliver Ebenhöh, Reinhard Schneider, Christophe Trefois, Wei Gu. Bioinformatics 38(4):1171–1172, 2022.A constraint-based modeling toolkit for the Julia environment that includes functionality for converting between constraint-based metabolic models using SBML FBC and multiple other formats including MATLAB and JSON.
MOCCASIN: converting MATLAB ODE models to SBML Harold F. Gómez, Michael Hucka, Sarah M. Keating, German Nudelman, Dagmar Iber and Stuart C. Sealfon. Bioinformatics, 32(12): 1905-1906, 2016.Describes MOCCASIN (Model ODE Converter for Creating Automated SBML INteroperability), a tool written in Python that can read certain forms of ODE-based models written in MATLAB and translate them into SBML format.
SBMLToolbox: an SBML toolbox for MATLAB users Keating, S. M., Bornstein, B. J., Finney, A., and Hucka M. Bioinformatics, 22(10):1275–1277, 2006.Describes SBMLToolbox, a MATLAB toolbox built on top of libSBML. It provides a set of basic functions allowing SBML models to be used in both MATLAB and Octave.

From SBtab

SBtab is a set of conventions for structured data tables in spreadsheets. The conventions include, for example, defined column names and a syntax for semantic annotations.
SBtab: a flexible table format for data exchange in systems biology Timo Lubitz Jens Hahn, Frank T. Bergmann, Elad Noor, Edda Klipp, and Wolfram Liebermeister. Bioinformatics, 16(32), 2016.Paper introducing the format SBtab and software to work with it, including online services at www.sbtab.net such as a validator and converters for SBML, MATLAB, R, and other formats.

From XPP

XPP is a tool for studying dynamical systems. Problems and procedures can be encoded in a scripting format.
sbmlutils: python utilities for SBML Matthias König. GitHub.sbmlutils is a collection of python utilities for working with SBML models. It offers a variety of model helper functions for model creation, manipulation, and annotation, as well as interpolation functions to add experimental data to models, and file converters.

From SBML

To APM

The APMonitor Modeling Language is optimization software for mixed-integer and differential algebraic equations. It is coupled with large-scale solvers for linear, quadratic, nonlinear, and mixed integer programming. It is freely available through MATLAB, Python, or from a web browser interface.

The System Biology Format Converter Gaël Jalowicki, Nicolas Rodriguez, Martina Kutmon, Jean-Baptiste Pettit, Lu Li, Arnaud Henry, Kedar Nath Natarajan, Camille Laibe, Chris T. Evelo, and Nicolas Le Novère. Nature Precedings, https://doi.org/10.1038/npre.2011.6363.1.The Systems Biology Format Converter (SBFC) is written in Java and can be used as a standalone executable or as an online service. The SBFC framework currently supports conversion from SBML to BioPAX Levels 2 and 3, MATLAB, Octave, XPP, Graphviz, and APM.

To BioPAX

The Biological Pathways Exchange format (BioPAX) is a standard language that aims to enable integration, exchange and analysis of biological pathway data.

The System Biology Format Converter Gaël Jalowicki, Nicolas Rodriguez, Martina Kutmon, Jean-Baptiste Pettit, Lu Li, Arnaud Henry, Kedar Nath Natarajan, Camille Laibe, Chris T. Evelo, and Nicolas Le Novère. Nature Precedings, https://doi.org/10.1038/npre.2011.6363.1.The Systems Biology Format Converter (SBFC) is written in Java and can be used as a standalone executable or as an online service. The SBFC framework currently supports conversion from SBML to BioPAX Levels 2 and 3, MATLAB, Octave, XPP, Graphviz, and APM.

To CellML

CellML is a language being developed by the Auckland Bioengineering Institute to store and exchange computer-based mathematical models.
SBML and CellML Translation in Antimony and JSim Smith L.P., Butterworth E., Bassingthwaighte J., Sauro H. Bioinformatics, 10.1093/bioinformatics/btt641, 2013.Description of two tools that each convert CellML and SBML models, and the challenges discovered. Both Antimony and JSim can be used to convert between SBML and CellML, in addition to each program’s native model definition languages.

To GraphViz DOT

The DOT language is the format used by the software Graphviz to describe network diagrams.

The System Biology Format Converter Gaël Jalowicki, Nicolas Rodriguez, Martina Kutmon, Jean-Baptiste Pettit, Lu Li, Arnaud Henry, Kedar Nath Natarajan, Camille Laibe, Chris T. Evelo, and Nicolas Le Novère. Nature Precedings, https://doi.org/10.1038/npre.2011.6363.1.The Systems Biology Format Converter (SBFC) is written in Java and can be used as a standalone executable or as an online service. The SBFC framework currently supports conversion from SBML to BioPAX Levels 2 and 3, MATLAB, Octave, XPP, Graphviz, and APM.

To JSON

COBREXA.jl: constraint-based reconstruction and exascale analysis Miroslav Kratochvíl, Laurent Heirendt, St Elmo Wilken, Taneli Pusa, Sylvain Arreckx, Alberto Noronha, Marvin van Aalst, Venkata P Satagopam, Oliver Ebenhöh, Reinhard Schneider, Christophe Trefois, Wei Gu. Bioinformatics 38(4):1171–1172, 2022.A constraint-based modeling toolkit for the Julia environment that includes functionality for converting between constraint-based metabolic models using SBML FBC and multiple other formats including MATLAB and JSON.

To LaTeX

LaTeX is a popular typesetting system designed for the production of technical and scientific documentation.

SBML2LaTeX: conversion of SBML files into human-readable reports Dräger A, Planatscher H, Motsou Wouamba D, Schröder A, Hucka M, Endler L, Golebiewski M, Müller W, Zell A. Bioinformatics, 25(11):1455-1456, 2009.Describes SBML2LaTeX, a GUI Java-based program as well as online service that can convert files in SBML format into LaTeX files. It provides a way for humans to read the contents of XML-based SBML files, which helps error detection, proofreading, and model communication.

To MATLAB

MATLAB® is a popular interactive numerical computing environment with a matrix-based language. MATLAB is used in all technical fields, including biology.
COBREXA.jl: constraint-based reconstruction and exascale analysis Miroslav Kratochvíl, Laurent Heirendt, St Elmo Wilken, Taneli Pusa, Sylvain Arreckx, Alberto Noronha, Marvin van Aalst, Venkata P Satagopam, Oliver Ebenhöh, Reinhard Schneider, Christophe Trefois, Wei Gu. Bioinformatics 38(4):1171–1172, 2022.A constraint-based modeling toolkit for the Julia environment that includes functionality for converting between constraint-based metabolic models using SBML FBC and multiple other formats including MATLAB and JSON.
The System Biology Format Converter Gaël Jalowicki, Nicolas Rodriguez, Martina Kutmon, Jean-Baptiste Pettit, Lu Li, Arnaud Henry, Kedar Nath Natarajan, Camille Laibe, Chris T. Evelo, and Nicolas Le Novère. Nature Precedings, https://doi.org/10.1038/npre.2011.6363.1.The Systems Biology Format Converter (SBFC) is written in Java and can be used as a standalone executable or as an online service. The SBFC framework currently supports conversion from SBML to BioPAX Levels 2 and 3, MATLAB, Octave, XPP, Graphviz, and APM.
SBMLToolbox: an SBML toolbox for MATLAB users Keating, S. M., Bornstein, B. J., Finney, A., and Hucka M. Bioinformatics, 22(10):1275–1277, 2006.Describes SBMLToolbox, a MATLAB toolbox built on top of libSBML. It provides a set of basic functions allowing SBML models to be used in both MATLAB and Octave.

To Modelica

Modelica is an open standard featuring an object-oriented, declarative, multi-domain modeling language for component-oriented modeling of complex systems.

SBML2Modelica: integrating biochemical models within open-standard simulation ecosystems F. Maggioli, T. Mancini and E. Tronci. Bioinformatics, btz860, 2019.SBML2Modelica is an open-source conversion tool that can generate SBML from Modelica code. The project code repository features a pre-compiled JAR archive, a tool for FMU generation, and an exhaustive set of test cases.

To Neo4j

Neo4j is a graph database management system developed by Neo4j, Inc. The data elements Neo4j stores are nodes, edges connecting them, and attributes of nodes and edges.

Guillaume Gricourt, Thomas Duigou, Sandra Dérozier and Jean-Loup Faulon. https://neo4jsbml.readthedocs.io/en/latest/.Neo4jSbml is a tool written in Python that lets you import SBML models into a Neo4j database.

To Octave

GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It is drop-in compatible with many MATLAB programs.

The System Biology Format Converter Gaël Jalowicki, Nicolas Rodriguez, Martina Kutmon, Jean-Baptiste Pettit, Lu Li, Arnaud Henry, Kedar Nath Natarajan, Camille Laibe, Chris T. Evelo, and Nicolas Le Novère. Nature Precedings, https://doi.org/10.1038/npre.2011.6363.1.The Systems Biology Format Converter (SBFC) is written in Java and can be used as a standalone executable or as an online service. The SBFC framework currently supports conversion from SBML to BioPAX Levels 2 and 3, MATLAB, Octave, XPP, Graphviz, and APM.
SBMLToolbox: an SBML toolbox for MATLAB users Keating, S. M., Bornstein, B. J., Finney, A., and Hucka M. Bioinformatics, 22(10):1275–1277, 2006.Describes SBMLToolbox, a MATLAB toolbox built on top of libSBML. It provides a set of basic functions allowing SBML models to be used in both MATLAB and Octave.

To Python

Python is a popular, open-source, general-purpose programming language. There exist many numerical computing modules for use in Python, including SciPy and Numpy.

Modelling cellular systems with PySCeS Brett G. Olivier, Johann M. Rohwer and Jan-Hendrik S. Hofmeyr. Bioinformatics, 21(4): 560–561, 2005.PySCeS can read SBML files and generate models in a Python-based model description language. The models can be simulated using LSODA as well as analyzed in a variety of ways (e.g., Metabolic Control Analysis, structural analysis, bifurcation analysis). PySCeS can also export models in SBML format.
SBMLtoODEpy: A software program for converting SBML models into ODE models in Python Steve M. Ruggiero and Ashlee N. Ford Versypt. Journal of Open Source Software, 4(41), 2019.SBMLtoODEpy can generate a Python object class implementing an SBML model, and a wrapper for the LSODA algorithm in SciPy and NumPy.

To SBGN-ML

SBGN-ML is an XML exchange format for SBGN, the Systems Biology Graphical Notation.

The System Biology Format Converter Gaël Jalowicki, Nicolas Rodriguez, Martina Kutmon, Jean-Baptiste Pettit, Lu Li, Arnaud Henry, Kedar Nath Natarajan, Camille Laibe, Chris T. Evelo, and Nicolas Le Novère. Nature Precedings, https://doi.org/10.1038/npre.2011.6363.1.The Systems Biology Format Converter (SBFC) is written in Java and can be used as a standalone executable or as an online service. The SBFC framework currently supports conversion from SBML to BioPAX Levels 2 and 3, MATLAB, Octave, XPP, Graphviz, and APM.

To SBTab

SBtab is a set of conventions for structured data tables in spreadsheets. The conventions include, for example, defined column names and a syntax for semantic annotations.
SBtab: a flexible table format for data exchange in systems biology Timo Lubitz Jens Hahn, Frank T. Bergmann, Elad Noor, Edda Klipp, and Wolfram Liebermeister. Bioinformatics, 16(32), 2016.Paper introducing the format SBtab and software to work with it, including online services at www.sbtab.net such as a validator and converters for SBML, MATLAB, R, and other formats.

To Julia (SciML)

SciML is a collection of tools for solving equations and modeling systems developed in the Julia programming language. SciML is the combination of scientific computing techniques with machine learning.

Paul F Lang, Anand Jain, Christopher Rackauckas. https://github.com/SciML/SBMLToolkit.jl.SBMLToolkit.jl is a lightweight tool to import SBML into the Julia Scientific Machine Learning (SciML) ecosystem for model simulation, parameter estimation and automated model discovery.

To XPP

XPP is a tool for studying dynamical systems. Problems and procedures can be encoded in a scripting format.
The System Biology Format Converter Gaël Jalowicki, Nicolas Rodriguez, Martina Kutmon, Jean-Baptiste Pettit, Lu Li, Arnaud Henry, Kedar Nath Natarajan, Camille Laibe, Chris T. Evelo, and Nicolas Le Novère. Nature Precedings, https://doi.org/10.1038/npre.2011.6363.1.The Systems Biology Format Converter (SBFC) is written in Java and can be used as a standalone executable or as an online service. The SBFC framework currently supports conversion from SBML to BioPAX Levels 2 and 3, MATLAB, Octave, XPP, Graphviz, and APM.