Hello Anton, The common practice is to compose a dictionary of triples to be deleted, using SPARQL construct statement, then convert the dictionary into array then pass the array as a parameter to RDF_DELETE_TRIPLES.
create procedure DELETE_PERSONAL_DATA (in foaf_graph varchar) { declare pdata_dict, pdata_array any; pdata_dict := ((sparql construct { ?s ?p ?o } where { graph ?:foaf_graph { ?s ?p ?o . ?s rdf:type <http://xmlns.com/foaf/0.1/Person> } } )); pdata_array := dict_list_keys (pdata_dict, 1); RDF_DELETE_TRIPLES (foaf_graph, pdata_array); }; DELETE_PERSONAL_DATA ('http://local.virt/DAV/sparql_demo/data/data-xml/source-simple2/source-data -01.rdf'); But in most cases the application deletes from RDF_QUAD by using simple filters like delete from DB.DBA.RDF_QUAD where G = DB.DBA.RDF_MAKE_IID_OF_QNAME ('http://local.virt/DAV/sparql_demo/data/data-xml/source-simple2/source-data -01.rdf'); I'll add the above sample to the User's Guide if you find it useful. Best Regards, Ivan Mikhailov, OpenLink Software. www.openlinksw.com -----Original Message----- From: virtuoso-users-boun...@lists.sourceforge.net [mailto:virtuoso-users-boun...@lists.sourceforge.net] On Behalf Of Anton Krasovsky Sent: Friday, August 04, 2006 5:26 AM To: virtuoso-users@lists.sourceforge.net Subject: [Virtuoso-users] Removing triples from store Hi, Is there any examples using RDF_DELETE_TRIPLES? I'm looking for API to add/remove individual triples from store, so far I was able to add triples using RDF_QUAD_URI/RDF_QUAD_URI_L but its a bit unclear how to remove triples. Regards, Anton