Сравните значения свойств данных с помощью Protege и Fact++
Используя протеже, я пытаюсь сравнить строковые значения со свойствами данных. Например:
У меня есть класс страны, и в этом классе у меня есть человек со свойством данных hasCountryName, установленным в "England". Я использую определенный класс, и я хочу сказать что-то вроде:
Страна и (значение hasCountryName "Англия")
Используя рассуждения отшельника, он правильно делает вывод, что мой человек является членом этого класса, но, используя Fact++, этого не происходит. Я хотел бы использовать рассуждение Fact++, есть ли способ изменить это так, чтобы Fact++ распознал его?
1 ответ
FaCT++ и HermiT должны поддерживать одни и те же выводы, поэтому, если это работает с одним, но не с другим, я подозреваю ошибку. Чтобы подтвердить это, вы можете попробовать тот же пример, но используя что-то вроде
Country and (hasCountry value England)
где hasCountry
это свойство объекта. Это не имеет смысла с точки зрения вашей исходной онтологии, но тот же вывод следует начать без использования свойств данных и литералов. Если FaCT++ распознает это, то возникает ошибка в том, как он работает с литералами и свойствами типов данных.