Web上に散在するLODのRDF語彙収集システム

人工知能学会研究会資料 SIG-SWO-035-10
Web 上に散在する LOD の RDF 語彙収集システム
RDF Class Vocabulary Collection System Over Linked Open Data
Sets Distributed in Web
大谷世紀 1∗ 藤本椋也 1
Seiki Otani1
Ryoya Fujimoto 1
年岡晃一 1
Kohichi Toshioka1
中部大学
Chubu University
1
1
Abstract: For information on the Internet, by using concepts defined in the format that can be
processed by machine, various researches have been made so that a computer understands the Web
contents. This is called the Semantic Web, and its practical way has been promoted as Linked
Open Data. When creating an application of interest dataset that was created as an LOD at other
places, the URL of a concerned LOD is required to use. However, in order to obtain the URL of
the LOD, some work like searching or collecting is required to the application author. Thus we
propose to create a system to have or collect the relationship between classes, the class itself and
its index into the LOD over all created LOD sites as many as possible. In this article, we present
an approach of collecting and sharing the class information created in different places, and those
information also is stored as another LOD dataset which can be retrieved by SPARQL.
1
はじめに
ることを実現する。
インターネット上の情報に対して、計算機が処理可
能な形式で概念定義を記述することで、より効率的に
意味情報を活用しようという研究が行われてきた。こ
れはセマンティック Web と呼ばれ、様々なプロジェク
ト [1][2] が進められている。その取り組みの 1 つとして
Linked Open Data(LOD) がある。LOD とはデータを
RDF 形式で記述し、Web 上にエンドポイントとして
公開することでデータを二次利用可能な形式にする取
り組みのことである。現在、LOD を利用した様々なア
プリケーションの開発が始められている。LOD を利用
したアプリケーションを作成する場合、利用する LOD
の URL が必要となる。しかし LOD の URL を得るた
めには、アプリケーションの作成者による検索や収集
といった労力が必要となる。また、Web 上に散在する
LOD に分散的に記述された概念定義を一元的に利用す
ることは難しい。
そこで LOD に格納されている RDF 情報の内、ク
ラスとクラス同士の関係を収集し、LOD へのインデッ
クスを作成するシステムを提案する。これにより利用
者は LOD の URL を得ることが出来る。また、各 LOD
に分散的に記述された概念や概念同士の関係を集約す
2
提案システム
本章では、提案システムの概要について述べる。図
1 はシステムの全体像である。提案するシステムは 1)
LOD の収集・管理、2)収集データを利用した LOD 検
索の2つのシステムによって構成される。これら2つ
のシステムと RDF レポジトリ及び WebAPI によって
Web サービスを展開する。
∗ 連絡先:
中部大学工学部情報工学科
〒 487-0027 愛知県春日井市松本町1200
[email protected]
10-01
図 1: システムの全体像
2.1
LOD 収集・管理システム
LOD アプリケーションを作成する際には、アプリ
ケーションで利用する LOD の URL が必要となる。し
かし、利用する LOD の URL が分からない場合、Web
上に散在する各 LOD を検索し、内部情報を調査する
必要がある。そこで提案システムでは、LOD の内部情
報を収集することを行う。インデックスを作成するた
めに、まず Web 上に散在する LOD の URL の収集を
行う。提案システムでは、2 種類の情報元から LOD の
URL の収集を行う。1 つ目は CKAN*1 や DATAHUB*2
などの HUB サイトに登録されている情報。2 つ目はシ
ステム利用者から投稿された情報である。これらの情報
源を用いて LOD の URL の収集を行う。このとき LOD
の URL の他に、LOD のタイトルやファイル形式等の
情報を収集する。
2.1.1
クラス情報の収集
ここでは LOD から RDF データのクラス及びクラ
ス同士の関係の収集について記述する。収集されるク
ラス情報にはクラス及びクラス同士の関係が対象とな
る。クラス同士の関係とは rdfs:subClassOf などの親
子関係や owl:equivalentClass などの同値関係のことで
ある。LOD 内の全ての情報を収集すること無く、ク
ラス情報に限定して収集することで、データの軽量化
を行う。提案システムではクラスと LOD の URL を
lodcu:describedIn というプロパティで結び付ける。こ
の lodcu:describedIn の関係を、クラスが記述されてい
る LOD へのインデックスとする。これらのインデック
スを用いて、クラスを探索軸とした LOD 情報の検索
を行う。これにより、利用者はクラスからクラスが格
納されている LOD の URL を得ることが出来る。収集
されたクラス情報は LOD の情報と共に、RDF レポジ
トリに格納される。最終的に RDF レポジトリに格納
される RDF データの形式を図 2 に示す。登録される
RDF データは大きく分けて 2 種類が存在する。1 つ目
はクラス及びクラス同士の関係などのクラス情報、2 つ
目は LOD の URL 等の LOD 情報である。
2.1.2
収集された LOD の管理
提案システム内には各 LOD 内のクラス情報が登録
されている。しかし、元の LOD 内部のクラス情報が
変更されると、登録されたクラス情報との差異が生じ
る。そのため、定期的にクラス情報を再収集する必要
がある。そこで、システム内に登録されている LOD 情
報を基にクラス情報の再収集を行う。
*1 *2 CKAN : http://ckan.org/
DATAHUB : http://datahub.io/
図 2: 格納される RDF データの形式
2.2
LOD 検索システム
LOD 検索システムにおいては、利用者から指定さ
れたクラスが記述されている LOD に対して SPARQL
検索を行い、クラスに関する情報を取得する。これを
LOD 検索と呼ぶ。LOD 検索を行う際にはまず、利用
者からクラスの URI を受け取る。次に、そのクラスが
記述された LOD のリストを 2.1 節で得られた情報の検
索によって取得する。そして、取得された各 LOD に対
して SPARQL 検索を行い、結果の統合を行う。以上を
もって、全世界の LOD からのクラスに基づいた情報
の取得を可能にする。
2.2.1
キーワードによる LOD 検索
クラスに基づいた情報の取得にはクラスの URI が必
要となる。しかし、URI は人間にとって可読な形式で
はないため、そのまま指定を行うのは難しい。そこで
提案システムでは、キーワードに基づいたクラスの検
索を行うことで、この問題を解決する。具体的には、利
用者から受け取ったキーワードに対して、URI 文字列
の一部又は、ラベルの一部が一致するクラスを LOD 検
索に使用するクラスとする。
2.2.2
各 LOD への SPARQL 検索
クラスが記述されている LOD が複数取得された場
合、各 LOD に対して SPARQL 検索を行い、情報を取
得する必要がある。しかし、複数 LOD への検索を各ア
プリケーションで実装するには、LOD ごとに検索を実
行し結果を統合するなど複雑な処理が必要となる。そ
こで提案システムでは、複数 LOD への横断検索を行
い統合された検索結果を返すことで、この問題を解決
する。
まず入力された SPARQL クエリ式の WHERE 文の
内容を用いて、各 LOD に対して CONSTRUCT を実
行する。これによって各 LOD から、検索対象となる
10-02
Triple を収集する。そして、収集された Triple に対し
て改めて SPARQL 検索を行うことで、複数 LOD への
横断検索を行う。これによって、各アプリケーション
では単一の LOD に検索を行うのと同様の処理で、複
数 LOD への検索を実装することが可能となる。
item
LOD 数
クラス数
subClassOf 関係
equivalentClass 関係
ラベル数
Triple 数
RDF ファイルに対する SPARQL 検索
2.2.3
LOD アプリケーションを作成する場合、LOD として
単に RDF のみが公開されている場合、直接 SPARQL
検索をすることが出来ない。提案システムでは、LOD
収集の際に RDF ファイル内データを RDF レポジトリ
にキャッシングすることを行う。利用者から RDF ファ
イルに対して SPARQL 検索リクエストがあった場合、
RDF レポジトリにキャッシングされたデータに対して
SPARQL 検索を行う。これにより RDF ファイルに対
する SPARQL 検索を可能する。
3
表 1: 収集された LOD の RDF 情報総数
LOD 収集結果
4.1
count 855
94,518
6,864
11,678
28,283
279,898
SPARQL Creator
SPARQL Creator*3 は、SPARQL クエリ式の生成
アプリケーションである。SPARQL エンドポイントの
URL を入力することで、自動的にエンドポイントに対
する SPARQL を生成する。しかし、利用者が SPARQL
エンドポイントの URL をもたない場合、アプリケー
ションを利用することが出来ない。そのため、提案シス
テムを利用することで、利用者が思いつくクラス概念
の表記文字列をクラス検索に適用することで SPARQL
エンドポイントの URL を得ることを行っている。図 3
は SPARQL Creator のトップページである。
本章では提案システムによって収集された結果を記
述する。提案システムでは CKAN 及び DATAHUB で
公開しているデータセットから以下のフォーマットの
ものを収集した。
• api / sparql
• example / rdf + xml
• application / rdf + xml
• application / rdf xml
• turtle
• text / turtle
図 3: SPARQL Creator TOP ページ
• ttl
また、CKAN 等以外にもシステム利用者の登録情報
を用いて収集を行った。最終的には 855 の LOD から
94,518 のクラスが収集されていることを確認した。表
1 に収集された結果を示す。表 1 からラベル数がクラ
ス数に比べ少ないことが分かる。これは本来 LOD 作
成者が定義すべきクラスの名称が適切に定義されてい
ない例が多かったためと考られる。
4
アプリケーション例
本章では提案システムを活用したアプリケーション
の例を示す。
4.2
LOD Window
LOD Window*4 は、RDF データのインスタンス情
報を可視化するアプリケーションである。様々な LOD
から、引き出されたインスタンスの情報を地図や様々
なグラフ形式で描画する。これにより各 LOD 内の個別
データ、つまりインスタンス属性値の表示を可能にす
る。Web 上に散在するクラスの検索を行う際に提案シ
ステムのクラス検索を用いている。検索されたクラス
URI 及びクラスが記述してある LOD を選択すること
*3 SPARQL Creator :
http://lodcu.cs.chubu.ac.jp/SCreator/
*4 LOD window :
http://lodcu.cs.chubu.ac.jp/lod window/
10-03
で、各 LOD ごとのクラスのインスタンス情報を確認す
ることが出来る。また、クラスのインスタンス情報の検
索も提案システムが行っている。図 4 は LOD window
のトップページである。
図 4: LOD window TOP ページ
5
まとめ
Web 上に散在する LOD の RDF 語彙収集システムを
提案した。従来まで LOD 利用者は複数の LOD の URL
を知らなくてはならなかったが、提案システムを利用す
ることで LOD 検索が可能になった。また、LOD の形
式に囚われず複数の LOD に対して同時に SPARQL 検
索が可能になった。クラス情報を収集することで、Web
上に散在する各 LOD が持つ概念や概念同士の関係を
集約することが出来た。
参考文献
[1] J.Lehmann, et al. ”Dbpedia-A Large-Scale, Multilingual Knowledge Base Extracted from Wikipedia”.
Semantic Web Journal, 2013.
[2] 藤本椋也 “ LOD クラウドとしての RDF サーバー ”,
人工知能学会研究会資料 SIG-SWO-A1202-02 ,2012 年
10 月.
10-04