SlideShare ist ein Scribd-Unternehmen logo
1 von 42
Downloaden Sie, um offline zu lesen
SPARQLから入門する	
  
Linked	
  Open	
  Data(LOD)ハンズオン	
  
-­‐	
  Pinpoint	
  ReminderによるLODアプリ構築	
  -­‐	
山口琢(D3)@高橋修研究室	
  
はこだて未来大	
  
v1.0、2013-­‐04-­‐25	
2013-­‐04-­‐25	
 1
このハンズオンの目的・狙い	
•  LODの利用方法・アプリを具体的にイメージできる	
•  LODデータを設計できる	
  
参考:	
  山口の狙い	
  
–  LODアプリの多様性:	
  どんなアプリが考えられるのか	
  
–  LODアプリ開発環境への要求仕様	
2013-­‐04-­‐25	
 2
Agenda	
1.  イントロ	
  -­‐	
  Linked	
  Open	
  Data(LOD)とは	
  -­‐	
  
2.  SPARQLでLODを使ってみよう 	
  ←	
  今日は、ここまでは是非	
  
3.  Pinpoint	
  Reminder	
  -­‐	
  LODアプリの例	
  -­‐	
  
4.  Pinpoint	
  Reminderのハブを作ってみよう	
  
次回、次々回、…があれば:	
  
–  「はこだてMap+」の仕組み・設計	
  by	
  観光系の誰か	
  
–  発表(ライトニングトーク、3分/人)	
  by	
  みんな	
  
•  20人	
  x	
  3分/人	
  =	
  1時間!	
  
–  適用分野の観点で、個別・詳細トピック	
  
•  開発ドキュメント管理:	
  要求	
  -­‐	
  仕様	
  -­‐	
  …	
  
•  地理情報:	
  地理的近さ、Geohash、…	
  
–  開発の観点で、個別・詳細トピック	
  
パーセントエンコーディング、IRI、処理方式・性能、…	
  
2013-­‐04-­‐25	
 3
用意するもの	
•  ネットにつながるPC	
  
•  Webブラウザー:	
  Firefox、Chrome、IE、Opera、…	
  
–  Chromeもあればベター、Pinpoint	
  Reminder拡張機能をイ
ンストールできるので。	
  
•  今日は、そこまでいかない…	
  
…未来大ではIEユーザーをあまり見かけないが、それは特
殊な状況だということを覚えておこう。	
  
•  テキスト編集ができるエディター	
  
–  一括置換、エンコーディング、文字コードを扱えるとベター	
  
2013-­‐04-­‐25	
 4
あると/できると/知ってると便利	
•  パーセントエンコーディング(URLエンコード)を、エン
コード/デコードするツール	
  
•  ブラウザーのネットワーク要求・応答をモニターする
ツール	
  
–  Firefox:	
  開発ツール、Firebug	
  
–  Chrome:	
  Developer	
  Tools	
  
•  JSONを整形(prey	
  print)するツール	
  
(などなど…)	
  
2013-­‐04-­‐25	
 5
パーセントエンコーディング	
  
やってみよう	
•  パーセントエンコード/デコードできるツール	
  
–  Webサイト	
  
–  そのツールページのエンコーディングは?	
  
•  Unicodeになってるツールを選ぶ。Shi^-­‐JISはNG。	
  
•  Wikipediaで「函館」の項目を表示	
  
–  ブラウザのURL欄は、こう見える	
  
hp://ja.wikipedia.org/wiki/函館	
  
–  でも、コピーしてテキストエディターに貼り付けると…	
  
hp://ja.wikipedia.org/wiki/%E5%87%BD%E9%A4%A8	
  
–  「%E5%87%BD%E9%A4%A8」は、「函館」をパーセントエンコード
したもの	
  
•  ツールでデコードして、「函館」になることを確かめよう	
  
2013-­‐04-­‐25	
 6
イントロ	
Linked	
  Open	
  Data(LOD)とは	
2013-­‐04-­‐25	
 7
Linked	
  Open	
  Data(LOD)	
あるデータがあります。それは…	
  
•  オープンデータ(Open	
  Data)だ。オープンデータとは?	
  
•  インターフェースがWebに公開されている。	
  
–  インターフェース	
  =	
  URL	
  +	
  問合せ(クエリ)言語。データを取得するには、URLに問い合わせる。	
  
–  URL:	
  エンドポイント	
  
–  問合せ内容を記述する言語:	
  SPARQL(スパークル)	
  
•  「リンク」が設定されている(Linked)。	
  
–  「リンクが設定されてるって、なにそれ?」	
  
–  それを分かることがこのゼミの目標。	
  
ハンズオン:	
  百聞は一見にしかず	
  
–  SPARQLを使ってエンドポイントからLODにアクセス	
  
–  「リンク」を体感	
  
–  開発者向け、not	
  エンドユーザー向け	
  
2013-­‐04-­‐25	
 8
参考資料	
セマンティック	
  HTML/XHTML	
  
–  神崎正英さん	
  
–  毎日コミュニケーションズ	
  
–  未来大の情報ライブラリーにも
ある。	
–  SPARQLは、後半のp.346から。
「いきなり、ここから入ろう」とい
うのが、今回のハンズオン。	
  
2013-­‐04-­‐25	
 9
SPARQLでLODを使ってみよう	
2013-­‐04-­‐25	
 10
エンドポイント	
1.  DBpedia	
  Japanese	
  
hp://ja.dbpedia.org/sparql	
  
DBpedia	
  Japanese	
  by	
  DBpedia	
  Community	
  
2.  函館○○情報	
  
hp://210.226.0.93/sparql/	
函館まちあるきマップ	
  by	
  函館市;	
  はこだてフィルムコミッション	
  by	
  
函館市;	
  函館近代化遺産ポータルサイト	
  by	
  函館高専、ノース技
研	
  
運営	
  by	
  はこだて未来大学 高度ICT演習観光系プロジェクト?	
  
3.  DBpedia	
  
hp://dbpedia.org/sparql	
  
2013-­‐04-­‐25	
 11
SPARQLで「函館○○情報」を使ってみよう	
2013-­‐04-­‐25	
 12
函館○○情報	
たどり着いてみよう	
  
1.  LODチャレンジ2012	
  
hp://lod.sfc.keio.ac.jp/challenge2012/index.html	
  
2.  エントリー	
  /	
  データセット部門	
  
3.  d055	
  函館まちあるきルート情報	
  
4.  データセットのURL	
  
hp://210.226.0.93/status/	
  
5.  Execute	
  a	
  test	
  query	
  
hp://210.226.0.93/test/	
2013-­‐04-­‐25	
 13
SPARQLで書かれた問合せ(クエリ)	
•  SPARQLで書かれた問合せ	
  
PREFIX	
  rdf:	
  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>	
  
PREFIX	
  rdfs:	
  <hp://www.w3.org/2000/01/rdf-­‐schema#>	
  
	
  
