Я только начал работать над онтологиями с Protegé и пытаюсь понять, как использовать правила SWRL. Боюсь, я не понимаю концепции или того, как правильно с ними обращаться, так как я не могу произвести никакого вывода. Я объясню немного больше простого случая, который я создал, чтобы проверить это:
Я создал трех индивидуумов, названных A, B и C. Каждый из них имеет тестовое свойство, которое имеет логический диапазон. На вкладке утверждений свойств каждого из них я инициализировал их значения, поэтому они равны test(A,true)
, test(B,true)
и test(C,true)
. Чтобы проверить, как работают правила, я создал такое правило: test(A,true), test(B,true) -> test(C,false)
. Насколько я понимаю, если тестовое свойство A и B истинно, то свойство C станет ложным. Для этого я запускаю резонер (Pellet), но ничего не происходит. Я имею в виду, что он говорит, что механизм рассуждений активен, и сообщения о «несогласованной онтологии» не появляются, но значение теста C не меняется. Я уверен, что это должна быть действительно простая путаница, но я не могу найти ее нигде и не проверить, активировано ли правило.
Заранее спасибо.