Core SBML Software Package
Résumé
Core SBML is a language with the same expressiveness as SBML level 2, which serves for writing reaction networks mixed with algebraic and differential equations. In contrast to SBML, Core SBML enjoys a formal semantics enabeling provably correct compilers to other languages such as BioCham or Julia's Catalyst. While the syntax of Core SBML is based on XML technology, it has a different schema than SBML. Still any SBML level 2 model can be compiled to some Core SBML network and vice versa by using the XSLT compilers in the present software package and described in the following scientific paper.
J. Niehren, C. Lhouassaine, and A. Vaginay. Core SBML and its Formal Semantics, CMSB 2023.
We have implemented the following compilers for XML documents in Saxon XSLT:
We applied our compiler to all 542 SBML models of the curated part of the BioModels database. Of those, only 18 networks use delays, so all others can be compiled further to BioCham. Our compilers produce for all curated
BioModels:
Compilers
- A compiler from SBML level 2 to Core SBML.
- A backwards compiler from Core SBML to SBML level 2. This enables the simulation and analysis of Core SBML models via Copasi.
- A compiler from Core SBML networks (without delays) to BioCham.This enables the simulation and analysis of Core SBML models via BioCham.
- A compiler from Core SBML networks (without events) to Julia's Catalyst. This enables the simulation and analysis of Core SBML models via Julia.
- A compiler from Core SBML networks to BioComputing's reaction networks. This permits to draw the graphs of Core SBML networks and to compute their differential equations, by using BioComputing's Network-Graph Tool.
Application to Curated BioModels
- network.csbml: a Core SBML network (compatible with the schema),
- core-graph.pdf: a PDF document with the graph of the network and its differential equations,
- network.bc: a BioCham 4 reaction network, if the SBML model does not contain delays.
- network.jl: a Julia reaction network with Catalyst if the SBML model does not contain delays.