求助:通过Wikidata SPARQL查询获取梅根·马克尔婚礼地点失败
问题排查与正确SPARQL查询方案
错误原因
- 原查询逻辑偏差:
wdt:P26返回的是梅根的配偶实体(哈里王子),而非两人的婚姻事件陈述。婚礼地点(P2842)是婚姻关系这个陈述的属性,并非配偶条目的属性,因此无法通过配偶实体直接关联到地点。
正确查询方案
方案1:精准获取目标婚姻的地点(带标签)
SELECT ?place ?placeLabel WHERE { wd:Q152316 p:P26 ?marriageStatement. ?marriageStatement ps:P26 wd:Q546139; pq:P2842 ?place. SERVICE wikibase:label { bd:serviceParam wikibase:language "en". } }
p:P26:获取梅根所有婚姻关系的陈述对象ps:P26 wd:Q546139:指定配偶为哈里王子,精准定位目标婚姻事件pq:P2842:提取该婚姻陈述的附加属性——举行地点
方案2:简化版(适用于仅一次婚姻的情况)
如果确认梅根仅有一次婚姻,可省略配偶限定,简化查询:
SELECT ?place ?placeLabel WHERE { wd:Q152316 p:P26/pq:P2842 ?place. SERVICE wikibase:label { bd:serviceParam wikibase:language "en". } }
内容的提问来源于stack exchange,提问作者Balkhrod
相关产品推荐
相关产品推荐

