Search Mailing List Archives
[protege-discussion] protege-discussion Digest, Vol 80, Issue 7
matthew.horridge at stanford.edu
Wed Mar 6 13:43:57 PST 2013
> On Wed, 2013-03-06 at 12:04 -0800, protege-discussion-request at lists.stanford.edu wrote:
>> Message: 2
>> Date: Wed, 6 Mar 2013 11:24:58 -0800
>> From: Matthew Horridge <
>> matthew.horridge at stanford.edu
>> To: User support for Core Protege and the Protege-Frames editor
>> protege-discussion at lists.stanford.edu
>> Subject: Re: [protege-discussion] Nothing class (newbie question)
>> Message-ID: <
>> AA4D44AE-AFEA-4007-A701-6D07A09BC891 at stanford.edu
>> Content-Type: text/plain; charset=iso-8859-1
>> owl:Nothing is interpreted as the empty set. It does not have any instances. Because it is
>> interpreted as the empty set, it is a subclass of every other class (since the empty set is a
>> subset of every set). owl:Thing appears at the top of the class hierarchy, whilst owl:Nothing
>> appears at the bottom of the class hierarchy. Hope this helps.
> Yes, it does. I don't think this matters much though but the Nothing is shown in the top of the tree and in red.
Correct. This is just for usability issues (it makes it easier to spot unsatisfiable classes). It would be more correct to show it as a subclass of every satisfiable leaf class, but then this would make the tool harder to use.
> Since I'm just beginning I'm modeling as much as I can using classes and leaving individuals for a step later. In other words, how to define an instance although at this point I don't need them AFAIK?
You can type individuals with class expressions (named or anonymous class expressions) e.g. Person(Matthew) and also add property assertions to individuals e.g. worksWith(Matthew, Csongor).
> Message: 4
> Date: Wed, 06 Mar 2013 11:55:56 -0800
> From: Csongor Nyulas <csongor.nyulas at stanford.edu>
> To: protege-discussion at lists.stanford.edu
> Subject: Re: [protege-discussion] Nothing class (newbie question)
> Message-ID: <51379F4C.80909 at stanford.edu>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
> Also, if the reasoner classifies some classes as subclass of owl:Nothing
> it means that those classes are unsatisfiable, or as Matthew said, they
> cannot have any instances. This may be due to some modelling errors in
> your ontology.
> Interesting opinion... What kind of modeling errors could there be? Should I understand my modeling is somewhat flawed then?
It's unusual to coin a name for a class and then make it unsatisfiable (because of what you've stated in your ontology), so unsatisfiable classes usually indicate some bug/problem in your ontology - that's all.
More information about the protege-discussion