1

この質問は Blazegraph Java サンプルに関連しています。NOT EXISTSSPARQL句を含むルールを作成したいと考えています。この Blazegraph ルール サンプルは、 をチェックする制約句を提供しますIsLiteral()。次の機能を提供するルールを実装したいと考えています。

?a rdf:type xyz:T .
filter(not exits(?a xyz:p ?o)) .
->
?a xyz:q xyz:T

com.bigdata.rdf.internal.constraintsで適切なクラスを確認しましたが、 (および)BOpをサポート するクラスが見つかりません。オペレーターを見つけました。EXISTMINUSNOTNotBOp()

ExistsBOp架空の関数で作成したい制約は次のとおりです。

new IConstraint[] { // constraints
    // you can use SPARQL value expression bops in inference by wrapping them with an InferenceBVE
    Constraint.wrap(new InferenceBVE(new NotBOp(new ExistsBOp(var("a"), vocab.getConstant(XYZ.q), vocab.getConstant(XYZ.T))))
}

制約を達成する別の方法はありますか?

4

0 に答える 0