Подтвердить что ты не робот

Какова цель правил SWRL?

Может кто-нибудь объяснить цель правил SWRL. Насколько я понял, правила SWRL такие же, как хранимые процедуры в SQL. Я сделал несколько правил, но не знаю, как их использовать в приложении через запрос. Я не знаю, правильно ли я думаю о правилах SWRL, или нет. Пожалуйста, покажите мне правильный способ их использования.

Посмотрите на это правило:

Patient(?x) ^ hasValue_heartrate(?x, >160) -> Sick(?x)

В моей онтологии у меня есть класс Patient, но нет класса Sick и даже не имеет свойство value_heartrate. Так должен ли я создавать их? Или как я могу использовать правило выше в своей онтологии?

4b9b3361

Ответ 1

Правила - это способ выражения дополнительных вещей, которые могут быть выведены из вашего набора данных. Некоторые выводы можно почерпнуть из самой модели онтологии, но другие не могут быть выражены на языке онтологии (обычно OWL) и требуют более функционального представления. Следует отметить, что SWRL никогда не становился стандартом, и его использование начинает обескураживать. См. Вопрос последняя лучшая поддержка SWRL на answer.semanticweb.com

Изменить:

Вместо этого вы должны использовать SPIN. Чтобы процитировать этот поток:

теперь, когда SPIN является представлением W3C, он достиг того же стандартного статуса как SWRL. Кроме того, SPIN имеет ключевые преимущества для SWRL:

  • Он использует SPARQL - стандарт, поддерживаемый каждым хранилищем RDF.
  • В отличие от SWRL, SPIN является активным усилием. SWRL был устаревшим с помощью RIF, тогда как SPIN дополняет RIF

RIF - это незавершенное W3C-усилие, которое когда-то стандартизовало бы отмену SWRL. SPIN - это представление команды W3C, механизм вывода, называемый TopSpin существует в составе Top Braid Composer.

Сообщество Answers.semanticweb.com может быть более полезным.

Ответ 2

SWRL можно рассматривать как расширение для OWL. Семантически он хорошо накладывается поверх OWL и обычно используется для операторов, которые OWL не может выразить. Синтаксически это не делает слой красивым поверх OWL, потому что он вводит совершенно новый синтаксис (обратите внимание, например, на явные переменные). Однако некоторые люди предпочитают синтаксис SWRL для OWL и используют SWRL даже для операторов, которые могут быть успешно выражены в OWL (например, ваша аксиома примера также выражается в OWL).

Чтобы понять различия между OWL и SWRL, например,

Я определенно призываю вас использовать SWRL.;)

(Независимо от того, нужно ли явно "создавать" или "объявлять" класс, прежде чем ссылаться на него, вероятно, зависит от вашего редактора онтологии или инструментов рассуждений.)