Open Access

SBMLsqueezer: A CellDesigner plug-in to generate kinetic rate equations for biochemical networks

  • Andreas Dräger1Email author,
  • Nadine Hassis1,
  • Jochen Supper1,
  • Adrian Schröder1 and
  • Andreas Zell1
BMC Systems Biology20082:39

DOI: 10.1186/1752-0509-2-39

Received: 04 December 2007

Accepted: 30 April 2008

Published: 30 April 2008



The development of complex biochemical models has been facilitated through the standardization of machine-readable representations like SBML (Systems Biology Markup Language). This effort is accompanied by the ongoing development of the human-readable diagrammatic representation SBGN (Systems Biology Graphical Notation). The graphical SBML editor CellDesigner allows direct translation of SBGN into SBML, and vice versa. For the assignment of kinetic rate laws, however, this process is not straightforward, as it often requires manual assembly and specific knowledge of kinetic equations.


SBMLsqueezer facilitates exactly this modeling step via automated equation generation, overcoming the highly error-prone and cumbersome process of manually assigning kinetic equations. For each reaction the kinetic equation is derived from the stoichiometry, the participating species (e.g., proteins, mRNA or simple molecules) as well as the regulatory relations (activation, inhibition or other modulations) of the SBGN diagram. Such information allows distinctions between, for example, translation, phosphorylation or state transitions. The types of kinetics considered are numerous, for instance generalized mass-action, Hill, convenience and several Michaelis-Menten-based kinetics, each including activation and inhibition. These kinetics allow SBMLsqueezer to cover metabolic, gene regulatory, signal transduction and mixed networks. Whenever multiple kinetics are applicable to one reaction, parameter settings allow for user-defined specifications. After invoking SBMLsqueezer, the kinetic formulas are generated and assigned to the model, which can then be simulated in CellDesigner or with external ODE solvers. Furthermore, the equations can be exported to SBML, LaTeX or plain text format.


SBMLsqueezer considers the annotation of all participating reactants, products and regulators when generating rate laws for reactions. Thus, for each reaction, only applicable kinetic formulas are considered. This modeling scheme creates kinetics in accordance with the diagrammatic representation. In contrast most previously published tools have relied on the stoichiometry and generic modulators of a reaction, thus ignoring and potentially conflicting with the information expressed through the process diagram. Additional material and the source code can be found at the project homepage (URL found in the Availability and requirements section).


For modeling and simulating biochemical networks the machine-readable Systems Biology Markup Language (SBML) [1, 2] is recognized as the standard format. SBML is a well-defined XML-based document structure with the objective of exchanging biological models. Numerous SBML-based programs for creating, manipulating or simulating kinetic equations are available, for instance SBMLeditor [3], the SBML ODE Solver Library (SOSlib) [4], COPASI [5], or the SBToolbox for Matlab™ [68]. To facilitate the modeling of biochemical networks, a growing number of programs provide diagrammatic interfaces and are capable of translating these into SBML [9]. Among these is also CellDesigner [10, 11], which is, according to a survey [12], the most popular stand-alone application for modeling and simulating biochemical networks.

To simulate the dynamic behavior of these biochemical networks, kinetic equations have to be associated with each reaction. If the reaction mechanism is known, the kinetic formula can be derived from generalized mass-action kinetics [13]. Otherwise, a generic kinetic equation can be utilized, such as the recently published convenience rate law [14]. The derived formulas can be assigned to each reaction in several ways, for instance by manual input of C-like strings or through the selection of kinetic equations from predefined lists. In any case, the inserted formulas should be in agreement with the SBML and SBGN representation of the model. Hence, either the user is required to assure this consistency or an automated procedure is needed which assigns kinetic equations consistently with the SBGN representation.

To bridge the gap between the SBGN and systems of kinetic equations, SBMLsqueezer was developed. This CellDesigner plug-in allows one to specify the quantitative dynamics of biological networks, i.e., metabolic, signal transduction and gene regulatory networks based on the SBGN. Thereby, it distinguishes between different reaction types such as transcription, translation or state transition, between different species, e.g., simple molecules, proteins, genes or mRNA as well as between different regulatory modes like activation or inhibition. SBMLsqueezer takes all this information into account and provides a contextual selection of possible formulas for each particular reaction within the model. For each reaction in these networks a specific or a generic kinetic equation can be applied. The resulting equations are written directly into the SBML file as Math ML [15] strings such that the user can simulate the model directly within CellDesigner. Earlier approaches towards automatic equation generation like Cellerator [16, 17] require the user to generate a new model while choosing rate equations for each reaction step-by-step from a predefined list of kinetics. In other approaches the same type of generic equation is assigned to each reaction [18]. The framework COPASI [5] supports the import of SBML files, and allows the user to select a kinetic formula for each reaction from a drop-down list. This drop-down list is generated in accordance with the stoichiometry and the number of modulators. JDesigner [19, 20] provides a graphical representation and also allows the selection of rate laws for each reaction from a limited list.

