Inf*_*Inf 6 sparql wikidata linked-data wikidata-api
我想知道,有没有办法通过指定的属性使用他们的API查找维基数据实体.例如,有很多实体具有Freebase ID属性(属性:P646).它是唯一标识符,我希望通过此标识符获取实体.
谁知道如何实现这一目标?
max*_*ath 10
[ 更新答案:使用SPARQL端点]
wdq正在被官方SPARQL端点取代,其中此查询如下所示:
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
SELECT ?item ?itemLabel WHERE {
?item wdt:P646 "/m/0gnfq" .
}
Run Code Online (Sandbox Code Playgroud)
要在JSON中获取此查询的结果,您可以在" https://query.wikidata.org/sparql?format=json&query=YOURQUERY "中发出请求,其中YOURQUERY是URI编码的SPARQL查询:
[ 旧答案:使用WDQ]
你可以像这样获取wmflabs API(文档):
http://wdq.wmflabs.org/api?q=string[646:/m/0gnfq]
Run Code Online (Sandbox Code Playgroud)
在这里,我查询具有646
值属性的wikidata实体/m/0gnfq
.
答案如下:
{
"status": {
"error": "OK",
"items": 1,
"querytime": "161ms",
"parsed_query": "STRING[646:'/m/0gnfq']"
},
"items": [
180736
]
}
Run Code Online (Sandbox Code Playgroud)
因此,我正在寻找的实体Q180736
.
这里,查询使用string
参数作为freebase ID是wikidata中的字符串,但对于暗示wikidata实体作为值类型的属性,您将需要使用该claim
参数.文档中的一个示例:
索赔[138:676555]返回所有以(P138)Francis of Assisi(Q676555)命名的物品.
归档时间: |
|
查看次数: |
2712 次 |
最近记录: |