DBpedia SPARQL и предикат связи - PullRequest
3 голосов
/ 03 июня 2011

У меня проблема с конечной точкой DBpedia SPARQL, потому что свойства свойств, такие как метка rdf:type, не хранятся в конечной точке. Поэтому, когда я запускаю этот запрос:

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

У меня ничего нет для ярлыка?

Если у кого-нибудь возникнет идея решить эту проблему, это будет очень полезно.

Ответы [ 2 ]

2 голосов
/ 09 июня 2011

Вы не можете получить реальные метки из DBpedia, потому что конечная точка SPARQL не имеет их. Но вы можете взять локальное имя свойства 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 .
}
0 голосов
/ 08 июня 2011

Я не думаю, что есть решение SPARQL.У Dbpedia нет нужных вам данных, и я не мог легко найти конечную точку SPARQL для этого RDF на W3C.И я не думаю, что конечная точка Virtuoso dbpedia поддерживает федерацию, даже если мы нашли конечную точку SPARQL для W3C.

Рад, что оказался неправ в любом из этих пунктов.

...