obophenotype / uberon

An ontology of gross anatomy covering metazoa. Works in concert with https://github.com/obophenotype/cell-ontology
http://obophenotype.github.io/uberon/
Other
134 stars 29 forks source link

There are multiple terms that have "." as definition #2129

Closed shawntanzk closed 9 months ago

shawntanzk commented 3 years ago

There are multiple terms that have "." as definition - this seems super weird, it is triggering duplicate_definition. Will investigate. Examples include:

First 5 violations: ERROR duplicate_definition UBERON:0000089 IAO:0000115 . ERROR duplicate_definition UBERON:0000219 IAO:0000115 . ERROR duplicate_definition UBERON:0000444 IAO:0000115 . ERROR duplicate_definition UBERON:0001430 IAO:0000115 . ERROR duplicate_definition UBERON:0001431 IAO:0000115 .

Note: this does have xrefs attached to it, so it seems it might have been accidentally removed or something?

Btws, found this when running sh run.sh make reports/uberon-edit.obo-obo-report.tsv

cmungall commented 3 years ago

hah, I copied that pattern from David! These indicate where a definition should come from

It would be great to do a pass and get as many of these definitions in, but if impractical, just translate to seeAlsos or editor notes

On Mon, Oct 25, 2021 at 10:04 AM Shawn Tan @.***> wrote:

There are multiple terms that have "." as definition - this seems super weird, it is triggering duplicate_definition. Will investigate. Examples include:

First 5 violations: ERROR duplicate_definition UBERON:0000089 IAO:0000115 . ERROR duplicate_definition UBERON:0000219 IAO:0000115 . ERROR duplicate_definition UBERON:0000444 IAO:0000115 . ERROR duplicate_definition UBERON:0001430 IAO:0000115 . ERROR duplicate_definition UBERON:0001431 IAO:0000115 .

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/obophenotype/uberon/issues/2129, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAMMOONZL3J3YIFEA6F7CTUIWEY3ANCNFSM5GVYO2QA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

shawntanzk commented 3 years ago

there are 131 duplicate definitions (not sure if all of them are these issues) so not an impossible amount to get defs for, but it will take awhile. Ideally would like the spread this out to the community if possible. The one that might be more difficult to address is the 2000+ entries with missing defs >.< Perhaps given they already have xrefs attached to them, we can tackle the 131 defs among the community (like im happy to take the brain regions and all, and whoever else can get involved in whatever their area of expertise is), and in the meantime we can change duplicate_definition to WARN instead of ERROR till we address it? thoughts?

matentzn commented 3 years ago

Can we put discussing the ROBOT report on the agenda for next time? I will explain how some of it works and how to interpret these definitions with .

shawntanzk commented 3 years ago

already on the board :)

shawntanzk commented 2 years ago
gouttegd commented 2 years ago

The “.” definitions are not injected from anywhere in the pipeline, they come straight from the -edit file.

Contrary to what we have in FBbt, in Uberon it does not seem that there is anything in place in the pipeline to deal with “dot-definitions“.

For reference, what happens in FBbt is that terms with “dot-definitions” are extracted (using this SPARQL query), and processed by a custom Java program (apparently specifically written for FlyBase) to generate textual definitions from the logical definitions.

Not sure if we want to apply the FlyBase approach in Uberon (of note, some Uberon terms with a “dot-definition” don’t have a logical definition, so that approach would not work anyway for them)… For 131 terms, I am inclined to say the FlyBase approach is overkill and that it would be easier and faster to have the curators manually add a proper definitions to all those terms…

shawntanzk commented 2 years ago

@cmungall @dosumis might need help with this

cmungall commented 2 years ago

I always thought the dot-definitions in FBbt were placeholders for literature or some other pointer. Anyway that's what they are in uberon. Not sure what I can add beyond what I said earlier. If this is priority then we can just translate to seeAlso or similar

On Mon, Nov 22, 2021 at 7:32 AM Damien Goutte-Gattat < @.***> wrote:

The “.” definitions are not injected from anywhere in the pipeline, they come straight from the -edit file.

Contrary to what we have in FBbt, in Uberon it does not seem that there is anything in place in the pipeline to deal with “dot-definitions“.

