%META:TOPICPARENT{name="VOSIndex"}%
---+Usage of the Sponger Middleware via REST patterns
---++What?
How to interact with the Sponger via REST patterns.
---++Why?
Delegation and proxies are part of the Internet and Web's federated architecture. Thus, developers of RESTful applications benefit immensely from the ability to leverage Sponger functionality via delegation to it as a proxy.
---++How?
The following table presents list of the supported URL parameters:
|*Parameter*|*Value*|*Description*|*Example*|
|refresh| clean |Usage: for overwriting.
The 'clean' usage explicitly clears the graph i.e. will cause the Sponger to drop cache even if it is marked to be in the fly.
Thus, if fetched cache by some reason is left in some inconsistent state like shutdown during Network Resource fetching, then 'clean' is required as it doesn't check cache state.
Note: must be used with caution as other threads may be doing fetching of network resources at same time. | [[http://linkeddata.uriburner.com/about/html/http://linkeddata.uriburner.com/about/id/entity/http/twitter.com/kidehen?@Lookup@=&refresh=clean][Explicitly clear the graph]]|
|sponger:get|add |Usage: Add new triples to named graphs, progressively. This is the default value for the parameter sponger:get
. May be used together with refresh=<seconds> to overwrite the expiration in the cache. | [[http://linkeddata.uriburner.com/about/html/http://linkeddata.uriburner.com/about/id/entity/http/twitter.com/kidehen?sponger:get=add&refresh=10][Add new triples and refresh on every 10 seconds]]|
|sponger:get|soft |Usage: Network Resource Fetch data subject to cache invalidation mode and associated rules of instance. May be used together with refresh=<seconds> to overwrite the expiration in the cache. | [[http://linkeddata.uriburner.com/about/html/http://linkeddata.uriburner.com/about/id/entity/http/twitter.com/kidehen?sponger:get=soft&refresh=10][Network Resource Fetch data with option soft and refresh on every 10 seconds]]|
|sponger:get|replace |Usage: Replace subject to cache invalidation mode and rules, but coverage includes non fetched triples if such exist in a given named graph. may be used together with refresh=<seconds> to overwrite the expiration in the cache. | [[http://linkeddata.uriburner.com/about/html/http://linkeddata.uriburner.com/about/id/entity/http/twitter.com/kidehen?sponger:get=replace&refresh=10][Replace data and refresh on every 10 seconds]]|
---++Related
* [[VirtSpongerCartridgeProgrammersGuide_Part3][Sponger Queue API]]
* [[http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html][Technical White Paper]]
* [[VirtSpongerCartridgeSupportedDataSources][Supported Virtuoso Sponger Cartridges]]
* [[SPARQLSponger][SPARQL Sponger]]
* [[http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSpongerCartridgeProgrammersGuide#RDF%20Proxy%20Service][Virtuoso Linked Data Middleware REST Patterns]]
* [[VirtSpongerCartridgeSupportedDataSourcesMetaRESTExamples][Parametrized Examples of Meta Cartridge Usage via REST Request]]
* [[VirtSpongerCartridgeRDFExtractor][Sponger Cartridge RDF Extractor]]
* [[RDFMappers][ Extending SPARQL IRI Dereferencing with RDF Mappers]]
* [[VirtSpongerCartridgeProgrammersGuide][Programmer Guide for Virtuoso Linked Data Middleware ("Sponger")]]
* [[VirtProgrammerGuideRDFCartridge][Create RDF Custom Cartridge Tutorial]]
* [[VirtSpongerCartridgeSupportedDataSources][OpenLink-supplied Virtuoso Sponger Cartridges]]
* [[VirtAuthServerUI][Virtuoso Authentication Server]]
* [[VirtOAuthSPARQL][Virtuoso SPARQL OAuth Tutorial]]
* [[VirtSpongerACL][Virtuoso Sponger Access Control List (ACL) Setup]]
* [[VirtSPARQLSecurityWebID][WebID Protocol & SPARQL Endpoint ACLs Tutorial]]
* [[http://docs.openlinksw.com/virtuoso/virtuososponger.html][Virtuoso Documentation]]