Reputation: 1
My question goes beyond one question which already has been asked here
I defined a qualified cardinality restriction like this one:
Pizza and hasTopping exactly 4 CheeseTopping and hasTopping only CheeseTopping
Now, how do I force inconsistency of the ontology when having an individual of asserted type 'FourCheesePizza' with less than four 'CheeseTopping' property assertions?
In other words: How do I state that the let us say two 'CheeseTopping' property assertions are definitely the only ones so that an inconsistency is forced?
Upvotes: 0
Views: 150
Reputation: 85913
Making a statement like that is not too difficult in OWL, but because of the open world assumption, it does mean that you have to make sure that a bit more knowledge is available. First, the two-cheese-pizza, let's call it p, that will be inconsistently labelled a four-cheese-pizza must somehow be declared to have exactly two cheese toppings. You can do this by giving p the type
hasTopping exactly 2 CheeseTopping .
This would be enough to get the inconsistency. If that seems a bit generic, and you want to specify the exact toppings that p can have, you could give p a type like
hasTopping only { Cheddar, Mozzarella }
which says that p can only have Cheddar and Mozzarella as toppings. At this point, we know that p can have at most two toppings (it could be just one, if Cheddar and Mozzarella haven't been declared to be different individuals), which is inconsistent with it being a FourCheesePizza and having four cheese toppings.
Upvotes: 1