gpt4 book ai didi

java - 如何使用 SPARQL 查询 RDF 三元组列表?

转载 作者:行者123 更新时间:2023-12-02 04:51:51 25 4
gpt4 key购买 nike

我有一个 RDF 数据库(AFAIK),其中存储映射到 RDF 三元组的 Java 对象。

我现在想做的是查询特定类型的所有对象的列表。

我想象这样的事情,我在其中加入了我对语法的想象:

PREFIX xyz: <http://foo.com/myclassname#>
SELECT *
WHERE {
xyz:* name ?name
}

我想说我想要所有代表 myclassname 类型的主题名称的三元组。如何正确执行此操作?

现在我无法给您错误消息,因为我没有正在运行的系统,但我确信我对 SPARQL 查询的理解不够好,所以请对此进行说明。

最佳答案

SPARQL 查询通常采用?subject ?predicate ?object 的形式。因此,您需要运行一个像这样的简单查询,以了解是否需要将限制放在 ?Predicate 的位置,或者需要添加另一个三元组 (?object ?x ?y) 到您的查询。请引用SPARQL for begginers了解更多示例。

简而言之,您的答案是,是的,您可以根据特定类型进行查询,但您需要知道在哪里放置此类型限制。

例如,在 DBpedia 中,如果您想获取您可以说的所有内容的标签:

select distinct *
where
{?s rdfs:label ?o}
LIMIT 100

如果你希望这个标签是一个名称,你需要指定你的对象的类型:

select distinct *
where
{?s rdfs:label ?o.
?s a dbpedia-owl:Person}
LIMIT 100

关于java - 如何使用 SPARQL 查询 RDF 三元组列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29144054/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com