Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
データソン
&ミニ・ハッカソン
LODチャレンジ実行委員会 関西支部長
/大阪大学 産業科学研究所
古崎 晃司
kozaki@ei.sanken.osaka-u.ac.jp
LOD Challenge Day KOBE
2015/09/12
利用するオープンデータ(例)
 「CSV形式」のファイルを利用します
 最初の1行に「データの項目」
2行目以降に各データが記入されているもの
 不要な行など,が入っているものは使えません
 利用できるオープンデータの例
 大阪市の「...
LODを公開するための作業
 1.公開するLODを用意する
 CSV形式のオープンデータをRDF形式に変換する
 外部のLODへのリンクを追加する
 2.RDFファイルをサーバにアップする
 方法(1):Webサーバに「単一のファイル...
既存データをRDF化する方
法
 RDFデータを作成するツールを使用
 Open Refine(http://openrefine.org/)+
RDF Refine(http://refine.deri.ie/)
 データを整備・公開す...
本日,利用するツール
 CSV2LOD~RDF変換支援ツール~
 今回のイベントのために,鋭意作成!
 プロトタイプなので,ご意見大歓迎!
 なんでもリンク
 任意のSPARQL Endpointを利用して,LOD間の
リンクを作る為...
ツール開発の動機
 Linked Dataの基本原則に沿ったLODを,誰でも,(ある程度)
簡単に作成できるツールを提供したい
 元データ(CSV)の編集を,極力,減らしたい
 データが更新されたら,すぐに再変換したい
 →元データと変...
使用するツール①
CSV2LOD~RDF変換支援ツール
~
2015/9/13 LOD Challenge Day KOBE 2015 7
http://lodosaka.jp/tool/CSV2LOD/
使用するツール②
なんでもリンク
2015/9/13 LOD Challenge Day KOBE 2015 8
http://link.lodosaka.jp/
CSV2LODの作業手順
 作業の手順
1. 元データ(CSV形式)を選択して読み込む
2. RDFが出力される(今回はTurtle形式のみ)
 Webサーバーに公開(こちらで作業します)
 RDFデータベースに登録(皆さんで作業)
3....
CSVファイルの読み込み
1. 「ファイルを選択」ボタンで,あらかじめ用意し
ておいたCSVファイルを選択する
2. 「CSVファイル読み込み・プレビュー」ボタンを
押し,正しく読み込めることを確認する
2015/9/13 LOD Challe...
CSVのプレビュー結果
(例)
2015/9/13 LOD Challenge Day KOBE 2015 11
CSVファイル読み込み時の注意
 文字コードは自動判定されます
 USBに格納しているオープンデータについては動作
確認済み
 ファイルサイズが大きい(200KB以上?)と読
み込めない場合があります
 テキストエディタ等で開いて,「テ...
テンプレート作成①
メタデータの入力
 変換するデータに関する基本情報を入力する
2015/9/13 LOD Challenge Day KOBE 2015 13
ベースIRI
:作成するRDFデータでIDに用いるIRI
(URI)の設定
ラ...
今日のハンズオンでは
 ベースIRI
 http://data.lodosaka.jp/lodc-
kobe2015/kobe/institution01_20141128 のように
http://data.lodosaka.jp/lodc...
ベースIRI(URI)とは,
 ベースIRIとは,
 RDFにおいてIDとするIRIを決める際に基準とするIRI
 例)DBpedia Japaneseの場合は
http://ja.dbpedia.org/resource/大阪府
↑この...
ベースIRI(URI)の決め方
 各データへはベースIRIによって決まるIRIでア
クセスされるので,
 データの公開者が管理している(できる)IRI
 データを公開する際に用いるIRI(URL)
を用いることが望ましい
 # と / ...
テンプレート作成②
プロパティ(語彙)の設定
2015/9/13 LOD Challenge Day KOBE 2015 17
「プロパティ選択表示」ボタンを押すと,
RDF変換で用いる語彙の候補が推薦される
推薦に用いる
語彙の選択
推薦され...
語彙選択の考え方
 ID列
 CSVファイル内で「一意のID」となる項目があれば,「ID列」として選択する
 なければ「IDを自動付与」を選択する
 プロパティ
 適切な語彙が推薦されていたら選択
 それ以外の語彙を利用する場合は「...
共通語彙
Schema.org http://schema.org/docs/schemas.html
Schema.org(日本語訳サイト) http://schema-ja.appspot.com/
共通語彙基盤(IMI) http://i...
語彙の推薦について
 現状では,推薦できる語彙は「ごく一部」のも
のに限られています
 共通語彙基盤には未対応です.
 今後,対応する語彙は順次増やす予定です
2015/9/13 LOD Challenge Day KOBE 2015 20
RDFファイルへの変換
2015/9/13 LOD Challenge Day KOBE 2015 21
• 「テンプレート生成/更新」:設定した情報に基づい
てCSVをRDFに変換するテンプレートを作成する
• 「テンプレートのダウンロード」...
RDFファイルへの変換結果
2015/9/13 LOD Challenge Day KOBE 2015 22
 変換結果は下記のように表示される
 「ファイル名」を入力し「RDFファイルのダウンロード」ボタンで
RDFをダウンロードできる
...
保存したRDFテンプレートの利
用
 ダウンロードした「RDF変換テンプレート」を読み込んで利
用することも可能
 同じ形式のCSVファイルが複数ある場合に有効
 設定画面へは反映されないため「テンプレート生成/更新」ボ
タンを押すと,読...
LOD公開①:Webサイト
 作成したRDFファイルをWebサイトで公開する
 今回は,イベント用のWebサイトに公開
 公開するURLは,
http://data.lodosaka.jp/lodc-kobe2015/自治体名/
※自治体...
LOD公開①:Webサイト
1. FTPクライアントへログイン
 https://webftp.heteml.jp/ を利用
 ユーザー名: ※試したい方はメールでお問い合わせ下さい
 パスワード: →kozaki@ei.sanken.o...
LODの閲覧
 ①Webブラウザでの閲覧
 WebブラウザのURL欄に
 http://data.lodosaka.jp/lodc-
kobe2015/kobe/institution01_20141128#1
 のように,IRIを入れ...
Webサーバの設定
 Webサーバの.htaccesファイルで
 RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !.[^/.]+$
RewriteRule .* %{RE...
LODの公開②
DBへのRDFデータの登録
 DBにアクセス(本イベント限定のテスト用)
 http://lod.hozo.jp/repositories/lodosaka
 ※アプリ作成時には,これがSPARQL EndpointのUR...
RDFデータのダウンロード・公開
DBへのRDFデータの登録
2015/9/13 29
RDFを格納するGraph名の指定
Context:欄に
<http://data.lodosaka.jp/lodc-kobe2015/kobe/insti...
DBへ登録したRDFデータの確
認
2015/9/13 LOD Challenge Day KOBE 2015 30
Query > new
でクエリ入力画面へ
SELECT ?s ?p ?o
FROM <http://data.lodosak...
外部LODとのリンク
1. なんでもリンクにアクセス
2. オープンデータ(CSV)を開き「名称」に相当する列をコ
ピー
3. なんでもリンクの入力欄にペースト
 「SPARQLエンドポイント」欄に記入すれば,任意のエンドポイ
ントを利用可能...
外部LODとのリンク
5. エクセル等で開き(文字コードの関係で開き方
に工夫がいるかも),元のオープンデータにマッ
ピング情報をコピー&ペースト
 項目名は「参照」としておくと良い
6. CSV2LODでオープンデータをRDFに変換
 マ...
簡単な可視化アプリ
 Leaflet Simple SPARQL (by上田洋さん)
 緯度経度を含む情報を,OpenStreetMap上に表示する.
 ソースコード&解説
https://github.com/uedayou/leafl...
可視化の手順
1. プログラムのダウンロード
 https://github.com/uedayou/leaflet-simple-sparql
から「Download ZIP」でソースファイルをダウンロードする
2. 設定ファイルの書き換え...
その他のSPARQLを使ったアプ
リ
 SPARQLクエリを書き換えるだけで、いろんな可視化が
できるツールの紹介
• 上田洋さんが作成されたSPARQLアプリ(※)
http://uedayou.net/sparql-mashup/#app...
参考資料
2015/9/13 LOD Challenge Day KOBE 2015 36
SPARQLによるRDFの検索
 SPARQL
 RDFデータに対するクエリ言語
 「指定したグラフ構造」に一致するトリプルを検索する
 最も基本的な検索
select *
where {
?s ?p ?o .
}
LIMIT 100 ...
簡単なクエリ例
 すべてのデータを取得
 select * where {?s ?p ?o} LIMIT 100
 ?s と?pの組み合わせを取得
 select distinct ?s ?p where {?s ?p ?o} LIMI...
SPARQLの検索例①
 「東京都を主語(Subject)に含む」トリプルの述語(?p)
と目的語(?o)を取得する
select distinct ?p ?o
where {
<http://ja.dbpedia.org/resource/...
SPARQLの検索例②
 「ラベルが“大阪”と一致する」トリプルの主語(?s)
select distinct ?s where {
?s <http://www.w3.org/2000/01/rdf-schema#label> "大阪"@j...
SPARQLの検索例③
 「ラベルに“大阪”を含む」トリプルの主語(?s)
select distinct ?s where {
?s <http://www.w3.org/2000/01/rdf-schema#label> ?o
FILTE...
SPARQLの検索例④
 「ラベルが“大阪”と一致する」トリプルの主語(?s)
につながっている述語(?p)と目的語(?o)
select distinct ?p ?o where {
?s <http://www.w3.org/2000/0...
SPARQLの省略表現①
 PREFIXの利用
select distinct ?p ?o where {
?s <http://www.w3.org/2000/01/rdf-schema#label> "大阪"@ja .
?s ?p ?o....
SPARQLの省略表現②
 主語が同じ時の省略表現
442015/9/13
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select distinct ?p ?o where {
...
SPARQLの便利な検索機能
 SPARQLでマッシュアップ-LOD活用のための技
術紹介(by Hiroshi Ueda)
http://www.slideshare.net/uedayou/sparqllod
p.85~
 DBpedi...
Upcoming SlideShare
Loading in …5
×

CSVファイルをLODとして公開するデータソン

2,620 views

Published on

第1回 LOD Challenge Day KOBE 2015
http://peatix.com/event/109163
で行った,「CSVファイルをLODとして公開するデータソン」のスライドです.

Published in: Technology
  • Be the first to comment

CSVファイルをLODとして公開するデータソン

  1. 1. データソン &ミニ・ハッカソン LODチャレンジ実行委員会 関西支部長 /大阪大学 産業科学研究所 古崎 晃司 kozaki@ei.sanken.osaka-u.ac.jp LOD Challenge Day KOBE 2015/09/12
  2. 2. 利用するオープンデータ(例)  「CSV形式」のファイルを利用します  最初の1行に「データの項目」 2行目以降に各データが記入されているもの  不要な行など,が入っているものは使えません  利用できるオープンデータの例  大阪市の「施設情報ポイントデータ(官公庁)」 (CC-BY:大阪市) http://www.city.osaka.lg.jp/contents/wdu090/opendata/ mapnavoskdat_csv/mapnavoskdat_kankouchou.csv  神戸市の「市役所・区役所」(CC-BY:神戸市) http://www.city.kobe.lg.jp/information/opendata/img/inst itution01_20141128.csv  ハンズオンに利用するオープンデータ  https://goo.gl/DHDqm0 2015/9/13 LOD Challenge Day KOBE 2015 2
  3. 3. LODを公開するための作業  1.公開するLODを用意する  CSV形式のオープンデータをRDF形式に変換する  外部のLODへのリンクを追加する  2.RDFファイルをサーバにアップする  方法(1):Webサーバに「単一のファイル」として公開  方法(2):RDFデータベース(トリプルストア)を用いて 公開 2015/9/13 LOD Challenge Day KOBE 2015 3
  4. 4. 既存データをRDF化する方 法  RDFデータを作成するツールを使用  Open Refine(http://openrefine.org/)+ RDF Refine(http://refine.deri.ie/)  データを整備・公開するための多様な機能をサポート  Linked Data(http://linkdata.org/)  テーブルデータをRDFに変換して公開することができるサイト  SparqlEPCU(http://lodcu.cs.chubu.ac.jp/SparqlEPCU/)  LODの作成・活用のための支援サイト  CSVファイルをRDFとしての公開する機能もあり  StatLD(http://satolab.tiu.ac.jp/statld/)  統計Linked Dataの活用を中心としたツールを公開  一般のLinked Dataの作成にも使用可能  独自のプログラム用でRDFデータを作成 2015/9/13 4 LODチャレンジ2011 アプリケーション部門最優秀賞 LODチャレンジ2012 アプリケーション部門最優秀賞 LOD Challenge Day KOBE 2015
  5. 5. 本日,利用するツール  CSV2LOD~RDF変換支援ツール~  今回のイベントのために,鋭意作成!  プロトタイプなので,ご意見大歓迎!  なんでもリンク  任意のSPARQL Endpointを利用して,LOD間の リンクを作る為のツール  第5回LODハッカソン関西/インターナショナル・ オープンデータデイ大阪(2015年2月の成果 2015/9/13 LOD Challenge Day KOBE 2015 5
  6. 6. ツール開発の動機  Linked Dataの基本原則に沿ったLODを,誰でも,(ある程度) 簡単に作成できるツールを提供したい  元データ(CSV)の編集を,極力,減らしたい  データが更新されたら,すぐに再変換したい  →元データと変換情報のテンプレートは別ファイルに  足りない機能があれば,気軽に拡張したい  小規模なプログラムで開発+オープンソース化により改変を自由に  初心者から上級者まで使いやすいものを  汎用性の高いテンプレート(Turtleライクな形式)により,複雑なRDFモデル にも対応  初心者向けには,語彙選択支援など,簡単にテンプレートが作れる  動作環境  インストール不要,かつ,ネットがなくても使える→JavaScritptのみで開発  IE8にも,できれば対応したかったが…(現時点は×) 2015/9/13 LOD Challenge Day KOBE 2015 6
  7. 7. 使用するツール① CSV2LOD~RDF変換支援ツール ~ 2015/9/13 LOD Challenge Day KOBE 2015 7 http://lodosaka.jp/tool/CSV2LOD/
  8. 8. 使用するツール② なんでもリンク 2015/9/13 LOD Challenge Day KOBE 2015 8 http://link.lodosaka.jp/
  9. 9. CSV2LODの作業手順  作業の手順 1. 元データ(CSV形式)を選択して読み込む 2. RDFが出力される(今回はTurtle形式のみ)  Webサーバーに公開(こちらで作業します)  RDFデータベースに登録(皆さんで作業) 3. 公開したLODで簡単なアプリを作ってみる  ハンズオンの段取り  1回目は,同じデータで一通りの使い方を説明  2回目以降,各自,異なるデータを選んでLOD化  https://goo.gl/DHDqm0 に作業するデータを記入 2015/9/13 LOD Challenge Day KOBE 2015 9
  10. 10. CSVファイルの読み込み 1. 「ファイルを選択」ボタンで,あらかじめ用意し ておいたCSVファイルを選択する 2. 「CSVファイル読み込み・プレビュー」ボタンを 押し,正しく読み込めることを確認する 2015/9/13 LOD Challenge Day KOBE 2015 10
  11. 11. CSVのプレビュー結果 (例) 2015/9/13 LOD Challenge Day KOBE 2015 11
  12. 12. CSVファイル読み込み時の注意  文字コードは自動判定されます  USBに格納しているオープンデータについては動作 確認済み  ファイルサイズが大きい(200KB以上?)と読 み込めない場合があります  テキストエディタ等で開いて,「テキストボックスに入 力」の欄にコピー&ペースとして読み込むと,ある程 度のサイズのデータでも読み込めます.  「ファイルを選択」がうまく動かないとき  「テキストボックスに入力」を利用して下さい 2015/9/13 LOD Challenge Day KOBE 2015 12
  13. 13. テンプレート作成① メタデータの入力  変換するデータに関する基本情報を入力する 2015/9/13 LOD Challenge Day KOBE 2015 13 ベースIRI :作成するRDFデータでIDに用いるIRI (URI)の設定 ライセンス情報
  14. 14. 今日のハンズオンでは  ベースIRI  http://data.lodosaka.jp/lodc- kobe2015/kobe/institution01_20141128 のように http://data.lodosaka.jp/lodc-kobe2015/ + 自治体名/+本ファイル名(.csvは除く) とする  オプションは「一つのファイルで公開(#)」を選択  ライセンス  今回利用するデータは,すべてCC-BYで公開されて いるものなの,下記のように選択・入力する  クレジットで表示すべき名前:自治体名,作業者  ライセンスは,クリエイティブ・コモンズ(CC)の「CC-BY」 2015/9/13 LOD Challenge Day KOBE 2015 14
  15. 15. ベースIRI(URI)とは,  ベースIRIとは,  RDFにおいてIDとするIRIを決める際に基準とするIRI  例)DBpedia Japaneseの場合は http://ja.dbpedia.org/resource/大阪府 ↑この部分に相当  RDFファイルでは,Prefixがついていないリソース (データ)のIRIは,行頭にベースIRIが付加されるもの と扱われる  例)ベースIRIがhttp://test.data/とすると そのRDFファイルで<1>というリソースのIRIは <http://test.data/1>となる  ※Turtle形式の@baseには,#のIRIは使えない. 2015/9/13 LOD Challenge Day KOBE 2015 15
  16. 16. ベースIRI(URI)の決め方  各データへはベースIRIによって決まるIRIでア クセスされるので,  データの公開者が管理している(できる)IRI  データを公開する際に用いるIRI(URL) を用いることが望ましい  # と / の使い分けは,一般に,  1つRDFファイルでデータを公開するときは http://test/data#001 のように#を  データサイズが大きく,RDFデータベースを用いて 公開するときは http://test/data/001 のように/を使うことが多い 2015/9/13 LOD Challenge Day KOBE 2015 16
  17. 17. テンプレート作成② プロパティ(語彙)の設定 2015/9/13 LOD Challenge Day KOBE 2015 17 「プロパティ選択表示」ボタンを押すと, RDF変換で用いる語彙の候補が推薦される 推薦に用いる 語彙の選択 推薦された語彙 CSVの1行目 の項目名
  18. 18. 語彙選択の考え方  ID列  CSVファイル内で「一意のID」となる項目があれば,「ID列」として選択する  なければ「IDを自動付与」を選択する  プロパティ  適切な語彙が推薦されていたら選択  それ以外の語彙を利用する場合は「その他」の欄に入力  「推薦に用いる語彙」の一覧にあるprefixは利用可能  それ以外の場合は,語彙のIRIをすべて記載 →よく使われる語彙の一覧は次スライド参照.  CSVの項目名を利用するときは「bp:項目名」を選択する  bp: は「ベースIRI+/property#」を表すprefix  データ型は,できれば適切なものを選択する ※プロパティを複数選択することも可 →複数の語彙に対応したいときに利用(例:共通語彙基盤+Schema.org) 2015/9/13 LOD Challenge Day KOBE 2015 18
  19. 19. 共通語彙 Schema.org http://schema.org/docs/schemas.html Schema.org(日本語訳サイト) http://schema-ja.appspot.com/ 共通語彙基盤(IMI) http://imi.ipa.go.jp/ Linked Open Vocabularies (LOV) http://lov.okfn.org/dataset/lov/ DBPedia http://mappings.dbpedia.org/index.php/Main_Page Dublin Core http://dublincore.org/documents/dcmi-terms/ →解説 http://www.kanzaki.com/docs/sw/dublin-core.html Friend of a Friend (FOAF) http://xmlns.com/foaf/spec/ →解説 http://www.kanzaki.com/docs/sw/foaf.html 2015/9/13 LOD Challenge Day KOBE 2015 19
  20. 20. 語彙の推薦について  現状では,推薦できる語彙は「ごく一部」のも のに限られています  共通語彙基盤には未対応です.  今後,対応する語彙は順次増やす予定です 2015/9/13 LOD Challenge Day KOBE 2015 20
  21. 21. RDFファイルへの変換 2015/9/13 LOD Challenge Day KOBE 2015 21 • 「テンプレート生成/更新」:設定した情報に基づい てCSVをRDFに変換するテンプレートを作成する • 「テンプレートのダウンロード」で,作成したテンプ レートをダウンロードして再利用できる • 「CSV→RDFの変換実行」で,CSVファイルをRDF に変換する
  22. 22. RDFファイルへの変換結果 2015/9/13 LOD Challenge Day KOBE 2015 22  変換結果は下記のように表示される  「ファイル名」を入力し「RDFファイルのダウンロード」ボタンで RDFをダウンロードできる  うまくダウロードできない場合は,コピー&ペーストを利用する
  23. 23. 保存したRDFテンプレートの利 用  ダウンロードした「RDF変換テンプレート」を読み込んで利 用することも可能  同じ形式のCSVファイルが複数ある場合に有効  設定画面へは反映されないため「テンプレート生成/更新」ボ タンを押すと,読み込んだテンプレートが破棄されるので注意  テンプレートは,直接,画面上で編集することも可能  読み込んだテンプレートの修正や,設定からは生成できない 複雑なRDF変換用のテンプレートを生成するのに利用できる 2015/9/13 LOD Challenge Day KOBE 2015 23
  24. 24. LOD公開①:Webサイト  作成したRDFファイルをWebサイトで公開する  今回は,イベント用のWebサイトに公開  公開するURLは, http://data.lodosaka.jp/lodc-kobe2015/自治体名/ ※自治体名は以下のいずれか kobe, hyogo, osaka-city, osaka-pref, nara-city, wakayama-pref  アップする前に,RDFのファイル名がベースIRIで指 定したもの+.ttlになるように修正しておく 例)http://data.lodosaka.jp/lodc-kobe2015/kobe/ institution01_20141128 ならば institution01_20141128.ttl 2015/9/13 LOD Challenge Day KOBE 2015 24
  25. 25. LOD公開①:Webサイト 1. FTPクライアントへログイン  https://webftp.heteml.jp/ を利用  ユーザー名: ※試したい方はメールでお問い合わせ下さい  パスワード: →kozaki@ei.sanken.osaka-u.ac.jp  FTPクライアントを利用する場合は  ホスト名(アドレス) ftp187.heteml.jp  ※FTPS 接続 の場合は ssl187.heteml.jp (推奨) 2. FTPでアップロード  「ファイルを選択」ボタン →作成したRDF(****.ttl)を選択してアップロード ※上書き時には,「上書き」にチェック 2015/9/13 LOD Challenge Day KOBE 2015 25
  26. 26. LODの閲覧  ①Webブラウザでの閲覧  WebブラウザのURL欄に  http://data.lodosaka.jp/lodc- kobe2015/kobe/institution01_20141128#1  のように,IRIを入れるとWebブラウザで閲覧可能  ②LODブラウザでの閲覧  下記のLODブラウザのIRIの欄に入力する  Quick and Dirty RDF browser ※日本語IRIは文字化けする http://graphite.ecs.soton.ac.uk/browser/  (Yet Another) Linked Data Browser ※フォーマットでTurtleを選択する必要あり http://www.kanzaki.com/works/2014/pub/ld-browser 2015/9/13 LOD Challenge Day KOBE 2015 26
  27. 27. Webサーバの設定  Webサーバの.htaccesファイルで  RewriteCond %{REQUEST_URI} !/$ RewriteCond %{REQUEST_URI} !.[^/.]+$ RewriteRule .* %{REQUEST_URI}.ttl [L,R]  といったURLのRewriteルールを書くことで,  …/ファイル名#001 → …/ファイル名.ttl#001 という書き換えを行っている  厳密な設定については, Best Practice Recipes for Publishing RDF Vocabularies http://www.w3.org/TR/swbp-vocab-pub/ 等の資料を参照 2015/9/13 LOD Challenge Day KOBE 2015 27
  28. 28. LODの公開② DBへのRDFデータの登録  DBにアクセス(本イベント限定のテスト用)  http://lod.hozo.jp/repositories/lodosaka  ※アプリ作成時には,これがSPARQL EndpointのURLとなる.  ログインする  ID:****,PW:*****  試したい方はメールでお問い合わせ下さい →kozaki@ei.sanken.osaka-u.ac.jp  ※ClassicViewを利用する  Import RDF  from an uploaded file,Fileを選択,形式はTurtle でRDFファイルを登録 ※後日,アプリ開発に利用される場合は, -SPARQL EPCUを利用 -db.lodc.jpにアップ予定なので,そちらを利用 2015/9/13 28LOD Challenge Day KOBE 2015
  29. 29. RDFデータのダウンロード・公開 DBへのRDFデータの登録 2015/9/13 29 RDFを格納するGraph名の指定 Context:欄に <http://data.lodosaka.jp/lodc-kobe2015/kobe/institution01_20141128.ttl> のように、WebサーバーにアップしたURLを入力する LOD Challenge Day KOBE 2015
  30. 30. DBへ登録したRDFデータの確 認 2015/9/13 LOD Challenge Day KOBE 2015 30 Query > new でクエリ入力画面へ SELECT ?s ?p ?o FROM <http://data.lodosaka.jp/lodc- kobe2015/kobe/institution01_20141128.ttl> WHERE { ?s ?p ?o . }LIMIT 100 といったクエリで,データの中身を確認できる Contextに 入れたURL
  31. 31. 外部LODとのリンク 1. なんでもリンクにアクセス 2. オープンデータ(CSV)を開き「名称」に相当する列をコ ピー 3. なんでもリンクの入力欄にペースト  「SPARQLエンドポイント」欄に記入すれば,任意のエンドポイ ントを利用可能  DBpedia Japaneseが遅いときは,こちらを利用 http://lod.hozo.jp/repositories/dbpedia_jp_label 4. DBpediaのデータと一致するデータの一覧が表示され る(最初の10件) 5. 「ダウンロード」ボタンで結果をダウンロード 2015/9/13 LOD Challenge Day KOBE 2015 31
  32. 32. 外部LODとのリンク 5. エクセル等で開き(文字コードの関係で開き方 に工夫がいるかも),元のオープンデータにマッ ピング情報をコピー&ペースト  項目名は「参照」としておくと良い 6. CSV2LODでオープンデータをRDFに変換  マッピング情報には「rdfs:seeAlso」を使う 2015/9/13 LOD Challenge Day KOBE 2015 32
  33. 33. 簡単な可視化アプリ  Leaflet Simple SPARQL (by上田洋さん)  緯度経度を含む情報を,OpenStreetMap上に表示する.  ソースコード&解説 https://github.com/uedayou/leaflet-simple-sparql  サンプル http://uedayou.net/lodchallenge/map-sample-osaka-city/  使えるデータ  rdfs:label(名前),geo:lat(緯度), geo:long(経度)を含む データ  →CSV2LODで変換する際に,これらの語彙を選択しておく.  RDFに変換した後は,RDF-DBにアップして,SPARQLクエリが 使えるようにしておく. 2015/9/13 LOD Challenge Day KOBE 2015 33
  34. 34. 可視化の手順 1. プログラムのダウンロード  https://github.com/uedayou/leaflet-simple-sparql から「Download ZIP」でソースファイルをダウンロードする 2. 設定ファイルの書き換え  「config.js」を開き,以下の2箇所を書き換えて保存する var endpoint = "http://lod.hozo.jp/repositories/lodosaka"; var query = (function () {/* PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> select * FROM <http://data.lodosaka.jp/lodc-kobe2015/**********> where { ?uri rdfs:label ?title; geo:lat ?lat; 3. プログラムの実行  index.htmlを開く 2015/9/13 LOD Challenge Day KOBE 2015 34 SPARQLエンドポイントのURL RDF-DBにアップロードするときに,Contextと して指定したURL(GRAPH名)
  35. 35. その他のSPARQLを使ったアプ リ  SPARQLクエリを書き換えるだけで、いろんな可視化が できるツールの紹介 • 上田洋さんが作成されたSPARQLアプリ(※) http://uedayou.net/sparql-mashup/#app • d3sparql.js http://biohackathon.org/d3sparql/ • Sgvizler http://dev.data2000.no/sgvizler/  SPARQLを利用したプログラム入門 • JavaScriptを使ったSPARQL利用のミニマムサンプル http://lodosaka.jp/simple_sparql_2.html →可視化部分は「自分で自由に作成」 2015/9/13 35LOD Challenge Day KOBE 2015
  36. 36. 参考資料 2015/9/13 LOD Challenge Day KOBE 2015 36
  37. 37. SPARQLによるRDFの検索  SPARQL  RDFデータに対するクエリ言語  「指定したグラフ構造」に一致するトリプルを検索する  最も基本的な検索 select * where { ?s ?p ?o . } LIMIT 100 ←取得する数の制限 ←検索するグラフのパターン ←返す要素(*は全て) この例では「任意のトリプルの組み合わせ」 このパターンを変 えることで,欲しい データを取得する 372015/9/13 「.」(ピリオド) を忘れない LOD Challenge Day KOBE 2015
  38. 38. 簡単なクエリ例  すべてのデータを取得  select * where {?s ?p ?o} LIMIT 100  ?s と?pの組み合わせを取得  select distinct ?s ?p where {?s ?p ?o} LIMIT 100  プロパティを指定して取得  select * where {?s <http://schema.org/description> ?o} LIMIT 100 2015/9/13 LOD Challenge Day KOBE 2015 38 シートにクエリ例を用意しています
  39. 39. SPARQLの検索例①  「東京都を主語(Subject)に含む」トリプルの述語(?p) と目的語(?o)を取得する select distinct ?p ?o where { <http://ja.dbpedia.org/resource/東京都> ?p ?o . } LIMIT 100 「東京都」を表すURI DBpedia Japanese http://ja.dbpedia.org/sparql での検索結果 ↑同じパターンは除外する 392015/9/13 LOD Challenge Day KOBE 2015
  40. 40. SPARQLの検索例②  「ラベルが“大阪”と一致する」トリプルの主語(?s) select distinct ?s where { ?s <http://www.w3.org/2000/01/rdf-schema#label> "大阪"@ja . }LIMIT 100 リテラルの指定 (※データの言語指定も含 めて一致が判定される) DBpedia Japanese http://ja.dbpedia.org/sparql での検索結果 402015/9/13 LOD Challenge Day KOBE 2015
  41. 41. SPARQLの検索例③  「ラベルに“大阪”を含む」トリプルの主語(?s) select distinct ?s where { ?s <http://www.w3.org/2000/01/rdf-schema#label> ?o FILTER(regex(str(?o), "大阪")) . }LIMIT 100 「文字列が含む」データでの絞り込み DBpedia Japanese http://ja.dbpedia.org/sparql での検索結果 412015/9/13 LOD Challenge Day KOBE 2015
  42. 42. SPARQLの検索例④  「ラベルが“大阪”と一致する」トリプルの主語(?s) につながっている述語(?p)と目的語(?o) select distinct ?p ?o where { ?s <http://www.w3.org/2000/01/rdf-schema#label> "大阪"@ja . ?s ?p ?o. }LIMIT 100 パターンを続けて書くと「AND条件」になる ※この例では,?p ?oを限定していないが… DBpedia Japanese http://ja.dbpedia.org/sparql での検索結果 422015/9/13 LOD Challenge Day KOBE 2015
  43. 43. SPARQLの省略表現①  PREFIXの利用 select distinct ?p ?o where { ?s <http://www.w3.org/2000/01/rdf-schema#label> "大阪"@ja . ?s ?p ?o. }LIMIT 100 432015/9/13 PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> select distinct ?p ?o where { ?s rdfs:label "大阪"@ja . ?s ?p ?o. }LIMIT 100 LOD Challenge Day KOBE 2015
  44. 44. SPARQLの省略表現②  主語が同じ時の省略表現 442015/9/13 PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> select distinct ?p ?o where { ?s rdfs:label "大阪"@ja . ?s ?p ?o. }LIMIT 100 PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> select distinct ?p ?o where { ?s rdfs:label "大阪"@ja ; ?p ?o. }LIMIT 100 LOD Challenge Day KOBE 2015
  45. 45. SPARQLの便利な検索機能  SPARQLでマッシュアップ-LOD活用のための技 術紹介(by Hiroshi Ueda) http://www.slideshare.net/uedayou/sparqllod p.85~  DBpedia Japaneseを対象としてクエリサンプル https://goo.gl/f9lSEQ 2015/9/13 45LOD Challenge Day KOBE 2015

×