SELECT	
  *	
  WHERE	
  {	
  
	
  	
  ?s	
  ?p	
  ?o	
  .	
  
}	
  LIMIT	
  10	
  
•  実行「Execute」してみる…!	
  
–  ブラウザに表示される	
  
–  or	
  ダウンロードが始まる	
  
←	
  テキストエディターで開く	
  
2013-­‐04-­‐25	
 14
問合せ結果	
<?xml	
  version="1.0"?>	
  
<sparql	
  xmlns="hp://www.w3.org/2005/sparql-­‐results#">	
  
	
  	
  <head>	
  
	
  	
  	
  	
  <variable	
  name="s"/>	
  
	
  	
  	
  	
  <variable	
  name="p"/>	
  
	
  	
  	
  	
  <variable	
  name="o"/>	
  
	
  	
  </head>	
  
	
  	
  <results>	
  
	
  	
  	
  	
  <result>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="s"><uri>urn:日本最古のコンクリート電柱</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="p"><uri>hp://purl.org/dc/elements/1.1/date</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="o"><literal>1923</literal></binding>	
  
	
  	
  	
  	
  </result>	
  
	
  	
  	
  <result>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="s"><uri>urn:旧戸井線</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="p"><uri>hp://schema.org/image</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="o"><literal>hp://u.jimdo.com/www19/o/s8a796cc0310d2bed/img/
i9a4c6cff5aae4279/1338284028/thumb/image.jpg</literal></binding>	
  
	
  	
  	
  	
  </result>	
  
	
  
	
  	
  	
  	
  …	
  
	
  
	
  	
  </results>	
  
</sparql>	
  
2013-­‐04-­‐25	
 15
解釈	
「urn:日本最古のコンクリート電柱」の	
  
「hp://purl.org/dc/elements/1.1/date」は	
  
「1923」です。	
  
–  urn:日本最古のコンクリート電柱	
  
•  主語、Subject	
  
–  hp://purl.org/dc/elements/1.1/date	
  
•  述語、Predicate	
  
•  Dublin	
  Coreという語彙での「日付」	
  
–  1923	
  
•  目的語、Object。これを目的語と呼ぶ。	
  
•  1923	
  
「urn:日本最古のコンクリート電柱」の

「日付」は

「1923」です。	
  
2013-­‐04-­‐25	
 16
?s	
  ?p	
  ?o	
  .	
•  変数	
  
•  s、p、oの文字列は、何でもよい。順番・位置に意味がある。	
  
2013-­‐04-­‐25	
 17
トライ!	
PREFIX	
  rdf:	
  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>	
  
PREFIX	
  rdfs:	
  <hp://www.w3.org/2000/01/rdf-­‐schema#>	
  
	
  
SELECT	
  *	
  WHERE	
  {	
  
	
  	
  ?s	
  ?p	
  ?A	
  .	
  
}	
  LIMIT	
  10	
  
2013-­‐04-­‐25	
 18	
?o	
  →	
  ?A
結果	
<?xml	
  version="1.0"?>	
  
<sparql	
  xmlns="hp://www.w3.org/2005/sparql-­‐results#">	
  
	
  	
  <head>	
  
	
  	
  	
  	
  <variable	
  name="s"/>	
  
	
  	
  	
  	
  <variable	
  name="p"/>	
  
	
  	
  	
  	
  <variable	
  name="A"/>	
  
	
  	
  </head>	
  
	
  	
  <results>	
  
	
  	
  	
  	
  <result>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="s"><uri>urn:日本最古のコンクリート電柱</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="p"><uri>hp://purl.org/dc/elements/1.1/date</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="A"><literal>1923</literal></binding>	
  
	
  	
  	
  	
  </result>	
  
	
  	
  	
  <result>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="s"><uri>urn:旧戸井線</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="p"><uri>hp://schema.org/image</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="A"><literal>hp://u.jimdo.com/www19/o/s8a796cc0310d2bed/img/
i9a4c6cff5aae4279/1338284028/thumb/image.jpg</literal></binding>	
  
	
  	
  	
  	
  </result>	
  
	
  
	
  	
  	
  	
  …	
  
	
  
	
  	
  </results>	
  
</sparql>	
  
2013-­‐04-­‐25	
 19
トライ!	
PREFIX	
  rdf:	
  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>	
  
PREFIX	
  rdfs:	
  <hp://www.w3.org/2000/01/rdf-­‐schema#>	
  
	
  
SELECT	
  ?o	
  WHERE	
  {	
  
	
  	
  ?s	
  ?p	
  ?o	
  .	
  
}	
  LIMIT	
  10	
  
2013-­‐04-­‐25	
 20	
*	
  →	
  ?o
トライ!	
PREFIX	
  rdf:	
  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>	
  
PREFIX	
  rdfs:	
  <hp://www.w3.org/2000/01/rdf-­‐schema#>	
  
	
  
SELECT	
  *	
  WHERE	
  {	
  
	
  	
  <urn:日本最古のコンクリート電柱>	
  ?p	
  ?o	
  .	
  
}	
  LIMIT	
  10	
  
2013-­‐04-­‐25	
 21	
?s	
  →	
  urn:日本最古のコンクリート電柱
トライ!	
PREFIX	
  rdf:	
  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>	
  
PREFIX	
  rdfs:	
  <hp://www.w3.org/2000/01/rdf-­‐schema#>	
  
	
  
SELECT	
  ?o	
  WHERE	
  {	
  
	
  	
  ?s	
  <hp://schema.org/url>	
  ?o	
  .	
  
}	
  LIMIT	
  10	
  
2013-­‐04-­‐25	
 22	
?p	
  →	
  <hp://schema.org/url>
トライ!	
PREFIX	
  rdf:	
  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>	
  
PREFIX	
  rdfs:	
  <hp://www.w3.org/2000/01/rdf-­‐schema#>	
  
	
  
SELECT	
  *	
  WHERE	
  {	
  
	
  	
  ?s	
  ?p	
  "1923"	
  .	
  
}	
  LIMIT	
  10	
  
2013-­‐04-­‐25	
 23	
?o	
  →	
  "1923"
文法	
PREFIX	
  rdf:	
  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>	
  
PREFIX	
  rdfs:	
  <hp://www.w3.org/2000/01/rdf-­‐schema#>	
  
	
  
SELECT	
  ?s	
  WHERE	
  {	
  
	
  	
  ?s	
  ?p	
  "1923"	
  .	
  
}	
  LIMIT	
  10	
  
2013-­‐04-­‐25	
 24	
WHERE	
  {	
  …	
  }	
  
…というパターンに当てはまる	
  
?s(主語)、?p(述語)、?o(目的語)の組から	
?s	
  
変数?sを	
SELECT	
  
取り出しなさい
絞り込み	
PREFIX	
  rdf:	
  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>	
  
PREFIX	
  rdfs:	
  <hp://www.w3.org/2000/01/rdf-­‐schema#>	
  
	
  
