Rameswara Sashi Kiran Challa wrote:
Hello All,

The way I used virtuoso is upload my file containing triples into triple store and with the Graph IRI I get, do sparql queries on that.

Can I append say a new set of triples related to already existing ones, like have a common Graph IRI for all the data I push into virtuoso store ??

The way I have been adding adding triples into my triple store was by using a WebDAV client where in I write the triples into a file and upload the file into virtuoso. I get new set of triples say everyday and I want to put them into the triple store, so how do I have to make sure that I push that data onto the same graph IRI so that I can query the whole content at once ?

Let's start with a sanity check: if you were using ttlp() to load data from file, then you could specify multiple files and one destination graph, and they would all be appended into it:

SQL> ttlp (file_to_string_output ('./foo-1.n3'), '', 
'http://mygraph.example.com');
SQL> ttlp (file_to_string_output ('./foo-2.n3'), '', 
'http://mygraph.example.com');
...
SQL> sparql select * from <http://mygraph.example.com> where { ?s ?p ?o . };
s                   p                                        o

http://localhost/   http://purl.org/dc/elements/1.1/title    This is from file 1
http://localhost/   http://purl.org/dc/elements/1.1/title    This is from file 2

2 Rows. -- 0 msec.

Now, if you insert RDF data by uploading files into WebDAV (eg via cURL), then the rdf_sink/ collection into which you deposit files needs two properties set (by code or through browser):
* virt:rdf_graph contains the name of the graph for uploads.
* virt:rdf_sponger points to the upload method (should be 'on')

So if you set virt:rdf_graph to a fixed graph IRI, it should also append data to that graph.

(See http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtuosoRDFSinkFolder as well.)

HTH,

~Tim
--
Tim Haynes
Product Development Consultant
OpenLink Software
<http://www.openlinksw.com/>
<http://twitter.com/openlink>

Reply via email to