如何获得特定类别的属性列表?考虑类别dbpedia-owl:Person
。所有Person
类别的实例都有一些以dbpprop:
为前缀的属性。我怎样才能获取所有Person
类别的实例中找到的dbpprop:
属性呢?
如何获得特定类别的属性列表?考虑类别dbpedia-owl:Person
。所有Person
类别的实例都有一些以dbpprop:
为前缀的属性。我怎样才能获取所有Person
类别的实例中找到的dbpprop:
属性呢?
有效的解决方案是:
select distinct ?property where {
?property <http://www.w3.org/2000/01/rdf-schema#domain>
<http://dbpedia.org/ontology/Person> . }
在这个查询中,你正在请求所有将dbpedia:Person
作为rdfs:domain
的属性。这个查询需要一个模式定义才能工作,有时数据集并不完全遵循模式。对于这些数据集,你可以尝试使用另一个查询。
select distinct ?property where {
?instance a <http://dbpedia.org/ontology/Person> .
?instance ?property ?obj . }
这个查询会查看每个人实例绑定其产生的所有属性。这比第一个查询要困难得多,在dbpedia公共实例中,你将会超时。因此,如果你想使用公共端点,最好使用第一个查询。
select distinct ?property where{
{
?property rdfs:domain ?class .
dbpedia-owl:Person rdfs:subClassOf+ ?class.
} UNION {
?property rdfs:domain dbpedia-owl:Person.
}}