政府統計データ取得 API e-Stat の簡単な使用方法 その 3

前回までのおさらい。
統計データを取得するには、
統計表情報取得によって得られる “統計表 ID ” と、
メタ情報取得によって得られる “項目コード” が必要でした。

統計表情報によって “統計表 ID” を得ることに成功したのが前回です。
今回はこの “統計表 ID” を使って、
その統計表に対するメタ情報を取得します。

メタ情報取得のリクエスト URL はつぎのようになります。

というわけで前回までのコードに追加する形で、
コード全体は次のようになります。

45 行目以降が今回追加したコードです。
前回までで取得した統計表に関するデータの一番最初の統計表 ID を使用するようにして、
メタ情報取得に関するコードを追加しています。
Json クラスや GetValue() 拡張メソッド等に関するコードは今回省略しています。
詳細は前回までの記事を確認して下さい。

実行結果は次のようになります。
ScreenShot02

CLASS_OBJ タグが、統計表に対する統計データの絞込条件となり、
統計データによってその数が異なります。
今回の例に示す、統計表 ID 0003080162 に対する統計データの絞込条件として、
cat01、cat02、cat03、area、time という条件があるということがわかりました。

しかし、例えば cat01 の “男女別・性比” で絞り込もうとしたとき、
どのような値があるのかがまだわかりません。
実は、それぞれの絞込条件 CLASS_OBJ の中にさらに CLASS タグがあり、
これが絞込条件の詳細情報となります。

というわけで CLASS_OBJ タグの中の CLASS タグも表示するように改良します。
先ほどのコードの 61 行目から始まる foreach 文の中を次のように変更します。

それぞれの CLASS_OBJ タグの中に CLASS タグが存在するので、
foreach 文の中で CLASS タグを探索するコードを書いています。
そして、CLASS タグは複数存在する場合もあるので、
基本的に object[] で取得するようにしています。
さらに foreach 文を書いて、すべての CLASS タグの中の
code および name 属性の中身をコンソール上に表示させています。
外側の foreach 文で出力しているコンソール文字列と区別がつくように、
内側の foreach 文でコンソールに出力するときは先頭に “\t” を付けることで、
インデントを追加しています。

出力結果はこちらになります。
ScreenShot03
縦長な画像ですが、実際はスクロールして確認できると思います。

これで晴れてすべての絞込条件の表題と詳細を把握することができました。
後はこれらの条件を組み合わせて
統計データ取得をおこなうだけです。

というわけで次回はいよいよ統計データ取得です。