I am just starting with Protégé and OWL. I just created a class hiearchy in Protege like:
:A rdf:type owl:Class ;
rdfs:subClassOf owl:Thing ;
owl:disjointWith :B .
:B rdf:type owl:Class ;
rdfs:subClassOf owl:Thing .
:C rdf:type owl:Class ;
rdfs:subClassOf :A ;
owl:disjointWith :D .
:D rdf:type owl:Class ;
rdfs:subClassOf :A .
:E rdf:type owl:Class ;
rdfs:subClassOf :B .
When I start the pellet reasoner I expected for it to infer that all subclasses of A and B are also subclasses of Thing, which does not happen. Also I expected a SPARQL query SELECT ?subject WHERE { ?subject rdfs:subClassOf owl:Thing}
would result in all classes A through B. However the query only returns A and B.
Am I doing something wrong or am I just not correct on what I expected?