Suh*_*asD 4 owl ontology protege owl-api semantics
根据OWL DL的原始OWL定义,我们不能给一个类和一个人赋予相同的名称(这是OWL DL和OWL Full之间的明显区别)."Punning"在OWL 2中引入并删除了此限制.所以我可以为一个类和一个人(以及一个属性)赋予相同的名称.
OWL是否在语义上将它们视为相同或不同?(两者都有相同的名称,因此它们在语法上是相同的.)这些实体(具有相同的IRI)是同一个吗?[与OWL一样,一切都只与IRI有关]
OWL是否将它们视为语义相同或不同?(两者都具有相同的IRI,因此在语法上相同).简单来说,这些实体(具有相同的IRI)是一样的吗?[与OWL一样,一切都只与IRI有关]
从您链接到的文档(重点添加):
2.4.1 F12:Punning
OWL 1 DL要求严格区分例如班级和个人的名称.OWL 2 DL略微放松了这种分离,允许同一术语的不同用途,例如Eagle,用于一个类,所有老鹰的类,以及个体,代表属于(meta)的物种Eagle的个体所有植物和动物物种.但是,OWL 2 DL仍然存在某些限制:它要求名称不能同时用于类和数据类型,并且名称只能用于一种属性.OWL 2 Direct Semantics将同名的不同用法视为完全独立,如DL reasoners所要求的那样.
在讨价还价时,你可以用同一个名字来指代不止一件事; IRI是一样的,但就是这样; 事情仍然不同.如果你使用相同的IRI作为一个类的标识符,对于个人来说,那就是你所做的一切.有一个由IRI命名的类,并且有一个由IRI命名的个体; 它们不是同一个东西,也不可能是同一个东西,因为阶级和个体是不同的东西.
例如,如果你有一个名为x的类和一个名为x的个体,那么你可以这样说
(个体)x通过对象属性p与个体y相关
要么
个体y是(x类)的元素
但你不能说,
个体y是(个体)x的元素[因为个体没有元素,类做]
或者那个
(类)x通过对象属性p与个体y相关[因为对象属性不将类与个体联系起来,它们将个体与个体联系起来]
IRI实际上只是OWL中的名称,它们本身并不是实体.在OWL中使用Punning可以让你在不混淆这些东西的情况下使用相同的名称来做多件事.对于类和个体,它们是不同类型的东西,因此您可以重用名称,因为上下文将始终清楚表明您的意思.