Странное поведение запроса в OWL! - PullRequest
3 голосов
/ 09 мая 2009

В OWL этот запрос работает нормально

"person and hasChild min 3"

работает нормально и дает мне всех, у кого больше 3 детей

но этот не работает

"person and hasChild max 3"

это должно дать мне всех, у кого меньше 3 детей, но это не работает

Кто-нибудь имеет представление об этом ??

почему «min» работает, а «max» не дает результатов! ??

Спасибо

Ответы [ 2 ]

8 голосов
/ 10 мая 2009

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

Скажите, что вы заявляете:

John lives in Paris.
Mary lives in Paris.

Ответ на следующие вопросы дан ответом OWL.

Who lives in Paris?  John, Mary
Does at least one thing live in Paris?  YES
Do at least two things live in Paris?  Maybe
Is Paris a person?  Maybe
Is John and Mary the same thing?  Maybe
Is Paris and Mary the same thing?  Maybe
Does at most one thing live in Paris?  Maybe

Всякий раз, когда рассуждатель OWL возвращается с Может , пользовательский интерфейс (такой как Protege) имеет тенденцию ничего не показывать.

Чтобы получить ответы, которые вам, вероятно, нужны, вам нужно добавить гораздо больше информации в базу знаний, например,

Mary is not John.
Everybody who lives in Paris is either John or Mary.

Надеюсь, это поможет. Глядя на то, как мало просмотров ваши последние вопросы получили в Stack Overflow, я бы сказал, что лучше задать эти вопросы в списке рассылки Protege на данный момент. Или, что еще лучше, посмотрите архивы списков рассылки. Вопросы, связанные с предположением об открытом мире, поднимаются там не реже одного раза в неделю.

1 голос
/ 06 июня 2009

Чтобы добавить к очкам Каарела и прокомментировать ваш пример запроса, рассудитель посмотрит на ваши утвержденные тройки и спросит: «Могут ли быть другие утвержденные тройки, которых у меня нет на данный момент, которые утверждают этого человека есть дополнительные дети, которые поставят их за лимит «трех детей»? Поскольку ответ на этот вопрос «возможно», рассудитель не сможет сделать вывод (как факт), что у человека в вашем примере максимум трое детей.

Отрицательные утверждения довольно трудно обосновать из-за предположения об открытом мире. Ваш вопрос "человек не должен иметь более трех детей" сталкивается с этой проблемой. Чтобы добиться того, что вы ищете, вы можете утверждать, что этот человек набирает класс родителей, у которых трое детей или меньше. Опять же, если бы вы сделали это, вам, вероятно, не понадобился бы запрос.

...