我有乌龟声明:
:Parent rdf:type owl:Class ;
owl:equivalentClass ;
rdf:type owl:Class ;
owl: unionOf (
[ rdf:type owl:Restriction ;
owl:onProperty :fatherOf ;
owl:someValuesFrom :Person
]
[ rdf:type owl:Restriction ;
owl:onProperty :motherOf ;
owl:someValuesFrom :Person
]
}
].
有人可以在本声明中向我解释Parent的概念。如果某人不是父母,也有可能成为一个人的母亲或父亲吗?
答案 0 :(得分:4)
有人可以向我解释一下Parent的概念吗? 言。
请注意,Turtle只是RDF的序列化格式。在 RDF 中,:父是一个IRI(我们需要知道前缀:代表什么才能确切知道它是什么),它是至少一个RDF三元组的主题:
:Parent rdf:type owl:Class .
您展示的“Turtle”片段实际上不是合法的Turtle。如果你看一下方括号,你会发现它们不匹配,并且那里也有} ,这在Turtle文档中没有位置。然后是一部分
:Parent rdf:type owl:Class ; owl:equivalentClass ;
也不对。 Turtle语法允许您缩写两个三元组
:A :p :B .
:A :q :C .
as
:A :p :B ;
:q :C .
但是在你的代码片段中, owl:equivalentClass 之后缺少一个对象。有关此语法的详细信息,请参阅Meaning of SPARQL operator ';'。
基于其他内容,我猜你正试图看看OWL公理:
父母≡∃fatherOf.Person⊔∃motherOf.Person
也可以用曼彻斯特语法写成
父等效类((某些人的父亲)或(某人的母亲))
最后的表示可能会使公理表达的内容更清晰。表达(某人的父亲)是属性 fatherOf 与某些人相关的所有个人的类,即所有个人那是某人的父亲。同样,(某人的母亲)是属于某人的母亲的一类人。如果你结合这些,那么你就拥有了所有个体的阶级,这些人是某个人的父亲或某个人的母亲。作为一个整体的公理说,该类等同于父类。也就是说,父级这个类正是某人的父亲或母亲的类别。
是否有可能成为某人的母亲或父亲 没有父母的人?
没有。如果一个人是一个人的父亲(母亲),那么他们是(某人的父亲)((某人的母亲))的成员,因此是((某人的父亲)或(某人的母亲))的成员,由于该课程等同于父母,该个人是父母的成员强>