Запрос кардинальности с противоречивыми результатами

У меня проблемы с DL-запросами, основанными на количестве элементов в свойствах объекта, и я не уверен, что делаю что-то неправильно или что-то не так с HermiT.

Прежде всего, я приложил очень простую онтологию, которая демонстрирует мою проблему. Есть только два человека A и B и свойство объекта hasSomething. A имеет что-то B, правда.

Следующий запрос DL возвращает A в результате:

hasSomething min 1

Пока запрос

hasSomething exactly 1

не может быть удовлетворен.

У кого-нибудь есть идея, почему первый работает, а второй нет?

@prefix : <http://www.semanticweb.org/cg/ontologies/2015/9/untitled-ontology-3#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@base <http://www.semanticweb.org/cg/ontologies/2015/9/untitled-ontology-3> .

<http://www.semanticweb.org/cg/ontologies/2015/9/untitled-ontology-3> rdf:type owl:Ontology .


#################################################################
#
#    Object Properties
#
#################################################################


###  http://www.semanticweb.org/cg/ontologies/2015/9/untitled-ontology-3#hasSomething

:hasSomething rdf:type owl:ObjectProperty .





#################################################################
#
#    Classes
#
#################################################################


###  http://www.semanticweb.org/cg/ontologies/2015/9/untitled-ontology-3#SimpleClass

:SimpleClass rdf:type owl:Class .





#################################################################
#
#    Individuals
#
#################################################################


###  http://www.semanticweb.org/cg/ontologies/2015/9/untitled-ontology-3#A

:A rdf:type owl:NamedIndividual ;

   :hasSomething :B .



###  http://www.semanticweb.org/cg/ontologies/2015/9/untitled-ontology-3#B

:B rdf:type owl:NamedIndividual .




###  Generated by the OWL API (version 3.5.1) http://owlapi.sourceforge.net

1 ответ

Решение

Запрос не может быть выполнен из-за предположения об открытом мире (OWA).

Из учебника по OWL2:

Если какой-либо факт отсутствует в базе данных, он обычно считается ложным (так называемое предположение о замкнутом мире), тогда как в случае документа OWL 2 он может просто отсутствовать (но, возможно, истина), следуя открытому миру предположение

csnyluas, который является участником / разработчиком протеже, дал следующий ответ:

Это правильно. Из-за предположения об открытом мире (OWA) в OWL, из ваших утверждений рассуждатель не может сделать вывод, что A не имеет никаких других отношений hasSomething с другими людьми, кроме B.

Если вы измените свою онтологию, указав, что A относится к типу SimpleClass, а SimpleClass является подклассом "hasSomething точно 1", тогда рассудитель вернет A как экземпляр обоих "hasSomething min 1" и "hasSomething точно 1".

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