假设GeographicArea是行星、大陆和区域的联合:
那么就不应该有任何GeopgraphicArea类的个人
<ClassAssertion>
<Class IRI="#GeographicArea"/>
<NamedIndividual IRI="#Bad"/>
</ClassAssertion>很明显,坏不是一个大陆、行星或地区。
然而,hermiT reasonerégé没有报告一个错误。
为什么?我怎么能限制没有一个人只能被称为"GeographicArea“呢?
见示例in:http://www.arcdev.hu/test/helloworld.owl
发布于 2012-02-09 21:35:11
OWL使用开放世界假设,这意味着仅仅因为还没有将Bad定义为一个大陆、行星或区域,并不意味着它将不再存在。要使推理者报告错误,您必须将Bad定义为与其他类不相关联的类的实例。
发布于 2012-02-10 04:44:24
我怎么能限制没有一个人只能被称为"GeographicArea“呢?
您不能这样做,在逻辑环境中这样做是没有意义的(毕竟,OWL就是这样)。OWL推理是逻辑推理,而不是类型检查.
如果您需要这种功能,您将使用自己的一些自定义验证机制(我认为您可以使用一些巧妙的SPARQL查询或SPIN规则来执行类似的操作)。
https://stackoverflow.com/questions/9215795
复制相似问题