次世代統計利用システムで提供されている「都道府県・市区町村コード情報(LOD)」のAPIから、
都道府県や市区町村のコードを取得する際の手順について。
手順.1
SPARQL エンドポイントにアクセス。
http://statdb.nstac.go.jp/lod/sparql
手順.2
右側の「OPTIONS」にある「Output format (if supported by query type):」のプルダウンメニューから、任意の出力フォーマットを選択。
手順.3
目的にあわせて、以下のSELECT文を実行。
都道府県コードを取得する場合
SELECT DISTINCT ?area_code ?label_ja ?label_kana ?label_en WHERE {
?s sacs:administrativeClass sacs:Prefecture .
?s dcterms:identifier ?area_code .
?s rdfs:label ?label_ja
FILTER( lang(?label_ja) = "ja") .
?s rdfs:label ?label_kana
FILTER( lang(?label_kana) = "ja-hrkt") .
?s rdfs:label ?label_en
FILTER( lang(?label_en) = "en")
}
市区町村コードを取得する場合
SELECT DISTINCT ?area_code ?label_ja ?label_kana ?label_en WHERE {
?s sacs:administrativeClass ?area_class
FILTER( regex( ?area_class, "(#SpecialWard|#City|#Town|#Village)$" ) ) .
?s dcterms:identifier ?area_code
FILTER( regex( ?area_code, "^01" ) ) .
?s rdfs:label ?label_ja
FILTER( lang(?label_ja) = "ja" ).
?s rdfs:label ?label_kana
FILTER( lang(?label_kana) = "ja-hrkt" ).
?s rdfs:label ?label_en
FILTER( lang(?label_en) = "en" )
}
ORDER BY ?area_code
上記サンプルの「FILTER( regex( ?area_code, "^01" ) ) .」で指定している数字(01)は、
対象都道府県の都道府県コードのうち先頭2桁に変更。
参考.
次世代統計利用システム【都道府県・市区町村コード情報】 提供仕様
http://statdb.nstac.go.jp/wp/wp-content/uploads/2013/12/sac-spec.pdf