是否可以将continue
参数传递给Wikidata SPARQL查询中的MWAPI调用?
例如,我有一个使用MWAPI EntitySearch的查询,它总是最多返回50个结果。我希望能够设置continue
,希望我能得到n个结果集,每个结果集最多包含50个实体:
SELECT ?item ?itemLabel WHERE {
SERVICE wikibase:mwapi {
bd:serviceParam wikibase:endpoint "www.wikidata.org";
wikibase:api "EntitySearch";
mwapi:search "York";
mwapi:language "en".
?item wikibase:apiOutputItem mwapi:item.
}
SERVICE wikibase:label {bd:serviceParam wikibase:language "en".}
}
API默认情况下使用continue机制对MWAPI执行多个查询,因此理论上您不必执行任何操作。
你可以旋转的两个参数是
bd:serviceParam wikibase:limit 10 .
…它设置了API的每个调用的大小,它不会改变太多,因为它只会进行更多/更少的调用,以及…
bd:serviceParam wikibase:limit "once" .
…这将禁用继续。
若要从中间的某个位置开始获取,请根据QID或数据中的其他值进行排序,并根据情况添加FILTER(?QID>y(。