fat*_*afa 6 sparql wikidata wikidata-api
如何使用SPARQL端点通过ID获取维基数据中的英语或任何其他语言的标签?
Fra*_*ini 10
假设wd:Q146190是您的wikidata实体ID
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wd: <http://www.wikidata.org/entity/>
SELECT *
WHERE {
wd:Q146190 rdfs:label ?label .
FILTER (langMatches( lang(?label), "EN" ) )
}
LIMIT 1
Run Code Online (Sandbox Code Playgroud)
SELECT * WHERE {
wd:Q146190 rdfs:label ?label
}
Run Code Online (Sandbox Code Playgroud)
在这里链接到实时尝试按播放运行查询然后你可以下载一个完整的JSON并获得这样的重新响应..只是一个行李箱复制在这里:
{
"head": {
"vars": [
"label"
]
},
"results": {
"bindings": [
{
"label": {
"xml:lang": "ar",
"type": "literal",
"value": "???? ????? ??????"
}
},
{
"label": {
"xml:lang": "az",
"type": "literal",
"value": "Kökyumrulu gün?baxan"
}
},
..etc,etc.
Run Code Online (Sandbox Code Playgroud)
在这种情况下,您应该使用Label服务
SELECT ?p ?pLabel ?w ?wLabel WHERE {
wd:Q30 p:P6/ps:P6 ?p .
?p wdt:P26 ?w .
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
}
Run Code Online (Sandbox Code Playgroud)
使用此服务添加Label
到变量(即:对于?p
标签,您必须使用?pLabel
然后添加
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
Run Code Online (Sandbox Code Playgroud)
到WHERE
街区