sbmlop - the sbml command line processor

sbmlop is a command-line utility to create, view and manipulate SBML (the Systems Biology Markup Language). It is ideally suited for operating on large batches of SBML files, and can extract and modify information using regular expressions. This project is currently in the pre-alpha development stage, but a development preview is available for download. sbmlop is open source and released under the GNU general public license, and is being actively developed as sourceforge project. If you wish to join the sbmlop development effort or contribute in any way, please don't hesitate to contact the sbmlop admin through the forums.

The best way to see what sbmlop is capable of is by example. To quickly view a human readable display of an sbml model, just use sbmlop followed by a filename:

sbmlop foo.xml

This could be a lot of information for a large moel. On unix, a user can pipe the output into the less command. In any case, sbmlop allows you to filter out information. For example, to look at just the reactions in the model

sbmlop foo.xml --element reaction

sbmlop is not limited to viewing SBML. It can also make changes to SBML files, or even create new SBML files from scratch. To convert a model to SBML Level 2, Version 3:

sbmlop foo.xml --level 2 --version 3

Just in case a mistake is made, sbmlop will (by default) make a backup of the model to foo.xml.orig.

All kinds of expressions can be created in sbmlop, which can access or modify SBML attributes. The following example would change all parameters with "kI" in their id to a value of 1.5:

sbmlop foo.xml --element parameter --search [id] kI --write value 1.5

The advantage of sbmlop over standard text processing tools is that it is XML and SBML aware, and the complexities of these standards do not need to be dealt with directly by the user. In particular, SBML is not intended to be read directly by humans, or edited directly in a text editor. Also, when making many changes to a model, or to a large set of models, graphical sbml editors and model creators are often not suitable -- and some users prefer the command line. sbmlop can be considered as a tool that allows the user to move between SBML and simple text, for viewing, editing and batch processing models.


Last modified 25 July 2008

SourceForge.net Logo Valid HTML 4.01! Valid CSS!

Copyright © 2008 Robert Platt

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.