GraphDB Free 8.8 Sparql INSERT 返回 400。不支持 INSERT?

GraphDB Free 8.8 Sparql INSERT returning 400. INSERT not supported?

我正在使用 GraphDB Free,我正在尝试使用 sparql 将一些三元组插入到存储中。 查询看起来像一个简单的 INSERT:

//Some Prefixes
INSERT DATA { subject predicate object }

我使用 Postman POST 将请求正文中的查询发送到 SPARQL 端点 和 dotNetRdf 将查询提交到代码中的 SPARQL 端点。

我在上述两种方式上都收到以下错误:

MALFORMED QUERY: Encountered " "insert" "INSERT "" at line 5, column 1.
Was expecting one of:
    "base" ...
    "prefix" ...
    "select" ...
    "construct" ...
    "describe" ...
    "ask" ...

在 SPARQL 表单的 Workbench 中提交相同的 INSERT DATA { ... } 时按预期工作,因此 INSERT 没问题。

在文档 GraphDB Sparql Comliance 中提到支持 SPARQL 1.1 更新(包括 INSERT DATA)。 Sparql 端点是否不支持提到的 Spaqrl 1.1 UPDATE 规范?仍在浏览文档,不确定我错过了什么...

GraphDB 使用 RDF4J REST API - 这是 SPARQL 1.1 协议和 SPARQL 图形存储协议的扩展。 SPARQL 更新操作的端点不同于查询的端点。您需要将更新发送至:

http://<host>/repositories/<repId>/statements

而不仅仅是:

http://<host>/repositories/<repId>

此外:使用 ?query= 参数发送查询。但是,更新使用 ?update= 参数。

REST API 文档中有一个 example SPARQL update request