-1

我开发了一个 php 应用程序,它连接到 dbpedia 以获取事物的属性和主题(艺术家的名字、地名、名词......)让我们举个例子:假设我想知道的流派或职业迈克尔杰克逊:

    select distinct ?string where {
  <http://dbpedia.org/resource/Michael_Jackson> dbpprop:occupation ?string .
}

问题是:如何在 dbpedia 中进行全文查询。我的意思是,只要写一个东西,它就会给我相应的概念。

谢谢

4

2 回答 2

2

如果您查看http://dbpedia.org/resource/Michael_Jackson的数据,您会看到有一个rdfs:label值为“Michael Jackson”@en 的属性。您可以使用如下所示的 SPARQL 查询检索资源(我添加了一点 about a owl:Thing,因为您正在寻找东西,而不是类别):

select ?s where { ?s rdfs:label "Michael Jackson"@en ; a owl:Thing }

SPARQL 结果

SPARQL 确实支持 REGEX 运算符(在标准SPARQL 1.1 Query Language中有明确描述),但是查询 DBpedia 中的所有内容可能过于昂贵,如果您尝试使用它,您的查询可能会超时。

由于 DBpedia 资源 URI 是从相应的 Wikipedia 文章 URI 生成的,因此您最好的选择可能是使用 Wikipedia 查找工具并从您找到的 Wikipedia 文章 URI 生成 DBpedia 资源 URI。

于 2014-05-20T00:24:20.247 回答
1

使用DBPedia 查找服务

于 2014-05-21T16:17:28.267 回答