Разные результаты рассуждений между Stardog и Protege

Я пытаюсь понять, почему я получаю разные результаты между рассуждениями Stardog и Protege.

У меня есть следующая онтология в обоих инструментах:

Число

Class: Number

Number DisjointUnionOf OddNumber,EvenNumber

Нечетное число

OddNumber subClassOf Number

Четное число

EvenNumber subClassOf Number

EvenNumber EquivalentTo hasValue {"2", "4", "6" }

HasValue

DataProperty: hasValue

hasValue Range xsd:string

hasValue SubPropertyOf: owl:topDataProperty

hasValue Domain Number

Functional: hasValue

Затем я создаю два экземпляра с именами num1 и num2, которые определены следующим образом:

num1

num1 hasValue "1"^^xsd:string

individual: num1

num1 Type Number

num2

num2 hasValue "2"^^xsd:string

individual: num2

num2 Type Number

При применении рассуждений в Protege и Stardog оба рассуждения показывают, что num2 является экземпляром EvenNumber и Number. При применении аргументов с num1 Protege говорит, что num1 - это экземпляр OddNumber и Number, а Stardog говорит, что num1 - это просто экземпляр Number.

Мне нужно, чтобы Stardog также классифицировал num1 как OddNumber. Я пропускаю некоторые ограничения, чтобы добиться такого поведения? Можно ли настроить Stardog на такое поведение?

Примечание: я использую стандартную установку Stardog (версия 4.2.3) и Protege (версия 5.1.0) по умолчанию с решением Hermit 1.3.8.

Благодарю.

1 ответ

Причина, по которой Stardog не дает результатов, заключается в том, что в вашей онтологии существует неподдерживаемая аксиома (EvenNumber EquivalentTo hasValue {"2", "4", "6" }), который игнорируется. В вашем файле stardog.log должна быть строка с таким же количеством слов.

Есть два возможных решения этого:

  1. Сконфигурируйте свой сервер Stardog, чтобы приблизить аксиомы, которые поддерживаются, вместо того, чтобы просто игнорировать неподдерживаемые (через reasoning.approximate=true). Это не гарантируется, но в этом случае это может сработать.

  2. Замените эту аксиому поддерживаемой; Правило Stardog будет работать хорошо.

Чтобы получить дополнительную помощь по любому из этих вопросов, не стесняйтесь размещать сообщения на форумах поддержки сообщества Stardog.

Другие вопросы по тегам