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

Taxon constraint violation after import updates #2367

Closed matentzn closed 2 years ago

matentzn commented 2 years ago
image

Blocks release #2364

shawntanzk commented 2 years ago

dont think I can be super helpful here, I have like ZERO idea bout fish let alone their eyes. My guess is that jugular vein part_of some neck is over-restrictive. Did a quick search and it seems fish do indeed have jugular veins and im guessing fishes don't have necks

shawntanzk commented 2 years ago

I would think removing the part_of neck would be the right thing to do, but I don't know how that would affect modelling, I'm guessing there's a reason that axiom is there? I guess inherent difficulty with multi-species anatomy ontology. Checked uberon, and the textual def doesn't mention neck too btws.

shawntanzk commented 2 years ago

I would think removing the part_of neck would be the right thing to do

shall I do this in the branch @matentzn

matentzn commented 2 years ago

Can you branch off from my branch and then make a pr to the branch? Same with the other ticket. You may have to undo changes I made previously

matentzn commented 2 years ago

Hmm.. Still a problem:

ZFA_0005829 SubClassOf Nothing

Axiom Impact

Axioms used 1 times

Ontologies used:

matentzn commented 2 years ago

I have removed the mapping again, but invite you to reinstate it after the release. We can make another release fairly quickly

https://github.com/obophenotype/uberon/commit/3ecc9031cddbc4e34cf3841a2e5b972b24df83bf

shawntanzk commented 2 years ago

uterine horn SubClassOf connected to some fallopian tube fallopian tube SubClassOf only in taxon some Mammalia

I'm guessing that uterine horn is a thing in fishes but fallopian tubes arent - this feels like an important connected to axiom, and it brings up the question on how mammalia centric is uberon

will look into this more either way, but im guessing its the above issue

matentzn commented 2 years ago

For debugging purposes, I am running:

sh run.sh make reports/taxon-constraint-check.txt MIR=false IMP=false PAT=false BRI=true -B
robot explain -i tmp/uberon-edit-plus-tax-equivs.owl --reasoner ELK -M unsatisfiability --unsatisfiable random:10 --explanation unsat.md

Then pasting unsat.md in GitHub

paolaroncaglia commented 2 years ago

uterine horn SubClassOf connected to some fallopian tube fallopian tube SubClassOf only in taxon some Mammalia

I'm guessing that uterine horn is a thing in fishes but fallopian tubes arent - this feels like an important connected to axiom, and it brings up the question on how mammalia centric is uberon

will look into this more either way, but im guessing its the above issue

