如何从维基数据中获取 属性 的标签?
How to get a label of a property from Wikidata?
我可以使用rdfs:label
获取对象的文本值,例如:
SELECT DISTINCT * WHERE {
wd:Q19675 rdfs:label ?label .
FILTER (langMatches( lang(?label), "ES" ) )
}
会给我值 Museo del Louvre
因为它是对象的标签 Q19675
.
但是如果我想得到一个属性的标签怎么办? (不工作)示例:
SELECT * WHERE {
wdt:P131 rdfs:label ?label .
}
我应该怎么做才能获得 属性 P131
的文本值(标签)?这个属性的标签应该是located in the administrative territorial entity
.
我自己找到了解决方案:
SELECT ?wdLabel WHERE {
VALUES (?wdt) {(wdt:P131)}
?wd wikibase:directClaim ?wdt .
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
我们只需要 SERVICE wikibase:label...
来指定 属性 标签的语言。
我可以使用rdfs:label
获取对象的文本值,例如:
SELECT DISTINCT * WHERE {
wd:Q19675 rdfs:label ?label .
FILTER (langMatches( lang(?label), "ES" ) )
}
会给我值 Museo del Louvre
因为它是对象的标签 Q19675
.
但是如果我想得到一个属性的标签怎么办? (不工作)示例:
SELECT * WHERE {
wdt:P131 rdfs:label ?label .
}
我应该怎么做才能获得 属性 P131
的文本值(标签)?这个属性的标签应该是located in the administrative territorial entity
.
我自己找到了解决方案:
SELECT ?wdLabel WHERE {
VALUES (?wdt) {(wdt:P131)}
?wd wikibase:directClaim ?wdt .
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
我们只需要 SERVICE wikibase:label...
来指定 属性 标签的语言。