近隣の医院情報(世田谷・桜)のRDF化と閲覧

近隣の医院情報のRDF化を試み,それを活用したサンプルをいくつか提示しています。
対象とする地域は東京都世田谷区桜のごく一部であり,私の近隣の医院情報だけを登録しています。 近くを通る東急世田谷線の山下駅から上町駅のホームに掲載されている医院・診療所の案内を基に作成しました。
名称(rdfs:label),場所,掲載駅,最寄駅,掲示写真,診療科目,診療日等のデータをRDF化して SPARQL Timelinerで可視化しました。


SPARQLクエリーの内容紹介

RDF化したデータは SparqlEPCUにあります。 (プロジェクト名:近隣の医院情報問合せ)
(SPARQLエンドポイント: http://lodcu.cs.chubu.ac.jp/SparqlEPCU/RDFServer.jsp?reqtype=api&project=localClinicInfo )

SPARQLのクエリーは 以下の通り。

BASE <http://example.org/clinics/>
PREFIX p: <property#>
PREFIX o: <用語/診療科#>
PREFIX w: <用語#>

SELECT DISTINCT ?title ?start ?lat ?long ?image ?source ?sourceurl ?description
WHERE {
#  BIND("宮の坂" AS ?最寄駅)     # 最寄駅を「宮の坂」に限定する場合,行頭のシャープを削除
  ?医院 a  w:医院型 .
  ?医院 rdfs:label ?医院名 .
#  ?医院 p:診療科 o:外科 .    # 外科に絞る場合,行頭のシャープを削除
  ?医院 p:診療科 ?診療科 .
  ?診療科 rdfs:label ?診療科名 .
  ?医院 p:最寄駅 ?最寄駅 .
  ?医院 p:掲載駅 ?掲載駅 .
  ?医院 p:掲示写真 ?image .
  ?医院 p:URL ?sourceurl .
  ?医院 geo:lat ?lat .
  ?医院 geo:long ?long .
  BIND(?医院名 AS ?title)
  BIND(now() AS ?start)
  BIND("ホームページ" AS ?source)
  BIND(concat("診療科:",?診療科名,",<br/>最寄駅:",?最寄駅,",<br/>掲載駅:",?掲載駅) AS ?description)
}
ORDER BY ?医院名

この例では,SPARQL Timelinerで日付情報をうまく活用できていません。 全て今日(上記ソースの下から5行目のnow()を参照のこと)にしています。 また,複数の写真の情報とかが扱えるとより見映え良くなりますね。


SPARQL TimeLinerで直接見るには, ここを参照してください。


近隣の医院情報の活用

SparqlEPCUへのクエリー

近隣の医院情報のRDFへの種々のSPARQLクエリーを提示します。
「SPARQL クエリー」のボタンをクリックすると, その下に指定するSPARQLクエリーの内容に応じて SparqlEPCU のプロジェク「近隣の医院情報(世田谷・桜)」とを呼び出します。 プロジェクトIDは「 localClinicInfo」です。

結果は別ページに表示されます。今の所,Webブラウザではテキスト表示されます。 Webページのソースを表示させると,各形式でどの様に返されているかを確認できます。 (少し面倒ですね。ごめんなさい!!)

SPARQLクエリーの内容は,「SPARQLクエリー例の選択」にいくつか用意してあるので, 試して見る事ができます。 曜日を指定するクエリー(選択肢09,10,11)では,予め今日の曜日を設定しています。 水色の西暦にある年月日を変更することで,曜日を変えることが出来ます。 「再設定」ボタンをクリックすると曜日が変わります。

色々と試してみてください。

パラメーター設定 (SPARQLクエリーにより使用する場合がある)
(曜日)


DBpediaへのクエリー

おまけでグローバル版DBpediaへのSPARQLクエリーを提示します。
「SPARQL クエリー」のボタンをクリックすると, その上のテキスト・ボックスで指定する内容に応じて DBpedia を呼び出します。

SPARQLエンドポイントでは,もう少し豊富な機能がついて 色々と試すことができます。