SELECT	
  *	
  WHERE	
  {	
  
	
  	
  ?s	
  <hp://purl.org/dc/elements/1.1/date>	
  ?o	
  .	
  
	
  	
  FILTER	
  (	
  "1923"	
  <=	
  ?o	
  )	
  
}	
  LIMIT	
  10	
  
2013-­‐04-­‐25	
 25	
?oが"1923"より大きい
トライ!	
「函館○○情報」データセットから	
  
「恵山山頂」よりも「北」にあるものをリストアップ	
2013-­‐04-­‐25	
 26
問合せ例	
  #1	
1.  とにかく情報をたくさん取り出して、	
  
2.  「恵山山頂」の情報を手作業で探し出して、	
  
3.  「恵山山頂」緯度をゲットしてから、	
  
4.  クエリを書く	
  
	
  
2013-­‐04-­‐25	
 27
問合せ例	
  #1	
  
1.	
  とにかく情報をたくさん…	
•  クエリ	
  
PREFIX	
  rdf:	
  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>	
  
PREFIX	
  rdfs:	
  <hp://www.w3.org/2000/01/rdf-­‐schema#>	
  
	
  
SELECT	
  *	
  WHERE	
  {	
  
	
  ?s	
  ?p	
  ?o	
  .	
  
}	
  LIMIT	
  500	
  
2013-­‐04-­‐25	
 28
問合せ例	
  #1	
  
2.	
  「恵山山頂」の情報を…	
…	
  
	
  	
  
<result>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="s"><uri>urn:新島橋_13</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="p"><uri>hp://www.w3.org/2003/01/geo/wgs84_pos#lat</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="o"><literal>41.769647</literal></binding>	
  
	
  	
  	
  	
  </result>	
  
	
  	
  	
  	
  <result>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="s"><uri>urn:恵山山頂_20</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="p"><uri>hp://www.w3.org/2003/01/geo/wgs84_pos#lat</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="o"><literal>41.810507498395</literal></binding>	
  
	
  	
  	
  	
  </result>	
  
	
  	
  	
  	
  <result>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="s"><uri>urn:函館漁港船入澗防波堤</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="p"><uri>hp://www.w3.org/2003/01/geo/wgs84_pos#lat</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="o"><literal>41.7732320517</literal></binding>	
  
	
  	
  	
  	
  </result>	
  
	
  
…	
  
2013-­‐04-­‐25	
 29
問合せ例	
  #1	
  
3.	
  「恵山山頂」緯度を…	
「hp://www.w3.org/2003/01/geo/wgs84_pos#lat」が緯度	
  
…	
  
<result>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="s"><uri>urn:新島橋_13</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="p"><uri>hp://www.w3.org/2003/01/geo/wgs84_pos#lat</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="o"><literal>41.769647</literal></binding>	
  
	
  	
  	
  	
  </result>	
  
	
  	
  	
  	
  <result>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="s"><uri>urn:恵山山頂_20</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="p"><uri>hp://www.w3.org/2003/01/geo/wgs84_pos#lat</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="o"><literal>41.810507498395</literal></binding>	
  
	
  	
  	
  	
  </result>	
  
	
  	
  	
  	
  <result>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="s"><uri>urn:函館漁港船入澗防波堤</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="p"><uri>hp://www.w3.org/2003/01/geo/wgs84_pos#lat</uri></binding>	
  
	
  	
  	
  	
  	
  	
  <binding	
  name="o"><literal>41.7732320517</literal></binding>	
  
	
  	
  	
  	
  </result>	
  
…	
  
2013-­‐04-­‐25	
 30
問合せ例	
  #1	
  
4.クエリを書く	
?	
  
2013-­‐04-­‐25	
 31
問合せ例	
  #1	
  
4.クエリを書く	
PREFIX	
  rdf:	
  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>	
  
PREFIX	
  rdfs:	
  <hp://www.w3.org/2000/01/rdf-­‐schema#>	
  
	
  
SELECT	
  *	
  WHERE	
  {	
  
	
  	
  ?s	
  <hp://www.w3.org/2003/01/geo/wgs84_pos#lat>	
  ?o	
  .	
  
	
  	
  filter	
  (	
  "41.810507498395"	
  <	
  ?o	
  )	
  
}	
  LIMIT	
  250	
  
2013-­‐04-­‐25	
 32
問合せ例	
  #1	
  
3.	
  「恵山山頂」緯度を…	
ところで、	
  
	
  
hp://www.w3.org/2003/01/geo/wgs84_pos#lat	
  
が緯度	
  
↑	
  
って、なぜ分かるの?	
  
2013-­‐04-­‐25	
 33
問合せ例	
  #1ができたら…	
別の書き方を考えてください	
2013-­‐04-­‐25	
 34
問合せ例	
  #2	
?	
  
2013-­‐04-­‐25	
 35
問合せ例	
  #2	
PREFIX	
  rdf:	
  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>	
  
PREFIX	
  rdfs:	
  <hp://www.w3.org/2000/01/rdf-­‐schema#>	
  
	
  
SELECT	
  ?s	
  ?q	
  WHERE	
  {	
  
	
  	
  <urn:恵山山頂_20>	
  <hp://www.w3.org/2003/01/geo/wgs84_pos#lat>	
  ?q	
  .	
  
	
  	
  ?s	
  <hp://www.w3.org/2003/01/geo/wgs84_pos#lat>	
  ?q	
  .	
  
	
  	
  filter	
  (?q	
  <	
  ?o)	
  
}	
  LIMIT	
  250	
  
2013-­‐04-­‐25	
 36
#1と#2の違い	
地殻変動で恵山の緯度が変わった後…	
  
•  #1	
  
filter	
  (	
  "41.810507498395"	
  <	
  ?o	
  )	
  
–  緯度の値がベタに書かれている。	
  
–  クエリを書き直さなくてはならない。	
  
•  #2	
  
<urn:恵山山頂_20>	
  <hp://www.w3.org/2003/01/geo/
wgs84_pos#lat>	
  ?q	
  .	
  
filter	
  (?q	
  <	
  ?o)	
  
–  緯度の値を「函館○○情報」から取得している。	
  
–  「函館○○情報」が更新されていれば、	
  
–  クエリを書き直さなくてよい。	
2013-­‐04-­‐25	
 37
問合せ例	
  #3	
PREFIX	
  rdf:	
  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>	
  
PREFIX	
  rdfs:	
  <hp://www.w3.org/2000/01/rdf-­‐schema#>	
  
	
  
SELECT	
  ?s	
  ?q	
  WHERE	
  {	
  
	
  	
  ?e	
  <hp://www.w3.org/2003/01/geo/wgs84_pos#lat>	
  ?o	
  .	
  
	
  	
  ?s	
  <hp://www.w3.org/2003/01/geo/wgs84_pos#lat>	
  ?q	
  .	
  
	
  	
  filter	
  (	
  ?o	
  <	
  ?q	
  )	
  
	
  	
  filter	
  (	
  regex(str(?e),	
  "恵山山頂",	
  "i")	
  )	
  
}	
  LIMIT	
  250	
  
	
  
