これはneo4jで実行するのは本当に簡単です。SPARQLでタスクを実行する別の方法は、サブカテゴリのコードを介して反復することにより、「Category:American_musicians」の下のすべてのサブグラフを抽出することです。
例えば。Javaの擬似コードは次のようになります。
String startCategory = "<http://dbpedia.org/resource/Category:American_musicians>";
iterateTraversalFunction(startCategory);
その場合、トラバーサル関数は次のようになります。
public void iterateTraversalFunction(String startCategory){
ArrayList<String> artistsURI = // SPARQL query ?person skos:subject startCategory . ?person rdf:type MusicalArtist
ArrayList<String> subCategoriesURI = // SPARQL query ?subCat skos startCategory
// Repeat recursively
for(String subCatURI: subCategoriesURI){
iterateTraversalFunction(subCatURI);
}
}
これがお役に立てば幸いです-ダン