我正在为大学课程项目开发视频游戏的本体,专注于不同类型之间的关系。我在我的项目中包含了this本体,并对其进行了扩展。 OWL文档的当前状态为here。
当我在Protégé中启动HermiT推理器时,它指出Game
是Equivalent To Genre
并附有解释:
此外,它指出owl:Thing
为Equivalent 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 .
答案 0 :(得分:3)
只是为了暗示蕴涵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
类。