python - 在 4store 中添加三元组

标签 python debian sparql 4store

这里的 url_add 是一个链接,其中包含我想存储在 4store 中的 rdf 三元组。但是如果我将 url_add 作为参数传递,它会生成 Relative URIerror。

那么我可以将 url_add 仅作为参数传递的方式是什么。

response = store.add_from_uri('url_add')

追溯(最近的调用最后):

文件“”,第 1 行,在

文件“/usr/local/lib/python2.7/dist-packages/django_gstudio-0.3.dev-py2.7.egg/gstudio/testing1.py”,第 152 行,在

response = store.add_from_uri('url_add')

文件“/usr/local/lib/python2.7/dist-packages/django_gstudio-0.3.dev-py2.7.egg/gstudio/HTTP4Store/HTTP4Store.py”,第 74 行,在 add_from_uri 中

r_obj = self.rh.GET(uri, headers=headers)

GET 中的文件“/usr/local/lib/python2.7/dist-packages/django_gstudio-0.3.dev-py2.7.egg/gstudio/HTTP4Store/utils.py”,第 53 行

return self._request("%s" % (path), method="GET", headers=headers)

文件“/usr/local/lib/python2.7/dist-packages/django_gstudio-0.3.dev-py2.7.egg/gstudio/HTTP4Store/utils.py”,第 92 行,在 _request 中

resp, content = self.h.request(path, method, headers=headers, body=data)

请求中的文件“/usr/lib/python2.7/dist-packages/httplib2/init.py”,第 1297 行 (方案, 授权, request_uri, defrag_uri) = urlnorm(uri)

文件“/usr/lib/python2.7/dist-packages/httplib2/init.py”,第 204 行,在 urlnorm 中 raise RelativeURIError("Only absolute URIs are allowed. uri = %s"% uri)

RelativeURIError:只允许使用绝对 URI。 uri = url_add

最佳答案

您的网址的值(value)是多少

它抛出异常,因为您传递的是相对 URL 而不是绝对 URL(您可能有类似“../../directory/filename.rdf”的内容

如果您的 url 是一个 HTTP url,例如 (http://host/filename.rdf) 和 dereferenceable 那么您也可以使用 LOAD 指令作为 SPARQL 更新的一部分。因此,这只是意味着使用以下表达式执行 SPARQL 查询(与使用 4store 执行 SPARQL 查询的方式相同):

LOAD <http://host/filename.rdf>
INTO GRAPH <http://optional-name-of-graph>

关于python - 在 4store 中添加三元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9816580/

相关文章:

Python - 获取根项目结构的路径

python - 根据另一列记录一列的值 : Python & Pandas

linux - 将 Linux 应用程序复制到另一个 Linux 操作系统

linux - 为什么我的程序存储器写入速度比读取速度快?

java - Sparql 查询,获取输出

sparql - SPARQL 查询中两个选择的并集

python - 删除另一个列表中存在的列表中值的数据框行

Python:性能测试,确保清理

linux - 使用 grep 搜索包含一些文本的文件

sparql - 使用 SPARQL 从 Turtle 文件中提取同义词和标签