RDF Refine on Ubuntu 16.04
はじめに_
CSVファイルなどからRDFファイルを生成することができるツール RDF Refineを使える環境を用意する。
OpenRefineのRDF生成拡張のRDFRefineをインストールする。
参考サイト_
OpenRefine (旧 Google Refine)_
説明_
Open Refine(旧Google Refine)の使い方 〜導入・基本編〜よりOpenRefineの説明
Open Refineは、さまざまなデータをきれいに整形したり、欲しい形のものに変換したり、簡単な解析を行ったりすることができるソフトで、表計算ソフトExcelにはないさまざまな機能を持っています。
元はGoogleのコンテンツで、Google Refineという名前で知られていましたが、2012年10月にオープンソース化され、Open Refineに改称されました。2012年2月現在、Google RefineからOpen Refineへの過渡期にあり、多くの情報はまだGoogle Refineのままとなっています。
配布元は以下のサイト
事前にインストールすべきもの_
事前にJDKのインストールが必要。Ubuntu 16.04の場合、以下のソフトウェアをいれていたらそのまま動いた。
% sudo aptitude install openjdk-8-jdk openjdk-8-jdk-headless
環境変数 JAVA_HOME を設定する。bashを使っている場合は .bashrc に以下を追加する(zshを使っている場合は .zshrc か .zshrc.mineに追加する)
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre
その後、環境変数を読み込む
% source ~/.bashrc # bashの場合 % source ~/.zshrc # zshの場合
設置_
GitHub: OpenRefineの「Latest Beta 2.7 rc2 - Recommended」をクリックし、openrefine-linux-2.7-rc.2.tar.gz をダウンロードする。
% tar xvfz openrefine-linux-2.7-rc.2.tar.gz % cd openrefine-2.7-rc.2 % ./refine
ブラウザが起動し、OpenRefineの画面が表示される。終了させるときには Ctrl-c で終了する。
RDFRefineの設置_
配布元は以下のサイト
OpenRefine 2.7に対応しているのはGitHub: grefine-rdf-extension (alpha) Open Refine 2.6 compatibleであるので、orefine-rdf-extension-0.9.zip をダウンロードする。
ダウンロードしたファイルがホームディレクトリにあるとする。
% cd openrefine-2.7-rc.2/webapp/extensions % unzip ~/orefine-rdf-extension-0.9.zip % ls -1 __MACOSX/ gdata/ jython/ orefine-rdf-extension-0.9/ pc-axis/ sample/ % cd ../../ % ./refine
OpenRefineのページがブラウザで開くはず。
RDF作成のデモ_
RDFRefine:RDF exportに従い、CSVファイルからのRDFの作成&エクスポートを試してみる。
まず、RDFRefine:RDF exportのページにあるCSVファイルのリンク(high-earners-pay.csv)をダウンロードする。
次にOpenRefineのページ「Create Project」の「This Computer」をクリックする。このページで、ダウンロードしたCSVファイルを読み込む

「Project name」のテクストフィールドに任意のプロジェクト名を入力する。そして「Create Project」をクリックして、プロジェクトを生成する

生成されたプロジェクトの画面は以下の画面のとおり。

RDFスケルトン(RDF skelton)を定義する。プロジェクトの右側にある「RDF」のドロップダウンリストをクリックし、「Edit RDF Skelton」を選択する。

以下の画面はRDFスケルトンを編集済みの画面。以下の画面のように「add rdf:type」や「add property」をクリックして、主語や目的語の設定や、述語の定義を行う。

「add property」をクリックすると、以下のように入力フィールドが開き、取り込み済みの述語の候補が表示される。RDFスケルトンの編集がおわったならば、右下の「save」で保存し、「OK」で編集を終了する。

プロジェクトの右上のプルダウンリスト「Export」をクリックし、「RDF as Turtle」を選択する。すると、RDFがTurtle形式で保存される。

保存されたTuetle形式のRDFは以下のとおり(一部)
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix foaf: <http://xmlns.com/foaf/0.1/> . <http://127.0.0.1:3333/Asset+Protection+Agency> a foaf:Organization ; foaf:name "Asset Protection Agency" . <http://127.0.0.1:3333/0> a foaf:Person ; foaf:name "Stephan Wilcke" ; foaf:title "Chief Executive Officer" ; <http://127.0.0.1:3333/anualPayRate> "£150,000 - £154,999" . <http://127.0.0.1:3333/Asset+Protection+Agency> foaf:member <http://127.0.0.1:3333/0> . <http://127.0.0.1:3333/1> a foaf:Person ; foaf:name "Jens Bech" ; foaf:title "Chief Risk Officer" ; <http://127.0.0.1:3333/anualPayRate> "£165,000 - £169,999" . 〜以下、略〜
作成したRDFファイルは、Virtuosoに格納できる。
自分が作成した語彙の追加_
語彙をWebページとして置いている場合_
FOAF Vocabulary Specification 0.99のファイルを例に試してみる。まず、http://xmlns.com/foaf/spec/index.rdfをダウンロードし、自分が制御できるWebサーバに置く。今回は http://www.aise.ics.saitama-u.ac.jp/~gotoh/my_foaf に置くことにする。
www.aise.ics.saitama-u.ac.jp のサーバの~/public_html 以下に my_foafディレクトリを作成する。サーバ上にログインする。
% cd % cd ~/public_html % mkdir my_foaf % cd my_foaf % wget http://xmlns.com/foaf/spec/index.rdf
http://www.aise.ics.saitama-u.ac.jp/~gotoh/my_foaf/index.rdf にアクセスして、index.rdfの中身を閲覧できるか確認する。
次に RDF Refineにて作業する。上のデモにおける「RDFスケルトン(RDF skelton)を定義する」ところまで作業をすすめる。

「add prefix」をクリックする。すると、以下のウィンドウが開くので「prefix」の部分に他のprefixと被らない任意のprefixを入力する。今回は my_foaf としている。URLの部分に語彙のあるURLを記述する。今回の例では http://www.aise.ics.saitama-u.ac.jp/~gotoh/my_foaf となる。最後のスラッシュ(/)を入れるとうまく動かなかった。

「manege prefixes」で登録されていることを確かめる。

実際に述語(property)を入力してみる。以下のように対応する述語が表示される。
