检索所有 DBpedia 资源属性

Retrieving ALL DBpedia Resource properties

我正在使用此 SPARQL 查询来检索资源的所有属性,例如资源是 http://dbpedia.org/resource/Suez this query doesn't retrieve all properties in http://dbpedia.org/page/Suez,我知道页面与资源不同。

如何检索 html 页面中的所有属性??

这是我没有前缀的查询:

SELECT DISTINCT ?property ?Label  
WHERE 
{ 
    { 
      <http://dbpedia.org/resource/Suez> ?property ?o .
    } union 
    {
       ?o ?property  <http://dbpedia.org/resource/Suez>  
    } 
    ?property rdfs:label ?Label.  
    FILTER (lang(?Label) = 'en').  
}

您没有提到您没有看到哪些属性,但您要求每个属性实际上 具有 rdfs 的值: label,但并非所有人都这样做。例如,此查询 returns 16 个结果:

select distinct ?property {
  { dbr:Suez ?property ?o }
  union
  { ?s ?property dbr:Suez }

  filter not exists { ?property rdfs:label ?label }
}

SPARQL results

您需要更新查询以检查属性是否有标签,如果有英文标签则取英文标签:

select distinct ?property ?label {
  { dbr:Suez ?property ?o }
  union
  { ?s ?property dbr:Suez }

  optional { 
    ?property rdfs:label ?label .
    filter langMatches(lang(?label), 'en')
  }
}

SPARQL results

以下 sparql 查询将显示资源的所有属性和值 Suez

select distinct ?property ?value{
  dbr:Suez ?property ?value
}

SPARQL Results

您可以使用 link Suez.

将上述查询的结果与通过任何网络浏览器可用的实际资源属性进行比较

以上查询结果请注意如下:

  1. 一个有多个值的属性会显示多次。例如 属性 'dct:subject' 有八个不同的值,因此将在结果中显示八次。

  2. "dbo:abstract"将在不同语言的摘要结果中多次显示。

希望对您有所帮助。

干杯, Ambi.