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公開のレシピ(第3回LODとオントロジー勉強会)

3,008 views

Published on

2015/01/06のLinked Open Dataと オントロジー勉強会(第3回)での講演スライドです.
参照解決可能なLOD公開方法の解説を中心にしています.

Published in: Technology

LOD公開のレシピ(第3回LODとオントロジー勉強会)

  1. 1. Linked Open Dataと オントロジー勉強会(第3回) Linked Data公開のレシピ 大阪大学産業科学研究所 古崎晃司 2014年1月6日(火) 於:大阪大学中之島センター 2014/01/06 第3回LODとオントロジー勉強会 1
  2. 2. 本日の予定  18:30~19:30  LODについての復習  本日のメイントピック~LOD公開について~  「Linked Data-Webをグローバルなデータ空間に する仕組み」を教科書とした勉強会 『第5章 Linked Data公開のレシピ』  19:30~20:00  「LODの公開に使えるツール」の紹介 ~参照解決可能なURIを用いたLOD公開の実践~  20:00~20:30  フリー・ディスカッション 2014/01/06 第3回LODとオントロジー勉強会 2
  3. 3. Linked Open Data(LOD)  Linked Data:Web上のデータを,つなぐ(linkする)ことで,新しい価値 を生み出そうとする取り組み.Webの創始者Tim Berners-Lee氏が提唱 ※ Linked Open Data(LOD):オープンな形で公開されたLinked Data 2014/01/06 第3回LODとオントロジー勉強会 http://linkeddata.org/ • 誰もが同じ方法で,「データをつなぐことができる仕組み」を提供している. • 技術的には, -データ公開の共通フォーマット(URIによる名前付け,RDFによるグラフ表現 -コンピュータが,データにアクセスする共通の仕組み が提供されている. →Web上に公開された膨大なデータを統合した1つのデータベースとして利用できる. 3
  4. 4. DBPedia 2014/01/06 第3回LODとオントロジー勉強会 Wikipediaの各記事のインフォボックスの情報を抽出して自動生成 されるLOD 様々なデータをつなぐLODのハブ的な存在となっている. http://dbpedia.org/ 日本語版のDBPediaは http://jp.dbpedia.org/ インフォボックスの例 4
  5. 5. 既に公開・リンクされているLOD ~LODクラウド~ 2014/01/06 第3回LODとオントロジー勉強会 2007/5/1 2007/10/8 2008/9/182009/7/14 2010/9/22 http://lod-cloud.net/ 2011/9/19時点 1つの丸が個別に公開 されたDBを表す. 参考:「Linked Data-Webをグ ローバルなデータ空間にする仕 組み」 3章.データのWeb マスメディア 地理情報 図書館・教育 ユーザ作成 データ 政府情報 クロス・ドメイン ライフサイエンス DBPedia open.gov open.gov.uk 5
  6. 6. 既に公開・リンクされているLOD ~LODクラウド~ 2014/01/06 第3回LODとオントロジー勉強会 6 Linking Open Data cloud diagram 2014, by Max Schmachtenberg, Christian Bizer, Anja Jentzsch and Richard Cyganiak. http://lod-cloud.net/ 1つの丸が個別に公開 されたLOD(DB)を表す 2014/08/30時点 行政関係 のデータ 公開したオープンデータが 他のオープンデータと「つながる」ことで「新たな価値」が生まれる
  7. 7. Linked Dataが目指すこと  WWW(World Wide Web)  文書を公開し,相互に接続(ハイパーリンク でつなぐ)ための革命的な仕組みを提供し たことで,今日のWebの発展につながった.  Linked Data  データを共有(公開)し,相互につなぐ仕組 みを提供する.  Linked Dataの原理  データの構造化  構造化されたデータはより洗練された処理を可能にする  分散したデータをつなぐハイパーリンク  文書単位では無く,データ単位のリンクを可能にする.  データの島々から一つのグローバルデータ空間へ  分散されたデータ群を1つのグローバルなデータ空間へ統合する 参考:『Linked Data-Webをグローバルな データ空間にする仕組み(Tom Heath, Christian Bizer(武田英明監訳),丸善,2013)』 1章. 2014/01/06 第3回LODとオントロジー勉強会 7
  8. 8. Linked Dataの基本原則 1. Use URIs as names for things 全てのモノやコトにURIをつけましょう 2. Use HTTP URIs so that people can look up 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. 多くのモノ・コトを発見できるように,外部へのリンクを含めよう. 2014/01/06 第3回LODとオントロジー勉強会 8 原文引用元 http://www.w3.org/DesignIssues/LinkedData.html 日本語訳参考 http://www.slideshare.net/takeda/lod-5163454 2章(p.2)参照 5★オープンデータ で言及 5★オープンデータ で言及
  9. 9. 5 ★ オープンデータ 2014/01/06 第3回LODとオントロジー勉強会 9 ★ (どんな形式でも良いので) あなたのデータをオープンライセンスでWeb上に公 開しましょう ★★ データを構造化データとして公開しましょう ★★★ 非独占の形式を使いましょう ★★★★ 物事を示すのにURIを使いましょう,そうすることで他の人々があなたのデータ にリンクすることができます ★★★★★ あなたのデータのコンテキストを提供するために他のデータへリンクしましょう http://5stardata.info/ja/ より引用 ライセンスについて フォーマットについて Webの発明者でありLinked Dataの創始者でもあ るティム・バーナーズ=リーがオープンデータのた めに提案したスキーム ※注:図中のPDF,エクセル,CSVのアイコンは, あくまでも例示であって,そのフォーマットを推奨 している訳ではない.
  10. 10. Linked Dataの例 2014/01/06 第3回LODとオントロジー勉強会 10 大阪府 大阪市 都道府県 223㎢ 2,687,287人 面積 人口 吹田市 豊中市 … バラ科 市の木 隣接自治体 隣接自治体 … http://ja.dbpedia.org/resource/大阪市 というURIから得られる情報 サクラ 科 Cherry blossom英名 リソース: URIで表される モノ・コト プロパティ: リソース間の関 係を表す リテラル :文字列 主語 述語 目的語 トリプル ※RDF(Linked Dataのデータ モデル)は,「トリプルの組み 合わせ」で表される (DBpedia Japaneseより) 目的語が他のリソースのとき,トリプル を辿って更なる情報が得られる ※図中のリソース(楕 円),プロパティ(リンク) は
  11. 11. Linked Dataの基本原則 1. Use URIs as names for things 全てのモノやコトにURIをつけましょう 2. Use HTTP URIs so that people can look up 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. 多くのモノ・コトを発見できるように,外部へのリンクを含めよう. 2014/01/06 第3回LODとオントロジー勉強会 11 原文引用元 http://www.w3.org/DesignIssues/LinkedData.html 日本語訳参考 http://www.slideshare.net/takeda/lod-5163454 2章(p.2)参照 本日の メイントピック
  12. 12. 本日のメイントピック  LODの公開方法  RDFファイルのダンプ(全データ)をダウンロードできる ところに置く  SPARQLエンドポイント(LODを検索可能なAPI)を公開 する →これだけでは,Linked Dataの基本原則を満たした公 開とは言えない!  参照解決可能なhttp (https) URIsを用いた公開 (基本原則2)が重要! →しかし,技術的なハードルが少し高い?  本日の勉強会の目標  参照解決可能なLOD公開方法のノウハウを共有する  できれば,エンジニアでなくても簡単にできるように… 2014/01/06 第3回LODとオントロジー勉強会 12
  13. 13. 参照解決可能なLODの例  日本語LODの例  DBpedia Japanese http://ja.dbpedia.org/  日本語Wikipediaオントロジー http://www.wikipediaontology.org/  ねじLOD http://monodzukurilod.org/neji/  参照解決可能なLOD  URIでデータにアクセスが可能  通常のWebページと同様に,データのURIを用いて「つながり」を辿 ることが出来る  コンテントネゴシエーションに対応している場合,  Webブラウザからのアクセス→HTMLファイルを返す  Linked Dataブラウザからのアクセス→RDFを返す  .html,.rdf,.ttlなど拡張子に合わせた形式のファイルを返す などの要求に応じたデータ形式で返す →Linked Dataブラウザなど汎用のアプリの開発が可能に! 2014/01/06 第3回LODとオントロジー勉強会 13
  14. 14. 参照解決ができない例  URIで参照した先(Webサイト)にデータが存在しない  URIで参照した先のサイトはあるが…  LinkData.orgの場合 http://linkdata.org/resource/rdf1s2523i#2473 →LinkData.org上で表示する方法(GoogleMap, LinkDataの地図表示)を選択できる ※ただし,汎用のLinked Dataブラウザでの閲覧は不可(= 参照解決可能ではない) →LinkData.orgのAPIでRDFファイルを取得するURL 例 http://linkdata.org/api/1/rdf1s2523i/osaka_shisetsu_rdf.xml を指定すると閲覧可 2014/01/06 第3回LODとオントロジー勉強会 14
  15. 15. 本日の予定  18:30~19:30  LODについての復習  本日のメイントピック~LOD公開について~  「Linked Data-Webをグローバルなデータ空間に する仕組み」を教科書とした勉強会 『第5章 Linked Data公開のレシピ』  19:30~20:00  「LODの公開に使えるツール」の紹介 ~参照解決可能なURIを用いたLOD公開の実際~  20:00~20:30  フリー・ディスカッション 2014/01/06 第3回LODとオントロジー勉強会 15
  16. 16. 5.1 Linked Dataの公開パターン  Linked Data公開の大前提  Linked Dataの基本原則(2章参照)に従う  これらを支える標準技術に準拠することが, Linked Dataの相互運用を効率化し, Web全体で再利用することを可能にしている!  基本原則に準拠するために, 既存システムを捨てる必要は無いが, データをWebにつなげる技術レイヤーの導入が必要  5章では,これを実現するための Linked Dataの公開パターン(レシピ) を紹介している. 2014/01/06 第3回LODとオントロジー勉強会 16
  17. 17. 5.1.1 簡単な公開パターンの紹介  元データの特徴  構造化された検索可能なデータ  RDBに格納されている,Web APIが提供されている,など →DBやAPIに「RDFに変換するラッパー(Wrapper)」を追加  構造化された静的なデータ  CSV, Excel表,XMLファイル,DBのダンプデータ,など →ツール等でRDFに変換した後,WebサーバやRDF-DBを 用いて公開  テキスト文書 →エンティティ抽出ツール(entity extractor)を用いて文書 にLinked Data URIをアノテーションして公開 2014/01/06 第3回LODとオントロジー勉強会 17
  18. 18. 5.1.2 追加の考察  データ量:どの程度のデータ量が提供されるべきか?  少量のデータ →静的なRDFファイルでの公開  手作業による管理コストは増えるが,技術的に複雑な セット アップのコストは抑えられる  大規模なデータ →複数のRDFファイルに分割して公開, Linked Dataのインタフェース付きのRDF-DBを利用  データのダイナミズム:どの程度データは変化するか?  あまり変化しないデータ →静的なRDFファイルでの公開  頻繁に変化するデータ →DBの利用(RDB/API+ラッパー,RDF-DB,など) 2014/01/06 第3回LODとオントロジー勉強会 18
  19. 19. 5.2 Linked Data公開のレシピ  5.2.1 Linked Dataを静的なRDF/XMLファイルとして提 供する  5.2.2 Linked DataをHTML内に埋め込んだRDFとして 提供する  5.2.3 RDFとHTMLをサーバサイドスクリプトを用いて提 供する  5.2.4 リレーショナルデータベースを元にLinked Dataを 提供する  5.2.5 RDFトリプルストアを元にLinked Dataを提供する  5.2.6 既存のアプリケーションやWeb APIをラップして Linked Dataを提供する 2014/01/06 第3回LODとオントロジー勉強会 19
  20. 20. 5.2.1 Linked Dataを静的なRDF/ XMLファイルとして提供する(1/3)  公開方法の概要  RDFファイルを生成し,Webサーバにアップロードす る(※単にRDFファイルをアップロードするだけでなく, サーバ側の設定が必要)  特徴  Linked Dataを公開する最も簡単な方法  ホームページ公開用の一般的なレンタルサーバでも Linked Dataの公開が可能  この方法が適している条件  個人が比較的小さなRDFファイルを手作業で作って メンテナンスする場合  ソフトウェアツール等がRDFを静的に生成する場合 2014/01/06 第3回LODとオントロジー勉強会 20
  21. 21. 5.2.1 Linked Dataを静的なRDF/ XMLファイルとして提供する(2/3)  公開の手順  (1)RDFファイルをWebサーバにアップロードする  リソースのURIには,Linked Dataを公開するWebサイトの URLを用いる  例)http://lodosaka.jp/data/example.rdfというURLで公 開する場合,リソースのURIには, http://lodosaka.jp/data/example.rdf#***を用いる  (2)WebサーバのMIME typeを設定する  公開したLinked Dataにアクセスしたクライアントに正しい MIME typeを返すように,Webサーバを設定する  Apache の場合は,.htaccess(または,http.conf)に, AddType application/rdf+xml .rdf の1行を追加する  利用しているサーバによっては,この設定は不要(?) 2014/01/06 第3回LODとオントロジー勉強会 21
  22. 22. 5.2.1 Linked Dataを静的なRDF/ XMLファイルとして提供する(2/3)  公開の手順(続き)  (2)WebサーバのMIME typeを設定する(続き)  必要であれば, AddType text/rdf+n3;charset=utf-8 .n3 AddType application/x-turtle .ttl など,他のシリアライズ化形式のRDFについてもMIME typeを 追加する  (3)RDFをHTMLから見つけられるようにする  公開したLinked Dataと関連するHTMLがあれば, <link rel=“alternate” type=“application/rdf+xml” href=“example.rdf”> をHTML文書のヘッダに付け加える  この公開方法の拡張  303リダイレクト(redirect)やコンテントネゴシエーション (content negotiation)に対応した公開については http://www.w3.org/TR/swbp-vocab-pub/ を参照 2014/01/06 第3回LODとオントロジー勉強会 22
  23. 23. 5.2.2 Linked DataをHTML内に埋 め込んだRDFとして提供する  公開方法の概要  HTML文書の中にRDFトリプルを記述する規格であるRDFa (参照:2.4.2項)を用いてHTML文書の中にLinked Dataの 情報を埋め込んで公開する  特徴  HTML文書とLinked Dataを同時に管理できる  この手法が適している条件  Webサイトの管理に用いているCMSなどが,RDFa出力に対 応している場合. 例)Drupal(https://www.drupal.org/project/rdfa参照) 2014/01/06 第3回LODとオントロジー勉強会 23
  24. 24. 5.2.3 RDFとHTMLをサーバサイ ドスクリプトを用いて提供する  公開方法の概要  Webサイトの管理にHTML文書を生成するサーバサイドスク リプトをLinked Dataに対応するように拡張する  特徴  HTML文書とLinked Dataを同時に管理できる  既存システムを活用できる  この手法が適している条件  Webサイトの管理にHTML文書を生成するサーバサイドスク リプトを用いている場合 2014/01/06 第3回LODとオントロジー勉強会 24
  25. 25. 5.2.4 リレーショナルデータベース を元にLinked Dataを提供する  公開方法の概要  リレーショナルデータベース(RDB)にLinked Dataのビューを 追加するようなソフトウェアを追加する  特徴  既存のデータベースを活用できる  この手法が適している条件  Linked Dataとして公開したいデータがRDBに格納されている  この公開方法に利用できるソフトウェア  D2R Server(http://d2rq.org/)  既存のRDBにRDFへのマッピング情報を付与することでLinked Data として公開できる  日本語による参考情報 http://wiki.lifesciencedb.jp/mw/index.php/BH13.13/D2RQ 2014/01/06 第3回LODとオントロジー勉強会 25
  26. 26. 5.2.5 RDFトリプルストアを元に Linked Dataを提供する  公開方法の概要  RDFデータベース(トリプルストア)のLinked Dataインタフェー スを用いる  この公開方法に利用できるソフトウェア  Linked Dataインタフェースに対応したトリプルストアの例  Virtuoso(http://virtuoso.openlinksw.com/) 多くのサイトで利用されているトリプルストア.日本語情報も多数あり. RDF/XMLやTurtle(HTMLページ以外)のLinked Dataの提供は可能.  ARC2(https://github.com/semsol/arc2/wiki) 一般的なレンタルサーバーで提供しているLAMP(Linux, Apache, MySQL, PHP)環境で利用可能  Pubby(http://wifo5-03.informatik.uni-mannheim.de/pubby/)  SPARQLエンドポイントを用いてLinked Dataインタフェースを提供でき るソフト 2014/01/06 第3回LODとオントロジー勉強会 26
  27. 27. 5.2.6 既存のアプリケーションやWeb API をラップしてLinked Dataを提供する  公開方法の概要  Web APIにLinked Dataを出力するラッパを追加する  特徴  既存のWeb APIで提供されているデータを活用できる  この手法が適している条件  Linked Dataとして公開したいデータにアクセスするWeb API が公開されている  APIの利用規定(APIで取得したデータの再公開が認められ ているか)の確認が必要 2014/01/06 第3回LODとオントロジー勉強会 27
  28. 28. 5.4 Linked Dataのテストと デバッグ  Linked Dataの原則に従っているかのチェック  W3C RDF Validator(http://www.w3.org/RDF/Validator/)  RDF/XMLの文法チェック  Vapour Linked Data Validator(http://idi.fundacionctic.org/vapour)  URIの参照解決とその通信プロセスをレポート  RDF:Alerts(http://swse.deri.org/RDFAlerts/)  用語の定義や制限のチェック  Linked Dataブラウザで閲覧出来るかのチェック  Quick and Dirty RDF browser http://graphite.ecs.soton.ac.uk/browser/  (Yet Another) Linked Data Browser http://www.kanzaki.com/works/2014/pub/ld-browser  Tabulator(※上手く動かない?) http://www.w3.org/2005/ajar/tab  Marbles(※一時的にサービス停止中?) http://dbpedia.org/Marbles 2014/01/06 第3回LODとオントロジー勉強会 28
  29. 29. 5.5 Linked Data公開のための チェックリスト  参照解決可能なHttp URIでデータを提供することに加えて,以下の項目を チェックすべき 1. 自分のデータセットは他のデータセットにリンクしているか? 2. 由来(一次情報源)のメタデータを提供しているか? 3. ライセンスのメタデータは提供しているか? 4. 広く使われている語彙から用語を選んで使っているか? 5. プロプライエタリな(独自に定義した)語彙のURIは参照解決可能か?  語彙の定義をWebから取得できるようにする 6. プロプライエタリな語彙は他の語彙にマッピングしているか?  広く使われている語彙との対応を明示する 7. データセットレベルのメタデータを提供しているか?  統計情報やデータセットの特徴などの説明 8. その他のアクセス方法について言及しているか?  SPARQLエンドポイントやRDFデータのダンプを公開している場合はその情報を voiD(Linked Dataのデータセットについて記述する語彙)に記述 2014/01/06 第3回LODとオントロジー勉強会 29
  30. 30. 本日の予定  18:30~19:30  LODについての復習  本日のメイントピック~LOD公開について~  「Linked Data-Webをグローバルなデータ空間に する仕組み」を教科書とした勉強会 『第5章 Linked Data公開のレシピ』  19:30~20:00  「LODの公開に使えるツール」の紹介 ~参照解決可能なURIを用いたLOD公開の実際~  20:00~20:30  フリー・ディスカッション 2014/01/06 第3回LODとオントロジー勉強会 30
  31. 31. LOD公開の実践 ~静的RDFファイルでの公開~  静的RDFファイルの最も簡単な公開方法 1. RDFファイルを用意する  リソースのURIは, <ファイルの置き場所>.rdf#<id> の形式にする 例 http://lodosaka.jp/data/example.rdf#1 2. RDFファイルをWebサーバにアップロードする  アップロードする場所は,1.のURIに合わせる 3. Link Dataブラウザ等で正しく閲覧出来るか確認  Linked DataブラウザでリソースのURIをクリックして表示が正し く切り替わるかなどもチェック 4. (必要であれば)MIME typeの設定を追加  いくつかのレンタルサーバで試したところMIME typeの設定を しなくともLinked Dataブラウザで閲覧できた LOD公開の第1ステップとしてはこの程度でOK? 2014/01/06 第3回LODとオントロジー勉強会 31
  32. 32. 大規模なLOD公開に向けて  静的RDFをより高度な方法で公開する  http://www.w3.org/TR/swbp-vocab-pub/ 参照  大規模なRDFの扱い  複数に分割したRDFファイルとして公開  Webサーバのみでの公開が可能  RDF-DB(トリプルストア)を用いた公開  サーバにDB等のソフトウェアをインストールする必要あり 2014/01/06 第3回LODとオントロジー勉強会 32

×