那么如何找到我必须涵盖的所有案例呢?(所有类型属性,所有重定向可能性......?)这背后是否有一些结构/我从哪里开始寻找?
除非您有一些标准来定义什么是类型属性,什么不是类型属性,否则您在这方面真的不会很幸运。例如,如果您只想要以 结尾的所有属性type
,那么您可以使用如下查询:
select distinct ?p where {
[] ?p []
filter strends(str(?p), "type")
}
但在 DBpedia 的情况下,这实际上并不能为您提供一切,可能是因为它达到了一些内部时间限制。但是,对于某些给定资源,您可以提供您关心的主题的价值,并获得仅针对给定资源的结果。例如,。
select distinct ?p where {
dbpedia:Mount_Monadnock ?p []
filter strends(str(?p), "type")
}
limit 100
SPARQL 结果
p
http://www.w3.org/1999/02/22-rdf-syntax-ns#type
http://dbpedia.org/ontology/type
http://dbpedia.org/property/type
http://dbpedia.org/property/wordnet_type
当然,您可能也需要这些值:
select distinct ?p ?type where {
dbpedia:Mount_Monadnock ?p ?type
filter strends(str(?p), "type")
}
SPARQL 结果
你在里面说的:
- http://dbpedia.org/ontology/type
- dbpedia-owl:wikiPageRedirects*/dbpedia-owl:type //in case of a redirect
实际上有点误导。 dbpedia-owl:type
是属性http://dbpedia.org/ontology/type
,它只是使用dbpedia-owl:
前缀编写的。如果您关心重定向,您会关心所有资源及其属性的重定向,而不仅仅是dbpedia-owl:type
. 也就是说,您将使用类似的查询
select distinct ?p ?type where {
dbpedia:Mount_Monadnock dbpedia-owl:wikiPageRedirects* ?actualThing .
?actualThing ?p ?type .
filter strends(str(?p), "type")
}