0

Jena トリプル ストアを使用するサーバーを開発しています。サーバーは Python で開発されており、実行するさまざまな操作を処理するために SPARQLWrapper ライブラリを使用しています。ストアのクエリ (SELECT 操作) とトリプルの作成 (INSERT DATA 操作) に問題はありませんでした。DELETE 操作の場合は、もう少し注意が必要です。私は実行しようとしています:

q= 
'PREFIX pref:<url>
 DELETE {?s ?p ?o}
WHERE {
 ?s a  pref:class.
}'

URL /updateで。操作は OK (HTTP コード 200) であるという応答を受け取りましたが、トリプルはまだストアにあります (SELECT 操作によってチェックされています)。

wrapper = SPARQLWrapper(<my_url>/update)
wrapper.setMethod('DELETE')
wrapper.query(q)

さまざまな HTTP 動詞 (POST、DELETE) を試してみて、違いがあるかどうかを確認しましたが、何も変わりませんでした。

また、 --update オプションを指定して、fuseki-server を実行しています。

4

1 に答える 1

0

変数 ?p と ?o を定義する必要があります

例えば:

DELETE {?s ?p ?o}
WHERE {
 ?s ?p ?o .
 ?s a  prefix:class
}

こちらもご覧ください

于 2017-11-08T12:18:20.123 に答える