我开发了一个连接到dbpedia的php应用程序来获取一个东西的属性和主题(艺术家的名字,地名,名词......) 让我们举一个例子: 假设我想知道迈克尔杰克逊的类型或职业:
select distinct ?string where {
<http://dbpedia.org/resource/Michael_Jackson> dbpprop:occupation ?string .
}
问题是:如何在dbpedia中进行全文查询。我的意思是仅仅通过写一个东西它就会返回相应的概念。
谢谢
答案 0 :(得分:1)
如果你看一下http://dbpedia.org/resource/Michael_Jackson的数据,你就会发现那里的财产rdfs:label
价值为#34; Michael Jackson&#34; 。您可以使用SPARQL查询检索资源,如下所示(我已经添加了关于a owl:Thing
的内容,因为您正在查找内容,而不是类别):
select ?s where { ?s rdfs:label "Michael Jackson"@en ; a owl:Thing }
SPARQL确实支持REGEX运算符(它在标准中明确描述,SPARQL 1.1 Query Language),但查询DBpedia中的所有内容可能过于昂贵,而您的查询可能会有时间如果你试图使用它。
由于DBpedia资源URI是从相应的维基百科文章URI生成的,因此最好的办法是使用Wikipedia查找工具,并从您找到的Wikipedia文章URI中生成DBpedia资源URI。
答案 1 :(得分:0)