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。
我正在使用 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。