CKANには、アップロードしたファイルをダウンロードせずに中身を確認できる「ビュー機能」があります。
テキスト、PDF、画像、Officeファイル、地理空間情報など、さまざまなビューが存在しますが、最もよく使われるのは「データエクスプローラ(表データの表示)」だと思います。
データエクスプローラの2つの仕組み
1. Datastore
- ファイルをRDB(リレーショナルデータベース)に変換
- ファイルの中身を表形式で表示
- API経由でファイルの中身にアクセス可能
「API」ボタンが表示され、Datastore APIでデータ取得ができるようになります。
2. Resource Proxy
ファイルを外部サービスに投げてJSONを取得し、それを表示する仕組みです。
※将来的に機能停止がアナウンスされていますが、現時点では利用可能です。
基本的に、Datastoreが利用されますので、以下はDatastore前提の話となります。
表が表示されない場合のチェックポイント
Excel または CSV ファイルをアップロードしたのに「表が表示されない」ことがあります。
その場合、まず以下の点をご確認ください。
1. 表の形式がシンプルであること
Datastoreは「1行目がタイトル行、2行目以降がデータ」というシンプルな表形式が前提です。
整然データという考え方がありますので参考にしてください。
セルの結合がある、グラフを含んでいるなどの、シンプルな表でないExcelデータの場合は、プレビュー(Officeビュー)を利用してください。
2. タイトル行(1行目)のチェック
- 重複がないか
同じ列名があると、Datastoreではキーの重複としてエラーになります。 - 文字数制限
列名は以下のルールを超えるとエラーになります:- 半角英数字のみ → 63文字以内
- 全角文字のみ → 21文字以内
- 混在の場合 → 「半角1文字=1」「全角1文字=3」として合計63以内
- 記号の組み合わせ
一部の記号と文字の組み合わせによってもエラーが発生する場合があります。
エラーが出る場合は、記号を削除してみてください。
3. データ型の推定によるエラー
Datastoreでは、2行目以降の値から自動で型(数値型や文字列型)が推定されます。
以下のようなケースでエラーが起きることがあります:
- 最初はすべて数値だった列に、途中で「100人」など数値でない文字列が混ざっている → エラー
- 特定の列を文字列として扱いたいのに、数値として推定されてしまう(例:自治体コード)
北海道から茨城県までは、先頭が0ですが、数値と推定されると0が削除されて表示されてしまう。
型の変更方法(例:自治体コードを文字列にする)
以下の手順で、列の型を「text(文字列)」に変更できます:
- 対象リソースの管理画面を開く
- 「データディクショナリ」タブをクリック
- 該当の列の「タイプ再定義」にて「text」を選択
- 一番下の「保存」ボタンをクリック
最後に
Datastoreを活用すると、CKAN上でファイルの中身を事前にプレビューできるようになり、表形式のデータにはAPIからアクセスすることも可能になります。
ただし、正しく表示させるためには、データの整形やタイトル行の調整が必要になることがあります。表示されない表データがある場合は、エラー内容を確認し、元のファイルを見直してみてください。適切に対応することで、より使いやすいデータに仕上がります。
オープンデータの定義には「機械判読に適した形式である」という項目がありますが、Datastoreで問題なく表示されれば、機械判読可能である可能性が高いと言えます。
デジタル社会の実現に向けて、機械判読可能なデータの公開を一緒に進めていきましょう!