Complementing these efforts, SBMLsqueezer extracts reaction-specific information directly from the CellDesigner-SBML file without the need for user interaction while respecting the annotations expressed through the CellDesigner process diagram, thus ensuring a coherent SBGN and SBML representation. This process depends on the annotations associated with each reactant, reaction and modulation. Such annotations are well-defined within CellDesigner and were only recently incorporated into the SBML specifications in the form of Systems Biology Ontology (SBO) [21].


Our work is based on the current β-version 4.0 of CellDesigner, as it provides an interface for plug-in development. SBMLsqueezer is written completely in Java and, in contrast to earlier approaches [1618], only depends on freely available software. Furthermore, the Application Programming Interface (API) is available from the homepage [22], which allows inclusion of SBMLsqueezer as an equation generation module into other applications.

Results and Discussion

SBMLsqueezer covers various kinetic models. To decide which kinetic equation to apply to a particular reaction, each reaction is analyzed for its properties, such as reactants, products and all participating modulators.

Non-enzyme state transition reactions are modeled through generalized mass-action kinetics. Whenever this equation can be applied, SBMLsqueezer also offers the zeroth order forward or reverse mass-action kinetics, depending on the reversibility property of the reaction. SBMLsqueezer covers all special cases of this type of equation defined in the SBO besides a few irreversible rates for discrete simulation. It also allows for non-integer stoichiometries.

For enzyme-catalyzed uni-uni reactions, the user can specify whether Michaelis-Menten or convenience kinetics should be assigned. Enzymatic reactions with more reaction partners, for instance bi-bi reactions, may either be modeled using convenience or detailed ternary-complex kinetics with different reaction mechanisms, for instance random, ordered or ping-pong. For bi-uni mechanisms the kinetic equations were manually derived using the King-Altman method [2325] (see Additional file 1 – SBMLsqueezer: Kinetic Laws). If the number of reactants or products exceeds two, then convenience kinetics is applied, which is not restricted by the number of products or reactants. All other enzyme kinetics rate laws from the SBO are implemented in SBMLsqueezer as well and appear as an alternative choice whenever the structure and the context of the reaction is adequate for the particular formula.

For gene regulatory networks, i.e., transcriptional and translational processes, the Hill equation is applied [13, 26]. SBMLsqueezer sets the boundary condition of genes automatically so that their amount cannot decrease because of transcriptional processes. If no transcriptional or translational activator participates, a basal reaction rate is assumed using a zeroth order mass-action rate law.

To incorporate control mechanisms, activation and inhibition terms were derived and integrated into the respective kinetic equations (see Additional file 1 – SBMLsqueezer: Kinetic Laws).

Since there is no specification of enzymes in the current version of CellDesigner, SBMLsqueezer allows the user to select molecule types that can act as biocatalysts. Generic and truncated proteins, RNA and complex molecules are accepted by default, but can also be deactivated. Additionally, simple and unknown molecules, 'asRNA' and receptors may in some cases be useful as enzymes. For metabolic networks, enzymatic reactions without an explicit catalyst are permitted to be treated as enzyme reactions.

Reactions with more than two reactants are unlikely to take place, therefore warnings will be given for those reactions. However, they can, depending on the context, be modeled using convenience or mass-action kinetics. Warnings are also indicated for unrealistic reactions, e.g., if transcriptional activation is assigned to a protein phosphorylation or if transcription and translation are used improperly.

Furthermore, SBMLsqueezer allows setting all reactions in the SBML file to reversible to generate all equations in a reversible manner. As Cornish-Bowden points out, this feature is often required: “Models for multi-enzyme systems must always take account of effects of products, because there is no way to ensure that product concentrations are zero in the conditions of interest [[25], pp. 312–313].”

In cases where specific equations were already assigned to some reactions SBMLsqueezer allows the user to specify if these equations should be overwritten or left unchanged.

