3

のラベルなどのプロパティのプロパティがエンドポイントにストックされていないため、DBpediaSPARQLエンドポイントに問題がrdf:typeあります。したがって、このクエリを実行すると、次のようになります。

SELECT * 
WHERE{
  <http://dbpedia.org/ontology/Place> ?predicat ?object .
  OPTIONAL{?predicat rdfs:label ?label}
}

?labelには何もありません。

誰かがこの問題を解決するためのアイデアを持っているなら、それは非常に役に立ちます。

4

2 に答える 2

2

SPARQLエンドポイントに実際のラベルがないため、DBpediaから実際のラベルを取得することはできません。ただし、プロパティURIのローカル名を使用することはできます。したがって、rdfs:subClassOfの場合、「subClassOf」を取得します。それは何もないよりはましです。これは、Virtuosoの(非標準の)bif:regexp_replace関数を使用して実行できます。

SELECT DISTINCT (bif:regexp_replace(STR(?p), "^.*[/#]", "") AS ?label) WHERE {
   <http://dbpedia.org/ontology/Place> ?p ?o .
}
于 2011-06-09T10:07:33.090 に答える
0

SPARQLソリューションはないと思います。Dbpediaには必要なデータがなく、W3CでそのRDFのSPARQLエンドポイントを簡単に見つけることができませんでした。また、W3C用のSPARQLエンドポイントが見つかったとしても、Virtuosodbpediaエンドポイントはまだフェデレーションをサポートしていないと思います。

これらの点のいずれかで間違っていることが証明されてうれしいです。

于 2011-06-08T16:29:25.890 に答える