Jena を使用してモデルからトリプルを削除しようとしましたが、成功しませんでした。主語、述語、および目的語が URI またはリテラルの場合はうまく機能しますが、匿名ノードの場合は機能しないようです。たとえば、モデル内の次のトリプルについて考えてみます。
_:A68d23cacX3aX13f793fa898X3aXX2dX7ffd <http://www.w3.org/1999/02/22-rdf-syntax-ns#value> "class" .
次を使用して削除したいと思います。
Node nodeSubject = Node.createAnon(); //or Node.ANY
Node nodePredicate = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#value");
Node nodeObject = Node.createLiteral("class");
Triple triple = Triple.create(nodeSubject, nodePredicate, nodeObject);
inMemModel.getGraph().delete(triple);
createAnon
またはを使用しても、トリプルを削除できませんNode.ANY
。コードを別のマシンで実行すると、同じ匿名 ID が生成されるとは思えないため、AnonId を使用したくありません。