1

SPARQL を使用して dpbedia のすべてのトピックを取得する方法はありますか?

http://dbpedia.org/snorql/

つまり、ここにリストされているトピックのすべてのサブフィールドを抽出する方法はありますか?

http://en.wikipedia.org/wiki/Lists_of_mathematics_topics

大まかなトピックのリストは次のとおりです: http://dbpedia.org/page/Category:Fields_of_mathematics

親クラスとそのサブフィールドを示すリストが欲しいです。

4

1 に答える 1

4

質問 1: トピックの定義方法によって異なります....
たとえば、次のクエリを実行できますskos:Concept

SELECT ?con
WHERE {
  ?con a skos:Concept
} 
limit 1000 

結果を見る

skos:broader質問 2: 次のようなプロパティを照会できます。

SELECT ?parent (?label as ?sub)
   WHERE {
  {
    ?sub skos:broader <http://dbpedia.org/resource/Category:Fields_of_mathematics> .
    ?sub rdfs:label ?label    .
  } UNION {
  <http://dbpedia.org/resource/Category:Fields_of_mathematics> rdfs:label ?parent
 }
}

結果を見る

上記のフィールドの次のレベルのサブフィールドのリストを取得するには:

SELECT ?parent ?sub ?subsub
WHERE {
  {
    ?sub skos:broader <http://dbpedia.org/resource/Category:Fields_of_mathematics> .
    OPTIONAL {?subsub dcterms:subject ?sub}
  } UNION {
  <http://dbpedia.org/resource/Category:Fields_of_mathematics> rdfs:label ?parent
 }
}

結果を見る

于 2013-05-14T20:54:26.283 に答える