— the global portal for all things SBML

Multistate and Multicomponent Species Proposal old version


Proposal title

Multistate and Multicomponent Species (abbrevation multi)

Proposal authors


The document summarizing the discussions and describing the proposed package is written by:

Nicolas Le Novère
European Bioinformatics Institute
Wellcome Trust Genome Campus
Hinxton, Cambridge CB10 1SD, UK

Email: lenov at

Anika Oellrich
European Bioinformatics Institute
Wellcome Trust Genome Campus
Hinxton, Cambridge CB10 1SD, UK
Email: anika at


The following individuals contributed to the discussions and the content of the package:

Nicolas Le Novère
European Bioinformatics Institute
Wellcome Trust Genome Campus
Hinxton, Cambridge CB10 1SD, UK
Email: lenov at
Anika Oellrich
European Bioinformatics Institute
Wellcome Trust Genome Campus
Hinxton, Cambridge CB10 1SD, UK
Email: anika at
Martin Meier-Schellersheim
National Institute of Allergy and Infectious Diseases
National Institutes of Health
Building 10, Room 11N311
10 Center Drive, MSC 1892
Bethesda, MD 20892-1892, USA
Email: mms at
Bin Hu
Theoretical Division
Los Alamos National Laboratory

Los Alamos, NM 87545
Email: binhu at

William S. Hlavacek
Theoretical Division

Los Alamos National Laboratory
Los Alamos, NM 87545
Email: wish at

James Faeder
3082 Biomedical Science Tower 3

University of Pittsburgh School of Medicine
Pittsburgh, PA 15260
Email: faeder at

Michael Blinov
Department of Genetics & Developmental Biology
University of Connecticut Health Center
263 Farmington Avenue, Farmington, CT 06030-3301
Email: blinov at
Nicolas Rodriguez
European Bioinformatics Institute
Wellcome Trust Genome Campus
Hinxton, Cambridge CB10 1SD, UK
Stefan Hoops
Virginia Bioinformatics Institute - 0477
Virginia Tech

Bioinformatics Facility I
Blacksburg, Va 24061, USA06030-3301

Andrew Finney
University Hertfordshire,
Hatfield AL10 9AB,
Herts, England.

Proposal tracking number

Number 2430531 in the SBML issue tracking system.

Version information

Version number and date of public release

Version X released on DD Month YYYY.

URL for this version of the proposal Multistate_Multicomponent_Species_%28Le_Novere_and_Oellrich_2007%29

URL for the previous version of this proposal

Introduction and motivation

This package is addressing two different though related problems:

  • the representation of entities that can exist under different states affecting their behaviours (multistates). Those entities carry state features, and the possibly large number of state features, each able to take different values, may result in a combinatorial explosion for the number of alternative states taken by the entities.
  • the creation and behaviour of complexes made up of different components (= multi-components). The rules of assembly may lead to an unbounded list of species, with the number of components and their topology impossible to specify before the simulation.

As a simple example, let's take a species (a receptor) with only one feature, the pore, that can adopt different values, closed, opened and desensitized. In addition to this single state feature, the receptor has one binding site anchor.

Schematic receptor example

Taking into account the different values for the state feature plus the status of the binding site (bound or not), this receptor can exist under six different states:

free, closed
free, open
free, desensitized
anchored, closed
anchored, open
anchored, desensitized

(assuming that one can considered all the entities binding to the anchor as identical when it comes to receptor state).

With the "regular" SBML, any reaction involving the receptor, such as binding to a ligand, will have to be written six times. Some of the state features and/or bonds may not affect the binding of the ligand, but the reactions have to be enumerated nevertheless, if we want to keep track of all the populations.

Writing all the possibilities can be in the best case just exhausting and in the worst case plainly impossible because of combinatorial explosion. If an entity possesses 4 bivalued features and 2 trivalued features, the number of possible state is 24x32.

A dodecamer of CaMKII with 5 different characteristics taking two values (e.g. activity, binding to calmodulin and to ATP, phosphorylations in 286 and 306) exhibits 60 state features and consequently a billion of billion possible states. Writing a model using such a multistate multi-component species requires a way to describe only the relevant states of this species rather than all the possible ones.

To explain this situation further have a look at the following reaction:

Reaction alternating rates example

In this example, we have an entity carrying seven state features, shown as a vector. There is a base rate for setting the fourth state feature (changing the value from "0" to "1"). This base rate needs to be corrected as it is influenced by the first state feature being set/unset. Since none of the other state features influence the setting of the fourth flag, the modeler should not be forced to describe the 128 states and 64 possible reactions, but only the influence of the value of the first state feature.

Another problem addressed by the multi package is the unbounded list of multi-component species. Let's imagine a situation where we would like to model the growth of microtubules from dimers of tubulin. We cannot possibly enumerate all the possible microtubules of different lengths. Furthermore, the length of a microtubule does not affect the rate with which a new dimer of tubulin is incorporated. The only thing we need to encode is the binding between a tubulin dimer incorporated in a microtubule and a free tubulin dimer.

microtubule growth

In the schema above, the star represent a generic bond, where we know the binding site is occupied, but we do not care about the binding partner (it can be a tubulin dimer or a microtubule containing 100 tubulin dimers).


Past work on this problem or similar topics

Proposals for supporting multistates and multicomponent species have a long history in SBML. Here is a reconstruction in chronological order:

  • In March 2004, before the 2nd SBML hackathon, Andrew Finney published an updated proposal to encode complex species made up of several components. Planned as an extension for SBML Level 3, the document also described SpeciesTypes that would later be incorporated to SBML Level 2, from version 2 onward.
  • In October 2004, Michael Blinov published, together with Jim Fader, Byron Goldstein, Andrew Finney and Bill Hlavacek, an alternative proposal for encoding multi-component species, that also contained some possibilities of encoding multistate features.
  • Anika Oellrich started to implement a new SBML L2 support for StochSim in spring 2007, storing multistate information in proprietary annotations. This led in June 2007 to a proposal for Level 3 by Le Nov&egravere and Oellrich, meant to work in conjunction with 2004 Finney's multicomponents proposal. The proposal was presented at the 12th SBML forum meeting. A light correction was published in December 2007.

Proposed syntax and semantics

The proposal for extending SBML to carry the information for multistate multi-component species relies on the extension of the following core SBML elements:

  • Species
  • SimpleSpeciesReference
  • Reaction

In addition, the multistate multi-component package requires the creation of new elements:

  • SpeciesType
  • Selector
  • ReactionRule

In the UML diagrams given on the different pages for this extension, the elements and attributes of the package multi are drawn in red, while the elements and attributes belonging to SBML core are drawn in black. Not all of the latter are drawn, but only the ones needed to "plug" the package multi. Please consult the specification of the core for a deeper understanding of SBML at large.

We are currently updating all of the below mentioned wiki pages. Only the UML diagrams are up to date, but NEITHER the description text NOR the examples.

The content of the proposal is divided into the following three major parts:

Package dependencies

The package as proposed here does not depend on any other SBML Level 3 packages.


Please use our issue tracking system for any questions or suggestions about this website. This page was last modified 11:57, 14 April 2010.