After specifying the parameter settings, SBMLsqueezer can be invoked to generate all equations. These are displayed in a comprehensive list, which the user can alter by double-clicking on the name of any formula (see Figure 1). A specific pull-down menu containing all applicable kinetic formulas for this particular reaction allows modification of the kinetic equations of the reaction network according to the biological knowledge of the user (see Additional file 2 – SBMLsqueezer: Tutorial). The names presented in this menu are given by the SBO terms for each kinetic equation whenever the SBO contains a definition of the particular formula. In these cases the SBO identifier number also appears in the table.
Figure 1

The SBMLsqueezer work flow. This graphic depicts the progression through SBMLsqueezer. The first step is to construct or open a diagrammatic model in CellDesigner. Then SBMLsqueezer can be started through the plug-in menu (step 1). The first window shows the standard kinetics and enables the user to specify the type of kinetics to be applied whenever there are multiple choices. By clicking on “Generate” (step 2), the kinetics are compiled and presented. If necessary, warnings are indicated along with the respective formula. The kinetic equations summarized in the table can be altered by double-clicking on the name of the equation, which is taken from the SBO. SBMLsqueezer then offers a list of all applicable kinetic equations for the given reaction. Subsequently, all kinetics can be assigned to the SBML model and exported to plain text or LaTeX.

Alternatively, kinetic formulas can be assigned separately to each reaction. Therefore, SBMLsqueezer provides an entry in CellDesigner's reaction context menu (see Figure 2). When called upon, SBMLsqueezer analyzes the particular reaction and provides a list of all kinetic equations that can be assigned to the given reaction and allows setting the reaction to be reversible or irreversible. When altering the reversibility property the selection of available equations may change. For the sake of simplicity, the context menu always shows the most generic names of each kinetic equation. Tool tips present the exact name of the rate law to be assigned according to the SBO or literature annotation.
Figure 2

Modeling reactions one by one using the context menu. SBMLsqueezer provides a context menu which enables the user to create kinetic equations for the model one by one. Therefore, SBMLsqueezer analyzes the structure of the reaction and offers a selection of possible rate laws for the desired reaction. The names shown in this dialog window are generic terms. The tool tips associated with each option present the detailed SBO term for the particular choice. An equation preview [34] facilitates selection of an appropriate rate equation. Furthermore, SBMLsqueezer provides a radio button to set the reaction as reversible or irreversible possibly changing the selection of available rate laws.

After defining all rate equations, the kinetic parameters can be estimated with respect to measurement data, which often involves model optimization [12, 2729], or can be collected from the literature and databases [3032]. Initially, the parameters and product concentrations, in absence of user-defined values, are set to one. In contrast to the default values of zero, this allows the model to be simulated directly in CellDesigner and permits the application of a model optimization procedure.

An export function allows storing complete information about the SBML model in a comprehensive LaTeX file. After compiling to a human-readable format like PDF, an overview of all model properties is provided, including initial values of the species, parameter values, event assignments, rate laws for each species and so forth. This overview may be used to assist model development and scientific writing. This function can also be applied to models that were created with other applications and already existing kinetic equations.


SBMLsqueezer allows one to automatically assign kinetic equations in accordance with the SBGN employed by CellDesigner, such that the dynamic behavior of the model can be simulated over time. The majority of the kinetic formulas described in the SBO are covered, and complemented by additional formulas, for instance convenience kinetics.

Even though the annotation information of CellDesigner is helpful when deriving kinetic rates from SBGN models, many of these annotations are CellDesigner-specific and do not follow a standard format. Such a standard specification of annotations for reactants and reactions has recently been published in the form of the SBO. This specification allows one to distinguish between detailed reaction mechanisms, i.e., whether a uni-uni enzyme reaction has a competitive or a non-competitive inhibition mechanism. However, some reaction mechanisms (e.g., various bi-bi enzyme reactions) still cannot be distinguished. Hence, further refinements of the SBO would be beneficial in this context. This enables the modeler to specify exact reaction mechanisms as soon as they become integrated into the SBML-based programs. Accordingly, programs for automatic kinetic information will benefit from this wealth of information and thus will add rigor and consistency to the still complex modeling process.

Availability and Requirements

The current version of SBMLsqueezer is contained within this article (see Additional file 3 – SBMLsqueezer.jar), and is also available through the project homepage [22].

Project name: SBMLsqueezer

Project homepage: http://​www.​ra.​cs.​uni-tuebingen.​de/​software/​SBMLsqueezer[22]

Operating Systems: SBMLsqueezer was successfully tested under Linux (kernel 2.6.9), Mac OS X (10.5.1) and Windows XP

Programming Language: Java™

Other Requirements: CellDesigner 4.0 [33] and Java Runtime Environment 1.5

