BH13.13/SPARQLBuilder
提供:TogoWiki
目次 |
概要
RDF の検索は SPARQL で行うのが一般的です.しかしながら,SPARQL query を書くためにはその RDF のスキーマを知る必要があり,さらに,ユーザによっては SPARQL query を書くのが困難な場合もあります. そこで,半自動的に SPARQL query を作る SPARQL Builder の開発を目指します.
BH13.13 では,TogoTable 上で利用することを想定して,手元のデータに含まれる特定のクラスのURI群から欲しいクラスのデータを SPARQL endpoint を取り出す SPARQL query を書けることを目標としています.
開発用メモ(GoogleDoc)リンクを知っている人は誰でも編集可能 https://docs.google.com/document/d/1KFauK7wV3_SgSziEPK6annlgBk4kOrqSWXm4LUy51Qk/edit
開発用メモ用図 https://docs.google.com/presentation/d/1IeVB_7QsjvB7zMXHOba9OMrXLjP9hbMApGu-Owbwweo/edit?usp=sharing
1/29 ラップアップ用スライド https://docs.google.com/presentation/d/17GchFpOQvn0J3EqKIfUm5Wj1bEn4m2R1WsfRHe_sdx8/edit?usp=sharing
Trac http://kiban.dbcls.jp/sparqlbuilder/
リポジトリ http://kiban.dbcls.jp/svn/sparqlbuilder
Members (だいたい辞書順)
- 河野
- 呉
- 古崎
- 小林
- 山口
- 山中
議論
- 特定のリソースからRDF データをブラウズして目的のデータに辿り着くのは結構大変.辿り着かない可能性もあるのにえんえんとデータをブラウズするはめになる(効率が悪い).
- 一方,計算で目的のデータまでのパスを計算するのはデータ全体をクロールして計算しないと厳しい.
- すべてのインスタンスにクラスが紐付けられ,すべての述語にdomain,range が定義されていれば,インスタンスを辿らなくてもクラス情報と述語の domain, range 情報から,特定のリソースが属するクラスから目的のクラスへのパスを求めることができる.
- 次の三つのステップが現実的な解として考えられる,Step1. OWL 情報のみ利用したクラス間のパス,Step2. クラスが紐ついたインスタンスの情報を用いたクラス間のパス,Step3. クラスが紐ついたインスタンスの情報を用いたインスタンスとクラス間のパス
- GUI talk
- tree 構造表記
- ディレクトリ型
- 中心から広がる型
- パスのリスト
- tree 構造表記
作成目標
- 1. OWL が与えられた SPARQL endpoint に対して,始点クラスと終点クラスを入力すると,endpoint から入手した OWL を利用して,クラス間のパスの集合を計算して表示し,さらにパスごとのSPARQLを生成する
- 2. OWL がない SPARQL endpoint に対して,始点クラスと終点クラスを入力すると,クラスがついたインスタンスをたどってクラス間のパスの集合を計算して表示し,さらにパスごとの SPARQL を生成する
- 3. OWL がない SPARQL endpoint に対して,始点インスタンス(URL)と終点クラスを入力すると,クラスがついたインスタンスをたどってクラス間のパスの集合を計算して表示し,さらにパスごとの SPARQL を生成する
システム概要
- 入力: SPARQL endpoint, 始点クラス&終点クラス
- 始点クラス&終点クラスの指定はシステムが候補を提示する
- 始点クラスから終点クラスへのパス探索
- 必要なデータは都度 endpoint へ問い合わせる
- 探索されたパスを提示し,ユーザにひとつ選ばせる
- 選んだパスから SPARQL を生成する
- 生成された SPARQL で検索して,検索結果を表示
欲しい機能
- キーワードからのクラスの候補提示機能
- 含まれるリンク数提示機能
古い記事
SPARQL builder のprototypeを作ります。
step:
- 1. 入力:key word、schema; 出力:keyword を含めるconception(class)。
- 2. 入力: conception;出力:Properties。
例:
All soccer players, who played as goalkeeper for a club that has a stadium with more than 40000 seats and who are born in a country with more than 10 million inhabitant and who has scored。
入力:
dbpedia Schema;
?soccerPlayers belongedin ?club;
position "goalkeeper";
出力:
SoccerPlayer 及び properitie
- 3. userはproperitesを選択し、filterを入れる。
- 4. SPARQL を generate。
- 5. Refinement。
- 6. SPARQL を generate。
back to BH13.13