0

我将数据库解析为 RDFlib 图。我现在想将此图中的三元组插入到 GraphDB 三元组存储中。当我在 Sesame 上托管的旧版本 GraphDB-Lite 上执行代码时,该代码运行良好。但是,在现在独立的 GraphDB 7.0.0 上执行相同的查询时出现错误。该图在引发错误之前被部分解析,并且插入的三元组确实显示在三元组存储中。

这是代码的一部分:

graphdb_url = 'http://my.ip.address.here:7200/repositories/Test3/statements'
##Insert into Sesame
        for s,p,o in graph1:
            pprint.pprint ((s,p,o))
            queryStringUpload = 'INSERT DATA {%s %s %s}'  %(s,p,o)
            # queryStringUpload = 'DELETE WHERE {?s ?p ?o .}'
            # print queryStringUpload
            sparql = SPARQLWrapper(graphdb_url)
            sparql.method = 'POST'
            sparql.setQuery(queryStringUpload)
            sparql.query() 

以下是错误:

ARQLWrapper.SPARQLExceptions.QueryBadFormed: QueryBadFormed: a bad request has been sent to the endpoint, probably the sparql query is bad formed. 

Response:
MALFORMED QUERY: Lexical error at line 1, column 93.  Encountered: "/" (47), after : "purl.org"

是什么导致了错误,我该如何解决?

4

1 回答 1

3

这是一个语法错误。我的 URI 以开头http:/而不是http://在某些地方开头。

于 2016-04-22T02:26:15.823 回答