获取DBPedia信息框类别
我目前正在寻找一种通过SPARQL端点查询DBPedia的Infobox Onyology数据库的方法,以获取类的列表,所选类的子类以及给定类的属性。据我所知,您要么需要知道您正在寻找的属性,要么搜索特定的内容 - 我发现的所有示例似乎都基于您想要搜索特定内容的想法(比如某个高度以上的城市人口等),而我想建立一些可以有效“浏览”类别的东西。例如,从此类层次结构图上的“owl:Thing”的子类列表开始,向用户显示所选子类的子类列表。似乎可以通过映射wiki浏览这样的东西,但最好直接查询SPARQL端点。
是否有一些简单的SPARQL查询会返回这些类的可用类和属性?
更新:
通过迭代这个查询,我想出了一种获得类层次结构的方法:
SELECT ?subject WHERE {
?subject rdfs:subClassOf owl:Thing
}
这返回了owl的子类列表:Thing,如果我用其中一个子类替换owl:Thing,我得到它的子类列表,直到没有子类,此时我可以选择所有的资源由所选子类给出的类型。不过,我仍然不太确定如何获得子类共有的所有属性。
更新2
现在越来越近了。此查询为我提供了所有属性(dbpedia:property的子项),它们也是一个国家/地区,以及它们的标题:
SELECT DISTINCT ?prop ?title WHERE {
?country ?prop ?value.
?country a <http://dbpedia.org/ontology/Country>.
?prop rdf:type rdf:Property.
?prop rdfs:label ?title
}
这实际上是我真正要求的。我现在要做的最后一件事是尝试按照它们出现的页数来排序(可能最常见的属性是最感兴趣的属性)。
没有找到相关结果
已邀请:
4 个回复
先对冈蒲
将所选结果送入查询而不是猫头鹰:每次都是。 一旦用户选择了他们想要的最低级别的类,要显示属性列表,按照它们出现的条目数的降序排列,我使用此查询:
当然,如果你真的看看那些结果,那里有一些时髦的属性,没有非常具有描述性的标签(“s”?什么?),但这至少是我首先要寻找的东西。
可扇胆
(2)查询C类任何实例中使用的所有属性:
师埠女
为
s的房产:
这些属性都接受
作为主题。 请注意,在RDF(S)中,不需要为每个属性都有明确的
语句,因为使用属性可以隐含
s。因此,您可能会发现此查询将为您提供已使用
域定义的所有属性的列表,但不会为您提供实际用于所有
实例的所有属性的列表。
期差骇蓟