Search Mailing List Archives

Limit search to: Subject & Body Subject Author
Sort by: Reverse Sort
Limit to: All This Week Last Week This Month Last Month
Select Date Range     through    

[protege-owl] Query: Subclasses or Sibling

Thomas Russ tar at ISI.EDU
Tue Apr 3 08:50:23 PDT 2007

On Apr 3, 2007, at 1:50 AM, Ronald Cornet wrote:

> William, and others (please see the question in item 2 below),
> ...
> So if I make a pizza with mozarella and tomatoes, I would like it  
> to be recognized as a Margherita (I'm doing this by head, maybe the  
> ingredients of Margherita are slightly different).
> This requires:
> 1. Margherita being defined as a "complete class", i.e., with  
> necessary and sufficient conditions. I can handle that, and would  
> prefer this in the Pizza example.
> 2. I would have to express that the toppings I've put on my pizza  
> are the only toppings. Does anyone know how to do that in Protégé?  
> I.e., how can I "close the world" when I've instantiated a pizza?

Sadly, I don't think this is particularly easy to do in OWL.

As far as I know, there isn't any construct that lets you directly  
express number constraints on individuals.  The only method I can  
think of involves creating a class with the number restrictions and  
making the individual in question a member of that class.

In this case, one would need a Pizza-with-exactly-two-toppings class  
and then make your pizza have this as one of its types.  Then it  
would inherit the cardinality restriction and (with appropriate  
disjointness assertions between toppings) it would be possible to  
infer membership in the Margherita pizza class.

In general, any restrictions that rely on the allValuesFrom  
restriction are really difficult to infer, because of the open world  
semantics of OWL.  There is no general mechanism for marking  
instances "closed" with respect to fillers, and therefore no way to  
have this inference proceed without making other very specific  
constructs and using them.  The same problem also applies to  
cardinality and max cardinality restrictions.

Enumerating and testing fillers is only a valid inference technique  
if one uses closed world semantics, or if there are explicit  
cardinality restrictions that match the number of fillers.  The  
latter item is also a bit tricky because OWL doesn't use the unique  
name assumption, so one needs to have made sure that the necessary  
allDifferentFrom assertions have been made at well.

More information about the protege-owl mailing list