SPARQL初心者の学習日誌

 

SPARQLの使い方の学習をやってみようということになり、クエリ文を作る練習を始める。

odpのSPARQLコンソールを使って、サンプルコードとして書いてあった

select * { ?s ?p ?o . } limit 10

を入力して結果を見てみる。
スクリーンショット 2018-09-28 10.18.40

 

よくわからないが成功してそうだ。見たところ、sとpとoにそれぞれデータのタイプと値が入っていることが分かる。

 


 

さて、SPARQLの基本的な構文は分かったので、オープンデータを使ったWebアプリを試しに作ってみよう。ということで1つ困ったことが出てきた。どんなデータがあり、どのURIを指定すればいいのかがわからないのだ。

調べてみるとどうやらデータカタログというものがあるらしい。odpデータカタログにアクセスすると様々なデータを見ることはできた。

 

スクリーンショット 2018-09-28 10.47.49

 

しかしここでは、どのようなデータがあるかはわかったのだが、クエリ文に何を入力するとそのデータにアクセスできるのかがわからなかった。

 


そこで教えていただいたodp vocabularyを利用することにする。

 

スクリーンショット 2018-09-28 11.05.41

 

ここを見ればURIがすぐにわかる。それぞれの項目をクリックすると、それぞれにどのようなデータが入っているかがURI付きでわかるようになっていて便利だった。URIの:より左部分は接頭辞と言って省略をしているらしく
prefix hoge:<URI>

と事前に入力することで、URIの指定を短く収めることができるらしい。

 

接頭辞の一覧は右上のttl downloadと書いてあるところをクリックすると見ることができた。

 


試しにレンタルサイクリングステーションの緯度、経度一覧をSPARQL入門、はじめの一歩を参考にしながら表示させてみる。

以下のクエリ文をフォームに入力し検索ボタンを押すと・・・

prefix geo: <http://www.w3.org/2003/01/geo/wgs84_pos#>
prefix jrrk: <http://purl.org/jrrk#>
prefix schema: <http://schema.org/>
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
prefix odp: <http://odp.jig.jp/odp/1.0#>
prefix ic: <http://imi.go.jp/ns/core/rdf#>
prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>

select ?label ?lat ?lng {
?s ?p odp:RentalCycleStation;
rdfs:label ?label;
geo:lat ?lat;
geo:long ?lng;
}limit 1000

スクリーンショット 2018-09-28 11.24.53

 

レンタルサイクルステーションの一覧を表示させることに成功!!

ここからこのデータを使ってWebアプリの開発をしてみたいと思う。

カテゴリー