License: Creative Commons Attribution-Noncommercial-Share Alike 2.0 Germany License http://​creativecommons.​org/​licenses/​by-nc-sa/​2.​0/​de/​deed.​en_​US



We are grateful to Oliver Kohlbacher, Dieudonne Wouamba, Michael Ziller and Leif J. Pallesen for helpful advice and discussion. This work was supported by the German National Genome Research Network (NGFN) of the Federal Ministry of Education and Research (BMBF) under Project Number 0313323. AS is funded by HepatoSys under Project Number 0313080 L. Conflict of Interest: none declared.

Authors’ Affiliations

Center for Bioinformatics Tübingen (ZBIT), University of Tübingen


  1. Hucka M, Finney A, Sauro HM, Bolouri H, Doyle JC, Kitano H, Arkin AP, Bornstein BJ, Bray D, Cornish-Bowden A, Cuellar AA, Dronov S, Gilles ED, Ginkel M, Gor V, Goryanin II, Hedley WJ, Hodgman TC, Hofmeyr JH, Hunter PJ, Juty NS, Kasberger JL, Kremling A, Kummer U, Le Novere N, Loew LM, Lucio D, Mendes P, Minch E, Mjolsness ED, Nakayama Y, Nelson MR, Nielsen PF, Sakurada T, Schaff JC, Shapiro BE, Shimizu TS, Spence HD, Stelling J, Takahashi K, Tomita M, Wagner J, Wang J: The systems biology markup language (SBML): a medium for representation and exchange of biochemical network models. Bioinformatics. 2003, 19 (4): 524-531.View ArticlePubMed
  2. SBML-Systems Biology Markup Language., http://​sbml.​org
  3. Rodriguez N, Donizelli M, Le Novère N: SBMLeditor: effective creation of models in the Systems Biology Markup language (SBML). BMC Bioinformatics. 2007, 8: 79-PubMed CentralView ArticlePubMed
  4. Machné R, Finney A, Müller S, Lu J, Widder S, Flamm C: The SBML ODE Solver Library: a native API for symbolic and fast numerical analyisis of reaction networks. Bioinformatics. 2006, 22 (11): 1406-1407.View ArticlePubMed
  5. Hoops S, Sahle S, Gauges R, Lee C, Pahle J, Simus N, Singhal M, Xu L, Mendes P, Kummer U: COPASI-a COmplex PAthway SImulator. Bioinformatics. 2006, 22 (24): 3067-3074.View ArticlePubMed
  6. Schmidt H, Jirstrand M: Systems Biology Toolbox for MATLAB: a computational platform for research in systems biology. Bioinformatics. 2006, 22 (4): 514-515.View ArticlePubMed
  7. Schmidt H: SBaddon: high performance simulation for the Systems Biology Toolbox for Matlab™. Bioinformatics. 2007, 23 (5): 646-647.View ArticlePubMed
  8. Schmidt H, Drews G, Vera J, Wolkenhauer O: SBML export interface for the Systems Biology Toolbox for MATLAB. Bioinformatics. 2007, 23 (10): 1297-1298.View ArticlePubMed
  9. Alves R, Antunes F, Salvador A: Tools for kinetic modeling of biochemical networks. Nat Biotechnol. 2006, 24 (6): 667-672.View ArticlePubMed
  10. Kitano H, Funahashi A, Matsuoka Y, Oda K: Using process diagrams for the graphical representation of biological networks. Nature Biotechnology. 2005, 23 (8): 961-966.View ArticlePubMed
  11. Funahashi A, Tanimura N, Morohashi M, Kitano H: CellDesigner: a process diagram editor for gene-regulatory and biochemical networks. BioSilico. 2003, 1 (5): 159-162., http://​www.​symbio.​jst.​go.​jp/​symbio/​paper/​BioSilicoNov2003​Funahashi.​pdfView Article
  12. Klipp E, Liebermeister W, Helbig A, Kowald A, Schaber J: Systems biology standards-the community speaks. Nature Biotechnology. 2007, 25 (4): 390-391.View ArticlePubMed
  13. Heinrich R, Schuster S: The Regulation of Cellular Systems. 1996, 115 Fifth Avenue New York, NY 10003: Chapman and HallView Article
  14. Liebermeister W, Klipp E: Bringing metabolic networks to life: convenience rate law and thermodynamic constraints. Theor Biol Med Model. 2006, 3: 41-PubMed CentralView ArticlePubMed
  15. W3C Math Home., http://​www.​w3.​org/​Math/​
  16. Shapiro BE, Levchenko A, Meyerowitz EM, Wold BJ, Mjolsness ED: Cellerator: extending a computer algebra system to include biochemical arrows for signal transduction simulations. Bioinformatics. 2002, 19 (5): 677-678.View Article
  17. Yang Y, Engin L, Wurtele ES, Cruz-Neira C, Dickerson JA: Integration of metabolic networks and gene expression in virtual reality. Bioinformatics. 2005, 21 (18): 3645-3650.View ArticlePubMed
  18. Vera J, Sun C, Oertel Y, Wolkenhauer O: PLMaddon: a power-law module for the Matlab™ SBToolbox. Bioinformatics. 2007, 23 (19): 2638-2640.View ArticlePubMed
  19. Hucka M, Finney A, Sauro HM, Bolouri H, Doyle JC, Kitano H: The ERATO Systems Biology Workbench: enabling interaction and exchange between software tools for computational biology. Pac Symp Biocomput. 2002, 450-461.
  20. Sauro HM, Hucka M, Finney A, Wellock C, Bolouri H, Doyle J, Kitano H: Next generation simulation tools: the Systems Biology Workbench and BioSPICE integration. OMICS. 2003, 7 (4): 355-372.View ArticlePubMed
  21. SBO::Systems Biology Ontology., http://​www.​ebi.​ac.​uk/​sbo/​
  22. SBMLsqueezer Project Home Page., http://​www.​ra.​cs.​uni-tuebingen.​de/​software/​SBMLsqueezer
  23. Bisswanger H: Enzymkinetik – Theorie und Methoden. 2000, Weinheim, Germany: Wiley-VCH, 3View Article
  24. Segel IH: Enzyme Kinetics-Behavior and Analysis of Rapid Equilibrium and Steady-State Enzyme Systems. 1993, Wiley Classics Library Edition
  25. Cornish-Bowden A: Fundamentals of Enzyme Kinetics. 2004, 59 Portland Place, London: Portland Press Ltd, 3
  26. Hinze T, Hayat S, Lenser T, Matsumaru N, Dittrich P: Hill Kinetics meets P Systems: A Case Study on Gene Regulatory Networks as Computing Agents in silico and in vivo. Proceedings of the Eighth Workshop on Membrane Computing, SEERC. Edited by: Eleftherakis G, Kefalas P, Paun G. 2007, 363-381.
  27. Spieth C, Supper J, Streichert F, Speer N, Zell A: JCell--a Java-based framework for inferring regulatory networks from time series data. Bioinformatics. 2006, 22 (16): 2051-2052.View ArticlePubMed
  28. Dräger A, Supper J, Planatscher H, Magnus JB, Oldiges M, Zell A: Comparing Various Evolutionary Algorithms on the Parameter Optimization of the Valine and Leucine Biosynthesis in Corynebacterium glutamicum. IEEE Congress on Evolutionary Computation. Edited by: Srinivasan D, Wang L. 2007, 620-627. IEEE Computational Intelligence Society, Singapore: IEEE Press
  29. Dräger A, Kronfeld M, Supper J, Planatscher H, Magnus JB, Oldiges M, Zell A: Benchmarking Evolutionary Algorithms on Convenience Kinetics Models of the Valine and Leucine Biosynthesis in C. glutamicum. IEEE Congress on Evolutionary Computation. Edited by: Srinivasan D, Wang L. 2007, 896-903. IEEE Computational Intelligence Society, Singapore: IEEE Press
  30. Schomburg I, Chang A, Hofmann O, Ebeling C, Ehrentreich F, Schomburg D: BRENDA: a resource for enzyme data and metabolic information. Trends Biochem Sci. 2002, 27: 54-56.View ArticlePubMed
  31. Schomburg I, Chang A, Ebeling C, Gremse M, Heldt C, Huhn G, Schomburg D: BRENDA, the enzyme database: updates and major new developments. Nucleic Acids Res. 2004, D431-D433. 32 Database
  32. Küntzer J, Backes C, Blum T, Gerasch A, Kaufmann M, Kohlbacher O, Lenhof HP: BNDB-the Biochemical Network Database. BMC Bioinformatics. 2007, 8: 367-PubMed CentralView ArticlePubMed
  33., http://​celldesigner.​org
  34. HotEqn-The IMGless Equation Viewer Applet., http://​www.​atp.​ruhr-uni-bochum.​de/​VCLab/​software/​HotEqn/​HotEqn.​html


© Dräger et al; licensee BioMed Central Ltd. 2008

This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://​creativecommons.​org/​licenses/​by/​2.​0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.