PS:	
  
–  	
   "i"は不要	
  
–  	
   disznct	
  ?s	
  ?qがベター	
  
…	
  
2013-­‐04-­‐25	
 38
#1、#2と#3の違いは?	
?	
2013-­‐04-­‐25	
 39
SQL知ってる人	
  (^-­‐^)/	
たいていは、	
  
「SPARQLはSQLに似てます。…以上っ!」	
  
と説明されます。	
2013-­‐04-­‐25	
 40
体験したこと…	
•  SPARQLを書いてみた。	
  
•  SPARQLで、情報を取り出してみた。…悩んだ。	
  
–  大丈夫、みんな悩んでます。	
  
–  自分がLODデータを公開したら、世界の開発者が、自分
のデータに対して、同じように悩むのです。	
  
2013-­‐04-­‐25	
 41
つづく	
2013-­‐04-­‐25	
 42

Weitere ähnliche Inhalte

Was ist angesagt?

Sparql epcuでlodをマッシュアップ
Sparql epcuでlodをマッシュアップSparql epcuでlodをマッシュアップ
Sparql epcuでlodをマッシュアップ
Chubu University
 

Was ist angesagt? (20)

SparqlEPCUが提供するlod開発プラットフォーム
SparqlEPCUが提供するlod開発プラットフォームSparqlEPCUが提供するlod開発プラットフォーム
SparqlEPCUが提供するlod開発プラットフォーム
 
SPARQLでマッシュアップ -LOD活用のための技術紹介-
SPARQLでマッシュアップ-LOD活用のための技術紹介-SPARQLでマッシュアップ-LOD活用のための技術紹介-
SPARQLでマッシュアップ -LOD活用のための技術紹介-
 
オープンデータ/Linked Open Data お手軽可視化ツールの紹介~SPARQLでマッシュアップ~
オープンデータ/Linked Open Data お手軽可視化ツールの紹介~SPARQLでマッシュアップ~オープンデータ/Linked Open Data お手軽可視化ツールの紹介~SPARQLでマッシュアップ~
オープンデータ/Linked Open Data お手軽可視化ツールの紹介~SPARQLでマッシュアップ~
 
SPARQL作成ツール SPARQL Creator
SPARQL作成ツール SPARQL CreatorSPARQL作成ツール SPARQL Creator
SPARQL作成ツール SPARQL Creator
 
Linked Open Data勉強会2020 前編:LODの基礎・作成・公開
Linked Open Data勉強会2020 前編:LODの基礎・作成・公開Linked Open Data勉強会2020 前編:LODの基礎・作成・公開
Linked Open Data勉強会2020 前編:LODの基礎・作成・公開
 
RDF/OWLの概要及びOSS実装、及び活用イメージについて
RDF/OWLの概要及びOSS実装、及び活用イメージについてRDF/OWLの概要及びOSS実装、及び活用イメージについて
RDF/OWLの概要及びOSS実装、及び活用イメージについて
 
Sparql epcuでlodをマッシュアップ
Sparql epcuでlodをマッシュアップSparql epcuでlodをマッシュアップ
Sparql epcuでlodをマッシュアップ
 
SPARQL Timelinerの使い方
SPARQL Timelinerの使い方SPARQL Timelinerの使い方
SPARQL Timelinerの使い方
 
お手軽Linked Open Data可視化ツールSPARQL Timeliner
お手軽Linked Open Data可視化ツールSPARQL Timelinerお手軽Linked Open Data可視化ツールSPARQL Timeliner
お手軽Linked Open Data可視化ツールSPARQL Timeliner
 
Linked Data (再)入門
Linked Data (再)入門Linked Data (再)入門
Linked Data (再)入門
 
Rdf入門handout
Rdf入門handoutRdf入門handout
Rdf入門handout
 
Linked Open Data勉強会2020 後編:SPARQLの簡単な使い方、SPARQLを使った簡単なアプリ開発
Linked Open Data勉強会2020 後編:SPARQLの簡単な使い方、SPARQLを使った簡単なアプリ開発Linked Open Data勉強会2020 後編:SPARQLの簡単な使い方、SPARQLを使った簡単なアプリ開発
Linked Open Data勉強会2020 後編:SPARQLの簡単な使い方、SPARQLを使った簡単なアプリ開発
 
SPARQLとMashup環境
SPARQLとMashup環境SPARQLとMashup環境
SPARQLとMashup環境
 
大阪市オープンデータポータルAPI(SPARQL)勉強会
大阪市オープンデータポータルAPI(SPARQL)勉強会大阪市オープンデータポータルAPI(SPARQL)勉強会
大阪市オープンデータポータルAPI(SPARQL)勉強会
 
ナレッジグラフ/LOD利用技術の入門(後編)
ナレッジグラフ/LOD利用技術の入門(後編)ナレッジグラフ/LOD利用技術の入門(後編)
ナレッジグラフ/LOD利用技術の入門(後編)
 
CSVファイルをLODとして公開するデータソン
CSVファイルをLODとして公開するデータソンCSVファイルをLODとして公開するデータソン
CSVファイルをLODとして公開するデータソン
 
Linked Open Dataとは
Linked Open DataとはLinked Open Dataとは
Linked Open Dataとは
 
LOD技術の概要と LinkData.orgを用いたLOD公開
LOD技術の概要とLinkData.orgを用いたLOD公開LOD技術の概要とLinkData.orgを用いたLOD公開
LOD技術の概要と LinkData.orgを用いたLOD公開
 
LODを使ってみよう!
LODを使ってみよう!LODを使ってみよう!
LODを使ってみよう!
 
LODを始めるにあたって「最初に試すとよい」ツールの紹介
LODを始めるにあたって「最初に試すとよい」ツールの紹介LODを始めるにあたって「最初に試すとよい」ツールの紹介
LODを始めるにあたって「最初に試すとよい」ツールの紹介
 

Andere mochten auch

Andere mochten auch (11)

Linked Open Data(LOD)を用いた オープンデータの活用事例と今後の展望
Linked Open Data(LOD)を用いたオープンデータの活用事例と今後の展望Linked Open Data(LOD)を用いたオープンデータの活用事例と今後の展望
Linked Open Data(LOD)を用いた オープンデータの活用事例と今後の展望
 
学術分野の事例紹介
学術分野の事例紹介学術分野の事例紹介
学術分野の事例紹介
 
Linked Open Data (LOD)の基礎講座
Linked Open Data (LOD)の基礎講座Linked Open Data (LOD)の基礎講座
Linked Open Data (LOD)の基礎講座
 
ライフサイエンス分野におけるLinked Open Dataの活用例
ライフサイエンス分野におけるLinked Open Dataの活用例ライフサイエンス分野におけるLinked Open Dataの活用例
ライフサイエンス分野におけるLinked Open Dataの活用例
 
LODを閲覧する/作成する
LODを閲覧する/作成するLODを閲覧する/作成する
LODを閲覧する/作成する
 
