Virtuoso 42000 错误 SQ070:SECURITY:必须对组 ID 108 (SPARQL)、用户 ID 108 (SPARQL) 的视图 DB.DBA.SPARQL_SINV_2 具有 SELECT 权限

Virtuoso 42000 Error SQ070:SECURITY: Must have SELECT privileges on view DB.DBA.SPARQL_SINV_2 for group ID 108 (SPARQL), user ID 108 (SPARQL)

我正在尝试 运行 在 Virtuoso SPARQL 查询编辑器上执行以下查询,但出现此错误:

Virtuoso 42000 Error SQ070:SECURITY: Must have SELECT privileges on view DB.DBA.SPARQL_SINV_2 for group ID 108 (SPARQL), user ID 108 (SPARQL)

查询:

SPARQL query:
define sql:big-data-const 0 
#output-format:text/html
define sql:signal-unconnected-variables 1 define sql:signal-void-variables 1 define input:default-graph-uri <http://dbpedia.org>
PREFIX dbr: <http://dbpedia.org/resource/>
PREFIX dbp: <http://dbpedia.org/property/>
SELECT ?country ?pop
WHERE {
    VALUES ?country {
        dbr:Scotland
        dbr:England
        dbr:Wales
        dbr:Northern_Ireland
        dbr:Ireland
    }

    SERVICE <http://dbpedia.org/sparql> {
        ?country dbp:populationCensus ?pop .
    }
}

谁能帮我解决这个问题,我是这个领域的新手!

报告的错误是由于尝试 运行 联合 SPARQL(a/k/a SPARQL-FED)查询——即使用 SERVICE 子句的查询——在public Virtuoso 端点未设置为允许此类查询。

正如@AKSW 指出的那样,SERVICE 子句无论如何都是不必要的,因为查询中的 "remote" 端点与您 运行 在主查询上使用的端点相同.

这对我有用,使用 iSQL

grant SPARQL_LOAD_SERVICE_DATA to "SPARQL";
grant SPARQL_SPONGE to "SPARQL";

文档:http://vos.openlinksw.com/owiki/wiki/VOS/VirtTipsAndTricksDiscoverSPARQFedCapabilitiesSPARQL

https://github.com/dice-group/LargeRDFBench#running-sparql-11-queries