Python:使用RDFLIB绘制Sesame数据库的图形

Nea*_*ers 5 python sesame graph graph-databases rdflib

是否可以使用RDFLIB绘制Sesame RDF数据库的图形?这是我试过的:

endpoint = "http://127.0.0.1:8080/openrdf-workbench/repositories/movies/explore?resource=%3Cfile%3A%2F%2Fmovies_export.rdf%3E"

from rdflib import Graph
g = Graph()
g.parse(endpoint) 
Run Code Online (Sandbox Code Playgroud)

这是错误:

Traceback (most recent call last):
  File "C:\Software\rdflib\movieGraph.py", line 10, in <module>
    g.parse(endpoint)
  File "c:\python26_32bit\lib\site-packages\rdflib\graph.py", line 756, in parse

    parser = plugin.get(format, Parser)()
  File "c:\python26_32bit\lib\site-packages\rdflib\plugin.py", line 89, in get
    raise PluginException("No plugin registered for (%s, %s)" % (name, kind))
rdflib.plugin.PluginException: No plugin registered for (application/xml, <class
 'rdflib.parser.Parser'>)
Run Code Online (Sandbox Code Playgroud)

我认为唯一的技巧是指定一个正确的URL来使Sesame返回.rdf xml布局.

问题的作者:转发到http://answers.semanticweb.com/questions/9414/python-using-rdflib-to-graph-a-sesame-database(见那里的答案)

Jee*_*tra 1

您的端点 URL 错误。它指向 Sesame Workbench,它不是 (SPARQL) 端点,而是客户端应用程序。任何 Sesame 数据库的 SPARQL 端点始终位于 Sesame 服务器上,并且等于存储库 URL。就你而言,可能是http://127.0.0.1:8080/openrdf-sesame/repositories/movies

看看您正在做的事情,我认为您不需要 SPARQL 端点,而只是想要导出完整的 Sesame 数据库。为此,您可以使用http://127.0.0.1:8080/openrdf-sesame/repositories/movies/statements. 有关详细信息,请参阅Sesame HTTP 通信协议。

(答案是从我自己在另一个网站上的答案复制的,为了完整性而发布在此处)