Sparql 仅从顶部 class 获取个人

Sparql get individuals from top class only

我觉得我缺少一个明显的答案,但这就是问题所在:

我有一个 ontology,它有一个 class 'Class_N1',有一个子class 'Class_N2',它有一个子class 'Class_N3',其中有子class 'Class_N4'

当我运行这个查询时:

SELECT ?entity
WHERE {
    ?entity rdf:type :Class_N1
}

我从顶部 class ('Class_N1') 和它的子class 和各自的子classes.

有没有办法获得只属于 top/super class 的结果?

您已启用推理。可以通过三个选项来禁用推理:

  1. 创建存储库时选择 "No inference" 规则集 (screenshot)。

  2. 在查询编辑器 (screenshots) 中取消选中类似 >> 的图标。

  3. 使用 GraphDB pseudo-graphs:

    SELECT ?entity
    FROM <http://www.ontotext.com/explicit>
    WHERE { ?entity rdf:type :Class_N1 }