1
votes

I designed for homework an OWL ontology using Protege 4.1 about creatures (creatures classification), after reasoning with Hermit or Fact i'm getting inconsistent ontology, bad individuals, but I'm very new to OWL ontologies and don't understand how to solve these errors about inconsistency and individuals.

Edit1:


My Class hierarchy looks like this:
Thing
    Plante
    Vietuitoare
        VietuitoareDenumireStiintifica
        Specii
            Vertebrate
                Reptile
                Pesti
                Pasari
                Mamifere
            Nevertebrate
                Moluste
            Interertebrate
                Insecte
        Hrana
            Ierbivor
            Carnivor
            Omnivor
        Deplasare
            Inot
            Taratoare
            Picioare
                Biped
                Patruped
                Poliped
            Aripi
        Habitat
            Acvatic
            Campie
            Padure
            Munte
        PartiAnatomice
            SiraSpinarii
            Aripa
            InvelisExterior
                Cochilie
                Solzi
                Blana
                Pene
        RelatieAsociere
            RelatieCuOm
                Domestice
                Salbatice
            RelatieCuAlteAnimale
                Singuratate
                GrupuriMici
                    Haite
                    Carduri
                GrupuriMari
                    Stoluri
                    Colonii


These are the axioms from the Hot Spot tab in the Explanation box:

Carnivor EquivalentTo (Mananca only Vietuitoare) or (Mananca only (faceParteDin some Vietuitoare))

Ierbivor EquivalentTo (Mananca only Plante) or (Mananca only (faceParteDin some Plante))


Bellow are two links with the .owl file:


Thanks in advance, every advice and/or hint are very welcomed!

3
Please do not use the homework tag. It is deprecated and is being burninated. - user1131435
Please translate your ontology into English if you want to present it as a part of a Stackoverflow question - Kaarel
You're right, for the English version, I'll make the translations and update my question and files, as soon as possible. - Florin Vîrdol

3 Answers

2
votes

I'm not sure about the correctness of the following statement:

Vietuitoare
    and (areSiraSpinarii exactly 1 Vietuitoare)

Using Protege 4.2 you can explore the reasons for the inconsistency via various forms of explanations (e.g. "laconic"). Maybe this screenshot helps:

enter image description here

The guaranteed way to remove any reason for inconsistency if to remove all the individuals from the ontology, e.g. place the individuals into a separate module so that they can be easily plugged in and out. This would not solve your modeling error but would help you to find it faster. Also, are you sure that you want to model the animals as individuals?

1
votes

If you use Protege 4.1 you can see the inconsistent individuals and axioms in the explanation box (Experimental Protege Explanation Heuristics). The axioms under the tab Hot spots are likely to be the one causing problem, so you should revise them first.

1
votes

Looking at the justifications that Kaarel posted, we can conclude that Interertebrate is an empty class, so it cannot have instances.

The reason is the following: an Interertebrate is also a Vietuitoare (from axiom Interertebrate SubClassOf Vietuitoare); areSiraSpinarii is Functional, so either an individual has exactly 1 relationship involving property areSiraSpinarii or it does not have it at all (i.e., exactly 0). So a Vietuitoare is either a Vertebrate or a Nevertebrate, by virtue of the two axioms Vietuitoare and (areSiraSpinarii exactly 1 Vietuitoare) SubClassOf Vertebrate and Vietuitoare and (areSiraSpinarii exactly 0 Vietuitoare) SubClassOf Nevertebrate. But both Vertebrate and Nevertebrate are disjoint from Interertebrate. So we are saying that an Interertebrate cannot be a Vertebrate nor a Nevertebrate and at the same time we state that Interertebrate must be either a Vertebrate or a Nevertebrate.

Obviously there must be something wrong out there (but I cannot help, I don't know what the terms mean).