【问题标题】:How can I tell if a resource/entity is a class or instance如何判断资源/实体是类还是实例
【发布时间】:2015-11-14 04:58:29
【问题描述】:

在 RDF/RDFS/OWL 中,我如何判断一个实体是纯粹的实例还是类?我知道类实体也是实例,因为它们是“类”实体的实例和其他类的子类。但是,我相信有些实体只是类的实例,而不是类本身。

现在,我认为唯一的方式来告诉某事纯粹是一个实例是查看(在该实体的 rdf 数据中)带有 rdf:type 谓词的语句并寻找 absence rdfs:subClassOf 或等效谓词的任何语句。

但是,查找语句的缺失并不是确保某事物真正是类或实例的好方法。

有没有更好的方法来辨别实体是类还是纯实例?希望鼻子底下可能有什么东西。

【问题讨论】:

    标签: rdf semantic-web owl rdfs linked-data


    【解决方案1】:

    在 OWL 中,必须在使用它的本体中或在导入它的本体之一中声明一个类。没有声明公理是违反配置文件的 - 这意味着本体正式处于 OWL Full 中(例如,不能保证推理器能够有意义地使用它)。

    不幸的是,实践中使用的本体经常存在违规行为,因此这不是一个完全令人满意的标准。

    在 OWL、RDF 或 RDFS 中,个人没有此限制。因此,缺少实体的类型断言(或仅存在 rdf:type owl:Thing 断言)很好地表明您正在与个人打交道。

    除了出现在subClassOf 公理中,类还可以出现在equivalentdisjointWith 中,或者作为限制的填充部分(在 OWL 中)。

    为了使主题进一步复杂化,支持类和个人之间的双关语 - 这意味着,可以将相同的 IRI 声明为类和个人。因此,一个本体中的一个类被用作另一个类中的个体是可能且有效的。

    【讨论】:

    • 当你说一个类必须是declared as such时,你的意思是它的RDF必须包含一个对象为class的三元组语句吗?
    • 是 - 请参阅此处的表 7 了解规范 w3.org/TR/owl2-mapping-to-rdf/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    相关资源
    最近更新 更多