libSBML

Latest stable release: 3.4.0, released 15 June 2009
Beta release: 4.0.0-b1, released 17 March 2009
Main authors: Sarah Keating, Ben Bornstein, Akiya Jouraku, & Michael Hucka

LibSBML is an 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.

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.

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:

  • Architecture. 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, including support for reading and writing compressed SBML files, detecting overconstrained models, unit checking, access to SBML <annotation> elements as XML objects, and a parser abstraction layer (dubbed LIBLAX) allowing the use of any one of three popular XML parser libraries: Xerces, Expat, and libxml2.
  • Efficiency. LibSBML is more efficient in memory use than an ordinary XML DOM. The memory consumption difference between libSBML and the Xerces-C++ XML DOM representation is dramatic.
  • 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.

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
  • Bill Denny
  • Christoph Flamm
  • Akira Funahashi
  • Ralph Gauges
  • Martin Ginkel
  • Alex Gutteridge
  • Stefan Hoops
  • Moriyoshi Koizumi
  • Ben Kovitz
  • Rainer Machné
  • Nicolas Rodriguez

Historical archive

There have been many releases of LibSBML over the years. The complete packages of all previous versions are available in the libSBML download area on SourceForge.net.

In addition, for your convenience, the following table includes direct access to the releases and documentation for notable libSBML versions (such as those that were released in time for particular SBML Hackathons). These are not all releases, only specific ones—contact us if you would like to see the docs for more releases here.

Version Release date Release notes Manuals (PDF)
1.1.2 6 Jun. 2005 News.txt Developer's Manual
2.0.0 23 Jul. 2005 News.txt Developer's Manual,   API Reference Manual
2.3.1 9 May 2005 News.txt Developer's Manual,   API Reference Manual
2.3.4 3 Oct. 2005 News.txt Developer's Manual,   API Reference Manual
2.3.5 10 Aug. 2007 News.txt Developer's Manual,   API Reference Manual

Future development roadmap

If you are interested in the plans for upcoming versions of libSBML, please visit our separate libSBML development roadmap page.


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

This page was last modified 20:58, 15 June 2009.



Please use our issue tracking system for any questions or suggestions about this website. This page was last modified 20:58, 15 June 2009.