查询Wikidata中是否存在名称的最简单方法?

问题描述 投票:0回答:1

我正在尝试创建最简单的查询,以检查Wikidata中是否存在名称。例如,我只是想查看通用名称“ Jack Smith”是否在Wikidata中。

this StackOverflow answer中的示例查询之后,我创建了以下SPARQL查询(run it):

SELECT distinct ?item ?itemLabel ?itemDescription WHERE{  
  ?item ?label "Jack Smith" .  
  ?article schema:about ?item .
  ?article schema:inLanguage "en" .
  ?article schema:isPartOf <https://en.wikipedia.org/>. 
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }    
} LIMIT 10

但是,它返回零结果。

另一方面,如果我通过Wikidata 搜索网页]搜索“杰克·史密斯”,我和很多名叫“杰克·史密斯”的人一起回到1200+ results

与SPARQL接口的行为不一致。当我运行SPARQL搜索“亚伯拉罕·林肯”(run it)时,我正确地获得了该名字的美国总统条目。

我的具体问题是:

  1. 为什么我的SPARQL查询为“杰克·史密斯”返回零结果?
  2. 用于检查Wikidata中是否存在名称(例如Jack Smith)的最简单的API调用是什么?它可能是SPARQL或其他一些REST API。
  3. 谢谢。

我正在尝试创建最简单的查询,以检查Wikidata中是否存在名称。例如,我只是想查看通用名称“ Jack Smith”是否在Wikidata中。按照示例查询...

sparql wikidata
1个回答
0
投票

该查询返回零结果,因为没有杰克·史密斯(Jack Smith)谁有谁用英语撰写文章,并且是Wikipedia.org的一部分。

© www.soinside.com 2019 - 2024. All rights reserved.