* Ivan Mikhailov
> 
> The parameter name should be "query=", not "update=" . In addition, the
> supported syntax is "original" SPARUL, not SPARQL 1.1 variant, so it's
> INSERT DATA IN <graph> { <triples> } .

This brought me a lot closer, but it's still not working, and I'm not really 
sure why:

query=INSERT+DATA++INTO+<http://example.com/G>{+<http://example.com/s>+<http://example.com/p>+"o"+}
send: 'POST /sparql/ HTTP/1.1\r\nHost: localhost:8890\r\nAccept-Encoding: 
identity\r\nContent-Length: 99\r\nContent-Type: 
application/x-www-form-urlencoded\r\n\r\n'
send: 
'query=INSERT+DATA++INTO+<http://example.com/G>{+<http://example.com/s>+<http://example.com/p>+"o"+}'
reply: 'HTTP/1.1 400 Bad Request\r\n'
header: Server: Virtuoso/06.02.3128 (Mac OS X) universal-apple-macosx10.5-32  
VDB
header: Connection: Keep-Alive
header: Date: Thu, 20 Jan 2011 15:42:25 GMT
header: Accept-Ranges: bytes
header: Content-Type: text/plain
header: Content-Length: 226
400
Bad Request
37000 Error SP031: SPARQL compiler: The query can be compiled and executed but 
not translated to an accurate SQL text

SPARQL query:
INSERT DATA  INTO <http://example.com/G>{ <http://example.com/s> 
<http://example.com/p> "o" }


The error message is rather confusing. If the query is OK (and it really is 
extremely basic), then why can't it be turned into SQL? Do I need to create the 
graph somehow first?

I tried that, which gave me:

SPARQL Request Failed
42000 Error SR186: No permission to execute procedure DB.DBA.SPARUL_CREATE.


Hmmmm. But what is the permission? I figured it might be SPARUL_CREATE, but 
that gives me:

*** Error 42000: [Virtuoso Driver][Virtuoso Server]U0002: The object 
"SPARUL_CREATE" does not exist.
at line 2 of Top-Level:
grant SPARUL_CREATE to "SPARQL"


I've looked through the manual and other documentation, but can't seem to find 
the necessary role. Any ideas?

-- 
Lars Marius Garshol
[email protected]





Reply via email to