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

Additional reporting to help track incoherencies #2

Open
cmungall opened this issue Sep 13, 2017 · 5 comments
Open

Additional reporting to help track incoherencies #2

cmungall opened this issue Sep 13, 2017 · 5 comments
Assignees

Comments

@cmungall
Copy link

For each row:

  • Add labels to classes in output
  • Maybe manchester for class expressions
  • Which ontology that axiom was asserted in

In the header:

  • versionIRIs
  • full import chain
@leechuck leechuck self-assigned this Sep 13, 2017
@leechuck
Copy link
Member

Added the required information to https://github.com/bio-ontology-research-group/oboconsistencytest/blob/master/explanations-full.txt
Could you check if this is sufficient to reproduce the issues, please? Then I will generate this for the full set of ontologies.

@leechuck
Copy link
Member

When adding ENVO together with UBERON, there are quite a few more classes unsatisfiable, e.g.:

Explanation for incoherence of sigmoid process of tympanic bone (<http://purl.obolibrary.org/obo/UBERON_0013174>): 
        luminal space of Domain immaterial entity
                        ObjectPropertyDomain(<http://purl.obolibrary.org/obo/RO_0002572> <http://purl.obolibrary.org/obo/BFO_0000141>)
                        asserted in [OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/ro.owl>) VersionIRI(<http://purl.obolibrary.org/obo/ro/releases/2017-07-19/ro.owl>))]
        tympanic cavity SubClassOf developmentally_replaces some tubotympanic recess lumen
                        SubClassOf(Annotation(<http://www.geneontology.org/formats/oboInOwl#source> "EHDAA2"^^xsd:string) <http://purl.obolibrary.org/obo/UBERON_0004114> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0002285> <http://purl.obolibrary.org/obo/UBERON_0005625>))
                        asserted in [OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/uberon.owl>) VersionIRI(<http://purl.obolibrary.org/obo/uberon/releases/2017-09-09/uberon.owl>))]
        material entity DisjointWith immaterial entity
                        DisjointClasses(<http://purl.obolibrary.org/obo/BFO_0000040> <http://purl.obolibrary.org/obo/BFO_0000141>)
                        asserted in [OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/bfo.owl>) VersionIRI(<http://purl.obolibrary.org/obo/bfo/2.0/bfo.owl>)), OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo.owl>) VersionIRI(<http://purl.obolibrary.org/obo/envo/releases/2017-08-22/envo.owl>)), OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/ro.owl>) VersionIRI(<http://purl.obolibrary.org/obo/ro/releases/2017-07-19/ro.owl>))]
        material anatomical entity SubClassOf material entity
                        SubClassOf(<http://purl.obolibrary.org/obo/CARO_0000006> <http://purl.obolibrary.org/obo/BFO_0000040>)
                        asserted in [OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo.owl>) VersionIRI(<http://purl.obolibrary.org/obo/envo/releases/2017-08-22/envo.owl>)), OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/ro.owl>) VersionIRI(<http://purl.obolibrary.org/obo/ro/releases/2017-07-19/ro.owl>))]
        auditory bulla SubClassOf surrounds some tympanic cavity
                        SubClassOf(Annotation(<http://www.geneontology.org/formats/oboInOwl#source> "Rose"^^xsd:string) <http://purl.obolibrary.org/obo/UBERON_0008959> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0002221> <http://purl.obolibrary.org/obo/UBERON_0004114>))
                        asserted in [OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/uberon.owl>) VersionIRI(<http://purl.obolibrary.org/obo/uberon/releases/2017-09-09/uberon.owl>))]
        develops_from SubPropertyOf: has developmental contribution from
                        SubObjectPropertyOf(<http://purl.obolibrary.org/obo/RO_0002202> <http://purl.obolibrary.org/obo/RO_0002254>)
                        asserted in [OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/uberon.owl>) VersionIRI(<http://purl.obolibrary.org/obo/uberon/releases/2017-09-09/uberon.owl>))]
        tubotympanic recess lumen SubClassOf luminal space of some tubotympanic recess epithelium
                        SubClassOf(<http://purl.obolibrary.org/obo/UBERON_0005625> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0002572> <http://purl.obolibrary.org/obo/UBERON_0010020>))
                        asserted in [OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/uberon.owl>) VersionIRI(<http://purl.obolibrary.org/obo/uberon/releases/2017-09-09/uberon.owl>))]
        anatomical structure SubClassOf material anatomical entity
                        SubClassOf(<http://purl.obolibrary.org/obo/CARO_0000003> <http://purl.obolibrary.org/obo/CARO_0000006>)
                        asserted in [OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo.owl>) VersionIRI(<http://purl.obolibrary.org/obo/envo/releases/2017-08-22/envo.owl>)), OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/ro.owl>) VersionIRI(<http://purl.obolibrary.org/obo/ro/releases/2017-07-19/ro.owl>))]
        sigmoid process of tympanic bone SubClassOf part of some auditory bulla
                        SubClassOf(<http://purl.obolibrary.org/obo/UBERON_0013174> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000050> <http://purl.obolibrary.org/obo/UBERON_0008959>))
                        asserted in [OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/uberon.owl>) VersionIRI(<http://purl.obolibrary.org/obo/uberon/releases/2017-09-09/uberon.owl>))]
        tubotympanic recess lumen SubClassOf develops_from some pharyngeal pouch 1
                        SubClassOf(Annotation(<http://www.geneontology.org/formats/oboInOwl#source> "ISBN10:0073040584"^^xsd:string) <http://purl.obolibrary.org/obo/UBERON_0005625> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0002202> <http://purl.obolibrary.org/obo/UBERON_0007122>))
                        asserted in [OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/uberon.owl>) VersionIRI(<http://purl.obolibrary.org/obo/uberon/releases/2017-09-09/uberon.owl>))]
        has developmental contribution from Domain anatomical structure
                        ObjectPropertyDomain(<http://purl.obolibrary.org/obo/RO_0002254> <http://purl.obolibrary.org/obo/CARO_0000003>)
                        asserted in [OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo.owl>) VersionIRI(<http://purl.obolibrary.org/obo/envo/releases/2017-08-22/envo.owl>))]
q.e.d.

These explanations take a very long time to generate, so need to find a way to speed things up before being able to provide the full list. @pbuttigieg @cmungall

@leechuck
Copy link
Member

Which seems to be mainly an issue with the use of luminal space of in Uberon, the axiom luminal space of Domain immaterial entity appears in almost all the explanations.

@cmungall
Copy link
Author

For full context for this particular issue, see: obophenotype/uberon#1324

This was fixed in RO in June. However, merging the post-June RO with the pre-June module extracted from RO that is merged into envo creates the zombie unsatisfiability, when combined with any version of Uberon.

This will be fixed by regenerating envo/imports/ro_import and making a new envo release.

However, the general issue remains. Merging two different versions of portions of ontologies is not compatible with having any kinds of constraints.

This can be partially addressed by having standard approaches that make it easier to subtract out stale modules (either not merging, EnvironmentOntology/envo#576, or tagging merged/mireoted axioms, allowing for an unmireot).

But even in these cases, subtle issues can arise with inferences in ontology A deriving from stale axioms in ontology B. @balhoff suggests a solution here: obophenotype/uberon#1363 but details need to be worked out.

@cmungall
Copy link
Author

Thanks for providing the explanations. I have noticed that these are slow to produce. I'm not sure of a general solution. In my experience there is typically a single root cause for a set of incoherencies in any one ontology, so a sampling approach can still be very informative.

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

No branches or pull requests

2 participants