我正在尝试通过在 Wikidata SPARQL 查询服务中使用构造查询来返回三元组列表。我想要拥有 GTAA_ID 标识符的所有三人组。除此之外,在所有拥有 GTAA_ID 的人中,我希望所有三元组都包含以 GTAA_ID 作为主语的人 + 谓词和宾语的所有组合。
举个例子:Tom Hanks 有一个 GTAA_ID(标识符)。Tom Hanks 在 Wikidata 中还有很多其他的语句和标识符。我想检索与汤姆汉克斯有关的所有内容(因为他有一个 GTAA_ID)。
例如:
Tom Hanks | GTAA_ID | 106942
Tom Hanks | residence | Los Angeles
Tom Hanks | residence | Oakland
Tom Hanks | occupation | film actor
Tom Hanks | occupation | film director
等等..
Wikidata 给出的示例查询(对于与哮喘有关的所有三元组)是:
#CONSTRUCT query to get the RDF graph for a Wikidata item (e.g. asthma)
CONSTRUCT {
wd:Q35869 ?p ?o .
?o ?qualifier ?f .
?o prov:wasDerivedFrom ?u .
?u ?a ?b .
}
WHERE {
wd:Q35869 ?p ?o .
OPTIONAL {?o ?qualifier ?f .}
OPTIONAL {?o prov:wasDerivedFrom ?u .
?u ?a ?b .}
}
这将返回与项目“哮喘”有关的三元组列表。但是,我想要做的是返回一个三元组列表,其中项目是具有 GTAA_ID 的人。
这是返回具有相应 GTAA_ID 的所有主题的代码:
CONSTRUCT {
?s ps:1741 ?o .
}
WHERE {
?s ps:P1741 ?o.
}
提前谢谢了!