obophenotype / upheno

The Unified Phenotype Ontology (uPheno) integrates multiple phenotype ontologies into a unified cross-species phenotype ontology.
https://obophenotype.github.io/upheno/
Creative Commons Zero v1.0 Universal
76 stars 17 forks source link

Map APO modifiers to PATO #927

Open matentzn opened 5 months ago

matentzn commented 5 months ago

The following characteristics from SGD need to be mapped to PATO.

pato_id pato_id_name
APO:0000003 decreased
APO:0000004 increased
APO:0000112 inviable
APO:0000113 viable
APO:0000002 abnormal
APO:0000117 normal
APO:0000245 decreased rate
APO:0000152 haploinsufficient
APO:0000005 absent
APO:0000097 auxotrophy
APO:0000246 increased rate
APO:0000153 petite
APO:0000252 normal rate
APO:0000154 petite-negative
APO:0000250 arrested
APO:0000249 delayed
APO:0000330 haploproficient
APO:0000045 sterile
APO:0000248 increased duration
APO:0000251 premature
APO:0000247 decreased duration
APO:0000043 spore wall formation
APO:0000076 mitochondrial transport
APO:0000149 protein/peptide accumulation
APO:0000310 growth in exponential phase
rays22 commented 5 months ago

My pairwise mappings:

APO id APO label predicate PATO id PATO label REMARKS
APO:0000003 decreased skos:exactMatch PATO:0002301 decreased quality  
APO:0000004 increased skos:exactMatch PATO:0002300 increased quality  
APO:0000112 inviable skos:exactMatch PATO:0000718 lethal (sensu genetics) Alternatively: PATO:0001422 dead
APO:0000113 viable skos:exactMatch PATO:0000719 viable  
APO:0000002 abnormal skos:exactMatch PATO:0000069 deviation (from_normal)  
APO:0000117 normal skos:exactMatch PATO:0000461 normal  
APO:0000245 decreased rate skos:exactMatch PATO:0000911 decreased rate  
APO:0000152 haploinsufficient skos:broadMatch PATO:0000069 deviation (from_normal) This is a class which is an amalgam of phenotype and genotype.
APO:0000005 absent skos:exactMatch PATO:0000462 absent  
APO:0000097 auxotrophy skos:exactMatch PATO:0000422 auxotrophic I am assuming that this is a quality, not a process.
APO:0000246 increased rate skos:exactMatch PATO:0000912 increased rate  
APO:0000153 petite ?? 0 NONE This is a complex phenotype. It can be modelled as 1: abnormal GO:0009060 aerobic respiration, or 2: decreased colony size.
APO:0000252 normal rate skos:exactMatch PATO:0045000 normal rate  
APO:0000154 petite-negative skos:broadMatch APO:0000153 petite This is a conditional phenotype, where the observable characteristics depend on a particular genotype. In other words, this class is an amalgam of phenotype and genotype.
APO:0000250 arrested skos:exactMatch PATO:0000297 arrested  
APO:0000249 delayed skos:exactMatch PATO:0000502 delayed  
APO:0000330 haploproficient skos:broadMatch PATO:0000461 normal This is a class which is an amalgam of phenotype and genotype.
APO:0000045 sterile skos:exactMatch PATO:0000956 sterile  
APO:0000248 increased duration skos:exactMatch PATO:0000498 increased duration  
APO:0000251 premature skos:exactMatch PATO:0000498 increased duration  
APO:0000247 decreased duration skos:exactMatch PATO:0000499 decreased duration  
APO:0000043 spore wall formation skos:exactMatch GO:0030476 ascospore wall assembly This does not look like a PATO quality.
APO:0000076 mitochondrial transport skos:exactMatch GO:0170036 import into the mitochondrion This does not look like a PATO quality.
APO:0000149 protein/peptide accumulation skos:broadMatch PATO:0001470 proportionality to Text definition appears to contradict label.
APO:0000310 growth in exponential phase skos:broadMatch GO:0016049 cell growth This does not look like a PATO quality.
ValWood commented 5 months ago

hi @rays22 I think you have a typo on the

APO:0000251 | premature | skos:exactMatch | PATO:0000498 | increased duration should be premature PATO:0000684 v

srengel commented 5 months ago

error on this line:

APO:0000154 | petite-negative | skos:broadMatch | APO:0000153 | petite

petite-negative != petite

but i don't have a better suggestion! :(

APO:0000154 | petite-negative | ?? | 0 | NONE

srengel commented 5 months ago

correction for haploproficient:

haploproficient != normal

therefore should be: APO:0000330 | haploproficient | skos:broadMatch | PATO:0000069 | deviation (from_normal)

