biosimulators / Biosimulators_utils

Utilities for building standardized command-line interfaces for biosimulation software packages
https://docs.biosimulators.org/Biosimulators_utils
MIT License
4 stars 6 forks source link

Raise Issue with CellML team regarding incorrect schema #110

Open bilalshaikh42 opened 2 years ago

bilalshaikh42 commented 2 years ago

Many of the errors in importing the Physiome CellMl models are are due to the attribute "id" being present in the equation element, which is flagged by the schema as incorrect. However, the CellML primer explicitly mentions that this is expected use. https://www.cellml.org/getting-started/cellml-primer

Often it is useful to be able to identify a particular mathematical equation with a reference ID. For example, this ID could be the original equation number taken from the published paper to designate the same equation in the code. Alternatively, an equation ID could also be helpful during the process of model validation, allowing the quick identification of a possible error in the code. IDs are assigned to math elements rather than to the equations themselves (as shown in the fragment of CellML code below); it can therefore be useful to allocate one math element per equation to allow equations to be identified by their ID.

Therefore the schema used in this package, which is taken directly from the CellML page, is incorrect. This needs to be corrected at the source or a temporary workaround can be added here until then, with this issue being a reminder to fix upstream

bilalshaikh42 commented 2 years ago

Related to #108

jonrkarr commented 2 years ago

Because the RNG file was created long ago, fixing it at the source seems like a slow path.

I see two options:

The former is more elegant, but the latter seems easier because it doesn't require understanding the CellML and MathML RNG schemas.

bilalshaikh42 commented 2 years ago

Actually, I don't think the schema is wrong. It seems that most of the files that are running into this issue are actually CellML 1.1 files, that have the namespace incorrectly set to CellML 1.0. I will look into that and confirm if that is actually what is happening