OWL-логика (если-то-операторы) в Protege - PullRequest
0 голосов
/ 29 мая 2019

Как я могу написать операторы if-then в Protege?

Пример: у меня есть онтология с классами Person, Animal, Building (с некоторыми подклассами каждый) и отношениями (свойствами объекта) livingIn, RecommendedPet. Я хотел бы добавить правило, гласящее:

ЕСЛИ ЧЕЛОВЕК ЖИВЕТ В ДОМЕ ТОГДА ЧЕЛОВЕК РЕКОМЕНДУЕТСЯ КАТ.

Я не могу понять, как это сделать в Протеже.

:RecommendedPet rdf:type owl:ObjectProperty .

:livingIn rdf:type owl:ObjectProperty .


:Animal rdf:type owl:Class .

:Appartment rdf:type owl:Class ;
            rdfs:subClassOf :Building .
:Bird rdf:type owl:Class ;
      rdfs:subClassOf :Animal .

:Building rdf:type owl:Class .

:Cat rdf:type owl:Class ;
     rdfs:subClassOf :Animal .

:Dog rdf:type owl:Class ;
     rdfs:subClassOf :Animal .

:House rdf:type owl:Class ;
       rdfs:subClassOf :Building .

:Man rdf:type owl:Class ;
     rdfs:subClassOf :Person .

:Person rdf:type owl:Class .

:TallMan rdf:type owl:Class ;
         rdfs:subClassOf :Man .

:Woman rdf:type owl:Class ;
       rdfs:subClassOf :Person .
...