2015年8月10日月曜日

TTLファイルのインポート

はじめに、ビルトーソにはTTLファイルのエクスポート機能は見当たりませんので、TTLファイルは独自にエクスポートしたものを使用しています。

TTLをインポートするには、画面からアップロードする方法と、コマンドからやる2通りの方法があります。

1つめの方法。
画面からインポートするには、コンダクターにログインして、Linked Data -> Quad Store Upload を選択します。そこからアップロードすることができます。こちらは画面を見ればわかると思います、簡単です。

2つめの方法。
コマンドからインポートするには、コマンドラインから、isqlと打ち込んでisql内で操作します。

TTLファイルを1つだけ取り込むにはこのコマンド。(SQL> はプロンプトです)
SQL> DB.DBA.TTLP_MT(file_to_string_output('ファイルの場所'),'','グラフ名');

例:
SQL> DB.DBA.TTLP_MT(file_to_string_output('/home/iastaff/ttl/public.ttl'),'','publicttl');


ディレクトリ内のすべてのTTLファイルを取り込む事もできるようです。
それは以下のサイト参照。
http://wiki.lifesciencedb.jp/mw/SPARQLthon19/TripleLoad#TTL.E3.81.AE.E3.83.AD.E3.83.BC.E3.83.89.28DB.DBA.TTLP_MT.29

しかし、複数のTTLファイルを取り込むのはいいけど、1つのグラフに入ってしまうようにも見えます。(試してません)


また、上記コマンドを実行した際に、以下のようにアクセス許可が無いよとエラーが出ることもあろうかと思います。(Allowかと思います。)

*** Error 42000: VD [Virtuoso Server]FA003: Access to '/home/hodade/ttl/public.ttl' is denied due to access control in ini file

そのときは、virtuoso.ini の DirsAllowedにアクセス許可するディレクトリをカンマ区切りで追加しましょう。

DirsAllowed              = ., ../vad, /home/hodade


その後、Virtuosoを再起動すると、この設定は反映されます。
isqlに入ってる場合は、一度isqlも抜けましょう。

以上です。