21

特定のクラスのプロパティのリストを取得するには? クラスを考えてみましょうdbpedia-owl:PersonPersonクラスのすべてのインスタンスには、接頭辞が付いたいくつかのプロパティがありdbpprop:ます。クラスdbpprop:のすべてのインスタンスで見つかる可能性があるすべてのプロパティを取得するにはどうすればよいですか?Person

4

2 に答える 2

5

すべての推移的なプロパティを取得するには、次のクエリを実行できます

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

「rdfs:subClassOf」の「+」は、Person のすべての上位クラスも取得するプロパティ パス式 [1] です。これらのプロパティは Person にも有効です。

また、データは未処理であり、データ型に正規化されていないため、dbprop 名前空間は推奨されません。

[1] http://www.w3.org/TR/2010/WD-sparql11-property-paths-20100126/

開示:私はDBpedia開発者です

于 2013-12-16T19:29:39.993 に答える