For reference, what happens in FBbt is that terms with “dot-definitions” are extracted (using this SPARQL query https://github.com/FlyBase/drosophila-anatomy-developmental-ontology/blob/master/src/sparql/dot-definitions.sparql), and processed by a custom Java program https://github.com/monarch-ebi-dev/eqwriter (apparently specifically written for FlyBase) to generate textual definitions from the logical definitions.

Not sure if we want to apply the FlyBase approach in Uberon (of note, some Uberon terms with a “dot-definition” don’t have a logical definition, so that approach would not work anyway for them)… For 131 terms, I am inclined to say the FlyBase approach is overkill and that it would be easier and faster to have the curators manually add a proper definitions to all those terms…

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/obophenotype/uberon/issues/2129#issuecomment-975645942, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAMMOILJVMFR5QRDKJAFZLUNJPBJANCNFSM5GVYO2QA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

matentzn commented 2 years ago

@cmungall the question is, what exactly are they placeholders for? Where is the pipeline that fills them in with actual definitions?

gouttegd commented 2 years ago

My understanding is that they are just placeholders waiting to be replaced by an actual definition by a human editor. They are not intended to be automatically transformed into something (contrary to what we do in FBbt), they are just here to remind the editors that a real definition will need to be put here sometimes in the future (with the xref giving a clue about where to find the information to create the definition).

matentzn commented 2 years ago

Usually they are placeholders for some kind of pattern based replacement strategy. If it is to remind humans, I would vote to ditch them.

uberon commented 2 years ago

exactly

On Mon, Nov 22, 2021 at 8:39 AM Damien Goutte-Gattat < @.***> wrote:

My understanding is that they are just placeholders waiting to be replaced by an actual definition by a human editor. They are not intended to be automatically transformed into something (contrary to what we do in FBbt), they are just here to remind the editors that a real definition will need to be put here sometimes in the future (with the xref giving a clue about where to find the information to create the definition).

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/obophenotype/uberon/issues/2129#issuecomment-975710995, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAGZRCEHI6LLMNWHFOCVYALUNJW25ANCNFSM5GVYO2QA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

uberon commented 2 years ago

but keep the relevant information as an annotation of course

On Mon, Nov 22, 2021 at 8:40 AM Nico Matentzoglu @.***> wrote:

Usually they are placeholders for some kind of pattern based replacement strategy. If it is to remind humans, I would vote to ditch them.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/obophenotype/uberon/issues/2129#issuecomment-975712291, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAGZRCCM7FP6VJES3TMYIRDUNJW6TANCNFSM5GVYO2QA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

cmungall commented 2 years ago

grep '^def: "."' uberon-edit.obo

def: "." [GO:dph, https://sourceforge.net/p/geneontology/ontology-requests/9676/, Wikipedia:Hypoblast, ZFIN:cvs] def: "." [Wikipedia:Atlas_(anatomy)#Vertebralforamen] def: "." [https://github.com/obophenotype/uberon/issues/6, https://github.com/obophenotype/uberon/issues/7] def: "." [Wikipedia:Pronucleus] def: "." [Wikipedia:Trapezium(bone)] def: "." [Wikipedia:Trapezoid_bone] def: "." [Wikipedia:Capitate_bone] def: "." [Wikipedia:Hamate_bone] def: "." [Wikipedia:Iris_muscle] def: "." [Wikipedia:Facial_skeleton] def: "." [Wikipedia:Enteric_ganglia] def: "." [Wikipedia:Gastric_juice] def: "." [Wikipedia:Common_plantar_digital_arteries] def: "." [Wikipedia:Node_of_ranvier] def: "." [Wikipedia:Lumbar_spinal_cord] def: "." [Wikipedia:Neurofilament] def: "." [Wikipedia:Intermediate_filament] def: "." [MP:0009364] def: "." [MP:0009946] def: "." [MP:0009988] def: "." [MP:0009989] def: "." [MP:0009990] def: "." [MP:0009993] def: "." [MP:0009994] def: "." [MP:0009996] def: "." [MP:0009997] def: "." [HP:0000606] def: "." [HP:0000864] def: "." [HP:0003350] def: "." [HP:0003832] def: "." [HP:0005289] def: "." [GO:0021751] def: "." [GO:0003285, Wikipedia:Septum_secondum] def: "." [GO:0003291] def: "." [GO:0021729, GO_REF:0000021] def: "." [Wikipedia:Proper_plantar_digital_arteries] def: "." [Wikipedia:Brodmann_area_26] def: "." [https://github.com/obophenotype/uberon/issues/98, Wikipedia:Articular] def: "." [Wikipedia:External_sphincter_muscle_of_female_urethra, Wikipedia:External_sphincter_muscle_of_male_urethra] def: "." [GO:0003224] def: "." [GO:0003225] def: "." [GO:0003226] def: "." [GO:0003227] def: "." [GO:0072003] def: "." [GO:0072165] def: "." [GO:0072166] def: "." [Wikipedia:Eparterial_bronchus] def: "." [GO:0060682] def: "." [GO:0061214] def: "." [MP:0009999] def: "." [ https://sourceforge.net/tracker/?func=detail&aid=3515562&group_id=76834&atid=994726 ] def: "." [http://www.ana.ed.ac.uk/database/humat/notes/extraemb/mesoder.htm] def: "." [https://github.com/obophenotype/mouse-anatomy-ontology/issues/56] def: "." [MP:0010002] def: "." [MP:0010003] def: "." [BIRNLEX:1732] def: "." [BIRNLEX:1734] def: "." [BIRNLEX:1755, https://github.com/obophenotype/uberon/issues/1161] def: "." [Wikipedia:Dorsal_digital_arteries#] def: "." [GO:0061249] def: "." [Wikipedia:Snout] def: "." [ https://sourceforge.net/tracker/?func=detail&aid=3123600&group_id=76834&atid=1205376, PMID:14595018] def: "." [Wikipedia:Brodmann_area_18] def: "." [Wikipedia:Brodmann_area_39] def: "." [Wikipedia:Corpus_cavernosum] def: "." [Wikipedia:Pterion] def: "." [Wikipedia:Persistent_left_superior_vena_cava] def: "." [ https://sourceforge.net/tracker/?func=detail&aid=3123598&group_id=76834&atid=1205376 ] def: "." [http://braininfo.rprc.washington.edu/centraldirectory.aspx?ID=3220 ] def: "." [http://dev.biologists.org/content/128/22/4573.full] def: "." [http://retina.anatomy.upenn.edu/~lance/eye/retina_gross.html, UBERON:CL_meeting20110725] def: "." [PMCID:PMC2093943] def: "." [Wikipedia:Pouch(marsupial)] def: "." [Wikipedia:Pancreaticoduodenal_artery] def: "." [ https://sourceforge.net/tracker/?func=detail&atid=440764&aid=3413098&group_id=36855 ] def: "." [PMID:21558186] def: "." [PMID:21558186] def: "." [PMID:21558186] def: "." [PMID:21558186] def: "." [Wikipedia:Epicondyle] def: "." [Wikipedia:Coat_(animal)] def: "." [Wikipedia:Digestive_system_of_gastropods#Hepatopancreas] def: "." [GO:0021728] def: "." [GO:0021729] def: "." [Wikipedia:Sclera#Histology] def: "." [http://www.embryology.ch/anglais/turinary/urinhaute03.html] def: "." [Wikipedia:Adductor_muscles_of_the_hip] def: "." [http://braininfo.rprc.washington.edu/centraldirectory.aspx?ID=3218 ] def: "." [http://braininfo.rprc.washington.edu/centraldirectory.aspx?ID=3214 ] def: "." [http://braininfo.rprc.washington.edu/centraldirectory.aspx?ID=3221 ] def: "." [http://braininfo.rprc.washington.edu/centraldirectory.aspx?ID=3223 ] def: "." [https://github.com/obophenotype/uberon/issues/119] def: "." [Wikipedia:Anal_gland] def: "." [Wikipedia:Temporomandibular_joint#Ligaments] def: "." [http://orcid.org/0000-0002-6601-2165] def: "." [Wikipedia:Primordial_phallus] def: "." [Wikipedia:Flight_feather] def: "." [http://people.eku.edu/ritchisong/feather_evolution.htm] def: "." [http://people.eku.edu/ritchisong/feather_evolution.htm] def: "." [Wikipedia:Pisiform_joint] def: "." [ISBN:0073040584] def: "." [ISBN:0073040584] def: "." [ISBN:0073040584] def: "." [ISBN:0073040584] def: "." [ https://sourceforge.net/tracker/?func=detail&aid=3580301&group_id=76834&atid=1205376 ] def: "." [Wikipedia:Rattlesnake#Rattle] def: "." [PMID:20557782, PMID:20566102] def: "." [PMID:23153189] def: "." [Wikipedia:Brodmann_area_9] def: "." [Wikipedia:Brodmann_area_28] def: "." [EFO:0000240] def: "." [PMID:23027930] def: "." [PMID:23027930] def: "." [Wikipedia:Aquatic_predation#Lunge_feeding] def: "." [PMID:22622577] def: "." [PHENOSCAPE:alex] def: "." [PHENOSCAPE:alex] def: "." [PHENOSCAPE:Wasila] def: "." [Wikipedia:Superior_olivary_complex#Dorsal_periolivarynucleus.28DPO.29] def: "." [Wikipedia:Internal_spermatic_fascia] def: "." [https://github.com/obophenotype/uberon/issues/1264] def: "." [FBC:VH] def: "." [FBC:DOS, FBC:VH] def: "." [FlyBase:FBrf0007733, FlyBase:FBrf0064792] def: "." [FlyBase:FBrf0002482, FlyBase:FBrf0007196, FlyBase:FBrf0007735, FlyBase:FBrf0034076] def: "." [FBC:VH] def: "." [FlyBase:FBrf0006943] def: "." [FBC:DOS, FBC:VH] def: "." [FBC:VH] def: "." [FlyBase:FBrf0089570] def: "." [FBC:DOS, FBC:VH] def: "." [FBC:VH] def: "." [FBC:VH] def: "." [FBC:DOS] def: "." [FBC:DOS] def: "." [FBC:DOS] def: "." [FBC:DOS] def: "." [ http://purl.obolibrary.org/obo/uberon/docs/Connectivity-Design-Pattern] def: "." [ http://purl.obolibrary.org/obo/uberon/docs/Connectivity-Design-Pattern] def: "." [ http://purl.obolibrary.org/obo/uberon/docs/Connectivity-Design-Pattern]

The later ones (6x) are from FBbt itself - there may be newer definitions in place now.

The phenoscape ones should be replaced by created-by

GO and MP provide some kind of provenance - recall a lot of uberon was abduced from implicit anatomy ontologies in GO and phenotype ontologies, and definitions were often taken from these ontologies. In the dot cases there was nothing in the ontology for a definition. IMO this is useful metadata in that there is mutual dependency between two ontologies that relying on "trust" of labels, these should be looked at by humans.

The issues xrefs could be demoted to seeAlso

the wikipedias could be turned to class xrefs but may as well just go through and add defs quicklly

On Mon, Nov 22, 2021 at 8:52 AM uberon @.***> wrote:

but keep the relevant information as an annotation of course

On Mon, Nov 22, 2021 at 8:40 AM Nico Matentzoglu @.***> wrote:

Usually they are placeholders for some kind of pattern based replacement strategy. If it is to remind humans, I would vote to ditch them.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub < https://github.com/obophenotype/uberon/issues/2129#issuecomment-975712291 , or unsubscribe < https://github.com/notifications/unsubscribe-auth/AAGZRCCM7FP6VJES3TMYIRDUNJW6TANCNFSM5GVYO2QA

. Triage notifications on the go with GitHub Mobile for iOS < https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675

or Android < https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub .

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/obophenotype/uberon/issues/2129#issuecomment-975724547, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAMMOLHMLLYOLO3HPHIKULUNJYNZANCNFSM5GVYO2QA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

anitacaron commented 2 years ago

I'll check if it was fixed in the new release.

shawntanzk commented 2 years ago

There still seems to be some "." defs - eg UBERON:0004133 or UBERON:0001606

shawntanzk commented 2 years ago

@anitacaron to relook at this

anitacaron commented 2 years ago

From the OWL artefacts, this issue is still present only in uberon-base.owl,uberon-full.owl and basic.owl files.

shawntanzk commented 2 years ago

the . defs are not in uberon.owl which is good, however, we might need to look into implementing this on -base file if these are going to be used for imports

matentzn commented 2 years ago

Can someone figure out where they come from, i.e. from withing uberon-edit.obo? I am assuming these are from some import?

shawntanzk commented 2 years ago

just checked uberon-edit.obo - the . defs are there

matentzn commented 2 years ago

In an import or the actual file?

matentzn commented 2 years ago

ah sorry.. of course.. I am stupid. I meant, the . definitions that are still in uberon-base.owl, are they from uberon-edit or an import?

shawntanzk commented 2 years ago

I assume edit file given that I checked UBERON:0004133 and both edit and base file has the . def

matentzn commented 2 years ago

ok so it is an @anitacaron issue. Thanks for checking!

anitacaron commented 2 years ago

I read Chris' comment carefully and first need to modify uberon-edit file before deleting the 'dot definitions'.

Also, I checked uberon.Makefile and it seems not taking uberon-edit.obo, but uberon-edit.owl that is in the temporary folder.

matentzn commented 2 years ago

Also, I checked uberon.Makefile and it seems not taking uberon-edit.obo, but uberon-edit.owl that is in the temporary folder.

tmp/uberon-edit.owl comes from uberon-edit.obo :)

Thanks @anitacaron for the breakdown!

anitacaron commented 2 years ago

The delete-dot-definition SPARQL query is only used in tmp/uberon-edit.owl; that's why they're still in the uberon-edit.obo file.

matentzn commented 2 years ago

Yeah the question is, how do they end up in uberon-base, or basic.owl? These are all derived from tmp/uberon-edit.owl..

anitacaron commented 2 years ago

After look the graph generated from the makefiles, they all came from uberon-edit.obo defined on the main Makefile. They're not overridden on uberon.makefile.

matentzn commented 2 years ago

That is the problem. its also a bit of a general problem with makefiles.. Ideally, we have

This is going to be hard, but if it works for Uberon, we can generalise this for ODK.

paolaroncaglia commented 2 years ago

Also see https://github.com/obophenotype/uberon/issues/2053

matentzn commented 2 years ago

After this is solved than uberon-base will depend on tmp/uberon-edit and then the dot removal will work.

github-actions[bot] commented 1 year ago

This issue has not seen any activity in the past 6 months; it will be closed automatically one year from now if no action is taken.

anitacaron commented 1 year ago

We'll have a new ODK release soon that will fix the issue only in the release artefact. The 'dot definitions' will still be present in the edit file.