如何获取dbpedia类的所有属性?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (24)

如何获取特定类的属性列表?考虑这个类dbpedia-owl:PersonPerson该类的所有实例都有一些以前缀为前缀的属性dbpprop:。我怎样才能获得dbpprop:我们可以找到的所有Person类的实例的所有属性?

提问于
用户回答回答于

有效的办法是:

select distinct ?property where { 
   ?property <http://www.w3.org/2000/01/rdf-schema#domain> 
                             <http://dbpedia.org/ontology/Person> . }

在此查询中,你将请求所有具有dbpedia:Personrdfs:domain。这个查询需要一个模式定义才能工作,而且有时数据集并不完全遵循模式。对于这些数据集,你将尝试另一个查询。

select distinct ?property where {
         ?instance a <http://dbpedia.org/ontology/Person> . 
         ?instance ?property ?obj . }

此查询查看Person的每个实例,绑定由此产生的每个属性。这比第一个要难得多,在DBpedia的公共实例中,将得到一个超时。因此,如果要使用公共端点,则最好使用第一个端点。

用户回答回答于

要获得所有传递属性,可以询问以下查询

select distinct ?property where{
{
  ?property rdfs:domain ?class . 
  dbpedia-owl:Person rdfs:subClassOf+ ?class.
} UNION {
  ?property rdfs:domain dbpedia-owl:Person.
}}

扫码关注云+社区