ガバメント分野におけるLODの活用例
ガバメント分野におけるLODの活用例ガバメント分野におけるLODの活用例
ガバメント分野におけるLODの活用例
 
地理空間情報におけるLinked Open Dataの活用例
地理空間情報におけるLinked Open Dataの活用例地理空間情報におけるLinked Open Dataの活用例
地理空間情報におけるLinked Open Dataの活用例
 
LODを検索する
LODを検索するLODを検索する
LODを検索する
 
LODとメディア ニューヨークタイムズ最新事情
LODとメディア ニューヨークタイムズ最新事情LODとメディア ニューヨークタイムズ最新事情
LODとメディア ニューヨークタイムズ最新事情
 
サーバサイドコース Sinatra + SPARQL 編
サーバサイドコース Sinatra + SPARQL 編サーバサイドコース Sinatra + SPARQL 編
サーバサイドコース Sinatra + SPARQL 編
 
DBpedia Tutorial - Feb 2015, Dublin
DBpedia Tutorial - Feb 2015, DublinDBpedia Tutorial - Feb 2015, Dublin
DBpedia Tutorial - Feb 2015, Dublin
 

Ähnlich wie SPARQLから入門するLinked Open Data(LOD)ハンズオン 第1回

SPARQLから入門するLinked Open Data(LOD)ハンズオン 第2回
SPARQLから入門するLinked Open Data(LOD)ハンズオン 第2回SPARQLから入門するLinked Open Data(LOD)ハンズオン 第2回
SPARQLから入門するLinked Open Data(LOD)ハンズオン 第2回
yamahige
 
Lucandraを使ってみる
Lucandraを使ってみるLucandraを使ってみる
Lucandraを使ってみる
Fumihiko Sato
 
