Inferência do tipo OWL com restrição

Eu estou estudando a noção de restrições de OWL com o Protege 4 usando FaCT ++ e uma ontologia trivial. Suponha que eu tenha um indivíduofoo de aulaSomething:

:Something a owl:Class.
:foo a :Something, owl:NamedIndividual.

e outra classe definida a partir de uma restrição nohasBar propriedade:

:hasBar a owl:ObjectProperty.
:SomethingElse owl:equivalentClass [a owl:Restriction;
                                    owl:onProperty :hasBar;
                                    owl:allValuesFrom :Something].

Se afirmo que:

:x :hasBar :foo.

Por que não consigo deduzirx é umSomethingElse (via o fato de quefoo é umSomething) A única maneira de fazer isso funcionar é se orange dohasBar é definido:

:hasBar a owl:ObjectProperty;
        rdfs:range :Something.

Mas eu gostaria de evitar isso, porque coloca uma restrição sobre o que pode ser o assunto dehasBar (o que me causa mais problemas).

questionAnswers(1)

yourAnswerToTheQuestion