3

使用 Wikidata 查询服务在 SPARQL 中进行连接时遇到问题。https://query.wikidata.org/

我想要做的是检索所有具有 GTAA ID (?q wdt:P1741 ?GTAA_ID.) 的人,特别是在 Wikidata 中列出职业的人。(?q wdt:P106 ?occupation。)此外,我希望将这些职业连接成一行,用“,”分隔。

我现在得到的是第一列中的人的名字,第二列是他们的职业。但是,这些职业被列为相应 Wikidata 页面的 URL。我想要的是将这些 URL 显示为标签(对应于 Wikidata 页面的文本)

这是我到目前为止的代码:

SELECT 
  ?qLabel 
  (group_concat(DISTINCT ?occupation;separator=", ") as ?occupations ) 
WHERE
  {
    ?q wdt:P1741 ?GTAA_ID.
    ?q wdt:P106 ?occupation.
    SERVICE wikibase:label { bd:serviceParam wikibase:language "
    [AUTO_LANGUAGE]". }
  }

  GROUP BY ?qLabel

因此,而不是返回例如:

路德维希·范·贝多芬 | http://www.wikidata.org/entity/Q36834

我希望它返回:

路德维希·范·贝多芬 | 作曲家

4

0 回答 0