query-92001053103490b81321036599d53b59

rq turtle/ttl

我写这篇教程时(2016年10月),该查询只返回2,815个结果 - 显然,还有更多的艺术作品!这是因为它忽略了“乱世佳人”这种项目,它只是“电影”的一个实例,而不是“艺术作品”的实例。“电影”是“艺术作品”的一个子类,我们需要令SPARQL搜索时考虑这点。 是“艺术作品”的某个子类别的实例。(为了试验,尝试这种查询)。但这仍存在问题: 乱世佳人语法:[]一种可能的方案是之前提过的方括号仍缺少一些项目,它们是“艺术作品”的多级子类下的实例——例如,《白雪公主与七个小矮人》是一部动画电影,这是一部电影,这是一件艺术作品。此时我们需要查询两级“子类”的语句——但也可能是三级、四级或更多。 这不再包含直接隶属于“艺术作品”的实例项目。。这表示“它”符合“隶属于”,并且在项目和类别之间有任意数量的“上级分类”语句。 ?item wdt:P31/wdt:P279* ?class解决方案:

Use at

PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX bd: <http://www.bigdata.com/rdf#>
SELECT ?work ?workLabel
WHERE
{
  ?work wdt:P31/wdt:P279* wd:Q838948. # 艺术作品的任何子类的实例
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE]". }
}

Query found at

graph TD classDef projected fill:lightgreen; classDef literal fill:orange; classDef iri fill:yellow; v1("?work"):::projected a1((" ")) c3(["wd:Q838948"]):::iri c5(["bd:serviceParam"]):::iri c7(["#91;AUTO_LANGUAGE#93;"]):::literal v1 --"wdt:P31"--> a1 a1 --"wdt:P279"--> c3 subgraph s1["http://wikiba.se/ontology#label"] style s1 stroke-width:4px; c5 --"wikibase:language"--> c7 end