【发布时间】:2017-11-01 15:45:42
【问题描述】:
我正在解析三元组文件并将三元组添加到我的本地三元组中。
代码片段:
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 个以上的值才能解压
【问题讨论】:
-
graph = graph.add(g)不起作用? -
@AKSW 不。已经试过了。
-
@RDangol,也许是
.addN()或类似的东西。 -
@StanislavKralin 那也没用
-
@RDangol 绑定并且没有添加图表或导致异常?从文档中,
Graph::__add__应该返回一个新图,它是当前图和另一个图的并集。
标签: python rdf linked-data rdflib