从DBPedia中提取基于日期/时间的谓词



我想从DBPedia的转储文件中提取所有语句。

是否可以编写一个sparql查询来提取包含日期值(如releaseDate、deathDate、birthDate…)的谓词列表?

您可以编写一个SPARQL查询(您使用SPARQL进行了标记,所以大概这就是您想要查询这些内容的方式)来查找这些类型的属性。您所需要做的就是查询owl:DatatypeProperties(因为日期应该是文字),然后根据它们的字符串表示进行过滤。例如:

select ?p where {
  ?p a owl:DatatypeProperty
  filter( contains( str(?p), "Date" ) || contains( str(?p), "date" ))
}
limit 100

SPARQL结果

现在,它将返回字符串形式包含字符串"Date"或"Date"的任何属性。你会发现其中大部分都是你想要的东西。然而,实现这一点的更好方法可能是使用以下查询来搜索以xsd:date为范围的内容:

select ?p where {
  ?p a owl:DatatypeProperty ;
     rdfs:range xsd:date .
}
limit 100

SPARQL结果

这样做的好处是,即使属性的名称中不包含日期,也可以获得其值应为日期的属性。例如,你会得到:

  • http://dbpedia.org/ontology/closed
  • http://dbpedia.org/ontology/discovered
  • http://dbpedia.org/ontology/finalFlight
  • …等等

相关内容

  • 没有找到相关文章

最新更新