File "<console>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/django_gstudio-0.3.dev-py2.7.egg/gstudio/testing1.py", line 129, in rdf_description
store.add(self,(subject, predicate, object),context)
File "/usr/local/lib/python2.7/dist-packages/rdflib-3.2.0-py2.7.egg/rdflib/plugins/memory.py", line 298, in add
Store.add(self, triple, context, quoted)
File "/usr/local/lib/python2.7/dist-packages/rdflib-3.2.0-py2.7.egg/rdflib/store.py", line 177, in add
def add(self, (subject, predicate, object), context, quoted=False):
in
store.add(self, (subject, predicate, object), context, quoted=False)
質問する
410 次
1 に答える
2
AFAIK - rdflib は 4store をサポートしていません。curl
しかし、python と 4store SPARQL Serverを使用してトリプルを簡単にアサートできます。ここに例があります:
import subprocess
command = ["curl","-s",
"-T","/some/file/with/triples",
"-H","Content-Type: application/x-turtle",
"http://localhost:port/data/http://graph.to/save/triples"]
p = subprocess.Popen(command,stdout=subprocess.PIPE,stderr=subprocess.PIPE)
output, err = p.communicate()
ret = p.poll()
if ret <> 0:
raise Exception, "Error asserting triples"
この例では、コンテンツ タイプはturtlentriples
ですが、他の RDF シリアル化 ( 、 )を使用できますrdfxml
。
サブプロセスを処理したくない場合は、この呼び出しをurllib/urllib2
関数に変換することもできます。
4store SparqlServer documentationには、さらに多くの例があります。また、必要に応じて、任意のPython 4store クライアント ライブラリを使用できます。
于 2012-03-15T16:22:45.233 に答える