コードで語るマニフェスト:日本の自治体データをエンジニア目線で検証する

どうも〜おかむーです!今日はちょっとエンジニアっぽい話をしますよ〜
- 行政データはあるけど形式がバラバラで再利用が難しい!
- API化やCSV/JSON化で開ける価値が大きい、実装は割とシンプルです!
- 具体的改修案(OpenAPI、JSON Schema、CIによる品質チェック)を提案します!
結論
政府・自治体の公開データは「存在しているが使いづらい」ケースが多いです。e-GovのAPIカタログや東京都オープンデータのAPIは前進だけど、PDF埋め込みや不揃いなCSV、メタデータ欠落がボトルネック。エンジニア的に言うと、API一本と機械可読なデータモデルを整備すれば二次利用が一気に進みます。
レポート本文
現状観察(参照ソース)
これ見てくださいよ:e-Govの「行政API」カタログ(https://www.e-gov.go.jp/digital-government/api)や東京都のオープンデータAPI(https://portal.data.metro.tokyo.lg.jp/opendata-api/)はAPIを公開しているものの、実運用で使いやすいかは別問題です。さらに、notice.go.jpのCSV(https://notice.go.jp/docs/status_notice.csv)のように直接CSVを置いている例もある一方で、重要資料がPDFに埋め込まれていたり、ヘッダ説明が不足しているデータも散見されます。
技術的評価
- フォーマット:CSV/JSONは機械可読だが、エンコーディングや区切り文字、日付フォーマットが統一されていない。要するに「同じCSVでも読み込むのに前処理が必要」ということです。
- API設計:REST APIはあるがOpenAPI仕様での仕様書が公開されていないケースがある。エンジニア的に言うと、スキーマ定義が無いと自動生成や型チェックができません。
- メタデータ:ライセンス、更新頻度、最終更新日時、行の意味(カラム定義)が不足。これではデータカタログとしての価値が下がります。
- 品質管理:CI/CDによるバリデーションやタイムスタンプ付きの差分配信が無い例が多い。
コード例:CSVを取りに行って簡単に検証するPythonスニペット
import requests, csv
r = requests.get('https://notice.go.jp/docs/status_notice.csv')
r.encoding = 'utf-8'
rows = list(csv.DictReader(r.text.splitlines()))
print('rows', len(rows))
日付フォーマット検証
from dateutil import parser
bad = [r for r in rows if not r.get('date')]
print('bad date rows', len(bad))
このくらいのスクリプトでまずは品質の洗い出しができますよ!
改善提案(実装レベル)
- API ファースト:全主要データセットに対してOpenAPI 3.0の仕様書を作成。Swagger UIで開発者体験を向上。
- 機械可読の公式フォーマット:CSVとJSONを同梱、JSON Schemaでスキーマを定義。日付はISO8601で統一。
- メタデータ標準化:DCAT/Schema.orgベースでライセンス、更新頻度、バージョンを明記。
- 品質保証パイプライン:Gitリポジトリでデータとスキーマを管理、CIでバリデーションとサンプル生成を実行。
- 差分配信とWebhook:大規模データは完全ダンプ+差分(パッチ)で配信。更新をサブスクライブできるWebhookを提供。
- 事例活用:デジタル庁や総務省の推進資料(https://www.digital.go.jp/, https://www.soumu.go.jp/)を参照し、地方自治体向けテンプレートを配布すると導入が速い。
数値目標とギャップ分析
自治体が掲げる「オープンデータ化の推進」目標と、実際の機械可読化率をKPI化するのが有効。例えば「公開データのうちJSON/CSVで機械可読かつスキーマ付きの割合を3年で80%にする」と定めれば、PDCAが回しやすくなります。
まとめ
- データ自体は増えているが、フォーマットとメタデータ不足で利活用が限定的。
- OpenAPI、JSON Schema、CIによるバリデーションで再利用性を劇的に改善できる。
- 小さく始めて標準テンプレ化するのが現実的なアプローチ。
おかむーから一言
テクノロジーで社会をアップデートするの、ほんとワクワクするんですよね。まずはAPI一本、スキーマ一つから始めましょう!
정보 출처
- https://www.jichi.ac.jp/
- https://www.e-gov.go.jp/digital-government/api
- https://www.jichi.ac.jp/web_text/
- https://portal.data.metro.tokyo.lg.jp/opendata-api/
- https://www.jichi.ac.jp/library/
- https://notice.go.jp/docs/status_notice.csv
- https://www.jinji.go.jp/content/900024615.csv
- https://www.env.go.jp/content/900398071.csv
- https://www.inpit.go.jp/content/100869372.csv
- https://www.mhlw.go.jp/content/001429362.csv
- https://www.intec.co.jp/column/smartcity-08.html
- https://sorabatake.jp/14930/
- https://www.soumu.go.jp/menu_seisaku/ictseisaku/ictriyou/opendata/
- https://www.digital.go.jp/resources/data_case_study_local
- https://www.digital.go.jp/resources/data_case_study_private
공유하기
관련 리포트

コードで語るマニフェスト:自治体データとシステムをエンジニア視点で検証する
自治体データはPDFやUIに閉じがち。API-firstとJSON Schemaで再利用性を高め、ガバメントクラウドへ移行する実務ロードマップを提示します。

コードで語るマニフェスト:日本政府データの現場から見る技術検証
政府データは可視化が進むも機械可読性不足が課題。CSV/JSON/API、スキーマ、ID統一で政策検証を自動化しよう。

코드로 읽는 마니페스토: 일본 정부 데이터와 시스템을 엔지니어 관점에서 후벼파기
일본 정부 데이터의 PDF·API·메타데이터 문제를 엔지니어 관점에서 분석하고, 실무 가능한 개선안을 코드 예시와 함께 제시합니다。