[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き
[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き
[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き
Insight Technology, Inc.
 

Ähnlich wie SPARQLから入門するLinked Open Data(LOD)ハンズオン 第1回 (20)

SPARQLから入門するLinked Open Data(LOD)ハンズオン 第2回
SPARQLから入門するLinked Open Data(LOD)ハンズオン 第2回SPARQLから入門するLinked Open Data(LOD)ハンズオン 第2回
SPARQLから入門するLinked Open Data(LOD)ハンズオン 第2回
 
LODを使ったサイトとプラグインを作ってみた話[WordBenchOsaka]
LODを使ったサイトとプラグインを作ってみた話[WordBenchOsaka]LODを使ったサイトとプラグインを作ってみた話[WordBenchOsaka]
LODを使ったサイトとプラグインを作ってみた話[WordBenchOsaka]
 
データカタログソフトウェア CKAN
データカタログソフトウェア CKANデータカタログソフトウェア CKAN
データカタログソフトウェア CKAN
 
SparkTokyo2019NovIshizaki
SparkTokyo2019NovIshizakiSparkTokyo2019NovIshizaki
SparkTokyo2019NovIshizaki
 
Learning spaerk chapter03
Learning spaerk chapter03Learning spaerk chapter03
Learning spaerk chapter03
 
オープンデータセミナー in 鳥取
オープンデータセミナー in 鳥取オープンデータセミナー in 鳥取
オープンデータセミナー in 鳥取
 
Reladomo in Scala #scala_ks
Reladomo in Scala #scala_ks Reladomo in Scala #scala_ks
Reladomo in Scala #scala_ks
 
Lucandraを使ってみる
Lucandraを使ってみるLucandraを使ってみる
Lucandraを使ってみる
 
[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き
[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き
[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き
 
じんもんこん2011「芸術・文化情報のLinked Open Data普及に向けた現状と課題」
じんもんこん2011「芸術・文化情報のLinked Open Data普及に向けた現状と課題」じんもんこん2011「芸術・文化情報のLinked Open Data普及に向けた現状と課題」
じんもんこん2011「芸術・文化情報のLinked Open Data普及に向けた現状と課題」
 
Spring Framework / Boot / Data 徹底活用 〜Spring Data Redis 編〜
Spring Framework / Boot / Data 徹底活用  〜Spring Data Redis 編〜Spring Framework / Boot / Data 徹底活用  〜Spring Data Redis 編〜
Spring Framework / Boot / Data 徹底活用 〜Spring Data Redis 編〜
 
Spring data-rest-and-spring-cloud-contract
Spring data-rest-and-spring-cloud-contractSpring data-rest-and-spring-cloud-contract
Spring data-rest-and-spring-cloud-contract
 
Solr6 の紹介(第18回 Solr勉強会 資料) (2016年6月10日)
Solr6 の紹介(第18回 Solr勉強会 資料) (2016年6月10日)Solr6 の紹介(第18回 Solr勉強会 資料) (2016年6月10日)
Solr6 の紹介(第18回 Solr勉強会 資料) (2016年6月10日)
 
実社会で進められているサービスとLOD
実社会で進められているサービスとLOD実社会で進められているサービスとLOD
実社会で進められているサービスとLOD
 
about dakota6.7 gui
about dakota6.7 guiabout dakota6.7 gui
about dakota6.7 gui
 
Develop Web Application with Node.js + Express
Develop Web Application with Node.js + ExpressDevelop Web Application with Node.js + Express
Develop Web Application with Node.js + Express
 
MDX with Next.js
MDX with Next.jsMDX with Next.js
MDX with Next.js
 
ナレッジグラフ/LOD利用技術の入門(前編)
ナレッジグラフ/LOD利用技術の入門(前編)ナレッジグラフ/LOD利用技術の入門(前編)
ナレッジグラフ/LOD利用技術の入門(前編)
 
Oracle で SPARQL!
Oracle で SPARQL!Oracle で SPARQL!
Oracle で SPARQL!
 
DBpedia Japanese
DBpedia JapaneseDBpedia Japanese
DBpedia Japanese
 

Mehr von yamahige

Mehr von yamahige (20)

取捨選択操作の時間的な共起分析によるプログラミング・プロセスでの迷いの検出
取捨選択操作の時間的な共起分析によるプログラミング・プロセスでの迷いの検出取捨選択操作の時間的な共起分析によるプログラミング・プロセスでの迷いの検出
取捨選択操作の時間的な共起分析によるプログラミング・プロセスでの迷いの検出
 
音声UIでアクセスする学習分析システムの図表
音声UIでアクセスする学習分析システムの図表音声UIでアクセスする学習分析システムの図表
音声UIでアクセスする学習分析システムの図表
 
コンピュータの整列処理で正解との距離は単調に減少するか?
コンピュータの整列処理で正解との距離は単調に減少するか?コンピュータの整列処理で正解との距離は単調に減少するか?
コンピュータの整列処理で正解との距離は単調に減少するか?
 
コンピューターの整列処理におけるデータ操作の時間的共起分析
コンピューターの整列処理におけるデータ操作の時間的共起分析コンピューターの整列処理におけるデータ操作の時間的共起分析
コンピューターの整列処理におけるデータ操作の時間的共起分析
 
Measurable Interactive Application to Find Out User Recognition and Strategy ...
Measurable Interactive Application to Find Out User Recognition and Strategy ...Measurable Interactive Application to Find Out User Recognition and Strategy ...
Measurable Interactive Application to Find Out User Recognition and Strategy ...
 
プログラミング・パズルの測定と分析
プログラミング・パズルの測定と分析プログラミング・パズルの測定と分析
プログラミング・パズルの測定と分析
 
パズル操作の測定・分析による思考の推定
パズル操作の測定・分析による思考の推定パズル操作の測定・分析による思考の推定
パズル操作の測定・分析による思考の推定
 
並べ替えプログラミングの測定・分析
並べ替えプログラミングの測定・分析並べ替えプログラミングの測定・分析
並べ替えプログラミングの測定・分析
 
できごと、手順、プログラムや地理の並べ替え操作の測定と分析
できごと、手順、プログラムや地理の並べ替え操作の測定と分析できごと、手順、プログラムや地理の並べ替え操作の測定と分析
できごと、手順、プログラムや地理の並べ替え操作の測定と分析
 
読み書き行為の時間的・手順的な共起に基づく自然言語処理の提案
読み書き行為の時間的・手順的な共起に基づく自然言語処理の提案読み書き行為の時間的・手順的な共起に基づく自然言語処理の提案
読み書き行為の時間的・手順的な共起に基づく自然言語処理の提案
 
ジグソー・テキストによる文並べ替え操作の測定
ジグソー・テキストによる文並べ替え操作の測定ジグソー・テキストによる文並べ替え操作の測定
ジグソー・テキストによる文並べ替え操作の測定
 
Designing Matrix Type Text Editing Model for Measuring and Analyzing Writing ...
Designing Matrix Type Text Editing Model for Measuring and Analyzing Writing ...Designing Matrix Type Text Editing Model for Measuring and Analyzing Writing ...
Designing Matrix Type Text Editing Model for Measuring and Analyzing Writing ...
 
文章を構成する過程を測定するジグソー・テキストの開発
文章を構成する過程を測定するジグソー・テキストの開発文章を構成する過程を測定するジグソー・テキストの開発
文章を構成する過程を測定するジグソー・テキストの開発
 
キオクの場所 - 同期と位置関係のみによる不明で不整合な空間情報の処理 -
キオクの場所 - 同期と位置関係のみによる不明で不整合な空間情報の処理 -キオクの場所 - 同期と位置関係のみによる不明で不整合な空間情報の処理 -
キオクの場所 - 同期と位置関係のみによる不明で不整合な空間情報の処理 -
 
Interoperable Writing Measure And Analysis
Interoperable Writing Measure And AnalysisInteroperable Writing Measure And Analysis
Interoperable Writing Measure And Analysis
 
室蘭百名坂 - アーバンデータチャレンジ2015 最終審査会
室蘭百名坂 - アーバンデータチャレンジ2015 最終審査会室蘭百名坂 - アーバンデータチャレンジ2015 最終審査会
室蘭百名坂 - アーバンデータチャレンジ2015 最終審査会
 
室蘭百名坂 - アーバンデータチャレンジ2015
室蘭百名坂 - アーバンデータチャレンジ2015室蘭百名坂 - アーバンデータチャレンジ2015
室蘭百名坂 - アーバンデータチャレンジ2015
 
同期と順序のみによる不明で不整合な時間の処理方法の提案とウィキ町史への適用
同期と順序のみによる不明で不整合な時間の処理方法の提案とウィキ町史への適用同期と順序のみによる不明で不整合な時間の処理方法の提案とウィキ町史への適用
同期と順序のみによる不明で不整合な時間の処理方法の提案とウィキ町史への適用
 
国際的な相互運用とオープン技術- 日時と文字 -
国際的な相互運用とオープン技術- 日時と文字 -国際的な相互運用とオープン技術- 日時と文字 -
国際的な相互運用とオープン技術- 日時と文字 -
 
ウィキ町史エディター
ウィキ町史エディターウィキ町史エディター
ウィキ町史エディター
 

Kürzlich hochgeladen

Kürzlich hochgeladen (7)

Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 

SPARQLから入門するLinked Open Data(LOD)ハンズオン 第1回

  • 1. SPARQLから入門する   Linked  Open  Data(LOD)ハンズオン   -­‐  Pinpoint  ReminderによるLODアプリ構築  -­‐ 山口琢(D3)@高橋修研究室   はこだて未来大   v1.0、2013-­‐04-­‐25 2013-­‐04-­‐25 1
  • 2. このハンズオンの目的・狙い •  LODの利用方法・アプリを具体的にイメージできる •  LODデータを設計できる   参考:  山口の狙い   –  LODアプリの多様性:  どんなアプリが考えられるのか   –  LODアプリ開発環境への要求仕様 2013-­‐04-­‐25 2
  • 3. Agenda 1.  イントロ  -­‐  Linked  Open  Data(LOD)とは  -­‐   2.  SPARQLでLODを使ってみよう  ←  今日は、ここまでは是非   3.  Pinpoint  Reminder  -­‐  LODアプリの例  -­‐   4.  Pinpoint  Reminderのハブを作ってみよう   次回、次々回、…があれば:   –  「はこだてMap+」の仕組み・設計  by  観光系の誰か   –  発表(ライトニングトーク、3分/人)  by  みんな   •  20人  x  3分/人  =  1時間!   –  適用分野の観点で、個別・詳細トピック   •  開発ドキュメント管理:  要求  -­‐  仕様  -­‐  …   •  地理情報:  地理的近さ、Geohash、…   –  開発の観点で、個別・詳細トピック   パーセントエンコーディング、IRI、処理方式・性能、…   2013-­‐04-­‐25 3
  • 4. 用意するもの •  ネットにつながるPC   •  Webブラウザー:  Firefox、Chrome、IE、Opera、…   –  Chromeもあればベター、Pinpoint  Reminder拡張機能をイ ンストールできるので。   •  今日は、そこまでいかない…   …未来大ではIEユーザーをあまり見かけないが、それは特 殊な状況だということを覚えておこう。   •  テキスト編集ができるエディター   –  一括置換、エンコーディング、文字コードを扱えるとベター   2013-­‐04-­‐25 4
  • 5. あると/できると/知ってると便利 •  パーセントエンコーディング(URLエンコード)を、エン コード/デコードするツール   •  ブラウザーのネットワーク要求・応答をモニターする ツール   –  Firefox:  開発ツール、Firebug   –  Chrome:  Developer  Tools   •  JSONを整形(prey  print)するツール   (などなど…)   2013-­‐04-­‐25 5
  • 6. パーセントエンコーディング   やってみよう •  パーセントエンコード/デコードできるツール   –  Webサイト   –  そのツールページのエンコーディングは?   •  Unicodeになってるツールを選ぶ。Shi^-­‐JISはNG。   •  Wikipediaで「函館」の項目を表示   –  ブラウザのURL欄は、こう見える   hp://ja.wikipedia.org/wiki/函館   –  でも、コピーしてテキストエディターに貼り付けると…   hp://ja.wikipedia.org/wiki/%E5%87%BD%E9%A4%A8   –  「%E5%87%BD%E9%A4%A8」は、「函館」をパーセントエンコード したもの   •  ツールでデコードして、「函館」になることを確かめよう   2013-­‐04-­‐25 6
  • 8. Linked  Open  Data(LOD) あるデータがあります。それは…   •  オープンデータ(Open  Data)だ。オープンデータとは?   •  インターフェースがWebに公開されている。   –  インターフェース  =  URL  +  問合せ(クエリ)言語。データを取得するには、URLに問い合わせる。   –  URL:  エンドポイント   –  問合せ内容を記述する言語:  SPARQL(スパークル)   •  「リンク」が設定されている(Linked)。   –  「リンクが設定されてるって、なにそれ?」   –  それを分かることがこのゼミの目標。   ハンズオン:  百聞は一見にしかず   –  SPARQLを使ってエンドポイントからLODにアクセス   –  「リンク」を体感   –  開発者向け、not  エンドユーザー向け   2013-­‐04-­‐25 8
  • 9. 参考資料 セマンティック  HTML/XHTML   –  神崎正英さん   –  毎日コミュニケーションズ   –  未来大の情報ライブラリーにも ある。 –  SPARQLは、後半のp.346から。 「いきなり、ここから入ろう」とい うのが、今回のハンズオン。   2013-­‐04-­‐25 9
  • 11. エンドポイント 1.  DBpedia  Japanese   hp://ja.dbpedia.org/sparql   DBpedia  Japanese  by  DBpedia  Community   2.  函館○○情報   hp://210.226.0.93/sparql/ 函館まちあるきマップ  by  函館市;  はこだてフィルムコミッション  by   函館市;  函館近代化遺産ポータルサイト  by  函館高専、ノース技 研   運営  by  はこだて未来大学 高度ICT演習観光系プロジェクト?   3.  DBpedia   hp://dbpedia.org/sparql   2013-­‐04-­‐25 11
  • 13. 函館○○情報 たどり着いてみよう   1.  LODチャレンジ2012   hp://lod.sfc.keio.ac.jp/challenge2012/index.html   2.  エントリー  /  データセット部門   3.  d055  函館まちあるきルート情報   4.  データセットのURL   hp://210.226.0.93/status/   5.  Execute  a  test  query   hp://210.226.0.93/test/ 2013-­‐04-­‐25 13
  • 14. SPARQLで書かれた問合せ(クエリ) •  SPARQLで書かれた問合せ   PREFIX  rdf:  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>   PREFIX  rdfs:  <hp://www.w3.org/2000/01/rdf-­‐schema#>     SELECT  *  WHERE  {      ?s  ?p  ?o  .   }  LIMIT  10   •  実行「Execute」してみる…!   –  ブラウザに表示される   –  or  ダウンロードが始まる   ←  テキストエディターで開く   2013-­‐04-­‐25 14
  • 15. 問合せ結果 <?xml  version="1.0"?>   <sparql  xmlns="hp://www.w3.org/2005/sparql-­‐results#">      <head>          <variable  name="s"/>          <variable  name="p"/>          <variable  name="o"/>      </head>      <results>          <result>              <binding  name="s"><uri>urn:日本最古のコンクリート電柱</uri></binding>              <binding  name="p"><uri>hp://purl.org/dc/elements/1.1/date</uri></binding>              <binding  name="o"><literal>1923</literal></binding>          </result>        <result>              <binding  name="s"><uri>urn:旧戸井線</uri></binding>              <binding  name="p"><uri>hp://schema.org/image</uri></binding>              <binding  name="o"><literal>hp://u.jimdo.com/www19/o/s8a796cc0310d2bed/img/ i9a4c6cff5aae4279/1338284028/thumb/image.jpg</literal></binding>          </result>            …        </results>   </sparql>   2013-­‐04-­‐25 15
  • 16. 解釈 「urn:日本最古のコンクリート電柱」の   「hp://purl.org/dc/elements/1.1/date」は   「1923」です。   –  urn:日本最古のコンクリート電柱   •  主語、Subject   –  hp://purl.org/dc/elements/1.1/date   •  述語、Predicate   •  Dublin  Coreという語彙での「日付」   –  1923   •  目的語、Object。これを目的語と呼ぶ。   •  1923   「urn:日本最古のコンクリート電柱」の
 「日付」は
 「1923」です。   2013-­‐04-­‐25 16
  • 17. ?s  ?p  ?o  . •  変数   •  s、p、oの文字列は、何でもよい。順番・位置に意味がある。   2013-­‐04-­‐25 17
  • 18. トライ! PREFIX  rdf:  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>   PREFIX  rdfs:  <hp://www.w3.org/2000/01/rdf-­‐schema#>     SELECT  *  WHERE  {      ?s  ?p  ?A  .   }  LIMIT  10   2013-­‐04-­‐25 18 ?o  →  ?A
  • 19. 結果 <?xml  version="1.0"?>   <sparql  xmlns="hp://www.w3.org/2005/sparql-­‐results#">      <head>          <variable  name="s"/>          <variable  name="p"/>          <variable  name="A"/>      </head>      <results>          <result>              <binding  name="s"><uri>urn:日本最古のコンクリート電柱</uri></binding>              <binding  name="p"><uri>hp://purl.org/dc/elements/1.1/date</uri></binding>              <binding  name="A"><literal>1923</literal></binding>          </result>        <result>              <binding  name="s"><uri>urn:旧戸井線</uri></binding>              <binding  name="p"><uri>hp://schema.org/image</uri></binding>              <binding  name="A"><literal>hp://u.jimdo.com/www19/o/s8a796cc0310d2bed/img/ i9a4c6cff5aae4279/1338284028/thumb/image.jpg</literal></binding>          </result>            …        </results>   </sparql>   2013-­‐04-­‐25 19
  • 20. トライ! PREFIX  rdf:  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>   PREFIX  rdfs:  <hp://www.w3.org/2000/01/rdf-­‐schema#>     SELECT  ?o  WHERE  {      ?s  ?p  ?o  .   }  LIMIT  10   2013-­‐04-­‐25 20 *  →  ?o
  • 21. トライ! PREFIX  rdf:  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>   PREFIX  rdfs:  <hp://www.w3.org/2000/01/rdf-­‐schema#>     SELECT  *  WHERE  {      <urn:日本最古のコンクリート電柱>  ?p  ?o  .   }  LIMIT  10   2013-­‐04-­‐25 21 ?s  →  urn:日本最古のコンクリート電柱
  • 22. トライ! PREFIX  rdf:  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>   PREFIX  rdfs:  <hp://www.w3.org/2000/01/rdf-­‐schema#>     SELECT  ?o  WHERE  {      ?s  <hp://schema.org/url>  ?o  .   }  LIMIT  10   2013-­‐04-­‐25 22 ?p  →  <hp://schema.org/url>
  • 23. トライ! PREFIX  rdf:  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>   PREFIX  rdfs:  <hp://www.w3.org/2000/01/rdf-­‐schema#>     SELECT  *  WHERE  {      ?s  ?p  "1923"  .   }  LIMIT  10   2013-­‐04-­‐25 23 ?o  →  "1923"
  • 24. 文法 PREFIX  rdf:  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>   PREFIX  rdfs:  <hp://www.w3.org/2000/01/rdf-­‐schema#>     SELECT  ?s  WHERE  {      ?s  ?p  "1923"  .   }  LIMIT  10   2013-­‐04-­‐25 24 WHERE  {  …  }   …というパターンに当てはまる   ?s(主語)、?p(述語)、?o(目的語)の組から ?s   変数?sを SELECT   取り出しなさい
  • 25. 絞り込み PREFIX  rdf:  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>   PREFIX  rdfs:  <hp://www.w3.org/2000/01/rdf-­‐schema#>     SELECT  *  WHERE  {      ?s  <hp://purl.org/dc/elements/1.1/date>  ?o  .      FILTER  (  "1923"  <=  ?o  )   }  LIMIT  10   2013-­‐04-­‐25 25 ?oが"1923"より大きい
  • 27. 問合せ例  #1 1.  とにかく情報をたくさん取り出して、   2.  「恵山山頂」の情報を手作業で探し出して、   3.  「恵山山頂」緯度をゲットしてから、   4.  クエリを書く     2013-­‐04-­‐25 27
  • 28. 問合せ例  #1   1.  とにかく情報をたくさん… •  クエリ   PREFIX  rdf:  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>   PREFIX  rdfs:  <hp://www.w3.org/2000/01/rdf-­‐schema#>     SELECT  *  WHERE  {    ?s  ?p  ?o  .   }  LIMIT  500   2013-­‐04-­‐25 28
  • 29. 問合せ例  #1   2.  「恵山山頂」の情報を… …       <result>              <binding  name="s"><uri>urn:新島橋_13</uri></binding>              <binding  name="p"><uri>hp://www.w3.org/2003/01/geo/wgs84_pos#lat</uri></binding>              <binding  name="o"><literal>41.769647</literal></binding>          </result>          <result>              <binding  name="s"><uri>urn:恵山山頂_20</uri></binding>              <binding  name="p"><uri>hp://www.w3.org/2003/01/geo/wgs84_pos#lat</uri></binding>              <binding  name="o"><literal>41.810507498395</literal></binding>          </result>          <result>              <binding  name="s"><uri>urn:函館漁港船入澗防波堤</uri></binding>              <binding  name="p"><uri>hp://www.w3.org/2003/01/geo/wgs84_pos#lat</uri></binding>              <binding  name="o"><literal>41.7732320517</literal></binding>          </result>     …   2013-­‐04-­‐25 29
  • 30. 問合せ例  #1   3.  「恵山山頂」緯度を… 「hp://www.w3.org/2003/01/geo/wgs84_pos#lat」が緯度   …   <result>              <binding  name="s"><uri>urn:新島橋_13</uri></binding>              <binding  name="p"><uri>hp://www.w3.org/2003/01/geo/wgs84_pos#lat</uri></binding>              <binding  name="o"><literal>41.769647</literal></binding>          </result>          <result>              <binding  name="s"><uri>urn:恵山山頂_20</uri></binding>              <binding  name="p"><uri>hp://www.w3.org/2003/01/geo/wgs84_pos#lat</uri></binding>              <binding  name="o"><literal>41.810507498395</literal></binding>          </result>          <result>              <binding  name="s"><uri>urn:函館漁港船入澗防波堤</uri></binding>              <binding  name="p"><uri>hp://www.w3.org/2003/01/geo/wgs84_pos#lat</uri></binding>              <binding  name="o"><literal>41.7732320517</literal></binding>          </result>   …   2013-­‐04-­‐25 30
  • 31. 問合せ例  #1   4.クエリを書く ?   2013-­‐04-­‐25 31
  • 32. 問合せ例  #1   4.クエリを書く PREFIX  rdf:  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>   PREFIX  rdfs:  <hp://www.w3.org/2000/01/rdf-­‐schema#>     SELECT  *  WHERE  {      ?s  <hp://www.w3.org/2003/01/geo/wgs84_pos#lat>  ?o  .      filter  (  "41.810507498395"  <  ?o  )   }  LIMIT  250   2013-­‐04-­‐25 32
  • 33. 問合せ例  #1   3.  「恵山山頂」緯度を… ところで、     hp://www.w3.org/2003/01/geo/wgs84_pos#lat   が緯度   ↑   って、なぜ分かるの?   2013-­‐04-­‐25 33
  • 36. 問合せ例  #2 PREFIX  rdf:  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>   PREFIX  rdfs:  <hp://www.w3.org/2000/01/rdf-­‐schema#>     SELECT  ?s  ?q  WHERE  {      <urn:恵山山頂_20>  <hp://www.w3.org/2003/01/geo/wgs84_pos#lat>  ?q  .      ?s  <hp://www.w3.org/2003/01/geo/wgs84_pos#lat>  ?q  .      filter  (?q  <  ?o)   }  LIMIT  250   2013-­‐04-­‐25 36
  • 37. #1と#2の違い 地殻変動で恵山の緯度が変わった後…   •  #1   filter  (  "41.810507498395"  <  ?o  )   –  緯度の値がベタに書かれている。   –  クエリを書き直さなくてはならない。   •  #2   <urn:恵山山頂_20>  <hp://www.w3.org/2003/01/geo/ wgs84_pos#lat>  ?q  .   filter  (?q  <  ?o)   –  緯度の値を「函館○○情報」から取得している。   –  「函館○○情報」が更新されていれば、   –  クエリを書き直さなくてよい。 2013-­‐04-­‐25 37
  • 38. 問合せ例  #3 PREFIX  rdf:  <hp://www.w3.org/1999/02/22-­‐rdf-­‐syntax-­‐ns#>   PREFIX  rdfs:  <hp://www.w3.org/2000/01/rdf-­‐schema#>     SELECT  ?s  ?q  WHERE  {      ?e  <hp://www.w3.org/2003/01/geo/wgs84_pos#lat>  ?o  .      ?s  <hp://www.w3.org/2003/01/geo/wgs84_pos#lat>  ?q  .      filter  (  ?o  <  ?q  )      filter  (  regex(str(?e),  "恵山山頂",  "i")  )   }  LIMIT  250     PS:   –    "i"は不要   –    disznct  ?s  ?qがベター   …   2013-­‐04-­‐25 38
  • 41. 体験したこと… •  SPARQLを書いてみた。   •  SPARQLで、情報を取り出してみた。…悩んだ。   –  大丈夫、みんな悩んでます。   –  自分がLODデータを公開したら、世界の開発者が、自分 のデータに対して、同じように悩むのです。   2013-­‐04-­‐25 41