Wnioskowanie o typ OWL z ograniczeniem

Badam pojęcie ograniczeń OWL z Protege 4 używając FaCT ++ i trywialną ontologię. Przypuśćmy, że mam osobęfoo klasySomething:

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

i inna klasa zdefiniowana na podstawie ograniczeniahasBar własność:

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

Jeśli stwierdzę, że:

:x :hasBar :foo.

dlaczego nie mogę z tego wywnioskowaćx jestSomethingElse (przez to, żefoo jestSomething)? Jedyny sposób, w jaki mogę to zrobić, to to, czyrange zhasBar definiuje:

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

Ale chciałbym tego uniknąć, ponieważ ogranicza to, co może być przedmiotemhasBar (co powoduje dalsze kłopoty).

questionAnswers(1)

yourAnswerToTheQuestion