Class: IceCream

A class to demonstrate mistakes made with setting a property domain. The property hasTopping has a domain of Pizza. This means that the reasoner can infer that all individuals using the hasTopping property must be of type Pizza. Because of the restriction on this class, all members of IceCream must use the hasTopping property, and therefore must also be members of Pizza. However, Pizza and IceCream are disjoint, so this causes an inconsistency. If they were not disjoint, IceCream would be inferred to be a subclass of Pizza.

•owl:Thing
        •DomainConcept
                •IceCream

Super Classes

DomainConcept
hasTopping SOME FruitTopping

Disjoint Classes

PizzaTopping, PizzaBase, Pizza

Abstract Syntax

Class(IceCream partial DomainConcept
                      restriction(hasTopping someValuesFrom(FruitTopping)))

DisjointClasses(IceCream PizzaTopping
                         PizzaBase
                         Pizza)

Usage

Generated with OWLDoc