libSBML

Latest stable release: 4.1.0, released 24 Aug. 2010 (see box at right →)
Latest development releases: 5.0.0-a0 (see the release matrix)

LibSBML is a free, open-source programming library to help you read, write, manipulate, translate, and validate SBML files and data streams. It is not an application itself (though it does come with example programs), but rather a library you can embed in your own applications.

The main authors are Sarah Keating, Akiya Jouraku, Ben Bornstein and Michael Hucka, with contributions from numerous other individuals.

LibSBML understands all Levels and Versions of SBML, as well as the SBML Layout proposal by Gauges, Rost, Sahle and Wegner. It's written in ISO C and C++ but can be used from all the languages listed in the right-hand box.

It's available for free in both source-code form and precompiled binaries for Windows, MacOS, and Linux. Click on the Download link in the box at right.

Why use libSBML?

Why not simply use an off-the-shelf XML parser? In some cases this approach may be appropriate. However, there are many reasons to prefer libSBML. Here are just a few:

  • Object model. LibSBML's object model and API are designed around SBML and the operations that are commonly needed when working with SBML.
  • Features. LibSBML offers powerful features such as reading/writing compressed SBML files, detecting overconstrained models, checking units, accessing SBML <annotation> content as XML objects, and the ability to use any one of three popular XML parser libraries: Xerces, Expat, and libxml2.
  • Efficiency. LibSBML's event-based parser is more efficient than using a DOM.
  • Portability. The LibSBML code is portable. It runs and is supported on Linux (multiple variants), MS Windows (native), MacOS X, Solaris, and FreeBSD.

Please cite the paper if you use libSBML

Article citations are crucial to our academic careers. If you use libSBML and you publish papers about your software, we ask that you please cite the libSBML paper:

Bornstein, B. J., Keating, S. M., Jouraku, A., and Hucka M. (2008) LibSBML: An API Library for SBML. Bioinformatics, 24(6):880–881, doi:10.1093/bioinformatics/btn051.

Development roadmap and history

The libSBML release matrix provides an overview of the differences between the most current stable and development releases of libSBML. Our more detailed plans for upcoming versions of libSBML are described on a separate libSBML development roadmap page. Finally, the complete packages of all previous versions are always available in the libSBML download area on SourceForge.net.

SBML contributors

LibSBML has been developed and supported for many years and is the result of hard work by many people. We especially thank the following contributors (in alphabetical order):

• Frank Bergmann • Alex Gutteridge
• Bill Denny • Stefan Hoops
• Christoph Flamm • Moriyoshi Koizumi
• Akira Funahashi • Ben Kovitz
• Ralph Gauges • Rainer Machné
• Martin Ginkel • Nicolas Rodriguez

Funding acknowledgements

We are immensely thankful to the funding agencies, particularly NIH and DARPA, that have supported the development of libSBML over the years. Please visit our funding acknowledgements page for more information.


Retrieved from "http://sbml.org/Software/libSBML"

This page was last modified 03:31, 25 August 2010.



Please use our issue tracking system for any questions or suggestions about this website. This page was last modified 03:31, 25 August 2010.