Release notes for sbml2cellml 0.4.1¶
The names, notes, SBO terms, annotations and the model history of an SBML model are converted: they go into an RDF file next to the CellML model and come back in the conversion to SBML (#44). Every reaction is a variable of its rate in the CellML model.
Features¶
sbml2cellmlwrites the metadata of the SBML model asmodel.rdfnext tomodel.cellml. CellML 2.0 has no place for metadata in a model, only theidof an element for external metadata to point at, so the model, every variable and all units have anid, andmodel.cellml#<id>is the subject of an element in the RDF. The RDF is the one of SBML annotations (bqbiolandbqmodelqualifiers, the history withdctermsand vCard 4), written and parsed by libsbml, with the name asdcterms:title, the notes asdcterms:description(XHTML as XML literal) and the SBO term as the firstbqbiol:is. See Metadatacellml2sbmlreads the file back and sets name, notes, SBO term, CV terms and history on the parameters, the unit definitions and the model, so the metadata survives the roundtripmetadata=Falseofconvert_sbml2cellmlandconvert_cellml2sbmland--no-metadataof both commands switch it off- every reaction with a kinetic law is a variable
<reaction id> = kinetic lawof its rate, and the differential equation of a species is the sum of the rates of its reactions instead of the kinetic laws. Before, only a reaction whose id a formula uses had the variable. The simulation results are the same, the equations are readable, and a reaction has an element for its metadata - the roundtrip example uses the complete BIOMD0000000012 with its notes and annotations and shows the RDF file and the metadata in the SBML model of the roundtrip
- new module
sbml2cellml.metadata
Changes¶
- the CellML of a model with reactions differs from the one of 0.4.0: the rate variables, and the
idattributes of the model, the variables and the units sbml2cellml.cellml2sbml.build_documenttakes the metadata records as optional third argument
Fixes¶
- a stoichiometry which is not set is 1 in SBML level 1 and 2; the warning that 1.0 is used appears only for level 3 models, where the value is unknown
- name of the glimepiride repository in the conversion page of the documentation
Limitations¶
- the names, notes and annotations of rules, function definitions, initial assignments, constraints and events have no CellML element and are not converted, neither are annotations which are not RDF
rateOfof a species in a compartment which an assignment or algebraic rule changes is not converted- libsbml does not take a number other than 1 as true when it evaluates an initial assignment (
piecewise(0, 5, 1), case 01282 of the SBML test suite) - the unit check of the libcellml 0.7.1 analyser warns about consistent equations with units which have a multiplier and an exponent, e.g., per minute (cellml/libcellml#1463); the warnings do not make a model invalid
- libsbml evaluates the rate rule of a variable as its value (sbmlteam/libsbml#491); the converter works around it since 0.3.3
- events, the delay symbol and coupled algebraic rules are not converted
- Windows is not supported, the Windows wheels of libcellml 0.7.1 contain ARM64 binaries
- see the conversion issues in the documentation
Your sbml2cellml team