首页 文章

RDFlib:批量添加三元组到图表

提问于
浏览
3

我正在解析三重文件并将三元组添加到我的本地三元组中。
代码片段:

graph = ConjunctiveGraph('Sleepycat')
graph.open("mytriplestore", create=False)
g = Graph()
g.parse("filename.ttl", format="ttl") 
for t in g:
    graph.add(t)

而不是迭代每个三元组,是否可以将解析后的内容批量添加到三元组中?

到目前为止我尝试了什么:
尝试 1:

graph.add(g)

错误:

File "/usr/local/lib/python2.7/dist-packages/rdflib/graph.py", line 1345, in add
s,p,o,c = self._spoc(triple_or_quad, default=True)
File "/usr/local/lib/python2.7/dist-packages/rdflib/graph.py", line 1326, in _spoc
return s,p,o,c
UnboundLocalError: local variable 's' referenced before assignment

尝试 2:

graph.addN(g)

错误:

File "/usr/local/lib/python2.7/dist-packages/rdflib/graph.py", line 1363, in addN
(s, p, o, self._graph(c)) for s, p, o, c in quads if
File "/usr/local/lib/python2.7/dist-packages/rdflib/store.py", line 221, in addN
for s, p, o, c in quads:
File "/usr/local/lib/python2.7/dist-packages/rdflib/graph.py", line 1363, in <genexpr>
(s, p, o, self._graph(c)) for s, p, o, c in quads if

ValueError:解包需要 3 个以上的值

1 回答

  • 0

    添加图表应该可以解决问题:

    graph += g
    

相关问题