如何从芝麻数据库的特定上下文导出rdf?
How to export rdf from a specific context for sesame database?
我设法从芝麻数据库中输出语句。当我导出时,它将从该存储库中导出整个数据集。有什么方法可以只从特定上下文中导出吗?
endpoint = "http://localhost:8080/openrdf-sesame/repositories/reference/statements"
from rdflib import Graph
g = Graph()
g.parse(endpoint)
import pprint
outputfile = open("d:\testrdfexport" + ".rdf", "w")
for stmt in g:
pprint.pprint(stmt, outputfile)
有多种方法可以做到这一点,但最简单的方法是在您的请求中添加一个 context
参数。这个参数的值应该是你要提取的上下文的 IRI,在 N-Triples 语法中(即它周围有尖括号):
<http://example.org/context1>
完整的请求(使用正确的编码)然后变成:
http://localhost:8080/openrdf-sesame/repositories/reference/statements?context=%3Chttp%3A%2F%2Fexample.org%2Fcontext1%3E
其他方法正在使用等效的图形存储协议操作(基本上是一个替代的 REST API 调用,它做完全相同的事情),或者除了执行导出操作之外,您当然也可以执行 SPARQL ( CONSTRUCT) 从特定命名图中检索数据的查询。
我设法从芝麻数据库中输出语句。当我导出时,它将从该存储库中导出整个数据集。有什么方法可以只从特定上下文中导出吗?
endpoint = "http://localhost:8080/openrdf-sesame/repositories/reference/statements"
from rdflib import Graph
g = Graph()
g.parse(endpoint)
import pprint
outputfile = open("d:\testrdfexport" + ".rdf", "w")
for stmt in g:
pprint.pprint(stmt, outputfile)
有多种方法可以做到这一点,但最简单的方法是在您的请求中添加一个 context
参数。这个参数的值应该是你要提取的上下文的 IRI,在 N-Triples 语法中(即它周围有尖括号):
<http://example.org/context1>
完整的请求(使用正确的编码)然后变成:
http://localhost:8080/openrdf-sesame/repositories/reference/statements?context=%3Chttp%3A%2F%2Fexample.org%2Fcontext1%3E
其他方法正在使用等效的图形存储协议操作(基本上是一个替代的 REST API 调用,它做完全相同的事情),或者除了执行导出操作之外,您当然也可以执行 SPARQL ( CONSTRUCT) 从特定命名图中检索数据的查询。