srengel commented 5 months ago

correction for premature:

should be: APO:0000251 | premature | skos:exactMatch | PATO:0000694 | premature

srengel commented 5 months ago

last edit from me, protein/peptide accumulation should be:

APO:0000149 | protein/peptide accumulation | ? | PATO:0002269 | accumulation

rays22 commented 5 months ago

Thank you @ValWood and @srengel for reviewing the table and the corrections. Here is an updated table based on your feedback:

APO id APO label predicate PATO id PATO label REMARKS
APO:0000003 decreased skos:exactMatch PATO:0002301 decreased quality  
APO:0000004 increased skos:exactMatch PATO:0002300 increased quality  
APO:0000112 inviable skos:exactMatch PATO:0000718 lethal (sensu genetics) Alternatively: PATO:0001422 dead
APO:0000113 viable skos:exactMatch PATO:0000719 viable  
APO:0000002 abnormal skos:exactMatch PATO:0000069 deviation (from_normal)  
APO:0000117 normal skos:exactMatch PATO:0000461 normal  
APO:0000245 decreased rate skos:exactMatch PATO:0000911 decreased rate  
APO:0000152 haploinsufficient skos:broadMatch PATO:0000069 deviation (from_normal) This is a class which is an amalgam of phenotype and genotype.
APO:0000005 absent skos:exactMatch PATO:0000462 absent  
APO:0000097 auxotrophy skos:exactMatch PATO:0000422 auxotrophic I am assuming that this is a quality, not a process.
APO:0000246 increased rate skos:exactMatch PATO:0000912 increased rate  
APO:0000153 petite ?? 0 NONE This is a complex phenotype. It can be modelled as 1: abnormal GO:0009060 aerobic respiration, or 2: decreased colony size.
APO:0000252 normal rate skos:exactMatch PATO:0045000 normal rate  
APO:0000154 petite-negative ?? 0 NONE This is a conditional phenotype, where the observable characteristics depend on a particular genotype. In other words, this class is an amalgam of phenotype and genotype.
APO:0000250 arrested skos:exactMatch PATO:0000297 arrested  
APO:0000249 delayed skos:exactMatch PATO:0000502 delayed  
APO:0000330 haploproficient skos:broadMatch PATO:0000069 deviation (from_normal) This is a class which is an amalgam of phenotype and genotype.
APO:0000045 sterile skos:exactMatch PATO:0000956 sterile  
APO:0000248 increased duration skos:exactMatch PATO:0000498 increased duration  
APO:0000251 premature skos:exactMatch PATO:0000694 premature  
APO:0000247 decreased duration skos:exactMatch PATO:0000499 decreased duration  
APO:0000043 spore wall formation skos:exactMatch GO:0030476 ascospore wall assembly This does not look like a PATO quality.
APO:0000076 mitochondrial transport skos:exactMatch GO:0170036 import into the mitochondrion This does not look like a PATO quality.
APO:0000149 protein/peptide accumulation skos:broadMatch PATO:0002269 accumulation Text definition shows a reciprocal relationship compared with what is implied by the label.
APO:0000310 growth in exponential phase skos:broadMatch GO:0016049 cell growth This does not look like a PATO quality.
matentzn commented 5 months ago

Amazing @rays22 can you check this as a valid sssom file in https://github.com/monarch-initiative/monarch-mapping-commons (mappings dir) and make a PR? 🚀

ValWood commented 5 months ago

I have a (possibly minor) comment about viability (but it does affect many annotations)

In yeast biology "lethality" is used to refer to populations rather than cells

This means that here PATO:0000718 | lethal (sensu genetics) A viability quality inhering in a population by virtue of the bearer's long term survival inability. is fine for APO:0000112 | inviable | skos:exactMatch | PATO:0000718 | lethal (sensu genetics) | Alternatively: PATO:0001422 dead

because it refers to a population

but here APO:0000113 | viable | skos:exactMatch | PATO:0000719 | viable the viable term definition refers to a bearer or a population and so is not specific enough.

PomBase has many phenotypes for inviable cells at the single cell (organism) level, where population viability is decreased (because a high proportion cells are dead) but populations can be viable these need to be modelled as different phenotypes.

"Inviable cell (or organism)" vs "inviable population" is quite an important distinction for microbial communities. It might not affect your work here, if SGD do not annotate phenotypes related to dead individual cells but I wanted to mention it because it is currently a conflation in the PATO ontology.

Modelling death seems to be very tricky!

srengel commented 5 months ago

we have inviable for just 'nothing grows'. we also have 'viability', and then either increased or decreased. with these two ways of recording 'death', we address what Val has described above.