dbpedia.org中没有开始和结束日期的事件

时间:2016-07-27 14:55:55

标签: sparql rdf semantic-web owl dbpedia

我试图获取 dbpedia.org 中的每个事件以及各自的 startDate endDate (startDate& endDate是http://schema.org/Event

中定义的属性

这是sparql请求:

PREFIX db-owl: <http://dbpedia.org/ontology/>

SELECT * 
WHERE {
    ?r  a db-owl:Event .
    OPTIONAL{ ?r db-owl:startDate ?c }
} LIMIT 2000

(我使用Virtuoso Sparql Query editorhttp://dbpedia.org/sparql端点上对其进行测试)

自己测试并且您发现只有 veeeerryyy 这些事件的小子集具有指定的startDate。

例如,如果我更专注我的查询,如下:

PREFIX db-owl: <http://dbpedia.org/ontology/>

SELECT * 
WHERE {
    ?r  a db-owl:MilitaryConflict .
    OPTIONAL{ ?r db-owl:startDate ?c }
} LIMIT 2000

您可以看到startDate在NO militaryConflict中指定。

这怎么可能?

我错过了什么,或者只是因为英文版的dbpedia缺少一些关键信息,比如事件的开始日期?

注意:如果我在法语dbpedia端点(http://fr.dbpedia.org/sparql)上运行相同的查询,我会得到完全不同的结果,即:一堆MilitaryConflict填充了相应的startDate < / p>

1 个答案:

答案 0 :(得分:3)

当然,其中很多(没有)具有 dbo:startDate 属性,但很多属性具有 dbo:date 属性,甚至更多有 dbp:日期属性。 (本体值往往比原始值更清晰,但两者都有用。)例如,看看结果:

SELECT * {
    ?r  a dbo:MilitaryConflict .
    OPTIONAL{ ?r dbo:startDate ?startDate }
    OPTIONAL{ ?r dbo:date ?oDate }
    OPTIONAL{ ?r dbp:date ?pDate }
} LIMIT 2000

SPARQL results

确定DBpedia中有哪些数据和哪些数据不可用是一个试错过程。我通过浏览其中一些实例找到了 dbo:date 属性,例如,2015 Douma market massacre具有该属性的值。

  

注意:如果我在法语dbpedia端点(http://fr.dbpedia.org/sparql)上运行相同的查询,我会得到完全不同的结果,即:一堆MilitaryConflict填充了相应的startDate

这确实使问题变得更有趣,但我猜它归结为法语DBpedia上使用的不同信息框,这有助于将更多信息输入系统。