如何在单个查询中获取多个 Wikidata ID 的实例类型(即 property=P31 和相关标签)?理想情况下,我想输出一个包含以下列的列表:Wikidata ID | P31 ID | P31 标签,如果 Wikidata ID 附加了多个 P31,则使用多行。
我正在使用 Web 查询服务,该服务在一定程度上运行良好,但我很难理解语法。到目前为止,我已经设法弄清楚如何处理项目列表,并将每个项目作为一行返回(我知道很简单!),但我不知道如何生成一个提供 P31 项目的新列:
SELECT ?item
WHERE {
VALUES ?item { wd:Q1347065 wd:Q731635 wd:Q105492052 }
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
我从以前回答的问题here中找到了以下内容,它为每个感兴趣的项目返回多行,但这需要在一开始就指定 P31 类型,这是我想要生成的。
任何帮助将不胜感激,因为我真的很难理解语法。
更新: 我现在已经弄清楚如何为单个 ID 返回 P31。我需要扩展此查询以接收 ID 列表,并将 ID 作为列包含:
SELECT ?item ?itemLabel
WHERE
{
wd:Q18656 wdt:P31 ?item.
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE]". }
}