Cargando…

An overview of the CellML API and its implementation

BACKGROUND: CellML is an XML based language for representing mathematical models, in a machine-independent form which is suitable for their exchange between different authors, and for archival in a model repository. Allowing for the exchange and archival of models in a computer readable form is a ke...

Descripción completa

Detalles Bibliográficos
Autores principales: Miller, Andrew K, Marsh, Justin, Reeve, Adam, Garny, Alan, Britten, Randall, Halstead, Matt, Cooper, Jonathan, Nickerson, David P, Nielsen, Poul F
Formato: Texto
Lenguaje:English
Publicado: BioMed Central 2010
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2858041/
https://www.ncbi.nlm.nih.gov/pubmed/20377909
http://dx.doi.org/10.1186/1471-2105-11-178
_version_ 1782180374150905856
author Miller, Andrew K
Marsh, Justin
Reeve, Adam
Garny, Alan
Britten, Randall
Halstead, Matt
Cooper, Jonathan
Nickerson, David P
Nielsen, Poul F
author_facet Miller, Andrew K
Marsh, Justin
Reeve, Adam
Garny, Alan
Britten, Randall
Halstead, Matt
Cooper, Jonathan
Nickerson, David P
Nielsen, Poul F
author_sort Miller, Andrew K
collection PubMed
description BACKGROUND: CellML is an XML based language for representing mathematical models, in a machine-independent form which is suitable for their exchange between different authors, and for archival in a model repository. Allowing for the exchange and archival of models in a computer readable form is a key strategic goal in bioinformatics, because of the associated improvements in scientific record accuracy, the faster iterative process of scientific development, and the ability to combine models into large integrative models. However, for CellML models to be useful, tools which can process them correctly are needed. Due to some of the more complex features present in CellML models, such as imports, developing code ab initio to correctly process models can be an onerous task. For this reason, there is a clear and pressing need for an application programming interface (API), and a good implementation of that API, upon which tools can base their support for CellML. RESULTS: We developed an API which allows the information in CellML models to be retrieved and/or modified. We also developed a series of optional extension APIs, for tasks such as simplifying the handling of connections between variables, dealing with physical units, validating models, and translating models into different procedural languages. We have also provided a Free/Open Source implementation of this application programming interface, optimised to achieve good performance. CONCLUSIONS: Tools have been developed using the API which are mature enough for widespread use. The API has the potential to accelerate the development of additional tools capable of processing CellML, and ultimately lead to an increased level of sharing of mathematical model descriptions.
format Text
id pubmed-2858041
institution National Center for Biotechnology Information
language English
publishDate 2010
publisher BioMed Central
record_format MEDLINE/PubMed
spelling pubmed-28580412010-04-22 An overview of the CellML API and its implementation Miller, Andrew K Marsh, Justin Reeve, Adam Garny, Alan Britten, Randall Halstead, Matt Cooper, Jonathan Nickerson, David P Nielsen, Poul F BMC Bioinformatics Software BACKGROUND: CellML is an XML based language for representing mathematical models, in a machine-independent form which is suitable for their exchange between different authors, and for archival in a model repository. Allowing for the exchange and archival of models in a computer readable form is a key strategic goal in bioinformatics, because of the associated improvements in scientific record accuracy, the faster iterative process of scientific development, and the ability to combine models into large integrative models. However, for CellML models to be useful, tools which can process them correctly are needed. Due to some of the more complex features present in CellML models, such as imports, developing code ab initio to correctly process models can be an onerous task. For this reason, there is a clear and pressing need for an application programming interface (API), and a good implementation of that API, upon which tools can base their support for CellML. RESULTS: We developed an API which allows the information in CellML models to be retrieved and/or modified. We also developed a series of optional extension APIs, for tasks such as simplifying the handling of connections between variables, dealing with physical units, validating models, and translating models into different procedural languages. We have also provided a Free/Open Source implementation of this application programming interface, optimised to achieve good performance. CONCLUSIONS: Tools have been developed using the API which are mature enough for widespread use. The API has the potential to accelerate the development of additional tools capable of processing CellML, and ultimately lead to an increased level of sharing of mathematical model descriptions. BioMed Central 2010-04-08 /pmc/articles/PMC2858041/ /pubmed/20377909 http://dx.doi.org/10.1186/1471-2105-11-178 Text en Copyright ©2010 Miller et al; licensee BioMed Central Ltd. http://creativecommons.org/licenses/by/2.0 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.
spellingShingle Software
Miller, Andrew K
Marsh, Justin
Reeve, Adam
Garny, Alan
Britten, Randall
Halstead, Matt
Cooper, Jonathan
Nickerson, David P
Nielsen, Poul F
An overview of the CellML API and its implementation
title An overview of the CellML API and its implementation
title_full An overview of the CellML API and its implementation
title_fullStr An overview of the CellML API and its implementation
title_full_unstemmed An overview of the CellML API and its implementation
title_short An overview of the CellML API and its implementation
title_sort overview of the cellml api and its implementation
topic Software
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2858041/
https://www.ncbi.nlm.nih.gov/pubmed/20377909
http://dx.doi.org/10.1186/1471-2105-11-178
work_keys_str_mv AT millerandrewk anoverviewofthecellmlapianditsimplementation
AT marshjustin anoverviewofthecellmlapianditsimplementation
AT reeveadam anoverviewofthecellmlapianditsimplementation
AT garnyalan anoverviewofthecellmlapianditsimplementation
AT brittenrandall anoverviewofthecellmlapianditsimplementation
AT halsteadmatt anoverviewofthecellmlapianditsimplementation
AT cooperjonathan anoverviewofthecellmlapianditsimplementation
AT nickersondavidp anoverviewofthecellmlapianditsimplementation
AT nielsenpoulf anoverviewofthecellmlapianditsimplementation
AT millerandrewk overviewofthecellmlapianditsimplementation
AT marshjustin overviewofthecellmlapianditsimplementation
AT reeveadam overviewofthecellmlapianditsimplementation
AT garnyalan overviewofthecellmlapianditsimplementation
AT brittenrandall overviewofthecellmlapianditsimplementation
AT halsteadmatt overviewofthecellmlapianditsimplementation
AT cooperjonathan overviewofthecellmlapianditsimplementation
AT nickersondavidp overviewofthecellmlapianditsimplementation
AT nielsenpoulf overviewofthecellmlapianditsimplementation