一つのVirtuosoに複数のRDFデータ(graph)をアップロードした時に、そのgraphごとに公開・非公開設定する方法は無いのかと模索していた。
$ isql #まず全体を非公開に SQL> DB.DBA.RDF_DEFAULT_USER_PERMS_SET('nobody',0); #特定のものを公開設定する SQL> DB.DBA.RDF_GRAPH_USER_PERMS_SET('http://example.com/', 'nobody', 1);
数値によってユーザに与えられる権限が変わるみたい。0だと完全非公開でconductorからもSPARQLエンドポイントからも検索できなくなるようだ。
virtuoso jdbc driver経由でプログラムからSPARQLかけることはできそうみたいな記事をどっかで見た気がするけど見失ってしまった。
参考:
How to hide graphs in a public endpoint in virtuoso ?