我使用维基数据的目的是为字符串"苏格兰"找到"类型/实例","子类的值的" """的一部分如果它们存在。
例如,通过浏览维基数据网站,我输入苏格兰,我找到了资源,这些数据显示在其中,就像:https://www.wikidata.org/wiki/Q22。因此,我可以看到苏格兰是英国境内的一个国家"。
请问SPARQL中的等效查询是什么?
我试过这个"有效"查询,但它是否不返回任何结果或绕过时间限制:
SELECT ?instanceOf ?subclassOf ?partOf WHERE {
?word rdfs:label ?label;
wdt:P361 ?instanceOf;
wdt:P279 ?subclassOf;
wdt:P361 ?partOf.
FILTER(CONTAINS(?label, "Scotland"))
SERVICE wikibase:label { bd:serviceParam wikibase:language "en".}
}
答案 0 :(得分:1)
如果您现在苏格兰在wikidata上已Entity Q22,则可以使用https://www.wikidata.org/wiki/Special:EntityData/Qxxxxx.json
网址检索与苏格兰相关的所有statements,而不使用SQARQL:https://www.wikidata.org/wiki/Special:EntityData/Q22.json。
另请参阅:WikiData帮助中的About Data。
要按字符串搜索匹配的实体,请使用wbsearchentities REST API,例如:https://www.wikidata.org/w/api.php?action=wbsearchentities&search=scotland&language=en。