owl:hasValue
限制的含义是什么?它与owl:allValuesFrom
和owl:someValuesFrom
有什么不同?
在本体论中,我想写一个公理,上面写着“每个拥有文凭的人都有文化。” 我怎么写这个?
答案 0 :(得分:5)
考虑个体x,C类,属性P和另一个y。然后有几个类表达式听起来像你关注的那样:
单个x是类∃PC的元素,如果某些个体y使得P(x,y)是C的元素。在曼彻斯特语法中,∃PC被写为“P一些C“。
单个x是类∀PC的元素,如果每个每个y,使得P(x,y)是C的元素。在曼彻斯特语法中,∀PC被写为“P只有C“。
如果是P(x,y)的情况,则个体x是class = P.y的元素。在曼彻斯特语法= P.y被写为“P值y”。
在OWL中,存在将个体与个体相关联的对象属性,以及将个体与文字相关联的数据类型属性。因此,OWL实际上对上面列出的每个结构都有两种类型的限制:一个用于对象属性,一个用于数据属性。这些内容的含义在2.2.3 Class Expressions推荐的OWL 2 Web Ontology Language Direct Semantics (Second Edition)中正式列出。
要写一个OWL公理,表达“每个有文凭的人都有文化”,你需要:
公理将是
(Person⊓∃hasDiploma.Diploma)⊑LiterateThing
这说明如果一个人是一个人,并且有一些文凭,那么他们就是识字。在OWL的RDF序列化中(你开始看到你提到的限制类),这看起来像在ProtégéOWL编辑器和RDF / XML中:
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns="http://example.org/literacy#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
<owl:Ontology rdf:about="http://example.org/literacy"/>
<owl:Class>
<rdfs:subClassOf>
<owl:Class rdf:about="http://example.org/literacy#LiterateThing"/>
</rdfs:subClassOf>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="http://example.org/literacy#Person"/>
<owl:Restriction>
<owl:onProperty>
<owl:ObjectProperty rdf:about="http://example.org/literacy#hasDiploma"/>
</owl:onProperty>
<owl:someValuesFrom>
<owl:Class rdf:about="http://example.org/literacy#Diploma"/>
</owl:someValuesFrom>
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</rdf:RDF>