cobrapy
cobrapy copied to clipboard
[Feature Request] Store collections of evidence annotation
Problem description
The system of confidence scores which has been proposed in the past is simple albeit overly-simplified and difficult-to-verify. Using an evidence ontology coupled directly with cross-references to the appropriate publications would truly make metabolic models into the knowledge bases that they are always said to be.
Please consider these threads for more details: https://github.com/opencobra/schema/issues/4 https://github.com/SBRG/ModelPolisher/issues/5
I would have expected that this particular way (using annotations) to work. Could you give an example of an SBML model (with FBC) that has one of those annotations but is not read by our parser?
I was in the same situation wanting to update a model with the existing experimental information. As I did not really liked the way of developing the model using a spreadsheet, I wrote an editor based on cobrapy that allows you to edit and check both the model and the experimental information. Have a look at it here: https://github.com/JuBra/GEMEditor
What I basically came up with is the division of the information in two types:
All this information is stored along with the model in the sbml file, however within a different namespace. This way I hoped to ensure the evolution of the model by being able to automatically check the latest changes against all information that has been collected before while allowing the use of the model with any software.
I really like the idea of developing a general standard for how to represent the experimental information in the model though.
I wrote an editor based on cobrapy that allows you to edit and check both the model and the experimental information. Have a look at it here: https://github.com/JuBra/GEMEditor
@matthiaskoenig is that closer to what you were looking for?
This would basically work today from a parser perspective, i.e. if one encodes evidence on species, genes, compartments and reactions via RDF annotations these should be usable. One problem is evidence on GPRs because there is no GPR class on which one could store annotations.
So basically, I would say this issue will be solved with rewriting the SBML parser. The underlying issue (which is not part of this here) is "how to store evidence for a model", which cannot be solved here, but is part of the reconstruction.
Hi all, I changed the topic of this issue from 'Extend parser functionality to include collections of evidence annotation' -> 'Store collections of evidence annotation' and removed the SBML tag.
The SBML parser functionality has been extended with the new libsbml parser and evidence annotations can be read. The real issues are now
- how to store evidence annotations (which is this issue), i.e., better ways to encode evidence?
- how to store annotations in general in cobrapy (which is issue #684)
Closing in favor of #684.