JSBML: a flexible and entirely Java-based library for working with SBML. he XML-based Systems Biology Markup Language (SBML) is the de facto standard file format for the storage and exchange of biochemical network models, and is supported by more than 180 software packages to date. Much of this success is due to its clearly defined specifications and the availability of libSBML, a portable, robust, and easy-to-use library. LibSBML provides many methods for manipulating and validating SBML files through its Application Programming Interface (API). Originally written in C and C++, libSBML also provides automatically-generated language bindings for Java, MATLAB, Perl, and many more. However, the platform independence of Java is compromised in libSBML due to the fact that the language binding is a wrapper around the C/C++ core. The real-world experiences of many software developers has been that the deployment of portable libSBML-based Java applications is difficult. Further, the libSBML API and type hierarchy are not sufficiently intuitive from a Java programmer’s perspective just because they were not designed directly for Java. For these reasons, several groups in the SBML community have mounted an open-source effort to develop a pure Java library for SBML. Here we present the JSBML project, whose products are freely available at the web site http://sourceforge.net/projects/jsbml.