— the global portal for all things SBML

Multistate multicomponent 2008-08-28

Authors: Nicolas Le Novère and Anika Oellrich
Last update to this page: 2008-08-28



This package is addressing two different though related problems:

  • the representation of state features and therefore states of complexes (= multistates) and
  • the creation of complexes made up of different components (= multi-component)

Basic examples to understand the need of this package

The first abstracted simple example shows one species (a receptor) with only one feature 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 many different states. Writing all the possibilities can be in the best case just exhausting and in the worst case plainly impossible in case 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 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 one.

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

Reaction alternating rates example

In this example, we have an entity with seven state features, shown as a vector. In addition, there is a base rate for the change of the fourth state feature. 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.


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

  • SpeciesType
  • Species
  • SimpleSpeciesReference
  • Reaction

In addition to that, the multistate multi-component package needs the creation of:

  • Selector
  • ReactionRule


SpeciesType is carrying all the information about StateFeatures, their values and all the BindingSites.



A selector is a mask describing rules to define StateFeatures and BindingSites, applied to a pool of entities in order to filter it and obtain another more limited and more relevant pool. A selector can be reused in various places of a model using this SBML package to restrict the application of a procedure to a certain set of topologies and states. Selectors can be used in Species, where they allow the refinement of initial conditions, for instance to specify the initial distribution of different states and topologies. They can also be used in Reaction to decide if a this reaction happens, or to modulate its velocity.

Principle idea selector


With the introduction of multistate multi-component SpeciesTypes, the possibility of defining initial states for Species is needed. Therefore it is required to apply Selectors to the element Species.




Complete examples for the multistate multi-component proposal

This sections contains some SBML files with comments and pictures to explain the encoding/usage of the package in SBML.

Walk through a complete example.

Retrieved from ""

This page was last modified 22:01, 17 September 2008.

Please use our issue tracking system for any questions or suggestions about this website. This page was last modified 22:01, 17 September 2008.