Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OBI should use more disjointness axioms in the release process #1051

Open
jamesaoverton opened this issue Aug 19, 2019 · 21 comments
Open

OBI should use more disjointness axioms in the release process #1051

jamesaoverton opened this issue Aug 19, 2019 · 21 comments
Assignees

Comments

@jamesaoverton
Copy link
Contributor

#1050 shows a bug with OBI that was not caught by the current testing and reasoning processes. It was only caught when OBI was combined with other ontologies that assert more disjointness axioms at the BFO/RO level.

We could add an OBI testing step that asserts more disjointness axioms and reasons, without necessarily including those disjointness axioms in the obi.owl release file. Or we could just assert more disjointness axioms in obi-edit.owl and release them in obi.owl, at the risk of breaking stuff downstream.

@jamesaoverton jamesaoverton self-assigned this Aug 19, 2019
@bpeters42
Copy link
Contributor

I would love have OBI use a version of BFO/RO with those disjointness axioms, not just for testing purposes, but also for the release. These are not newly arising BFO features, but were always implied, and I would assume anything they break is an actual error. But to protect users, we could have two releases for a while, one with- and one without the disjoint axioms, and eventually retire the one without.

Given that something like that would happen with the move to the common OBO-Core anyway, and we don't want to do this all the time, maybe postpone the public release until then, and try to set up a testing routine with the OBO core for now?

@jamesaoverton
Copy link
Contributor Author

Looking at this in the context of #1053, we do have a number of BFO disjointness axioms in OBI, but not the relevant one for this problem:

continuant DisjointWith 'has part' some occurrent

This axiom is asserted in the full version of RO. OBI only uses RO Core. I looked but I can't find exactly where this axiom is asserted in the RO src/ontology files.

@cmungall
Copy link
Contributor

We should probably push this down to ro-core? Probably need to give advance warning as it may uncover many cryptic incoherencies!

@bpeters42
Copy link
Contributor

bpeters42 commented Aug 23, 2019 via email

@kaiiam
Copy link

kaiiam commented Aug 26, 2019

Hello all, thanks for the quick response on #1050 not entirely sure if this other PMO bug is also relevant to this thread, however I've got another importing from OBI issue. In short when ENVO imports PATO:fluorescence from it's obi_import.owl file for some reason it's adding the extra axiom that fluorescence is subclass of disposition, even though I don't see this asserted anywhere in OBI.

The bug doesn't show up in ENVO, however it does show up in PMO while importing from ENVO (which imports from OBI). Where ELK shows an error of realizable entity is disjoint with quality. Not sure if this bug is related but please let me know if it is. Another potential cryptic in-coherency.

@Aqua1ung
Copy link

Just a word of caution when it comes to disjointness axioms: under the proper circumstances (hard to tell exactly when), they can easily throw the ontology into the realm of undecidability. It's probably a good idea to be parsimonious with disjointness axioms.

@cmungall
Copy link
Contributor

cmungall commented Aug 26, 2019 via email

@cmungall
Copy link
Contributor

@Aqua1ung do you mean undecidability or incoherency/unsatisfiability? The former is theoretically impossible with DL.

The latter is a feature:

@cmungall
Copy link
Contributor

cmungall commented Aug 26, 2019

@kaiiam - thanks. This is a case of OBI injecting axioms into PATO. There was something similar with GO now fixed. It's actually not unreasonable that fluorescence considered a disposition, see #112 - however, the proper place to axiomatize an ontology is in the ontology itself rather from outside. Does OBI have any use cases where it matters if fluorescence is a realizable vs quality?

I believe the PATO quality is intended to be use for the quality of actually fluorescing. The ability to fluoresce e.g. a light bulb that is off indeed has a disposition but I don't think we need a named class for things like this otherwise we end up with a massive shadow hierarchy.

@cmungall
Copy link
Contributor

It would be good to see a list of all OBI injected axioms

@Aqua1ung
Copy link

@Aqua1ung do you mean undecidability or incoherency/unsatisfiability? The former is theoretically impossible with DL.

I mean decidability (i.e. "the former"). My guess is that by DL you mean SHOIN. It may, indeed, be easier to stay within SHOIN's confines without obsessively checking whether each and every triple you write is, indeed, SHOIN-compliant. When it comes to SROIQ however, I found that it's quite easy to write an inocuously-looking triple that in conjunction with some other triple in your ontology might actually break SROIQ. As a general rule of thumb, I've noticed that avoiding disjoint axioms saves one the trouble of having to obsessively check whether what you've written so far is, indeed, SROIQ.

@jamesaoverton
Copy link
Contributor Author

@cmungall Yes, it would be good to have a list of OBI-asserted axioms. There should not be too many but I'm not sure the best way to find them. I'll work on that.

@bpeters42
Copy link
Contributor

@kaiiam Can you verify that you are using the most recent OBI release? We believe we have fixed this issue in the past. #1028
@cmungall : We actually quite strongly believe that fluorescence is a disposition, which is specifically important for the use of fluorescent dyes for example in a FACS assay, where the emission of radiation at the fluorescent wavelength is detected if and only if the dye is bound to the target etc. But we are waiting on the promised refactoring of PATO to get these distinctions in, and for now will live with them being 'qualities'.

@cmungall
Copy link
Contributor

cmungall commented Aug 28, 2019 via email

@bpeters42
Copy link
Contributor

bpeters42 commented Aug 29, 2019 via email

@kaiiam
Copy link

kaiiam commented Aug 29, 2019

@bpeters42

Can you verify that you are using the most recent OBI release?

My understanding of the Make process for ontologies created by @cmungall's ontology-development-kit (such as PMO) is that it runs the line:

robot convert -I http://purl.obolibrary.org/obo/obi.owl -o mirror/obi.owl

Which should be pulling the latest no?

@jamesaoverton

it would be good to have a list of OBI-asserted axioms. There should not be too many but I'm not sure the best way to find them. I'll work on that.

I suspect I may keep stumbling into them as I import more of OBI. Will keep pointing them out.

@cmungall
Copy link
Contributor

Yes, that pulls the latest version, but of course if the make rule hasn't been triggered for a while then you won't have the latest.

You should also check that the offending axioms are not coming in from a stale import from another ontology.

@johnwjudkins
Copy link
Contributor

2019-10-28 Will be discussed as OBO-core issue. Becky will work on it.

@kaiiam
Copy link

kaiiam commented Oct 28, 2019

Great thanks @johnwjudkins

@johnwjudkins
Copy link
Contributor

Discussed 2020-07-27. Should be tracked in COB.

@kaiiam
Copy link

kaiiam commented Jul 27, 2020

You should also check that the offending axioms are not coming in from a stale import from another ontology.

They were coming in from the application ontology's ENVO import, which was pulling an older version of OBI.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants