2015-04-24 4 views
1

Я попытался создать, пожалуй, простейшую онтологию, состоящую из двух классов (A, B) и отношения (R) между двумя классами. Я также хочу заявить, что каждый человек А должен иметь отношение R с каким-либо другим лицом.Reasoner не проверяет мощность и/или ограничения?

:R rdf:type owl:ObjectProperty ; 
    rdfs:domain :A ; 
    rdfs:range :B . 

:A rdf:type owl:Class ; 
    rdfs:subClassOf owl:Thing , 
        [ rdf:type owl:Restriction ; 
        owl:onProperty :R ; 
        owl:someValuesFrom :B 
        ] ; 
    owl:disjointWith :B . 

:B rdf:type owl:Class ; 
    rdfs:subClassOf owl:Thing . 

Теперь некоторые люди:

:a1 rdf:type :A , owl:NamedIndividual ; :R :b1 . 
:a2 rdf:type :A , owl:NamedIndividual . 
:b1 rdf:type :B , owl:NamedIndividual . 

enter image description here

Но рассуждающий не жалуется на а2, не имеющие отношения R. Почему?

(Примечание: Я создал онтологию в Protégé, я попытался ФАКТ ++ и отшельник) рассуждений

ответ

2

Я также хочу заявить, что каждый человек А должен иметь отношение R с каким-либо другим лицом.

Вы сделали это правильно. Когда вы идете утверждать, что

:a1 rdf:type :A , owl:NamedIndividual ; :R :b1 . 
:a2 rdf:type :A , owl:NamedIndividual . 
:b1 rdf:type :B , owl:NamedIndividual . 

рассуждающий будет правильно сделать вывод существует некоторое значение, давайте назовем его X, так что : a2: RX и X РДФ: тип : B. В рассуждениях OWL используется open world assumption. Это означает, что если что-то явно не указано как истинное или ложное, оно не считается ложным или истинным, а скорее неизвестно. Например, вы могли бы правильно утверждать, что

                Human & sqsubseteq, ∃ & thinsp; hasMother.Human

, то есть каждый человек имеет человека как мать.Если я скажу, что

                Дэниел Уэбстер ∈ Human

и это все, что я говорю; Я не сделал несогласованности. Есть только то, что верно, что мы еще не знаем. Мы знаем , что У DanielWebster есть мать, но мы не знаем, кто она.

Если вы хотите закрыть мир, вы можете сделать несколько вещей, но результаты могут быть не такими, как вы хотите. Во-первых, вы можете сделать B перечислимым классом. То есть, вы можете явно перечислить особей B:

                B ≡ {b1}

Это на самом деле не приведет к несогласованности, хотя. На самом деле, рассудитель будет вывести, что поскольку a2 должно быть связано с некоторым B, а единственным B является b1, то a2 связано R с b1.

1

Вы можете использовать эквивалент также.

: Сова: equClass [rdf: тип сова: ограничение; owl: onProperty: R; owl: someValuesFo owl: Thing ];

Вам не нужно писать ограничение домена для R. Эквивалент позаботится об этом. Вам все равно придется писать ограничение диапазона.

Но рассудитель не жалуется на то, что a2 не имеет отношения R. Почему?

Чтобы ответить на этот вопрос. Вам нужно понять Open world assumption. Семантическая сеть - это открытое мировое предположение. Существует несколько исследовательских работ, которые, как я сказал в комментариях ниже, делают некоторые концепции или роли в качестве предположения о закрытом мире. Например, в вашем примере, если вы сделаете R как закрытый предикат. вы получите сообщение об ошибке. Это полностью теоретическая идея.

+1

Я не вижу, как это отвечает на вопрос «Но рассудитель не жалуется на то, что a2 не имеет отношения R. Почему?» Создание эквивалентных классов будет означать только то, что все, что имеет значение R, равно A. Даже если вы сделаете классы эквивалентными, рассудитель не будет «жаловаться на a2, не имеющий отношения R»; он будет просто (последовательно) заключить, что a2 имеет некоторое R, только одно, что мы не знаем, что это такое. –

+0

Ну, семантическая сеть - это открытое мировое рассуждение. Чтобы создать такие ошибки, мы должны пойти на концепцию, называемую локально замкнутым миром. [закрыты prdicates] (http://ijcai.org/papers13/Papers/IJCAI13-156.pdf) Пример 2.2 в роли бумажных сил не следует делать. Чтобы точно ответить на его вопрос, вы должны считать R замкнутым предикатом. Он будет принудительно вводить R (a2, __). –

+0

Я полностью понимаю, почему рассудитель не называет a2, не имея подтвержденного значения R, несогласованностью. Я не понимаю, как этот ответ (предложение использовать эквивалентную аксиому класса) должен помочь. –

 Смежные вопросы

  • Нет связанных вопросов^_^