JSBML - The SBML Java Library

spacer
spacer

Introduction

The JSBML project's aim is to provide an SBML parser and programming library that maps all SBML elements to a flexible and extended type hierarchy. Where possible, JSBML strives to attain 100% API compatibility with the libSBML Java API, to facilitate a switch from one library to the other for those who desire it. Currently, JSBML supports all constructs for SBML up to the latest Level 3 Version 1 release candidate specification, including an API to add SBML extensions. There are no plans to re-implement some of the more complex functions of libSBML, since separate community efforts are expected to make them available to JSBML via web services. These more complex functions include model consistency checking, SBML validation, and the conversion between different SBML Levels and Versions.

RoadMap


current status :

JSBML is planning to release a first version for the end of this year. Most of the features planned for the 0.8 release are there and working. We have fews problems or issues in the handling of notes (XHTML), annotation (RDF) or math (MATHML) and we need to add more test and documentation.



Version : jsbml-0.8.x
  • complete support for SBML level 1 and 2
  • parse notes, annotation into XMLNode and math elements into ASTNode
  • implement the functions converting ASTNode to infix formula
  • Add more tests files, both tests from the libSBML java API and some new tests.
  • Improve the documentation


Version : jsbml-1.0.x
  • complete support for SBML level 3
  • implementation of the getTypeCode() methods
  • implementation of the toSBML() methods
  • implement constructor and methods with namespaces
  • implement a libsbml compatibility module
  • have a correct indentation when writing the SBML
If you want to do some of those, even just a part like few test files, please answer on the features tracker, so that we can coordinate and assign tasks.

Download

There are no stable releases published yet but you can download and compile directly the sources.
To do that you will need to have the java jdk installed and also an apache build utility called ant and a version control system, subversion.

# to get the source
svn co https://jsbml.svn.sourceforge.net/svnroot/jsbml/trunk jsbml
cd jsbml

# to compile and create the library jar file
ant jar

# to run the tests
ant test

Acknowledgements

JSBML is a community driven, open source project. Currently, the main developers come from the European Bioinformatics Institute (EBI) and the University of Tübingen.


spacer
spacer