Основные рассуждения совы с использованием Йены
-
13-12-2019 - |
Вопрос
Я новичок в онтологиях, и у меня есть основной вопрос о рассуждениях OWL.Вопрос может показаться многословным, извините за это..
Рассмотрим онтологию со следующими аксиомами (OWL: класс C1) и (OWL: класс P), со свойством объекта (RDFS: Domain наблюдает C1) (RDFS: диапазон наблюдает P), вместе с индивидуумом (RDF: тип P P P P P )
Затем я ограничиваю класс C1, создавая класс C2 (rdfs:subClassOf C2 C1) с ограничением (соблюдает C2 p)
Теперь, когда я затем создаю нового человека (rdf:type x owl:Thing) (наблюдает x p), тогда рассуждающий делает вывод, что (rdf:type x C1).Однако определение отдельного x кажется более близким к C2, так что не должен ли исследователь сделать вывод, что x имеет тип C2?
Пожалуйста помоги!
Я экспериментирую с использованием фреймворка Jena.
Решение
Причина, по которой этого не происходит, заключается в том, что вы создали ограничение, используя подкласс, а это означает, что вы создали необходимое (но недостаточное) условие.Другими словами, вы сказали рассуждающему следующее:
«ЕСЛИ человек относится к типу С2, ТО он должен обладать свойством «наблюдает»»
Но у тебя есть нет сказал наоборот:
«ЕСЛИ человек обладает свойством «наблюдает», ТО оно должно быть типа С2»
Чтобы рассуждающий мог сделать вывод, что ваш индивидуум относится к типу C2, у вас также должно быть второе правило (достаточное условие).Вы можете сделать это в OWL, используя owl:equivalentClass
отношение к вашему ограничению (вместо rdfs:subClassOf
связь).