Rdf 从DBPedia中提取基于日期/时间的谓词
我想从DBPedia的转储文件中提取所有语句Rdf 从DBPedia中提取基于日期/时间的谓词,rdf,sparql,dbpedia,n3,Rdf,Sparql,Dbpedia,N3,我想从DBPedia的转储文件中提取所有语句 是否可以编写sparql查询来提取包含日期值(如releaseDate、deathDate、birthDate等)的谓词列表?您可以编写一个sparql查询(您使用sparql进行了标记,因此可能您希望查询这些内容)来查找此类属性。您所需要做的就是查询owl:DatatypeProperties(因为日期应该是文本),然后根据它们的字符串表示进行过滤。例如: select ?p where { ?p a owl:DatatypeProperty
是否可以编写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
现在,它将返回字符串形式包含字符串“Date”或“Date”的任何属性。你会发现,这些都是你正在寻找的东西。但是,更好的方法可能是使用以下查询搜索范围为xsd:date的对象:
select ?p where {
?p a owl:DatatypeProperty ;
rdfs:range xsd:date .
}
limit 100
这样做的好处是,即使属性名称不包含日期,也可以获得值应为日期的属性。例如,您将获得:
- )李>
- )李>
- )李>
- ……等等
rdfs:label?label代码>(例如,在owl:DatatypeProperty;
和rdfs:range xsd:date.
之间)。标签对于回答所问的问题并不是必不可少的,因此我宁愿将答案中的代码保持在最小和直接的程度。所有的谓词都是“属性”(而不是“本体论”。我如何连接它们?(我知道我在注释中要求太多,但这可能是一个小提示)@AmirPournasserian很抱歉,我不太清楚你在问什么。一个新问题可能是最好的,这样你就可以把它完整地写出来。不过,DBpedia有两个数据集:一个是来自信息框的原始数据,不太干净;另一个是DBpedia本体,它更结构化、更一致,并且使用不同的名称空间。文档中的有更多详细信息。