将 Sparql 查询插入 Ontotext GraphDB
Insert a Sparql Query Into Ontotext GraphDB
我正在使用 Ontotext GraphDB 来存储语义数据。
GraphDB 允许 store/save 公开为 Web 服务的 sparql 查询。
但是我想通过 HTTP POST 请求 store/save sparql 查询。下面是我的查询,查询的名称将是 Query-1
:
let $Query := fn:concat('PREFIX dc: <http://insert/>
INSERT DATA
{
dc:a@gmail.com dc:played dc:1234 .
}
')
let $EncodeUri := fn:encode-for-uri($Query)
任何人都可以帮我编写 HTTP-POST 请求命令来将此查询保存在 GraphDB 中吗?我只想使用 xdmp:http-post()
。
为了获得查询结果,我使用了 xdmp:http-get('http://localhost:8080//rest/sparql/saved-queries/Query-2')
,效果很好。
您可以执行 POST 请求来存储查询。
以下示例使用的是 curl:
curl -X POST http://localhost:8080/rest/sparql/saved-queries\
-H 'Content-Type:application/json'\
-d '{
"body": "select * { ?s ?p ?o }",
"name": "Query-2"
}'
您还可以找到有关 REST API 使用 GraphDB Workbench 的更多详细信息(管理 -> REST API 文档)
您似乎想通过 MarkLogic 创建并接收 Sparql 查询。您可以使用以下代码来实现它:
import module namespace sem = "http://marklogic.com/semantics" at "/MarkLogic/semantics.xqy";
let $Query := 'select * { ?s ?p ?o }'
let $QueryName := 'abcdef'
let $EncodesQuery := fn:encode-for-uri($Query)
let $QData := fn:concat('{
"body": "',$Query,'",
"name": "',$QueryName,'"
}')
return
xdmp:http-post(concat('http://localhost:9080/rest/sparql/saved-queries'),
<options xmlns="xdmp:http">
<data>{$QData}</data>
<headers>
<content-type>application/json</content-type>
</headers>
</options>
)
我正在使用 Ontotext GraphDB 来存储语义数据。
GraphDB 允许 store/save 公开为 Web 服务的 sparql 查询。
但是我想通过 HTTP POST 请求 store/save sparql 查询。下面是我的查询,查询的名称将是 Query-1
:
let $Query := fn:concat('PREFIX dc: <http://insert/>
INSERT DATA
{
dc:a@gmail.com dc:played dc:1234 .
}
')
let $EncodeUri := fn:encode-for-uri($Query)
任何人都可以帮我编写 HTTP-POST 请求命令来将此查询保存在 GraphDB 中吗?我只想使用 xdmp:http-post()
。
为了获得查询结果,我使用了 xdmp:http-get('http://localhost:8080//rest/sparql/saved-queries/Query-2')
,效果很好。
您可以执行 POST 请求来存储查询。 以下示例使用的是 curl:
curl -X POST http://localhost:8080/rest/sparql/saved-queries\
-H 'Content-Type:application/json'\
-d '{
"body": "select * { ?s ?p ?o }",
"name": "Query-2"
}'
您还可以找到有关 REST API 使用 GraphDB Workbench 的更多详细信息(管理 -> REST API 文档)
您似乎想通过 MarkLogic 创建并接收 Sparql 查询。您可以使用以下代码来实现它:
import module namespace sem = "http://marklogic.com/semantics" at "/MarkLogic/semantics.xqy";
let $Query := 'select * { ?s ?p ?o }'
let $QueryName := 'abcdef'
let $EncodesQuery := fn:encode-for-uri($Query)
let $QData := fn:concat('{
"body": "',$Query,'",
"name": "',$QueryName,'"
}')
return
xdmp:http-post(concat('http://localhost:9080/rest/sparql/saved-queries'),
<options xmlns="xdmp:http">
<data>{$QData}</data>
<headers>
<content-type>application/json</content-type>
</headers>
</options>
)