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

Expected behavior of export "Disjoint With" #1144

Closed
dlutz2 opened this issue Sep 2, 2023 · 2 comments · Fixed by #1148
Closed

Expected behavior of export "Disjoint With" #1144

dlutz2 opened this issue Sep 2, 2023 · 2 comments · Fixed by #1148

Comments

@dlutz2
Copy link
Contributor

dlutz2 commented Sep 2, 2023

ROBOT 1.9.4
The export operation with a "Disjoint With" heading results in a set of class/property expressions which includes the entity being described e.g. in BFO:
"continuant" is described as being disjoint from "continuant|occurrent".
This is the behavior of the underlying OWLAPI EntitySearcher which apparently returns the members of the mutually disjoint set including the entity of interest.
Is including a self-disjoint value the desired result for export? Reconstructing the original ontology from the exported values (e.g. using template) requires a manual edit to remove that self-disjoint,

@matentzn
Copy link
Contributor

matentzn commented Sep 3, 2023

@dlutz2 I think you are right, this does not seem desirable. Since ROBOT template associates a single ID with a set of values, the structure is different than the OWLAPI set returned by EntitySearcher.

Do you feel confident enough with OWL API to propose a fix/PR?

@dlutz2
Copy link
Contributor Author

dlutz2 commented Sep 3, 2023

Yes, we're getting our act together to be able to work open source. We should be able to generate PRs for this and a couple of others.
In the interim, I believe a simple fix would be to remove the described entity from the results returned by EntitySearcher.
After -> Collection<OWLClassExpression> disjoints = EntitySearcher.getDisjointClasses(entity.asOWLClass(), ontology);
add this-> disjoints.remove(entity.asOWLClass());
This pattern occurs 3 times in the "disjointWith" case statement to handle disjoint classes and disjoint object and data properties.

dlutz2 added a commit to dlutz2/robot that referenced this issue Sep 9, 2023
Equivalent class fails - ontodev#1145
Self-disjoint - ontodev#1144
Export Large excel - ontodev#1131
@dlutz2 dlutz2 mentioned this issue Sep 10, 2023
5 tasks
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

Successfully merging a pull request may close this issue.

2 participants