在RDF/RDFS/OWL中,我如何判断一个实体是一个纯粹的实例还是一个类?我理解类实体也是实例,因为它们是“类”实体的实例和其他类的子类。然而,我认为有些实体只是类的实例,而不是类本身。
现在,我认为判断某事的唯一方法纯粹是一个实例,就是(在该实体的rdf数据中)查找带有rdf:type谓词的语句,并查找任何带有rdfs:subClassOf或等效谓词的语句的缺席。
但是,寻找缺少语句的方法并不是确保某些东西真正是类或实例的好方法。
是否有更好的方法来区分实体是类还是纯粹的实例?希望有什么东西就在眼皮底下。
发布于 2015-11-14 19:57:21
在OWL中,必须在使用类的本体中或在导入类的本体中声明类。没有声明公理是对概要文件的违反--这意味着本体论在形式上完全是OWL (例如,不能保证推理者能够有意义地使用它)。
不幸的是,在实践中使用的本体论往往有违规行为,因此这并不是一个完全令人满意的标准。
在OWL、RDF或RDFS中,个人都没有这种限制。因此,缺少一个实体的类型断言(或者仅仅存在一个rdf:type owl:Thing断言)是一个很好的指示,表明您正在处理一个个体。
除了出现在subClassOf公理中,类还可以出现在equivalent、disjointWith中,或者作为限制的填充部分(在OWL中)。
更复杂的是,支持在类和个人之间使用双关语--这意味着相同的IRI可以声明为一个类和一个个体。因此,本体中的类在另一个本体中作为个体使用是可能的,也是有效的。
https://stackoverflow.com/questions/33705271
复制相似问题