我正在为一个大学课程项目开发视频游戏本体,特别关注不同类型之间的关系。我已经在我的项目中包含了这个本体并对其进行了扩展。OWL 文档的当前状态在这里。
当我在 Protégé 中启动 HermiT 推理器时,它指出这Game
是Equivalent To Genre
与解释:
此外,它指出这owl:Thing
与以下解释(分别)Equivalent To Game
等效:Genre
如您所料,这绝对不是我所期望的结果。我尝试过设置Game Disjoint With Genre
,但推理器随后指出本体不一致。它给出的解释与 for 的解释相同,但在每个解释中都Game Equivalent To Genre
增加了限制。Disjoint With
这是我第一次使用这样的东西,所以如果有人能向我解释我的逻辑谬误,我将不胜感激。是什么导致了这种行为,为什么以及如何解决它?
另外,这里是似乎引起问题的两个对象属性的代码(其余的可以在这里找到):
### 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 .