【发布时间】:2023-03-15 04:29:01
【问题描述】:
我是 SPIN 的新手。我想知道将它用于以下目的是否有意义。假设我有以下类层次结构:
ex:Vehicle
ex:Car
ex:Sedan
某些类将属性owl:equivalenClass 设置为某个值,例如:
ex:Vehicle
owl:equivalentClass wd:MeanOfTransportation
ex:Sedan
owl:equivalentClass wd:Sedan
如果owl:equivalentClass 未设置为值,则应采用其父类的值。在上面的例子中:
ex:Car
owl:equivalentClass wd:MeanOfTransportation
这可以通过 SPIN 来完成吗,在我的例子中使用 TopBraid?
【问题讨论】:
-
我的第一个问题是,你为什么要这样做?这正是逻辑推理得出的结果。
-
@AKSW,我不确定它是否遵循(或者我不明白你)......无论如何,TopBraid Composer 免费版中唯一可用的推理引擎是 SPIN 引擎,因此这个问题使感觉,恕我直言。
-
@StanislavKralin 你是对的。它仅适用于等价关系的一个方向,即仅得出子类是等价类的子类,反之则不然。
-
为什么? - 我可以编写一个 SPARQL 查询来提取父类的 owl:equivalenClass 的值,但我不希望这样。我希望自动生成语句 - 如果不存在。我也想学SPIN...
-
@AKSW,不过我同意,这是最初的预期;通过运行推理引擎,子类应该继承其父类的类属性值。
标签: sparql rules topbraid-composer spin-rdf