Skip to main page content
Access keys NCBI Homepage MyNCBI Homepage Main Content Main Navigation
, 12, 22

Revision History Aware Repositories of Computational Models of Biological Systems


Revision History Aware Repositories of Computational Models of Biological Systems

Andrew K Miller et al. BMC Bioinformatics.


Background: Building repositories of computational models of biological systems ensures that published models are available for both education and further research, and can provide a source of smaller, previously verified models to integrate into a larger model. One problem with earlier repositories has been the limitations in facilities to record the revision history of models. Often, these facilities are limited to a linear series of versions which were deposited in the repository. This is problematic for several reasons. Firstly, there are many instances in the history of biological systems modelling where an 'ancestral' model is modified by different groups to create many different models. With a linear series of versions, if the changes made to one model are merged into another model, the merge appears as a single item in the history. This hides useful revision history information, and also makes further merges much more difficult, as there is no record of which changes have or have not already been merged. In addition, a long series of individual changes made outside of the repository are also all merged into a single revision when they are put back into the repository, making it difficult to separate out individual changes. Furthermore, many earlier repositories only retain the revision history of individual files, rather than of a group of files. This is an important limitation to overcome, because some types of models, such as CellML 1.1 models, can be developed as a collection of modules, each in a separate file. The need for revision history is widely recognised for computer software, and a lot of work has gone into developing version control systems and distributed version control systems (DVCSs) for tracking the revision history. However, to date, there has been no published research on how DVCSs can be applied to repositories of computational models of biological systems.

Results: We have extended the Physiome Model Repository software to be fully revision history aware, by building it on top of Mercurial, an existing DVCS. We have demonstrated the utility of this approach, when used in conjunction with the model composition facilities in CellML, to build and understand more complex models. We have also demonstrated the ability of the repository software to present version history to casual users over the web, and to highlight specific versions which are likely to be useful to users.

Conclusions: Providing facilities for maintaining and using revision history information is an important part of building a useful repository of computational models, as this information is useful both for understanding the source of and justification for parts of a model, and to facilitate automated processes such as merges. The availability of fully revision history aware repositories, and associated tools, will therefore be of significant benefit to the community.


Figure 1
Figure 1
Example of a hypothetical revision history. This figure demonstrates the revision history of a hypothetical model, and shows the non-hierarchical nature of the revision history graph.
Figure 2
Figure 2
Revisions over time. This figure shows the total number of revisions committed to models in the repository each month. Only revisions which were pushed to the repository by the 28th of April, 2010 are shown. The graph also shows an estimate of the total number of hours of model curation work contracted per week, and includes an arrow to indicate the point in time when the repository was switched over to use DVCS-based workspaces.
Figure 3
Figure 3
A visualisation of the statistical model. This figure shows all monthly data points on log-transformed axes for the number of contracted curator hours (c') and the number of revisions made (r'), colour-coded to distinguish between points from before and after the switch to DVCS-based workspaces. Overlaid on this figure is the estimator α^, shown as a horizontal intercept, the estimator γ^, shown as the red line α^+γ^c', and β^, shown as the green line α^+β^+γ^c'. In addition, dashed lines corresponding to the boundaries of the 95% confidence interval for each parameter is shown (note that each confidence interval is shown separately, and so, for example, the dashed green lines do not include uncertainty about γ).
Figure 4
Figure 4
PMR2 user interface - exposure view. This figure shows the web-based user interface for viewing exposures. The model shown is a CellML representation of the Hodgkin & Huxley 1952 model. The view provides both information on the version the exposure relates to, and a link back to the workspace for revision history.
Figure 5
Figure 5
PMR2 user interface - workspace summary view. This figure shows the web-based user interface for viewing workspaces. The model shown is a CellML representation of the Hodgkin & Huxley 1952 model. The view shows the history of the model leading up to the current version, in reverse chronological order.

Similar articles

See all similar articles

Cited by 8 articles

See all "Cited by" articles


    1. Cuellar A, Lloyd C, Nielsen P, Bullivant D, Nickerson D, Hunter P. An overview of CellML 1.1, a biological model description language. Simulation. 2003;79(12):740. doi: 10.1177/0037549703040939. - DOI
    1. Hucka M, Finney A, Sauro H, Bolouri H, Doyle J, Kitano H. et al. The systems biology markup language (SBML): a medium for representation and exchange of biochemical network models. Bioinformatics. 2003;19(4):524. doi: 10.1093/bioinformatics/btg015. - DOI - PubMed
    1. Miller A, Marsh J, Reeve A, Garny A, Britten R, Halstead M, Cooper J, Nickerson D, Nielsen P. An overview of the CellML API and its implementation. BMC bioinformatics. 2010;11:178. doi: 10.1186/1471-2105-11-178. - DOI - PMC - PubMed
    1. Bornstein B, Keating S, Jouraku A, Hucka M. LibSBML: an API Library for SBML. Bioinformatics. 2008;24(6):880. doi: 10.1093/bioinformatics/btn051. - DOI - PMC - PubMed
    1. Garny A, Nickerson D, Cooper J, Santos R, Miller A, McKeever S, Nielsen P, Hunter P. CellML and associated tools and techniques. Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences. 2008;366(1878):3017. doi: 10.1098/rsta.2008.0094. - DOI - PubMed

Publication types

LinkOut - more resources