如何在OWL中定义属性的域?

Fop*_*tin 2 rdf owl ontology rdfs

我想构建一个本体来处理感染或未感染疾病的人:

<?xml version="1.0"?>
</rdf:RDF>
    <owl:Class rdf:about="&person;Disease"/>

    <owl:Class rdf:about="&person;HealthyPerson">
        <rdfs:subClassOf rdf:resource="&person;Person"/>
        <owl:disjointWith rdf:resource="&person;SickPerson"/>
    </owl:Class>

    <owl:Class rdf:about="&person;Person"/>

    <owl:Class rdf:about="&person;SickPerson">
        <rdfs:subClassOf rdf:resource="&person;Person"/>
    </owl:Class>
</rdf:RDF>
Run Code Online (Sandbox Code Playgroud)

图形:

类层次结构为树

我怎样才能定义属性has_disease(人,病)以这样的方式该类型的个人Person相关的一些Diseasehas_disease将被推断有型SickPerson,也?

Luk*_*asz 5

这个怎么样?

<owl:ObjectProperty rdf:ID="hasDisease">
  <rdfs:domain rdf:resource="#SickPerson"/>
  <rdfs:range rdf:resource="#Disease"/>
</owl:ObjectProperty>
Run Code Online (Sandbox Code Playgroud)