InverseFunctionalProperty, указывающий на несколько различных обратных свойств

Я играю с TopBraid Composer, чтобы узнать, как создавать онтологии с использованием технологий Semantic Web.

Что я сделал:

  • Я создал онтологию самолетов, городов, аэропортов, штатов и т. Д.
  • Теперь, когда онтология становится немного сложнее, я столкнулся с проблемой

онтология

График моей текущей онтологии можно найти на моем диске.

Что я хочу:

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

Что я пытался (и не смог понять)

  1. Я изменил свойство hasCity в домене Airport
  2. Еще одна модификация, которую я сделал, заключалась в том, что свойство hasCity также является функционалом InverseOf hasAirport.

В TopBraid вы можете запустить умозаключения, чтобы увидеть, что произошло с вашими данными. Включенный принтскрин

Кажется, что, изменив свойство hasCity, я заявил, что Object rdfs: type также является Aiport.

Может кто-нибудь, пожалуйста, указать мне в правильном направлении?

Вот целые 333 строки моего RDF, если это может помочь.

1 ответ

Вы объявили hasCity иметь домены как Airport а также Country, Это означает, что для каждого Airport с hasCity наполнитель Airport также предполагается, что Country, Это вряд ли то, что вы хотите выразить.

Кроме того, это утверждение также сомнительно - диапазон свойства типа данных должен быть типом данных, а не классом.

<owl:DatatypeProperty rdf:ID="Destination">
    <rdfs:range rdf:resource="#City"/>
    <rdfs:domain rdf:resource="#Transportation"/>
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Destination</rdfs:label>
</owl:DatatypeProperty>
Другие вопросы по тегам