I have created an ontology in protege.
I have a class called AlcoholicBeverage, under this class there are subclasses Beer, Wine. These subclasses are disjoint.
I have a class called Person (no sub-classes). Another class called Behavior with two sub-classes "PositiveChange" and "NegativeChange".
I have an object property "using" with two sub-properties "drinking" and "consuming". Domain of "using" property is Person class and range is AlcoholicBeverage class.
NegativeChange class has superclass indicated with this statement "using some AlcoholicBeverage".
When I write DL query such as "using some Beer" or "drinking some Beer" or "consuming some Beer", it should classify it as NegativeChange but it does not. However, it only makes classification when I write "using some AlcoholicBeverage" which is exactly same definition written in AlcoholicBeverage superclass section. It does not take into account class or object inheritance. I expect that it should classify Beer as Alcoholic beverage or "consuming" object property as "using" object property.
Thanks for your help.