Hi,
We have several named graphs (triples physically loaded in the triple store) and we have created one virtual graph on a relational database. As the information in the virtual graph is completing what we have in one of the named graph, we need to combine both graphs in our queries.
If I am using the following syntax, I am able to combine the graphs and get all the triples.
select *
where {
{graph virtual://drm { http://www.com/organization/drm/1234 ?p ?o }}
union
{graph http://www.com/graphs/org { http://www.com/organization/drm/1234 ?p ?o }} }
But if I am using that other syntax, only the triples of the non virtual graph are returned. And there is a warning in the log.
select *
from virtual://drm
from http://www.com/graphs/org
where { http://www.com/organization/drm/1234 ?p ?o }
WARN 2019-06-26 13:49:35,916 [stardog-user-19] com.complexible.stardog.plan.optimizer.VirtualGraphProcessor:getDefaultVirtualGraph(119): There can only be a single virtual graph in the query dataset: {} [virtual://drm, http://www.com/graphs/org]
- Is there a way to make something like the second syntax working?
- And maybe also to add a second virtual graph in the query?
- Could that second virtual graph be non relational (MongoDB or Cassandra)?
Thanks!