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

Automatic GCI conversion #265

Merged
merged 8 commits into from
Jul 26, 2022
Merged

Automatic GCI conversion #265

merged 8 commits into from
Jul 26, 2022

Conversation

mrnolte
Copy link
Collaborator

@mrnolte mrnolte commented Jul 22, 2022

This introduces automatic GCI conversion such that in the deployed ontology, some GCIs with owl:Nothing as super class will be rewritten to Disjointness or ObjectPropertyRange axioms. Should hopefully fix #236 and #251

@mrnolte
Copy link
Collaborator Author

mrnolte commented Jul 22, 2022

Please merge #264 before.

@sasjonge sasjonge requested review from sasjonge and mpomarlan July 22, 2022 13:08
@sasjonge
Copy link
Collaborator

sasjonge commented Jul 24, 2022

I tested the resulting ontologies with Webvowl and Ontometrics and they are working. Here is the resulting Webvowl visualization:

working_soma

I will append the resulting OWL Files here, you can also see the result at my fork on the master: https://github.com/sasjonge/soma/actions/runs/2727859329

@mpomarlan Can you check the content of the resulting SOMA files, if the conversed GCI's are okay?

@mpomarlan
Copy link
Collaborator

Almost perfect!

One of the GCIs got a bad conversion. Fault of the GCI for being a bit redundantly written perhaps, but still an important GCI:

Situation and ('manifests in' some Event) and (prevents some ('manifests in' some Event)) SubClassOf owl:Nothing

This intends to say that a manifested situation cannot prevent another manifested situation. (Or in other words, either something prevented did not manifest, or what could have prevented something did not manifest.)

The redundancy is "Situation and". Because of the domain of the 'manifests in' property this is not needed and would be an easy fix for this issue. As it is, the resulting ontology contains the axiom:

disjoint classes: situation, manifests in some Event, prevents some manifests in some Event

This is a bit harsh, as it implies no situation can ever manifest.

@mrnolte
Copy link
Collaborator Author

mrnolte commented Jul 26, 2022

Good catch, should now be fixed

@mpomarlan
Copy link
Collaborator

Sascha, can you make an updated version of the merged SOMA so I can check?

@sasjonge
Copy link
Collaborator

Here is the updated version

resulting_soma.zip

You can also find it as results of my CI here:

https://github.com/sasjonge/soma/actions/runs/2738737621

@mpomarlan
Copy link
Collaborator

Now I see that a Situation is asserted as equivalent to something which does NOT (manifest in an event AND prevent something that manifests in an event). (I'm made sure by checking the owl text because Protege should render a few more parantheses for clarity but that's not our fault.)

I understand the subclassof direction of that equivalence. In fact, if this were a subclass axiom rather than equivalence it should have captured the original axiom exactly.

What's the justification for the opposite direction? It seems too strong, since many things will both not manifest and not prevent anything. In particular, things outside the domain of prevents and manifests will not do this, such as classes disjoint with Situations such as Concept or Description. But then it would follow these are Situations as well, which I think would then entail there are no Concepts nor Descriptions. Didn't the reasoner catch this or am I making a mistake in inference?

@mpomarlan
Copy link
Collaborator

There's also a general class axiom that seems to have changed:

not (('has precondition' some 'Nonmanifested situation')) EquivalentTo 'manifests in' some Event

While this doesn't seem to lead to empty concepts, imo it says too much. Not everything that could manifest (ie., has all preconditions met) actually does.

@mrnolte
Copy link
Collaborator Author

mrnolte commented Jul 26, 2022

Sorry for the typo; I had subclassOfAxiom in mind and picked the wrong method.

@mpomarlan
Copy link
Collaborator

Good! Maybe Sascha can generate the merged SOMA again, I'll have one more check and hopefully that's that for this.

@sasjonge
Copy link
Collaborator

@mpomarlan Here is the updated version

resulting_soma.zip

and the results of my CI are here:

https://github.com/sasjonge/soma/actions/runs/2739590300

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 this pull request may close these issues.

Unintuitive axioms
3 participants