皇家华人

XClose

Advanced Research Computing

Home
Menu

Unifying API generation for COMBINE standards: Open Source Software Sustainability Project

ARC worked with 皇家华人euroscience, Physiology & Pharmacology (NPP) to unify the tools used in developing API libraries for two open standards formats that facilitate modelling in computational biology.

Screenshot of web page linking to multiple interactive Jupyter notebooks demonstrating usage of the COMBINE standards for model development in computational biology

26 July 2024

Figure 1 (above)听Screenshot of the recently developed web page () linking to multiple interactive Jupyter notebooks demonstrating usage of the COMBINE standards for model development in computational biology.

Background

The COMBINE network () develops open standards to facilitate modelling in computational biology. COMBINE standard developers maintain API (Application Programming Interface) libraries for these formats (e.g. , ) which have been incorporated into many modelling tools by application developers to facilitate the reading, writing, and manipulation of standardised models. This grant focused on SBML & NeuroML and unifying the tools used for API generation by these standards.

What we did

Before work began using money received from the Open Source Software Sustainability (OSSS) grant, the PrincipaI Investigators ( from ARC and from NPP) were fortunate enough to be awarded a grant from the with the main focus being creating and demonstrating models of both the internal biochemical reactions and the electrical activity of a biological neuron as a single model that could be read and simulated using a single script. This tied in very neatly with the aims of the OSSS grant and thus slightly altered our priorities in terms of a starting point for our work in this area.

Being able to refer to our existing OSSS grant, even though it was yet to start, was hugely beneficial to our application to the Kavli Foundation." - Dr Sarah Keating & Dr Padraig Gleeson, Project PIs

This allowed us to combine the initial outreach aims of both grants and create a series of simple 鈥淗ello World鈥 type examples of Jupyter notebooks to provide interactive, introductory guides to each of the COMBINE standards. These have now been published and are available at: (see Figure 1, above). This had the additional benefit of requiring us to create and test a single Python environment where all relevant libraries for the standards were present and interoperable - an essential step towards greater compatibility of their respective APIs.

That听led very neatly into the work to synchronise the code generation tools used by SBML and NeuroML. Having investigated how the two code generation tools could work together, we decided that the most straightforward approach was to extend (originally developed for generating an API for SBML Level 3 packages) to import a YAML serialisation of the target standards from (being used for NeuroML). This has allowed us to generate a C++ library for a subset of NeuroML and identify areas of modelspec and the serialisation that can be improved. Additionally, expressing the SBML language's elements in modelspec has opened the possibility of serialising models in this format in JSON and YAML, alongside XML.

Next step

The next step will be to continue synchronising the APIs and work towards building a model and simulation flow that captures both the biochemistry and the electrical activity within the brain. This will open the doors to multi-scale, multimode modelling and continue the work of the COMBINE community in providing APIs to facilitate the adoption of the robust, open standards.

The impact

The availability of the OSSS grant has provided a springboard for a successful collaboration which we hope will continue to push the boundaries of computational biological modelling.