【问题标题】:Reasoner sets two different classes equivalent to each other and owl:ThingReasoner 设置两个不同的类,彼此等价,owl:Thing
【发布时间】:2018-02-11 22:50:34
【问题描述】:

我正在为一个大学课程项目开发视频游戏本体,特别关注不同类型之间的关系。我在我的项目中包含了this 本体并对其进行了扩展。 OWL 文档的当前状态是here

当我在 Protégé 中启动 HermiT 推理器时,它指出 GameEquivalent To Genre 并有以下解释:

此外,它指出owl:ThingEquivalent To Game 并等效于Genre,并有以下解释(分别):

如您所料,这绝对不是我预期的结果。我尝试设置Game Disjoint With Genre,但推理器随后指出本体不一致。它给出的解释与Game Equivalent To Genre 的解释相同,但在每个解释中都添加了Disjoint With 限制。

这是我第一次使用这样的东西,所以如果有人能向我解释我的逻辑中的谬误,我将不胜感激。是什么导致了这种行为,为什么以及如何解决它?

另外,这里是两个貌似比较麻烦的对象属性的代码(其余的可以找here):

###  http://example.org/VideoGameOntologyExtended#hasElementsOf
:hasElementsOf rdf:type owl:ObjectProperty ,
                        owl:ReflexiveProperty ;
               rdfs:domain vgo:Genre ;
               rdfs:range vgo:Genre .

###  http://example.org/VideoGameOntologyExtended#isSimilarTo
:isSimilarTo rdf:type owl:ObjectProperty ,
                      owl:SymmetricProperty ,
                      owl:ReflexiveProperty ;
             rdfs:domain vgo:Game ;
             rdfs:range vgo:Game .

【问题讨论】:

  • 这不是很明显吗?我的意思是,在所有解释中都会出现自反性公理。你真的需要反身性吗?为了更好地理解蕴涵,pbeeing reflexive 是 owl:Thing SubClassOf p some Self 的快捷方式,p 的范围 C 表示 owl:Thing SubClassOf p only C
  • 项目分配声明我必须至少有一个使用owl:ReflexiveProperty的例子。课程材料不解释属性,课程主要处理数据库而不是语义网络。我在网上找到的定义给我的印象是,自反属性只是意味着具有该属性的类的实例(即作为属性域的类)自动在属性的“两侧”拥有自己。
  • 然后请阅读documentation

标签: owl semantic-web protege turtle-rdf hermit


【解决方案1】:

只是给你一个暗示owl:Thing EquivalentTo Game

我们有

Reflexive: isSimilarTo

相当于

owl:Thing SubClassOf isSimilarTo some Self

这实际上意味着您的本体中的每个个体都通过属性isSimilarTo 与自身相关,即对于您的本体中的每个个体x,我们可以包含

isSimilarTo(x, x)

此外,我们还有

isSimilarTo Range Game

在语义上等价于公理

owl:Thing SubClassOf isSimilarTo only Game

这意味着,如果存在isSimilarTo(x, y)这样的关系,则对象y将属于类Game

现在,请记住,我们已经说过本体中的每个个体都有这样的关系,只是与它自己。因此,我们可以推断出每个个体都属于Game类。

【讨论】:

  • 所以,如果我理解正确,如果我想使用owl:ReflexiveProperty我不应该定义isSimilarTo的域和范围,否则那个类将等同于owl:Thing,因为域和range 不是对属性的限制,而是用作断言,在属性的域或范围一侧的任何个体都是定义为域或范围的类的实例,并且自反性意味着个体与自身的关系对于所有人都存在个人(不论类型)?
  • 没错。别担心,domainrange 在 OWL 上下文中经常被误解。是的,使用Reflexive: p 表示全局自反性,即该属性适用于所有个体
  • 谢谢,现在事情变得更有意义了 :) 我想那么属性不能被限制为只能由某些类以任何方式使用?
  • 并非如此,OWL 更多的是关于推断陈述,或者在最坏的情况下,正如您已经发现的那样,不一致。与数据库相比,在 OWL 中,您还必须接受 Open World Assumption,即不能将丢失的信息视为 false。在 RDF 之上有一些倡议/语言(如 SHACL)来定义适当的约束。也许你可以看看那些。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多