1.5.7. How can I see which quad storages exist and in which quad storage a graph resides?
Let's take for example a created Linked Data View from relational data in Virtuoso . The RDF output therefor should have two graphs which reside in a quad storage named for ex.:
http://example.com/rdfv_demo/quad_storage/default
Also the RDF is accessible over the SPARQL endpoint with the following query:
define input:storage <http://example.com/rdfv_demo/quad_storage/default> SELECT * WHERE { ?s ?p ?o }
Now one could ask is there a way to define internally (once) that the quad storage should be included in queries to the SPARQL endpoint? So that the user does not have to define the input:storage explicitly in each query, like this:
http://example.com/sparql?query=select * where { ?s ?p ?o }&default-graph-uri=NULL&named-graph-uri=NULL
All metadata about all RDF storages are kept in "system" graph <http://www.openlinksw.com/schemas/virtrdf#> ( namespace prefix virtrdf: ). Subjects of type virtrdf:QuadStorage are RDF storages. There are three of them by default:
SQL> SPARQL SELECT * FROM virtrdf: WHERE { ?s a virtrdf:QuadStorage }; s VARCHAR _______________________________________________________________________________ http://www.openlinksw.com/schemas/virtrdf#DefaultQuadStorage http://www.openlinksw.com/schemas/virtrdf#DefaultServiceStorage http://www.openlinksw.com/schemas/virtrdf#SyncToQuads 3 Rows. -- 3 msec.
-
virtrdf:DefaultQuadStorage
is what's in use if no input:storage specified.
-
virtrdf:DefaultServiceStorage
will be used for SPARQL federation.
-
virtrdf:SyncToQuads
is to keep the list of Linked Data Views that are translated into RDB2RDF triggers.
There are two ways of using the Linked Data View from above in SPARQL endpoint without define input:storage :
-
Create Linked Data View right in
virtrdf:DefaultQuadStorage
or add the view in other storage and then copy it from there to
virtrdf:DefaultQuadStorage
.
-
In any of these two variants, use:
SPARQL ALTER QUAD STORAGE virtrdf:DefaultQuadStorage . . .
-
-
Use
SYS_SPARQL_HOST
table as described here and set
SH_DEFINES
so it contains your favorite
define input:storage
.