在Jena中以编程方式创建BIND子句

时间:2017-03-26 10:30:12

标签: java sparql rdf jena

如何创建BIND子句并将其添加到ElementGroup,例如,假设我有一个节点并希望将其绑定到变量。在SPARQL中,这样的语句可能表示为:

BIND ( IRI("http://www.example.com/x") as ?x)

假设我已经有一个节点:

Node x = NodeFactory.createURI("http://www.example.com/x");

那么,我如何以编程方式创建这样的子句并将其添加到ElementGroup

1 个答案:

答案 0 :(得分:2)

最后,除了由于缺乏文档之外,并没有那么困难,

简单如下:

ElementGroup elg = .... ;
Node mainSubjectNode = NodeFactory.createURI("http://www.example.com/x");
ElementBind x = new ElementBind(Var.alloc("asd"),NodeValue.makeNode(mainSubjectNode));
elg.addElement(x);