情報メディア工学特論a 第4回〜6回 lod可視化の演習
DESCRIPTION
2014-10-16、情報メディア工学特論A 第4回〜6回TRANSCRIPT
![Page 1: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/1.jpg)
情報メディア工学特論A 第4回〜6回 LOD可視化の演習
作成: v1.0 2014-‐10-‐16 山口 琢、Future University Hakodate
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 1
![Page 2: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/2.jpg)
データのWEB
リンクをたどる
Taku Yamaguchi, Future University Hakodate 2 2014-‐10-‐16
![Page 3: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/3.jpg)
[再掲]文書のWeb n 文章ファイル+リンク
p 異なるWebサーバにある、情報を相互にハイパーリンクで結びつけることで作られている
n 人が読むことを想定している p 同じ事柄に関することでも機械では判断できない
3
HTML HTML
HTML
リンク リンク
リンク
Taku Yamaguchi, Future University Hakodate 2014-‐10-‐16
![Page 4: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/4.jpg)
文書のWeb
Taku Yamaguchi, Future University Hakodate 4
HTML HTML
HTML
リンク リンク
リンク
hLp://www.fun.ac.jp/ hLp://www.fun.ac.jp/ research/faculty_members/
michikooba/
hLp://www.fun.ac.jp/ research/faculty_members/
2014-‐10-‐16
Copyright ©2014, FUTURE UNIVERSITY HAKODATE.
![Page 5: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/5.jpg)
[再掲]LODによるデータのWeb n データ(RDF)+リンク[LOD: Linked Open Data]
p 異なるデータ源のデータが相互に結びつく
n 機械が読むことを想定 p 複雑なデータ空間の中で動作させるアプリケーションを容
易に構築することができる
5
データ
データ
データ
データ
データ
データ
データ
Taku Yamaguchi, Future University Hakodate
RDF((Resource Descrip`on Framework)) 2014-‐10-‐16
![Page 6: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/6.jpg)
LODによるデータのWeb
Taku Yamaguchi, Future University Hakodate 6
データ
データ
データ
データ
データ
データ
データ
RDF((Resource Descrip`on Framework))
hLp://ja.dbpedia.org/resource/函館市
2014-‐10-‐16
スタート: 最初のデータ
![Page 7: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/7.jpg)
データのWeb
Taku Yamaguchi, Future University Hakodate 7
データ
データ
文書
DBpedia Japanese
hLp://ja.dbpedia.org/resource/函館市
hLp://ja.dbpedia.org/resource/北斗市
函館市
hLp://www.city.hakodate.hokkaido.jp/
2014-‐10-‐16
函館市
![Page 8: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/8.jpg)
ちょっと待て…
Taku Yamaguchi, Future University Hakodate 8 2014-‐10-‐16
![Page 9: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/9.jpg)
あれ? #1
n データの名前って、そのまま ブラウザのアドレス欄に入力できるの? hLp://ja.dbpedia.org/resource/函館市 ⇒ URI: データの識別子 ⇒ hLp:// 〜: 参照解決可能(dereferenceable)
n その操作の仕方って、それじゃぁ文書では? というか、アドレスが変わってないか? hLp://ja.dbpedia.org/page/函館市 ⇒ Content nego`a`on
Taku Yamaguchi, Future University Hakodate 9 2014-‐10-‐16
![Page 10: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/10.jpg)
URI、hLp://〜
n URI: データの識別子 n hLp:// 〜: 参照解決可能(dereferenceable)
⇒ ティム・バーナーズ=リーによるLinked Data4つの原則 1. Use URIs as names for things 2. Use HTTP URIs so that people can look up those names. 3. When someone looks up a URI, provide useful
informa`on, using the standards (RDF*, SPARQL) 4. Include links to other URIs. so that they can discover
more things. hLp://www.w3.org/DesignIssues/LinkedData.html
Taku Yamaguchi, Future University Hakodate 10 2014-‐10-‐16
![Page 11: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/11.jpg)
Content nego`a`on #1
Google Chrome / Developer Tools /
Network 2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 11
データ
データ
DBpedia Japanese
hLp://ja.dbpedia.org/resource/函館市
hLp://ja.dbpedia.org/page/函館市
![Page 12: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/12.jpg)
Content nego`a`on #2 n 「HTMLと画像を受け付け(accept)ます」とブラウザが言ったら…
n 「では、あちらを見なさい」と別のURIをサーバに案内された
Taku Yamaguchi, Future University Hakodate 12
Accept: text/html,applica`on/xhtml+xml,…
2014-‐10-‐16
![Page 13: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/13.jpg)
Content nego`a`on #3 n 案内された先のHTMLページを見ている
Taku Yamaguchi, Future University Hakodate 13
Content-‐Type: text/html; charset=UTF-‐8
2014-‐10-‐16
![Page 14: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/14.jpg)
「データ」が欲しいんだけど… JSON形式でゲット
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 14
hLp://ja.dbpedia.org/data/函館市.json
DBpedia Japanese by DBpedia Community
![Page 15: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/15.jpg)
いやいや、「最初から」データが欲しい…
$ curl -‐iLH "Accept: applica`on/json" "hLp://ja.dbpedia.org/resource/%E5%87%BD%E9%A4%A8%E5%B8%82"
HTTP/1.1 303 See Other Vary: nego`ate,accept Content-‐Type: applica`on/json; qs=0.6
Loca`on: hLp://ja.dbpedia.org/data/%E5%87%BD%E9%A4%A8%E5%B8%82.json Content-‐Length: 0
HTTP/1.1 200 OK Server: Virtuoso/07.00.3203 (Linux) x86_64-‐unknown-‐linux-‐gnu
Content-‐Type: applica`on/json Content-‐Length: 517744 { "hLp://ja.dbpedia.org/resource/\u5317\u6D77\u9053" : { "hLp://dbpedia.org/ontology/wikiPageWikiLink" : [ { "type" : "uri", "value" : "hLp://ja.dbpedia.org/resource/\u51FD\u9928\u5E02" } ] } , "hLp://ja.dbpedia.org/resource/\u65E5\u672C\u30D7\u30ED\u91CE\u7403" : { "hLp://dbpedia.org/ontology/wikiPageWikiLink" : [ { "type" : "uri", "value" : "hLp://ja.dbpedia.org/resource/\u51FD\u9928\u5E02" } ] } , "hLp://ja.dbpedia.org/resource/\u65E5\u672C\u306E\u5730\u7406" : { "hLp://dbpedia.org/ontology/wikiPageWikiLink" : [ { "type" : "uri", "value" : "hLp://ja.dbpedia.org/resource/\u51FD\u9928\u5E02" } ] } ,
… Taku Yamaguchi, Future University Hakodate 15 2014-‐10-‐16
![Page 16: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/16.jpg)
あれ? #2
n ところで、 「%E5%87%BD%E9%A4%A8%E5%B8%82」 って何? 「函館市」じゃないの? ⇒パーセントエンコーディング
Taku Yamaguchi, Future University Hakodate 16 2014-‐10-‐16
![Page 17: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/17.jpg)
パーセントエンコーディング
URIにASCII(のサブセット)以外の文字を使うとき
「URLエンコード」とも呼ばれる
Wikipediaで「函館市」の項目を表示… p ブラウザのアドレスバーでは、こう見える hLp://ja.wikipedia.org/wiki/函館市
p でも、コピーしてテキストエディターに貼り付けると… hLp://ja.wikipedia.org/wiki/%E5%87%BD%E9%A4%A8%E5%B8%82
p 「%E5%87%BD%E9%A4%A8%E5%B8%82」は、 「函館市」をパーセントエンコードしたもの
エンコードした文字データを、パーセントエンコードする 2014-‐10-‐16 17 Taku Yamaguchi, Future University Hakodate
![Page 18: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/18.jpg)
あれ? #3
n では、スライド中の hLp://ja.dbpedia.org/resource/函館市 は、図用の簡易表記?
n それは… ⇒ IRI (Interna`onalized Resource Iden`fier)
Taku Yamaguchi, Future University Hakodate 18 2014-‐10-‐16
![Page 19: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/19.jpg)
IRI: 国際化したURI n URL: Uniform Resource Locator
古い用語、表現
n URI: Uniform Resource Iden`fier ASCIIのサブセット hLp://ja.wikipedia.org/wiki/%E5%87%BD%E9%A4%A8%E5%B8%82
n IRI: Interna`onalized Resouce Iden`fier 多言語対応、日本語などを使うことができる LOD関連の標準はIRIを使う hLp://ja.dbpedia.org/resource/函館市
Taku Yamaguchi, Future University Hakodate 19 2014-‐10-‐16
![Page 20: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/20.jpg)
cURLでJSON形式をゲット $ curl -‐iLH "Accept: applica`on/json" "hLp://ja.dbpedia.org/resource/函館市"
HTTP/1.1 303 See Other
Content-‐Type: applica`on/json; qs=0.6
Loca`on: hLp://ja.dbpedia.org/data/函館市.json
Content-‐Length: 0
HTTP/1.1 200 OK
Content-‐Type: applica`on/json
{
"hLp://ja.dbpedia.org/resource/\u5317\u6D77\u9053" : { "hLp://dbpedia.org/ontology/wikiPageWikiLink" : [ { "type" : "uri", "value" : "hLp://ja.dbpedia.org/resource/\u51FD\u9928\u5E02" } ] } ,
…
Taku Yamaguchi, Future University Hakodate 20 2014-‐10-‐16
![Page 21: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/21.jpg)
cURLでHTML形式を… $ curl -‐iLH "Accept: text/html" "hLp://ja.dbpedia.org/resource/函館市"
HTTP/1.1 303 See Other
Content-‐Type: text/html; charset=UTF-‐8
Loca`on: hLp://ja.dbpedia.org/page/函館市
HTTP/1.1 404 Not found
…
Taku Yamaguchi, Future University Hakodate 21 2014-‐10-‐16
![Page 22: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/22.jpg)
cURLでHTML形式を… $ curl -‐iLH "Accept: text/html" "hLp://ja.dbpedia.org/resource/%E5%87%BD%E9%A4%A8%E5%B8%82"
HTTP/1.1 303 See Other
Content-‐Type: text/html; charset=UTF-‐8
Loca`on: hLp://ja.dbpedia.org/page/%E5%87%BD%E9%A4%A8%E5%B8%82
HTTP/1.1 200 OK
Content-‐Type: text/html; charset=UTF-‐8
<!DOCTYPE html>
<html xmlns="hLp://www.w3.org/1999/xhtml">
<head profile="hLp://www.w3.org/1999/xhtml/vocab">
<meta charset="u{-‐8" />
<`tle>About: 函館市</`tle> 2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 22
![Page 23: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/23.jpg)
ブラウザのアドレスバー
サーバには最初から %E5%87%BD%E9%A4%A8%E5%B8%82 が伝わっているようだ。
↑
ブラウザが変換している
↑
文字を見たら、 誰がいつ変換してるのか、 常に注意すること
Taku Yamaguchi, Future University Hakodate 23 2014-‐10-‐16
DBpedia Japanese by DBpedia Community
![Page 24: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/24.jpg)
JSON形式 {
"hLp://ja.dbpedia.org/resource/\u5317\u6D77\u9053" : { "hLp://dbpedia.org/ontology/wikiPageWikiLink" : [ { "type" : "uri", "value" : "hLp://ja.dbpedia.org/resource/\u51FD\u9928\u5E02" } ] } ,
"hLp://ja.dbpedia.org/resource/\u65E5\u672C\u30D7\u30ED\u91CE\u7403" : { "hLp://dbpedia.org/ontology/wikiPageWikiLink" : [ { "type" : "uri", "value" : "hLp://ja.dbpedia.org/resource/\u51FD\u9928\u5E02" } ] } ,
"hLp://ja.dbpedia.org/resource/\u65E5\u672C\u306E\u5730\u7406" : { "hLp://dbpedia.org/ontology/wikiPageWikiLink" : [ { "type" : "uri", "value" : "hLp://ja.dbpedia.org/resource/\u51FD\u9928\u5E02" } ] } ,
…
Taku Yamaguchi, Future University Hakodate 24 2014-‐10-‐16
![Page 25: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/25.jpg)
あれ? #4
n JSONのデータに「北海道」が見当たらない。 「\u5317\u6D77\u9053」って? ⇒ バックスラッシュエスケープを使ったユニコード文字
Taku Yamaguchi, Future University Hakodate 25 2014-‐10-‐16
![Page 26: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/26.jpg)
バックスラッシュエスケープを使ったユニコード文字
A string is a sequence of zero or more Unicode characters, wrapped in double quotes, using backslash escapes. A character is represented as a single character string. A string is very much like a C or Java string. string in JSON hLp://json.org/
Taku Yamaguchi, Future University Hakodate 26 2014-‐10-‐16
![Page 27: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/27.jpg)
LOD: イラスト表現
Taku Yamaguchi, Future University Hakodate 27
データ
データ
DBpedia Japanese hLp://ja.dbpedia.org/resource/北斗市
隣の自治体
hLp://ja.dbpedia.org/resource/函館市
2014-‐10-‐16
![Page 28: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/28.jpg)
LOD: イラスト表現
Taku Yamaguchi, Future University Hakodate 28
函館市 隣の自治体
北斗市
2014-‐10-‐16
![Page 29: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/29.jpg)
LOD: イラスト表現
Taku Yamaguchi, Future University Hakodate 29
函館市 隣の自治体
北斗市
hLp://ja.dbpedia.org/resource/函館市
hLp://ja.dbpedia.org/resource/北斗市
?
2014-‐10-‐16
![Page 30: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/30.jpg)
JSONでシリアライズ GET hLp://ja.dbpedia.org/resource/函館市 Accept: applica`on/json ↓ … , "hLp://dbpedia.org/ontology/neighboringMunicipality" : [
{ "type" : "uri", "value" : "hLp://ja.dbpedia.org/resource/\u5317\u6597\u5E02" } , { "type" : "uri", "value" : "hLp://ja.dbpedia.org/resource/\u9752\u68EE\u770C" }
] Taku Yamaguchi, Future University Hakodate 30
北斗市
2014-‐10-‐16
![Page 31: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/31.jpg)
JSONでシリアライズ GET hLp://ja.dbpedia.org/resource/函館市 Accept: applica`on/json ↓ … , "hLp://dbpedia.org/ontology/neighboringMunicipality" : [
{ "type" : "uri", "value" : "hLp://ja.dbpedia.org/resource/\u5317\u6597\u5E02" } , { "type" : "uri", "value" : "hLp://ja.dbpedia.org/resource/\u9752\u68EE\u770C" }
] Taku Yamaguchi, Future University Hakodate 31
データ
データ
データ
北斗市
青森県
隣の自治体
2014-‐10-‐16
![Page 32: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/32.jpg)
イラスト表現
Taku Yamaguchi, Future University Hakodate 32
函館市
隣の自治体 北斗市
hLp://ja.dbpedia.org/resource/函館市
hLp://ja.dbpedia.org/resource/北斗市
hLp://dbpedia.org/ontology/neighboringMunicipality
青森県
hLp://ja.dbpedia.org/resource/青森県
隣の自治体
hLp://dbpedia.org/ontology/neighboringMunicipality
2014-‐10-‐16
![Page 33: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/33.jpg)
あれ? #5
n プロパティ「hLp://dbpedia.org/ontology/neighboringMunicipality」が 「隣の自治体」だって、どうしてわかるの? ⇒ 語彙
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 33
![Page 34: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/34.jpg)
語彙
n 語彙はプロパティの集合 n データセットの仕様を調べる
例) ヨコハマ・アート・LOD > 各情報に含まれるメタ情報については、それぞれのスキーマページに詳しく記載しています。 hLp://fp.ya�p.org/yokohama_art_lod
n 既存の語彙を調べる
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 34
![Page 35: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/35.jpg)
あれ? #6
n 「函館市」の「隣の自治体」を知るのに、 「函館市」の情報全部を取得して、 そこから探すのか? ⇒ 次へ…
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 35
![Page 36: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/36.jpg)
データセットからデータを取得
SPARQL
Taku Yamaguchi, Future University Hakodate 36 2014-‐10-‐16
![Page 37: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/37.jpg)
賢く使いたい
「函館市」の「隣の自治体」を「問い合わせ」て、 それだけ知りたい。
…他のデータはいらない。
Taku Yamaguchi, Future University Hakodate 37 2014-‐10-‐16
![Page 38: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/38.jpg)
エンドポイント
問合せ窓口 = エンドポイント 1. DBpedia Japanese
hLp://ja.dbpedia.org/sparql DBpedia Japanese by DBpedia Community
2. 函館観光情報 hLp://210.226.0.93/sparql/ 函館まちあるきマップ by 函館市; はこだてフィルムコミッション by 函館市; 函館近代化遺産ポータルサイト by 函館高専、ノース技研 運営 by はこだて未来大学 高度ICT演習観光系プロジェクト
2014-‐10-‐16 38 Taku Yamaguchi, Future University Hakodate
![Page 39: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/39.jpg)
DBpedia Japanese hLp://ja.dbpedia.org/sparql
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 39
![Page 40: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/40.jpg)
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 40
![Page 41: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/41.jpg)
SPARQLで問い合わせ
1. 「Query Text」に、次のように入力 select dis`nct * where {
<hLp://ja.dbpedia.org/resource/函館市>
<hLp://dbpedia.org/ontology/neighboringMunicipality>
?o .
}
2. 「Run Query」をクリック
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 41
![Page 42: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/42.jpg)
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 42
![Page 43: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/43.jpg)
問い合わせ結果 2件 n hLp://ja.dbpedia.org/resource/北斗市 n hLp://ja.dbpedia.org/resource/青森県
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 43
![Page 44: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/44.jpg)
文法
select dis`nct * where {
<hLp://ja.dbpedia.org/resource/函館市>
<hLp://dbpedia.org/ontology/neighboringMunicipality>
?o .
}
2014-‐10-‐16 44
WHERE { … } …というパターンに当てはまる
主語、 述語、目的語の組を選んで
* 全ての変数
(?o、…他にあれば)を
SELECT 取り出しなさい
主語
述語
目的語 文末、組の区切り
Taku Yamaguchi, Future University Hakodate
![Page 45: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/45.jpg)
結果をJSONで受け取る
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 45
![Page 46: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/46.jpg)
函館市の隣は?
Taku Yamaguchi, Future University Hakodate 46
函館市
hLp://ja.dbpedia.org/resource/函館市 ?o
隣の自治体
hLp://dbpedia.org/ontology/neighboringMunicipality
2014-‐10-‐16
![Page 47: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/47.jpg)
問い合わせ結果 { "head": { "link": [], "vars": ["o"] },
"results": { "dis`nct": false, "ordered": true, "bindings": [
{ "o": {
"type": "uri",
"value": "hLp://ja.dbpedia.org/resource/\u5317\u6597\u5E02" }},
{ "o": {
"type": "uri",
"value": "hLp://ja.dbpedia.org/resource/\u9752\u68EE\u770C" }}
] } }
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 47
![Page 48: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/48.jpg)
問合せの変数名 受け取るプログラムの側でオブジェクトのプロパティ名にしたい名前を、 クエリー中の変数名にすればよい。
n Query: select dis`nct * where {
<hLp://ja.dbpedia.org/resource/函館市>
<hLp://dbpedia.org/ontology/neighboringMunicipality>
?o . }
n Result: { "head": { "link": [], "vars": ["o"] },
"results": { "dis`nct": false, "ordered": true, "bindings": [
{ "o": { "type": "uri", "value": "hLp://ja.dbpedia.org/resource/\u5317\u6597\u5E02" }},
{ "o": { "type": "uri", "value": "hLp://ja.dbpedia.org/resource/\u9752\u68EE\u770C" }} ] } }
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 48
![Page 49: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/49.jpg)
函館観光情報 hLp://210.226.0.93/test/
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 49
![Page 50: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/50.jpg)
問合せ例
PREFIX rdf: <hLp://www.w3.org/1999/02/22-‐rdf-‐syntax-‐ns#> PREFIX rdfs: <hLp://www.w3.org/2000/01/rdf-‐schema#> SELECT * WHERE { ?s <hLp://purl.org/dc/elements/1.1/date> ?o . FILTER ( "1923" <= ?o ) } LIMIT 10
2014-‐10-‐16 50
?oが"1923"より大きい
Taku Yamaguchi, Future University Hakodate
![Page 51: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/51.jpg)
問合せ例
PREFIX rdf: <hLp://www.w3.org/1999/02/22-‐rdf-‐syntax-‐ns#>
PREFIX rdfs: <hLp://www.w3.org/2000/01/rdf-‐schema#>
SELECT ?s ?q WHERE {
<urn:恵山山頂_20> <hLp://www.w3.org/2003/01/geo/wgs84_pos#lat> ?q .
?s <hLp://www.w3.org/2003/01/geo/wgs84_pos#lat> ?o .
FILTER (?q < ?o)
} LIMIT 250
恵山山頂よりも緯度が高いものを
2014-‐10-‐16 51 Taku Yamaguchi, Future University Hakodate
![Page 52: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/52.jpg)
北斗市の隣の隣
(再びDBpedia Japanese) PREFIX dbpedia-‐owl: <hLp://dbpedia.org/ontology/> select dis`nct * where { <hLp://ja.dbpedia.org/resource/北斗市> dbpedia-‐owl:neighboringMunicipality ?o . ?o dbpedia-‐owl:neighboringMunicipality ?oo. } ?oは、最初の文では目的語、次の文では主語。 プログラムでリンクをたどる。 2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 52
![Page 53: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/53.jpg)
北斗市の隣の隣は?
Taku Yamaguchi, Future University Hakodate 53
?o
隣の自治体 北斗市
hLp://ja.dbpedia.org/resource/北斗市
hLp://dbpedia.org/ontology/neighboringMunicipality
?oo
隣の自治体
hLp://dbpedia.org/ontology/neighboringMunicipality
2014-‐10-‐16
![Page 54: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/54.jpg)
リンクをたどる
プログラムでリンクをたどることができる 2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 54
HTML HTML
○○ ⇒
HTML
○○ ⇒
?o 北斗市 ?oo
?o dbpedia-‐owl:neighboringMunicipality ?oo
<hLp://ja.dbpedia.org/resource/北斗市> dbpedia-‐owl:neighboringMunicipality ?o
![Page 55: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/55.jpg)
結果のアドレスバーを見てみる
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 55
hLp://ja.dbpedia.org/sparql?default-‐graph-‐uri=hLp%3A%2F%2Fja.dbpedia.org&query=select+dis`nct+*+where+%7B%0D%0A++++%3ChLp%3A%2F%2Fja.dbpedia.org%2Fresource%2F%E5%87%BD%E9%A4%A8%E5%B8%82%3E%0D%0A++++%3ChLp%3A%2F%2Fdbpedia.org%2Fontology%2FneighboringMunicipality%3E%0D%0A++++%3Fo+.%0D%0A%7D&format=text%2Fhtml&`meout=0&debug=on
![Page 56: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/56.jpg)
パーセントデコード
n hLp://ja.dbpedia.org/sparql?default-‐graph-‐uri=hLp%3A%2F%2Fja.dbpedia.org&query=select+dis`nct+*+where+%7B%0D%0A++++%3ChLp%3A%2F%2Fja.dbpedia.org%2Fresource%2F%E5%87%BD%E9%A4%A8%E5%B8%82%3E%0D%0A++++%3ChLp%3A%2F%2Fdbpedia.org%2Fontology%2FneighboringMunicipality%3E%0D%0A++++%3Fo+.%0D%0A%7D&format=text%2Fhtml&`meout=0&debug=on
↓パーセントデコード n hLp://ja.dbpedia.org/sparql?default-‐graph-‐uri=hLp://
ja.dbpedia.org&query=select dis`nct * where { <hLp://ja.dbpedia.org/resource/函館市> <hLp://dbpedia.org/ontology/neighboringMunicipality> ?o . }&format=text/html&`meout=0&debug=on
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 56
![Page 57: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/57.jpg)
query parameter strings
hLp://ja.dbpedia.org/sparql?default-‐graph-‐uri=hLp://ja.dbpedia.org &query=select dis`nct * where { <hLp://ja.dbpedia.org/resource/函館市> <hLp://dbpedia.org/ontology/neighboringMunicipality> ?o . }&format=text/html &`meout=0&debug=on
2014-‐10-‐16 57
エンドポイント
SPARQLのクエリ
出力(応答)形式
Taku Yamaguchi, Future University Hakodate
![Page 58: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/58.jpg)
n プログラムで、 このquery stringを作って、 HTTP GETすればよい
n リソースはIRI、 それをパーセントエンコードしてある p 文字を見たら、誰がいつ変換…(略
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 58
![Page 59: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/59.jpg)
AR「北海道の山」チャンネル
プログラム例
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 59
![Page 60: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/60.jpg)
n DBpedia Japaneseから、 n 緯度・経度・標高のある、 n 北海道の山を取り出して、 n AR (拡張現実)のチャンネル
データを作る 今回は遠すぎて、
面白くありませんが…
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 60
![Page 61: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/61.jpg)
DBpedia Japaneseからゲット
{ ?s geo:lat ?lat; geo:long ?long . } UNION { ?s <hLp://dbpedia.org/ontology/wikiPageExternalLink> ?wcz . FILTER regex( ?wcz, "hLp://watchizu.gsi.go.jp/watchizu.html", "i" ) }
さまざまな段階で工夫して、まずは動かす、興味をひく。 全体として敷居を低くすることが、大事だと思います。
(文書の)Webの発展と同様。
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 61
緯度
経度 地図へのリンクに 緯度・経度が 埋まっていることも
![Page 62: 情報メディア工学特論A 第4回〜6回 LOD可視化の演習](https://reader033.vdocuments.pub/reader033/viewer/2022042602/557ddbd8d8b42a4e358b4894/html5/thumbnails/62.jpg)
参考資料
n リンクト・オープン・データ・イニシアティブ、 LOD連続講座、 hLp://linkedopendata.jp/?cat=17
n LODチャレンジ2014 hLp://lod.sfc.keio.ac.jp/challenge2014/
2014-‐10-‐16 Taku Yamaguchi, Future University Hakodate 62