维基数据查询服务 - 今天生日是谁的错误?' SPARQL查询示例

时间:2015-12-11 10:21:25

标签: sparql wikidata

我正在玩SPARQL查询示例。查询'Whose birthday is today'总是以QueryTimeoutException结束(查询截止日期已过期)。

但是,如果我将birthdate属性P569更改为死亡日期属性P570,则查询将运行而不会抛出异常。

是否有办法成功执行出生查询?

1 个答案:

答案 0 :(得分:2)

我认为查询对于wikibase服务来说可能太重了。如果您只是尝试通过person's properties获取所有属性,那么您将获得成功。我尝试了以下方法:

PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

SELECT distinct ?name (year(?date) as ?year)  WHERE {   
    ?entityS wdt:P569 ?date .
    ?entityS wdt:P1477 ?name.
    FILTER (datatype(?date) = xsd:dateTime) 
    FILTER (month(?date) = month(now()))
    FILTER (day(?date) = day(now()))
 }