What is insilicoML

insilicoML (ISML) is a markup language that can explicitly describe the multi-level hierarchical structures of the physiological functions in mathematical models.


In ISML, each of elements constructing a model is called a module, and structural and functional relationships among modules are defined by edges.

Each module is quantitatively characterized by several dynamical variables, constants, time-dependent parameters and morphology data which are defined as physical-quantities in the ISML format. Definition of the dynamics or functions of physical-quantities are explicitly described by mathematical equations, which are written down as MathML in ISML.

Definition of a functional relationship between two modules can be represented by an edge (functional edge) linking an out-port of a module to an in-port of another module, which carries a value of a physical-quantity associated to the out-port in the former module to the other module. The module receives the value at the in-port from another module stores the value in a physical-quantity assigned to the in-port. Then the module can integrate the value coming from outside in equations defined in the module effectively.

Logical structures among modules can be also defined by edges (called structural edges). A logical structure represents a kind of ontology like relationships among modules such as "has a" relationship. In terms of physiology, it corresponds to "constitute" (many cardiomyocyte constitute a heart), "include" (a cell membrane includes organelles) and so on.

Groups of modules can be defined as a module by using structural edges. By this recursive definition of the modules, hierarchical structure of the physiological functions can be implemented in a model.

ISML models are registered in insilicoDB (ISDB) and can be accessed and downloaded easily.

insilicoML 1.0

insilicoML (ISML) version 1.0 is partially described in a manuscript Specifications of insilicoML 1.0: A multi-level biophysical model description language (Asai et al.).

Please look at the following Wiki page for more details of ISML 1.0 specifications:

A complete isml-model of Bonhoeffer van der Pol (BVP) model is available as an example of the ISML 1.0 description. (Note that .isml is a suffix for the file of ISML 1.0, thus a XML file.)

  • bvp_pulse.isml -- This is a BVP equation (model) receiving a current pulse stimulus. When the stimulus is on, the BVP shows oscillatory dynamics. Otherwise, it is silent, i.e., the state converges to a fixed point.

Any comments for the specifications are very welcome. Please send email to admin@physiome.jp.
We are willing to discuss on the comments and good ideas will be reflected on the specifications.

insilicoML Developers