SysBioChalmers / Human-GEM

The generic genome-scale metabolic model of Homo sapiens
https://sysbiochalmers.github.io/Human-GEM-guide/
Creative Commons Attribution 4.0 International
95 stars 40 forks source link

Why all compartment ids are not consistent? #314

Closed smoretti closed 2 years ago

smoretti commented 3 years ago

Hi

I wonder why "c_i" is the only compartment of the model that is not a single letter? i exists in BiGG (http://bigg.ucsd.edu/compartments/i) and could be used like this instead of c_i

Also in BiGG the extracellular compartment is e, not s that is eyespot. Would you mind to change them?

mihai-sysbio commented 3 years ago

Thanks for getting in touch @smoretti . Could I ask where did you encounter c_i? I'm only asking because I couldn't find it in the yml file. Here is the compartments section:

- compartments: !!omap
    - s: "Extracellular"
    - p: "Peroxisome"
    - m: "Mitochondria"
    - c: "Cytosol"
    - l: "Lysosome"
    - r: "Endoplasmic reticulum"
    - g: "Golgi apparatus"
    - n: "Nucleus"
    - i: "Inner mitochondria"
smoretti commented 3 years ago

I found it in the SBML file

haowang-bioinfo commented 3 years ago

Also in BiGG the extracellular compartment is e, not s that is eyespot. Would you mind to change them?

this might be a good idea

haowang-bioinfo commented 3 years ago

I wonder why "c_i" is the only compartment of the model that is not a single letter?

This probably was due to an issue of the SBML exporting function, but should be fixed before the next release.

mihai-sysbio commented 3 years ago

The i to c_i conversion is reported as a bug in RAVEN.

haowang-bioinfo commented 3 years ago

the c_i issue has been fixed in the latest release v1.10

haowang-bioinfo commented 3 years ago

Also in BiGG the extracellular compartment is e, not s that is eyespot. Would you mind to change them?

In addition to the BIGG models, yeastGEM also use e as abbreviation of extracellular compartment. Therefore it makes sense to apply it to Human-GEM.

The modification to model file should be simple and straightforward. But I'm afraid this would affect some functions in HumanGEM and RAVEN. @JonathanRob what do you think?

JonathanRob commented 3 years ago

I'm also open to this suggested change in abbreviation. But yes, this should be done carefully because it will require additional changes and will break backwards compatibility in some cases.

Since we're suggesting changes to the extracellular compartment abbreviation, we should also consider changing other compartment(s). For example, in Human-GEM, peroxisome is abbreviated as p, whereas I believe COBRA models typically use x to abbreviate the peroxisome. So it would make sense to me to change all of the abbreviations so that they are consistent with whichever scheme is used most often (i.e., in COBRA-like models).

haowang-bioinfo commented 3 years ago

I wonder if there is any existing standards defined for cellular compartment abbreviations somewhere, like SBML or COBRA?

mihai-sysbio commented 3 years ago

I wonder if there is any existing standards defined for cellular compartment abbreviations somewhere, like SBML or COBRA?

@edkerk you seem to be more familiar with the standards - do you know of any compartment abbreviations?

edkerk commented 3 years ago

To my knowledge there is no universal standard, although the closest to this would be the compartment abbreviation convention that is used in BiGG models:

BiGG ID | Name -- | -- c | cytosol e | extracellular space p | periplasm m | mitochondria x | peroxisome/glyoxysome r | endoplasmic reticulum v | vacuole n | nucleus g | golgi apparatus u | thylakoid l | lysosome h | chloroplast f | flagellum s | eyespot im | intermembrane space of mitochondria cx | carboxyzome um | thylakoid membrane cm | cytosolic membrane i | inner mitochondrial compartment mm | mitochondrial intermembrane w | wildtype staph aureus y | cytochrome complex
smoretti commented 3 years ago

KBase/SEED had a compartment list very close to this one in the past. It does not look to be available online any more. Some pieces of the former list are there: https://github.com/ModelSEED/ModelSEEDDatabase/blob/master/Templates/*/Compartments.tsv in the different Templates sub-directories.

In MetaNetX/MNXref we built a "SEED" compartment list over the years. Here is for the single letter abbreviations: a carboxysome b plasma membrane c cytosol|cytoplasm d plastid e extracellular space|extra-organism|extraorganism|extracellular f endoplasmic reticulum membrane g golgi apparatus|golgi i mitochondrial outer membrane j mitochondrial intermembrane space k mitochondrial inner membrane l lysosome m mitochondria|mitochondrion n nucleus p periplasm|periplasmic space r endoplasmic reticulum s plastid outer membrane|plastidial outer membrane t plastid intermembrane space|plastidial intermembrane space u plastid inner membrane|plastidial inner membrane v vacuole w cell wall x peroxisome/glyoxysome y thylakoid z thylakoid lumen

haowang-bioinfo commented 3 years ago

@edkerk @smoretti thanks for the info!

Despite of the differences between the two lists used by BiGG and SEED, both abbreviation changes for "Extracellular", from s -> e (proposed by @smoretti), and "Perxisome", from p - > x (proposed by @JonathanRob), make sense and would promote the convenience and compatibility of Human-GEM.

I would suggest to take steps in this implementation, maybe begin with the modification to Perxisome compartment abbreviation.

haowang-bioinfo commented 2 years ago

@smoretti @JonathanRob when modifying compartment id (eg, p -> x), should met ids be changed as well (eg, MAM12345p -> MAM12345x)?

smoretti commented 2 years ago

I would change also ids to make it consistent

smoretti commented 2 years ago

Hi @Hao-Chalmers I try to do a pull request with changes s -> e but I cannot.

remote: Permission to SysBioChalmers/Human-GEM.git denied to smoretti.
fatal: unable to access 'https://github.com/SysBioChalmers/Human-GEM.git/': The requested URL returned error: 403

Maybe I have misconfigured something on my side but usually I can push on github.

mihai-sysbio commented 2 years ago

@smoretti could you check your email for a GitHub invite and try again?

haowang-bioinfo commented 2 years ago

@smoretti now you are assigned with write access to Human-GEM. Please go through Contributing guidelines and let us know if you have any questions.

smoretti commented 2 years ago

Thanks @mihai-sysbio and @Hao-Chalmers I have created the pull request. Tests are running. Is the format the right one?

haowang-bioinfo commented 2 years ago

The abbreviation x is already assigned to the boundary compartment in Human-GEM. The change from p to x may affect some existing implementations (e.g. addBoundaryMets).

mihai-sysbio commented 2 years ago

How about using b for the boundary compartment? Theoretically it would clash with the abbreviation list in MetaNetX shown above by @smoretti, but only if the model would be imported into MetaNetX after running addBoundaryMets. So, to my understanding, this would be a problem in practice.

mihai-sysbio commented 2 years ago

With the corresponding PR #341 merged, this issue is now resolved. Thank you @smoretti @JonathanRob and @haowang-bioinfo for the discussion and the work.