Skip to main content

sbml2cellml: conversion between SBML and CellML

GitHub Actions CI/CD Status Documentation Version Python Versions MIT License

sbml2cellml converts between the Systems Biology Markup Language (SBML) and CellML 2.0, with documentation available from https://matthiaskoenig.github.io/sbml2cellml.

Features include

  • conversion of compartments, parameters, species, assignment and rate rules and reactions into a single CellML component
  • conversion of CellML models to SBML: parameters with rules, unit definitions, resets as events, imports resolved
  • validation of the result with libcellml
  • timecourse simulation of the SBML with roadrunner and of the CellML with libopencor, both optional
  • the sbml2cellml and cellml2sbml command lines
  • the SBML test suite harness: every semantic case through both converters and both simulators, results on the SBML test suite page
pip install sbml2cellml
sbml2cellml model.xml -o model.cellml
cellml2sbml model.cellml -o model.xml

In the SBML to CellML direction units, events and delays are not converted yet, see the conversion issues.

SBML test suite

Every semantic case of the SBML test suite is simulated with roadrunner (reference), converted to CellML (sbml2cellml), simulated with libopencor (libopencor), converted back to SBML (cellml2sbml) and simulated with roadrunner again (roundtrip). The details are on the SBML test suite page.

Cases of the SBML test suite which pass, fail and skip the stages of the roundtrip

If you have any questions or issues please open an issue.

How to cite

DOI

If you use sbml2cellml please cite the archived software on Zenodo:

König, M. (2026). sbml2cellml: conversion of SBML models to CellML (Version 0.3.0) [Computer software]. Zenodo. https://doi.org/10.5281/zenodo.22838601

@software{konig_sbml2cellml,
  author    = {König, Matthias},
  title     = {sbml2cellml: conversion of SBML models to CellML},
  year      = {2026},
  month     = sep,
  version   = {0.3.0},
  publisher = {Zenodo},
  doi       = {10.5281/zenodo.22838601},
  url       = {https://doi.org/10.5281/zenodo.22838601},
}

License

Funding

Matthias König was supported by the Federal Ministry of Education and Research (BMBF, Germany) within the research network Systems Medicine of the Liver (LiSyM, grant number 031L0054) and within ATLAS by grant number 031L0304B, and by the German Research Foundation (DFG) within the Research Unit Program FOR 5151 QuaLiPerF (Quantifying Liver Perfusion-Function Relationship in Complex Resection - A Systems Medicine Approach) by grant number 436883643 and by grant number 465194077 (Priority Programme SPP 2311, Subproject SimLivA).

© 2025-2026 Matthias König

Release files for sbml2cellml 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sbml2cellml 0.3.1
File Size Uploaded
sbml2cellml-0.3.1.tar.gz 780.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sbml2cellml 0.3.1
File Interpreter ABI Platform
sbml2cellml-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 852.1 kB

Release files / sbml2cellml-0.3.1.tar.gz

Download URL sbml2cellml-0.3.1.tar.gz
Size 780.9 kB
Tags Source
SHA-256 checksum
How to use checksums
e2143e5d18615322a9f3ef09c28bff50135845240a49d9b20a3b978bd905da8f
BLAKE2b-256 checksum
How to use checksums
6e8d3d2b6a2606ffdb75f05db20a0865b6368d11e5038a47f5843d43c1b8a034
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 19, 2026.

Transparency log

Release files / sbml2cellml-0.3.1-py3-none-any.whl

Download URL sbml2cellml-0.3.1-py3-none-any.whl
Size 71.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fe541d91c08c1e0b4e3d53ab8cb4a7409849aad168bb006d967c6c9b105e884c
BLAKE2b-256 checksum
How to use checksums
4e8ba47a7ea0ea9ecbef61c4475e64312df3eefa9b33c08992230271ded25e12
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 19, 2026.

Transparency log

Release history Release notifications | RSS feed

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

This release

0.3.1 This release

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page