dotNetRDF& DBPedia - 获取所有图形 - UriFormattedException

时间:2012-12-03 14:53:55

标签: sparql dbpedia dotnetrdf

使用dotNetRDF向DBpedia询问所有图表时遇到问题。执行以下代码后:

SparqlRemoteEndpoint endpoint = new SparqlRemoteEndpoint(
    new Uri("http://dbpedia.org/sparql"), "http://dbpedia.org"
);
SparqlResultSet results = endpoint.QueryWithResultSet(
    "SELECT DISTINCT ?g WHERE { GRAPH ?g {?s ?p ?o} }"
);

我有UriFormattedException消息Invalid URI: The format of the URI could not be determined.

以下图表存在问题:b3sontob3sifpdbprdf-labelvirtrdf-labelfacets - 可能dotNetRDF会忘记默认图URI < / p>

顺便说一句。我可以成功执行dotNetRDF的这个查询:     SELECT ?s ?p ?o FROM <b3sonto> WHERE { ?s ?p ?o} limit 20

你知道它为什么不起作用吗?

1 个答案:

答案 0 :(得分:1)

那些不是有效的URI,因此dotNetRDF在返回时无法处理它们。这是Virtuoso的一个错误,应该向他们报告(virtuoso-users@lists.sf.net)

它们与默认图形无关,因为默认图形的定义是未命名的,并且没有URI。

您可以使用这些假URI来查询Virtuoso,因为dotNetRDF在发送查询之前根本不会解析查询。这允许您将非标准语法发送到远程端点,dotNetRDF的标准兼容实现可能会拒绝该端点。