Универсальная количественная оценка Owl работает вместе с ограничениями кардинальности

Я новичок в сове. Я прочитал пример универсальной количественной оценки на этой странице http://dior.ics.muni.cz/~makub/owl/ .

Если я заменю «Person SubClassOf hasParent max 2 thing» на «Person SubClassOf hasParent max 2 Person» и запущу рассуждение, я думаю, что отдельный Иван тоже попадет в класс Чехия. Но на самом деле это не так. Тестирую в Protege 4.3 и запускаю встроенный ризондер FaCT++.

Какие детали я упустил?


person user3636315    schedule 06.12.2014    source источник


Ответы (1)


Проблема здесь в том, что ваше новое ограничение слишком либерально. Ваша новая аксиома на самом деле говорит, что Person может иметь не более 2 (родители, которые являются Person). Это не мешает Человеку иметь других родителей, которые не являются Человеком.

Пример снова заработает, если вы принудительно отнесете всех родителей к классу Person, например, установив Range of hasParent в Person или добавив аксиому Person SubClassOf hasParent only Person

person Dmitry Tsarkov    schedule 06.12.2014
comment
Спасибо за ваше объяснение и решение, я не полностью учел предположение об открытом мире. - person user3636315; 07.12.2014