Download - オープンデータをLOD化するデータソン in 高槻
オープンデータを LOD 化するデータソン in 高槻
5つ星オープンデータ( LOD) の公開方法を学ぶ「勉強会&データソン」
主催: LODチャレンジ関西支部共催:アーバンデータチャレンジ 20161
自己紹介
オープンデータに関わる活動 LOD チャレンジ実行委員会( 2011 ~)関西支部長(副実行委員長)
→ LOD ( Linked Open Data )を技術普及させたい 「 LOD チャレンジ」(コンテスト)への応募作品を増やしたい
特に,地元「関西・大阪」でのコミュニティを大きくしたい 神戸市オープンデータ推進会議,大阪市市民活動推進審議会
研究成果として公開中のソフト
古崎(こざき)晃司 @koujikozaki
本職: 大阪大学の研究者 専門: 情報科学(オントロジー工学)
=“かしこい”コンピュータ(ソフトウェア)を作る →学問にとどまらず, 世の中で使われる技術を作りたい
2
注意事項・お願い•WiFiについて•会場提供の WiFi はありませんので,各自のモバイルルータ,テザリング等でネットワークへの接続をお願いします.
•情報共有用シート • https://goo.gl/qF1e2J にアクセスしてください.
•本日の資料•Web に公開し,リンクを情報共有シート,および,本イベントの申し込みサイトに掲載します.
•写真撮影について
3
本日のスケジュール9:00 オープニング, LODC&UDC2016の紹介9:10 LODと 5つ星オープンデータに関する講演9:30 各ツールの使い方の解説・ハンズオン10:30 高槻市のオープンデータは LOD( 5つ星)化 するデータソン11:45 ラップアップ12:00 終了 4
LODチャレンジ 2016 &アーバンデータチャレンジ2016の紹介
大阪大学産業科学研究所LOD チャレンジ実行委員会 関西支部長アーバンデータチャレンジ 2016 大阪ブロック コーディネータ古崎 晃司
5
6
LOD チャレンジ 2016( 2011 年~) ※自由課題型キックオフ: 2016 年 9 月 17 日(予定)エントリー開始: 2016 年 10 月 1 日応募締切: 2017 年 1 月中旬頃http://lodc.jp/
アーバンデータチャレンジ 2016( 2013 年~) ※課題解決型キックオフ: 2016 年 6 月 27 日エントリー締切: 2016 年 12 月 23 日作品提出締切: 2017 年 1 月 27 日http://urbandata-challenge.jp/
2016 年版のサイトは近日公開予定
重複応募可能
#lodc2016
#udc2016
Linked Open Data( LOD)チャレンジLOD ( 5 つ星オープンデータともいわれる)の技術普及を目的として開催されている,日本初のオープンデータに関するコンテスト( 2011年より開催)
http://lodc.jp
ジャンルを問わない様々な作品が毎年 200 以上応募される 7
これまでの応募状況
5 ★ オープンデータhttp://5stardata.info/ より
オープンライセンス(形式問わず)
機械可読なフォーマット
オープンなフォーマット
8
LODが利用できるサイトの例(1)
9
経済産業省法人ポータル(メンテナンス中) 経済産業省 OPEN DATA METI eStat 統計 LOD
国立国会図書館 LOD 大阪市オープンデータポータルDBpedia ( Wikipedia の LOD )
LODが利用できるサイトの例(2)
10
LinkData.org SparqlEPCU LOD4ALL
GeoNames.jp 大河配役 LOD LOD ハッカソン関西
アーバンデータチャレンジ
2013 年より毎年開催課題解決型のコンテスト2015 年度・地域拠点 20 か所・ 158 作品応募2016 年度・地域拠点 30 か所
http://urbandata-challenge.jp/11
UDC2016の地域拠点
12
UDC2016の地域拠点<関西>
13
大阪(大阪市,
枚方市,高槻市な
ど)
奈良(生駒市ほ
か)
和歌山(橋本市)
兵庫(尼崎市)
滋賀(大津市)
京都(京都市ほ
か)
鳥取(鳥取市)島根
(松江市)
岡山(岡山市)
徳島(徳島市)
愛媛(松山市)
山口(山口市)
http://urbandata-challenge.jp/
大阪での活動予定• LOD チャレンジ関西支部&アーバンデータチャレンジ 2016 大阪ブロックとして LODC&UDC2016のイベントを継続して開催予定• 今年度の活動で注力したいこと• 複数のオープンデータの連携(リンク) →大阪 / 関西を中心とした地域間連携 →全国規模のデータとの連携• 共通語彙基盤の活用• 関西各地域で連携したイベント(例えば,第 2 回関西オープンデータデイ)も開催したい
14
LOD(Linked Open Data)と5 つ星オープンデータLOD チャレンジ実行委員会 関西支部長
/ 大阪大学 産業科学研究所古崎 晃司
15
2016/8/21オープンデータを LOD 化するデータソン in 高槻
講演の概要 本講演のメイントピック
オープンデータを LOD ( Linked Open Data )として公開する際に,知っておきたいLinked Data の基本技術
Linked Data の4原則
覚えていただきたいキーワード IRI ( URI )参照解決
16
オープンデータとは?
17
オープンデータとは オープンデータとは
誰でも自由に使える形で公開されているデータ
オープンデータの定義( Open Definition ) “Open data and content can be freely used,
modified, and shared by anyone for any purpose”( http://opendefinition.org/)
オープンデータでない例 改変や再配布が禁止されている 利用者を限定 例)学術機関のみ,個人利用不可 利用目的を限定 例)商用利用不可,コンテスト応募目的のみ
18
オープンデータの2つの観点 ライセンス( cf .クリエイティブコモンズ)
使用目的を限定せず(例:商用も可),再配布,改変も可
「作成者のクレジットの表示」の義務付け程度の制限はOK
→“ まじめな人”(※)が,安心して使える =より多くの人の利用が見込まれる(※悪いことをする人は,ライセンスを気にせず勝手に使う)
機械可読な形式
19
G8 サミット「オープンデータ憲章」
http://www.mofa.go.jp/mofaj/gaiko/page23_000044.html
2013/06/18
我々は,オープンデータが,イノベーションと繁栄を可能にし,また,市民のニーズに合致した,強固かつ相互に繋がった社会を構築していくための大きな可能性をもった未開発の資源であることに合意する。 そのため,我々は,以下の原則に合意する。 • 原則としてのオープンデータ• 質と量• すべての者が利用できる• 改善したガバナンスのためのデータの
公表• イノベーションのためのデータの公表
G8各国が,「オープンデータを推進する」ことに合意
20
オープン・バイ
・デフォルト
政府標準利用規約(第 2.0版) 日本政府が各サイトで公開するコンテンツの利用規約の「ひながた」を与えるもの クリエイティブ・コモンズ・ライセンスの表示
4.0 国際( CC BY )に互換性を持つ.
https://creativecommons.org/licenses/by/4.0/legalcode
政府のサイトに公開されている情報利用が「自由に」行えることを明記.
参考)「政府標準利用規約(第 2.0 版)」の概要 http://
www.kantei.go.jp/jp/singi/it2/densi/kettei/gl2_betten_1_gaiyou.pdf
21
日本のオープンデータ都市マップ
22
http://fukuno.jig.jp/2013/opendatamap
• 早期からオープンデータに取り組んでいた鯖江市でオープンデータの推進をされている福野さん( jig.jp )がまとめられている「オープンデータに取り組んでいる日本の都市の一覧」
• この一覧自体が LOD として公開されている
• 2016/05/31時点で 204都市
多くの自治体が,オープンデータを提供しつつある
オープンデータの2つの観点 ライセンス( cf .クリエイティブコモンズ)
使用目的を限定せず(例:商用も可),再配布,改変も可
「作成者のクレジットの表示」の義務付け程度の制限はOK
→“ まじめな人”(※)が,安心して使える =より多くの人の利用が見込まれる(※悪いことをする人は,ライセンスを気にせず勝手に使う)
機械可読な形式 プログラムで処理しやすいフォーマットが望まれる
→“ 使いたい人”が,簡単に使える =低コストで多くのアプリ(活用事例)が作れる
LOD(Linked Open Data) は,「オープンデータの5つの段階」で「5つ星」と言われている公開方法
23
Data.go.jp :日本政府のオープンデータカタログサイト
http://data.go.jp/
本格運用を開始2014 年 10 月 1 日
2013 年 12 月 ↓2014 年 4 月休止※ コミュニティが ミラーサイト作成
24
dat a.go.jp のデータの形式
25
まだまだ,PDFなど
機械可読でないフォーマットが多い
技術的なサポートが必要とされる
Linked Open Data (LOD)-Webの仕組みを用いた オープンデータの公開-= Linked Data + Open Data(オープンデータ)= Linked Dataとして公開された Open Data※Linked Data: Web の仕組みを用いて相互に“リンクされた”データ
30
Linked Data Linked Data : Web 上のデータを,つなぐ( link する)
ことで,新しい価値を生み出そうとする取り組み. Web の創始者 Tim Berners-Lee氏が提唱
http://linkeddata.org/
31
Linked Data が目指すこと WWW(World Wide Web)
文書を公開し,相互に接続(ハイパーリンクでつなぐ)ための革命的な仕組みを提供したことで,今日の Web の発展につながった.
Linked Data データを共有(公開)し,相互につなぐ仕組
みを提供する. Linked Data の原理
データの構造化 構造化されたデータはより洗練された処理を可能にする
分散したデータをつなぐハイパーリンク 文書単位では無く,データ単位のリンクを可能にする.
データの島々から一つのグローバルデータ空間へ 分散されたデータ群を1つのグローバルなデータ空間へ統合する
参考:『 Linked Data-Web をグローバルなデータ空間にする仕組み( Tom Heath, Christian Bizer (武田英明監訳),丸善,2013 )』 1章.
32
既に公開・リンクされている LOD~ LOD クラウド~
2007/5/12007/10/82008/9/182009/7/14
2010/9/222011/9/19時点
33
Linking Open Data cloud diagram 2014, by Max Schmachtenberg, Christian Bizer, Anja Jentzsch and Richard Cyganiak. http://lod-cloud.net/
1つの丸が個別に公開された DB を表す.
2014/08/30時点
公開したオープンデータが他のオープンデータと「つながる」ことで「新たな価値」が生まれる
DBpedia
既に公開・リンクされている LOD~ LOD クラウド~
Linking Open Data cloud diagram 2014, by Max Schmachtenberg, Christian Bizer, Anja Jentzsch and Richard Cyganiak. http://lod-cloud.net/
2014/08/30
34
既に公開・リンクされている LOD~ LOD クラウド~
35
Domains # of dataset % Government 183 18.05
Publications 96 9.47
Life sciences 83 8.19
User-generated content 48 4.73
Cross-domain 41 4.04
Media 22 2.17
Geographic 21 2.07
Social web 520 51.28
Total 1014
5 ★ オープンデータhttp://5stardata.info/ より
オープンライセンス(形式問わず)
機械可読なフォーマット
オープンなフォーマット
36
5 ★ オープンデータ★ ( どんな形式でも良いので ) あなたのデータをオープンライセンスでWeb 上に公 開しましょう★★ データを構造化データとして公開しましょう★★★ 非独占の形式を使いましょう★★★★ 物事を示すのに URI を使いましょう,そうすることで他の人々があなたのデータ にリンクすることができます★★★★★ あなたのデータのコンテキストを提供するために他のデータへリンクしましょう
http://5stardata.info/ja/ より引用(図および原文は http://5stardata.info/ )
ライセンスについて
フォーマットについて
Web の発明者であり Linked Data の創始者でもあるティム・バーナーズ=リーがオープンデータのために提案したスキーム※注:図中の PDF ,エクセル, CSV のアイコンは, あくまでも例示であって,そのフォーマットを推奨 している訳ではない.
LOD
37
5★オープンデータにおけるLOD ★★★★ ( RDF ) 物事を示すのに URL ( IRI )を使いましょう,そうすることで他の人々があなたのデータにリンクすることができます
★★★★★ ( LOD )あなたのデータのコンテキストを提供するために他のデータへリンクしましょう
→ LOD ( Linked Open Data ) = Web 上で相互にリンクされた Open Data ※リンクする際には「 Web の仕組み」を利用する
データ(物事)を示すのに URL (正確には IRI )を用いる データ間を(名前付き) Hyper-link でリンクする
http://5stardata.info/ja/ より引用
38
Web の仕組み URL を指定することで, Webページにア
クセス 例) http://www.sigswo.org/papers/
iswc2016hackathon 「 ISWC2016@ KOBE連携ハッカソン」のページ
URL は,世界中“すべて”の Webページの場所( ID )を一意に特定できる仕組み
ハイパーリンクにより, Webページを“つなげる” リンク先の URL を指定することで,好きな
Webページと自由に“リンク”できる リンクを辿って,様々な情報にたどり着ける リンクを解析による様々なビジネス
例) Google などの検索エンジン
39
Web の仕組み→ Linked Data
URL を指定することで, Webページにアクセス 例) http://www.sigswo.org/papers/
iswc2016hackathon 「 ISWC2016@ KOBE連携ハッカソン」のページ
URL は,世界中“すべて”の Webページの場所( ID )を一意に特定できる仕組み
ハイパーリンクにより, Webページを“つなげる” リンク先の URL を指定することで,好きな
Webページと自由に“リンク”できる リンクを辿って,様々な情報にたどり着ける リンクを解析による様々なビジネス
例) Google などの検索エンジン
データ
データ
Linked Data Web と同じ仕組みでデータを“公開”し, 相互に“つなぐ”(リンクする) 40
Linked Open Data (LOD)の基本原則と技術的仕組み= Linked Data + Open Data(オープンデータ)= Linked Dataとして公開された Open Data※Linked Data: Web の仕組みを用いて相互に“リンクされた”データ
41
Linked Data の基本原則1. Use URIs as names for things全てのモノやコトに URI をつけましょう
2. Use HTTP URIs so that people can lookup those names.それらの URI を http ( Webブラウザと同じ方法)で参照(アクセス)できるようにしましょう
3. When someone looks up a URI, provide useful information, using the standards (RDF, SPARQL)その URI を参照したら,標準の技術( RDF や SPARQL )を使用して,役に立つ情報を提供するように
4. Include links to other URIs. so that they can discover more things.多くのモノ・コトを発見できるように,外部へのリンクを含めよう.
原文引用元 http://www.w3.org/DesignIssues/LinkedData.html日本語訳参考 http://www.slideshare.net/takeda/lod-5163454
5★ オープンデータで言及
5★ オープンデータで言及
42
Linked Data の背景となるWeb アーキテクチャ Http IRI ( URI )による情報リソースの識別
( IRI は URI の国際化版.以後,この発表では URI とIRI が同じものとして聞いて下さい.)
Web 上のすべての情報リソース(HTML文書,画像ファイル,…など)を, IRI によりグローバルに識別する.
Http IRI でサーバにアクセスすると, HTML文書や画像ファイルが返ってくる<参照解決>
同じ IRI に対し複数の表現( PNG ファイルと GIF ファイルなど)がある場合, Content Negotiation (内容折衝)という仕組みで,必要なファイルを返す
例)日本語環境からアクセスされたときは,日本語ページを返す
HTML ファイル内のハイパーリンク 他の IRI を指定することでリンク可能に! 43
IRI による識別・ Http IRI の利用 原則1: IRI による識別
情報リソース以外のすべての事物(モノやコト)にも IRI を与える
例) http://ja.dbpedia.org/resource/大阪市 →大阪市という事物自身を指している
原則2: Http IRI の利用 ISBN の URN など他の IRI を使わない Web標準技術である Http IRI を使う
44
IRI による識別・外部へのリンク 原則3: IRI の参照解決
例: DBpedia Japanese における大阪市 事物(非情報リソース)
http://ja.dbpedia.org/resource/ 大阪市 HTML表現(情報リソース)
http://ja.dbpedia.org/page/ 大阪市 Turtle表現(情報リソース)
http://ja.dbpedia.org/data/ 大阪市 .ttl RDF/XML表現(情報リソース)
http://ja.dbpedia.org/data/ 大阪市 .rdf 原則4:外部へのリンク
外部の IRI とリンクすることで, Webページのようにデータが「つながる」.
45
Linked Data (RDF) の例
大阪府
大阪市
都道府県 223㎢2,687,287 人
面積
人口
吹田市
豊中市
…バラ科
市の木
隣接自治体
隣接自治体
…
http://ja.dbpedia.org/resource/大阪市 という URI から得られる情報
サクラ
科
Cherry blossom英名
リソース:URI で表されるモノ・コト
プロパティ:リソース間の関係を表す
リテラル:文字列
主語 述語 目的語
トリプル※RDF ( Linked Data の
データモデル)は,「トリプルの組み合わせ」で表される
( DBpedia Japanese より)
目的語が他のリソースのとき,トリプルを辿って更なる情報が得られる
※ 実際のリソースとプロパティは,すべて URI で表される.46
Linked Data (RDF) の例
http://ja.dbpedia.org/resource/ 大阪府
http://ja.dbpedia.org/resource/ 大阪市
http://ja.dbpedia.org/resource/都道府県 223㎢2,687,287 人
http://ja.dbpedia.org/resource/面積
http://ja.dbpedia.org/resource/ 人口
http://ja.dbpedia.org/resource/吹田市
http://ja.dbpedia.org/resource/豊中市
…http://ja.dbpedia.org/resource/ バラ科
http://ja.dbpedia.org/resource/ 市の木
http://ja.dbpedia.org/resource/隣接自治体
http://ja.dbpedia.org/resource/隣接自治体
…
http://ja.dbpedia.org/resource/大阪市 という URI から得られる情報
http://ja.dbpedia.org/resource/ サクラ
http://ja.dbpedia.org/resource/ 科
Cherry blossomhttp://ja.dbpedia.org/resource/英名
( DBpedia Japanese より)
※ 実際のリソースとプロパティは,すべて URI で表される.47
データを「つなげる」仕組み
「3つ組(トリプル)」により様々な構造のデータの “つながりを柔軟に表現”できる
Web サイトのリンクを辿るのと同様に,プロパティ(リンク)を辿ることで関連するデータの情報を辿ることが出来る.
RDF のプロパティは,“関係の意味”を定義できる. cf. Web のハイパーリンクは単に“つながり”を表すのみ
データ(リソース)を URI で表すことで,“外部のデータとつなげる”ことができる.
URI は,グローバルに一意の ID を表す. Web サイトの URL と同じ仕組み. cf .単なる数字を ID とすると,異なる DB が同じ ID を使っている可能性
がある
Linked Data = 外部のデータとつながったデータ ≠ RDF フォーマットのデータ
48
RDF のシリアル化形式 RDF のシリアル化( serialize )
RDF は,リソースを主語,目的語,述語の形式で記述するデータモデルであって,データ形式ではない.
RDF の形式に沿ってトリプルを特定の文法に従ってファイルに書き出す(シリアル化する)必要がある.
代表的なシリアル化形式 RDF/XML :計算機向け RDFa : HTML に RDF を埋め込む Turtle :プレーンテキストで人間向けに読みやすい N-Triples : 1 行単位で処理できるので処理しやすい RDF/JSON : Web 開発向け JSON-LD : Linked Data用の JSON ( Web 開発向け)
49
Turtle ・ N-Triples の表現例
Turtle@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>@prefix foaf: <http://xmlns.com/foaf/0.1/><http://www.ei.sanken.osaka-u.ac.jp/~kozaki/> rdf:type foaf:Person ; foaf:name “Kouji Kozaki” . N-Triples<http://www.ei.sanken.osaka-u.ac.jp/~kozaki/> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person>.<http://www.ei.sanken.osaka-u.ac.jp/~kozaki/> <http://xmlns.com/foaf/0.1/name> “Kouji Kozaki”.
50
http://www.ei.sanken.osaka-u.ac.jp/~kozaki/ foaf:Personrdf:type
foaf:name Kouji Kozaki
1 行
1 行
ヘッダ
Linked Data の基本原則1. Use URIs as names for things全てのモノやコトに URI をつけましょう
2. Use HTTP URIs so that people can lookup those names.それらの URI を http ( Webブラウザと同じ方法)で参照(アクセス)できるようにしましょう
3. When someone looks up a URI, provide useful information, using the standards (RDF, SPARQL)その URI を参照したら,標準の技術( RDF や SPARQL )を使用して,役に立つ情報を提供するように
4. Include links to other URIs. so that they can discover more things.多くのモノ・コトを発見できるように,外部へのリンクを含めよう.
原文引用元 http://www.w3.org/DesignIssues/LinkedData.html日本語訳参考 http://www.slideshare.net/takeda/lod-5163454 51
LOD の公開方法 参照解決可能な http URIs を用いた公開(原則2,3)
URI でデータにアクセスが可能 通常の Webページと同様に,データの URI を用いて「つなが
り」を辿ることが出来る=システムによる処理(リンク解析等)が可能
コンテントネゴシエーションに対応している場合, Webブラウザからのアクセス→ HTML ファイルを返す Linked Dataブラウザからのアクセス→ RDF を返す .html , .rdf , .ttl など拡張子に合わせた形式のファイルを返
す
などの要求に応じたデータ形式で返す → Linked Dataブラウザなど汎用のアプリの開発が可能に!
その他の LOD 公開方法 RDF ファイルのダンプ(全データ)をダウンロードできるところ
に置く SPARQL エンドポイント( LOD を検索可能な API )を公開する
→これだけでは Linked Data の基本原則を満たしていない!
52
参照解決可能な LOD の例 日本語 LOD の例
DBpedia Japanese http://ja.dbpedia.org/ Web NDL Authorities (国会図書館典拠データ)
http://id.ndl.go.jp/auth/ndla/ GeoNames.jp http://geonames.jp/ Linked Open Addresses Japan(試作版 )
http://uedayou.net/loa/ ねじ LOD http://monodzukurilod.org/neji/
Linked Dataブラウザ Quick and Dirty RDF browser
※日本語 IRI は文字化けするhttp://graphite.ecs.soton.ac.uk/browser/
(Yet Another) Linked Data Browserhttp://www.kanzaki.com/works/2014/pub/ld-browser 53
LOD の公開例: DBpediaWikipedia の各記事のインフォボックスの情報を抽出して自動生成される LOD様々なデータをつなぐ LOD のハブ的な存在となっている.
http://dbpedia.org/
日本語版の DBPedia はhttp://jp.dbpedia.org/ インフォボックスの例
54
データの例(大阪府)
55
すべての Wikipedia の記事がhttp://ja.dbpedia.org/resource/ 大阪府のような URI でデータ化されている
DBpedia Japanese
56
http://jp.dbpedia.org/SPARQL Endpoint※ ここから,検索可能
SPARQL による RDF の検索 SPARQL
RDF データに対するクエリ言語 「指定したグラフ構造」に一致するトリプルを検索する
最も基本的な検索
select ?s ?p ?owhere { ?s ?p ?o . }LIMIT 100 ←取得する数の制限
←検索するグラフのパターン
←返す要素( * は全て)
この例では「任意のトリプルの組み合わせ」
このパターンを変えることで,欲しいデータを取得する
57
SPARQL Endpoint の例
58
サンプルクエリ集https://t.co/6eQIPel5Vh
http://ja.dbpedia.org/sparql
ここに,クエリを入れる※ プログラムからのクエリ +結果取得も可能
DBpedia Japanese の検索例 「各都道府県で生まれた政治家の数」を調べる
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>PREFIX dbpedia-owl: <http://dbpedia.org/ontology/>PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>PREFIX dbpedia-ja: <http://ja.dbpedia.org/resource/>PREFIX category-ja: <http://ja.dbpedia.org/resource/Category:>
select distinct ?pref (count(?s) AS ?c) where { ?pref rdf:type dbpedia-owl:Place. ?pref dbpedia-owl:wikiPageWikiLink category-ja: 日本の都道府県 . ?s rdf:type dbpedia-owl:Politician; dbpedia-owl:birthPlace ?pref.}GROUP BY ?prefORDER BY ?c
59
(解説) Qiita : DBpedia を使った都道府県別ランキングhttp://qiita.com/koujikozaki/items/439fa7ce3e28b738fe10
DBpedia Japanese の検索例 「各都道府県で生まれた芸人の数」を調べるPREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>PREFIX dbpedia-owl: <http://dbpedia.org/ontology/>PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>PREFIX dbpedia-ja: <http://ja.dbpedia.org/resource/>PREFIX category-ja: <http://ja.dbpedia.org/resource/Category:>
select distinct ?pref (count(?s) AS ?c) where { ?pref rdf:type dbpedia-owl:Place. ?pref dbpedia-owl:wikiPageWikiLink category-ja:日本の都道府県 . ?s rdf:type dbpedia-owl:Comedian; dbpedia-owl:birthPlace ?pref.}GROUP BY ?prefORDER BY ?c
ここを,Politician→Comedianに変えるだけ!
60
まとめ :Linked Dataの基礎技術• Linked Dataは,Web上で公開されたデータを「つなぐ」仕組み• URL( IRI)を用いたグローバルに一意なデータの識別• データ間の“リンク”• Web と同じ仕組みを用いたデータのアクセス• URI による直接アクセス・参照解決• SPARQL エンドポイント( API )によるアクセス
• いろんなデータをつなぐことで, 「おもろい」組み合わせが見つかるかも!?• オープンデータを Linked Open Data(LOD) として公開するための方法は,ハンズオンで.
61
利用するオープンデータ(例) 「 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/institution01_20141128.csv
ハンズオンに利用するオープンデータ https://goo.gl/qF1e2J
63
利用可能なデータ例
64
「高槻市 公園」のオープンデータhttp://linkdata.org/work/rdf1s3570iを加工したもの
LOD を公開するための作業 1.公開する LOD を用意する
CSV 形式のオープンデータを RDF 形式に変換する
外部の LOD へのリンクを追加する
2. RDF ファイルをサーバにアップする 方法(1): Web サーバに「単一のファイル」
として公開 方法(2): RDF データベース(トリプルスト
ア)を用いて公開
65
既存データを RDF 化する方法
RDF データを作成するツールを使用 Open Refine ( http://openrefine.org/)+
RDF Refine ( http://refine.deri.ie/) データを整備・公開するための多様な機能をサポート
LinkData ( 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 データを作成
66
LOD チャレンジ 2011アプリケーション部門最優秀賞
LOD チャレンジ 2012アプリケーション部門最優秀賞
本日,利用するツール CSV2LOD ~ RDF変換支援ツール~
http://lodosaka.jp/tool/CSV2LOD/ CSV 形式のデータを RDF に変換する プロトタイプなので,ご意見大歓迎!
なんでもリンク http://link.lodosaka.jp/ オープンデータに外部の LOD へのリンクを追加する
Simple LODI https://github.com/uedayou/simplelodi DBpedia のように Linked Open Data(LOD) を公開す
る =参照解決可能+コンテンツネゴシエーションに対応した LOD を公開する.
67
使用するツール①CSV2LOD ~ RDF変換支援ツール~
68
http:/lodosaka.jp/tool/CSV2LOD/
ツール開発の動機 Linked Data の基本原則に沿った LOD を,誰でも,(あ
る程度)簡単に作成できるツールを提供したい 元データ( CSV )の編集を,極力,減らしたい
データが更新されたら,すぐに再変換したい → 元データと変換情報のテンプレートは別ファイルに
足りない機能があれば,気軽に拡張したい 小規模なプログラムで開発+オープンソース化により改変を自由に
初心者から上級者まで使いやすいものを 汎用性の高いテンプレート( Turtle ライクな形式)により,複雑な
RDFモデルにも対応 初心者向けには,語彙選択支援など,簡単にテンプレートが作れる
動作環境 インストール不要,かつ,ネットがなくても使える→ JavaScritpt の
みで開発 IE8 にも,できれば対応したかったが…(現時点は × )
69
使用するツール③Simple LODI
71
https://github.com/uedayou/simplelodi
ハンズオンの概要 目的
オープンデータを LOD (5つ星)として公開する
RDF 形式への変換 外部リンクを含める→ DBpedia Japanese へのリン
ク 参照解決可能+コンテンツネゴシエーションに対応
手順 1. CSV ファイルを用意する 2.「なんでもリンク」を使い DBpedia
Japanese へのリンク情報を CSV ファイルに追加する
3.「 CSV2LOD 」を使い RDF に変換する 4.「 Simple LODI 」を使い公開
72
1. CSV ファイルの準備1. CSV ファイルを準備する
練習では,http://data.lodosaka.jp/takatsuki/takatsuki_sample.csvをブラウザで「名前を付けて保存」して利用
2. Google Sheets (または Excel等)で CSV ファイルを開く
Google Sheets では「 File 」→「 Open 」→「 Upload 」 エクセル等を利用してもよいが「 UTF-8 」のファイルを開く際には,注意が必要
3. 形式に問題がないかを確認する1. 1 行目が項目, 2 行目以降がデータ(値)になっているか?2. 1 行目の項目と 2 行目以降にずれがないか?3. 不要な行がないか?
73
2.外部 LOD とのリンク1. なんでもリンクにアクセス2. オープンデータ( CSV )の「名称」に相当する列
をコピー3. なんでもリンクの入力欄にペースト
「 SPARQL エンドポイント」欄に記入すれば,任意のエンドポイントを利用可能
4. DBpedia のデータと一致するデータの一覧が表示される(最初の 10件)
5. 「ダウンロード」ボタンで結果をダウンロード6. エクセル等で開き,元のオープンデータの最終列
にマッピング情報をコピー&ペースト 項目名は「参照」としておく
74
3. CSV2LOD の作業手順 作業の手順1. 元データ( CSV 形式)を選択して読み込む
2. 変換に必要な情報を入力 URI に関する基本情報利用するプロパティ(関係の名称)
3. RDF変換用のテンプレートを生成4. CSV を RDF に変換(今回は Turtle 形式
のみ)5. RDF ファイルをダウンロード
75
CSV ファイルの読み込み1. 「ファイルを選択」ボタンで,あらかじめ用意しておいた CSV ファイルを選択する
2. 「 CSV ファイル読み込み・プレビュー」ボタンを押し,正しく読み込めることを確認する
76
CSV のプレビュー結果(例)
77
CSV ファイル読み込み時の注意 文字コードは自動判定されます
サンプルデータについては動作確認済み ファイルサイズが大きい( 200KB 以
上?)と読み込めない場合があります テキストエディタ等で開いて,「テキストボッ
クスに入力」の欄にコピー&ペースとして読み込むと,ある程度のサイズのデータでも読み込めます.
「ファイルを選択」がうまく動かないとき 「テキストボックスに入力」を利用して下さい
78
テンプレート作成①メタデータの入力 変換するデータに関する基本情報を入力す
る
79
ベース IRI:作成する RDF データで ID に用いるIRI ( URI )の設定
ライセンス情報
今日のハンズオンでは ベース IRI
http://data.lodosaka.jp/takatsuki/ ファイル名とする(拡張子はつけない)
ファイル名は,練習では「作業者の名前(例:kozaki )」,本番では「元のファイル名(例:takatsuki_city_park )」
オプションは「データベース(トリプルストア)を用いて公開( / )」を選択
ライセンス 高槻市のオープンデータは,すべて CC-BY で公
開されているものなの,下記のように選択・入力する
クレジットで表示すべき名前:高槻市,作業者 ライセンスは,クリエイティブ・コモンズ( CC )の
「 CC-BY 」
80
ベース 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 は使えない.
81
ベース IRI ( URI )の決め方 各データへはベース IRI によって決まる
IRI でアクセスされるので, データの公開者が管理している(できる) IRI データを公開する際に用いる IRI ( URL )を用いることが望ましい
# と / の使い分けは,一般に, 1 つ RDF ファイルでデータを公開するときは
http://test/data#001 のように # を データサイズが大きく, RDF データベースを用いて公開するときはhttp://test/data/001 のように / を使うことが多い 82
テンプレート作成②プロパティ(語彙)の設定
83
「プロパティ選択表示」ボタンを押すと,
RDF変換で用いる語彙の候補が推薦される 推薦に用いる
語彙の選択
推薦された語彙
CSV の 1 行目の項目名
語彙選択の考え方 ID列
CSV ファイル内で「一意の ID 」となる項目があれば,「 ID列」として選択する
なければ「 ID を自動付与」を選択する プロパティ
適切な語彙が推薦されていたら選択 今回,最低限,下記のプロパティを用いる
(他のプロパティが使われる場合もある) 名称 rdfs:label 説明 rdfs:comment Web サイト foaf:homepage 緯度 geo:lat 経度 geo:long 外部 LOD とのマッピング情報 rdfs:seeAlso
84
語彙選択の考え方 プロパティ(続き)
それ以外の語彙を利用する場合は「その他」の欄に入力 「推薦に用いる語彙」の一覧にある prefix は利用可能 それ以外の場合は,語彙の IRI をすべて記載
→よく使われる語彙の一覧は次スライド参照. CSV の項目名を利用するときは「 bp:項目名」を選択す
る bp: は「ベース IRI+/property# 」を表す prefix データ型は,できれば適切なものを選択する
※プロパティを複数選択することも可→ 複数の語彙に対応したいときに利用(例:共通語彙基盤+Schema.org )
85
共通語彙Schema.org http://schema.org/docs/schemas.htmlSchema.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_PageDublin Core http://dublincore.org/documents/dcmi-terms/ →解説 http://www.kanzaki.com/docs/sw/dublin-core.htmlFriend of a Friend (FOAF) http://xmlns.com/foaf/spec/ →解説 http://www.kanzaki.com/docs/sw/foaf.html
86
語彙の推薦について
現状では,推薦できる語彙は「ごく一部」のものに限られています 共通語彙基盤には未対応です.
今後,対応する語彙は順次増やす予定です
87
RDF ファイルへの変換
88
• 「テンプレート生成 /更新」:設定した情報に基づいて CSV を RDF に変換するテンプレートを作成する
• 「テンプレートのダウンロード」で,作成したテンプレートをダウンロードして再利用できる
• 「 CSV→RDF の変換実行」で, CSV ファイルを RDF に変換する
RDF ファイルへの変換結果
89
変換結果は下記のように表示される 「ファイル名」を入力し「 RDF ファイルのダウンロード」ボタンで RDF をダウンロードする.→ファイル名は「作業者名(練習時)」か「元ファイル名」+ .ttl とする
うまくダウロードできない場合は,コピー&ペーストを利用する
保存した RDF テンプレートの利用 ダウンロードした「 RDF変換テンプレート」を読み込んで利用することも可能 同じ形式の CSV ファイルが複数ある場合に有効 設定画面へは反映されないため「テンプレート生成 /更新」ボタンを押すと,読み込んだテンプレートが破棄されるので注意
テンプレートは,直接,画面上で編集することも可能 読み込んだテンプレートの修正や,設定からは生成できない
複雑な RDF変換用のテンプレートを生成するのに利用できる
90
4. LOD 公開 作成した RDF ファイルを Web サイトで公
開する 今回は,イベント用の Web サイトに公開 公開する URL は,
http://data.lodosaka.jp/takatsuki/data※ このサイトには Simple LODI を設定済み
アップする前に, RDF のファイル名がベースIRI で指定したもの+ .ttl になっているか確認例) http://data.lodosaka.jp/takatsuki/kozaki ならば kozaki.ttl
91
LOD 公開①: Web サイト1. FTP クライアントへログイン
https://webftp.heteml.jp/ を利用 ユーザー名: koujikozaki_takatsuki パスワード:****** FTP クライアントを利用する場合は
ホスト名(アドレス) ftp187.heteml.jp ※FTPS 接続 の場合は ssl187.heteml.jp (推奨)
2. FTP でアップロード 「data」フォルダを選択 「ファイルを選択」ボタン
→作成した RDF(****.ttl) を選択してアップロード※上書き時には,「上書き」にチェック
92
Simple LODI の設定
Simple LODI の設定についてはhttps://github.com/uedayou/simplelodiを参照
93
LOD の閲覧 ①Webブラウザでの閲覧
Webブラウザの URL欄に http://data.lodosaka.jp/takatsuki/ ファイル名 のように, 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
94
高槻市のオープンデータの LOD化
高槻市オープンデータから LOD 化したいもの選択
http://www.city.takatsuki.osaka.jp/kakuka/soumu/itseisak/gyomuannai/opendata/opendata.html
Linkdata.org のサイトへのリンクをたどりオープンデータを選択した後,「 Action 」→「 API リストの一覧」→「 CSV の URL をコピーしてブラウザで開く」
選択したオープンデータと作業者名を共有用スプレッドシートに記入
以下のファイルをサイトにアップ 元にした CSV ファイル, 作成した変換テンプレート 生成した RDF (ttl)ファイル
共有スプレッドシートに LOD をアップしたURL を記入
95