Briefly: Fallopian tube is strictly mammalian, the broader term is oviduct. Fish uterine horn should be connected to oviduct (if that's biologically the case) or to some other part of oviduct.

shawntanzk commented 2 years ago

Thanks @paolaroncaglia, that was super useful - I guess then the question is if we should change uterine horn to connected to some oviduct instead - that way its accurate to fish too (will check if this is true)

don't want to hold up the release, so maybe keep the mapping removed and ill try to figure it outside of the release

shawntanzk commented 2 years ago

Trying to fix this - changing connected to axiom still leaves part of some uterus as an issue Screenshot 2022-04-12 at 13 49 48 From a search Zebrafish defs have a uterine horn, but I guess they don't have uterus which I guess makes sense since they have ex uteri embryos Is removing the part of axiom sensible in this case? it has a source "MA" on it?

shawntanzk commented 2 years ago

From a search Zebrafish defs have a uterine horn

Take this back, the paper was talking about mice lol - actually that's a good question, if zebrafish do not have uterus, do they have a uterine horn?

shawntanzk commented 2 years ago

Ok should have done this at the start, just checked, ZFA_0005829 is schlemm's canal which is "Vessel that drains aqueous humor from the eye" - this is almost certainly not equiv to uterine tube It should be mapped to http://purl.obolibrary.org/obo/UBERON_0004029 instead

Not sure how this happened, as at the top the mapping was right

cmungall commented 2 years ago

It may be odd for human use cases for the jugular not to be part of the neck

Taxonomy gci would be a little better

I think the best solution would be to generalize neck in a way that keeps the fish people happy. Fish may lack a neck proper but they have an analogous region of the craniocervucal region with the same skeletal elements

On Sun, Mar 27, 2022 at 6:27 AM Shawn Tan @.***> wrote:

I would think removing the part_of neck would be the right thing to do, but I don't know how that would affect modelling, I'm guessing there's a reason that axiom is there? I guess inherent difficulty with multi-species anatomy ontology

— Reply to this email directly, view it on GitHub https://github.com/obophenotype/uberon/issues/2367#issuecomment-1079931988, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAMMOOBA2747ACX4VWVAVTVCBV6DANCNFSM5RXA2IOA . You are receiving this because you are subscribed to this thread.Message ID: @.***>

shawntanzk commented 2 years ago

Happy to add a taxonomy GCI, not sure how to generalize neck to fish. I'm guessing taxonomy gci should be on mammalia? so like:

'jugular vein' and ('in taxon' some Mammalia) SubClassOf 'part of' some neck
shawntanzk commented 2 years ago

FBdv unsats is caused by: occurrent DisjointWith part_of some continuant

All are similar patterns which is: FBdv_00005336 EquivalentTo larval stage and instar larval stage and (part_of some Drosophila melanogaster)

Larval stage (or whatever the stage is on the axiom) is and occurent, while Drosophila is a continuant

Not sure how to fix this

matentzn commented 2 years ago

Very good job tracking that down. This sounds like one of the two cases:

shawntanzk commented 2 years ago

@matentzn i think this is with all developmental axioms in bridge actually:

dosumis commented 2 years ago

FBdv_00005336 EquivalentTo larval stage and instar larval stage and (part_of some Drosophila melanogaster)

Looks like that part_of should be changed to in_taxon. Is this coming from a bridging file?

dosumis commented 2 years ago

We previously ignored BFO disjointness axioms during Uberon release and QC

I think worth looking at adding these back, at least for some very basic disjointness checks like this one.

shawntanzk commented 2 years ago

Looks like that part_of should be changed to in_taxon.

Did notice that, but thought it was intentional, given GCIs use part_of for taxons (should these be changed too?)

Screenshot 2022-04-13 at 14 21 40

Is this coming from a bridging file?

That's my assumption - I'm using tmp/uberon-edit-plus-tax-equivs.owl

dosumis commented 2 years ago

NCBI taxon terms are are subclasses of 'organism', which I think makes sense (I am an instance of and organism and an instance the class Homo sapiens). But that means you cannot use part_of to link an occurrent (in the above case a stage) to a continuant (an organism).

shawntanzk commented 2 years ago

Shall we change all bridge file intersection_of: part_of NCBITaxon: to intersection_of: in_taxon NCBITaxon: (or whatever in_taxon OP is in obo, and of course changing the owl file too) or just those with unsats? Also not sure how the bridges are generated - if we make a change they wont get overridden right?

matentzn commented 2 years ago

Need to sharen in obo slack uberon channel and tag @cmungall

uberon commented 2 years ago

that's not wrong and probably the easiest to do in the short term but longer term I am favoring generalizing neck - can you make a separate ticket (may also be in some old tickets)

On Tue, Apr 12, 2022 at 8:10 AM Shawn Tan @.***> wrote:

Happy to add a taxonomy GCI, not sure how to generalize neck to fish. I'm guessing taxonomy gci should be on mammalia? so like:

'jugular vein' and ('in taxon' some Mammalia) SubClassOf 'part of' some neck

— Reply to this email directly, view it on GitHub https://github.com/obophenotype/uberon/issues/2367#issuecomment-1096855076, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAGZRCCEJZXVS3ICINMD7PLVEWG5FANCNFSM5RXA2IOA . You are receiving this because you are subscribed to this thread.Message ID: @.***>

dosumis commented 2 years ago

that's not wrong and probably the easiest to do in the short term but longer term I am favoring generalizing neck

Shouldn't we be doing both?

shawntanzk commented 2 years ago

@dosumis it is - problem shifted from that to part_of -> in_taxon (initial problem was neck stuff). Anyway I've created another ticket for the neck stuff.

cmungall commented 2 years ago

Here's my summary

shawntanzk commented 2 years ago

the part_of axioms in bridge are now a blocker for making a release without a hack that @matentzn implemented right?

matentzn commented 2 years ago

There is no hack - I cant run a release at the moment!

shawntanzk commented 2 years ago

oh I thought we removed the bridge for now (like last release), but yeah, not ideal - I'll make a ticket specifically for the issue either case and we can discuss there to be clearer

see https://github.com/obophenotype/uberon/issues/2428

shawntanzk commented 2 years ago

Fixed

uberon commented 2 years ago

I think for now the most conservative thing is to selectively change these from part-of for stage terms only. I believe these get made from the stages repo, not this one (sorry for the descent into build pipeline hell... and sorry these were never caught before!)

On Wed, Apr 13, 2022 at 7:24 AM Shawn Tan @.***> wrote:

Shall we change all bridge file intersection_of: part_of NCBITaxon: to intersection_of: in_taxon NCBITaxon: (or whatever in_taxon OP is in obo, and of course changing the owl file too?) or just those with unsats? Also not sure how the bridges are generated - if we make a change they wont get overridden right?

— Reply to this email directly, view it on GitHub https://github.com/obophenotype/uberon/issues/2367#issuecomment-1098115053, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAGZRCFP4X2N532JPH5NQHLVE3KIPANCNFSM5RXA2IOA . You are receiving this because you are subscribed to this thread.Message ID: @.***>