코드로 검증하는 행정 데이터: PDF에서 API로, 기계가 읽는 공공데이터로의 전환

どうも〜おかむーです!今日は政府・自治体データをエンジニア視点で斬る回ですよ〜
- 공공데이터, 아직도 PDF에 갇혀 있는 경우가 많다
- 内閣官房의 기계可読성ルールは前進だが実装が追いついてない
- CSV→API→OpenAPI·DCAT로繋ぐのが現場で効く改善案です
結論
일본 중앙정부는「行政データの機械可読性に関するルール」(内閣官房、2026/03/31) 같은ルール을整備してきたが、現場のポータルや自治体における公開形式はまだ混在している。要するに、PDFに埋め込みの表→単一CSV→JSON APIへの流れを標準化して、メタデータ(DCAT)、OpenAPI、文字コードUTF-8を必須にするだけで利活用は劇的に上がるということです。
レポート本文
現状観測 — これ見てくださいよ
政府系のCSVや資産は存在します(例:notice.go.jpのstatus_notice.csv、digital.go.jpの病院CSV、greenfinanceportalの発行リストCSV、内閣府の統計CSVなど)。URL直貼りでデータが取れるのは良いんですけど、問題は次のとおり。
- フォーマットの多様性:CSVの列順・エンコーディングが自治体でバラバラ
- PDF公開が残存:重要指標がPDFに埋められているケースがまだある
- メタデータ不足:更新日・スキーマ説明・バージョンが不十分
- API不在:リアルタイムアクセスや差分取得ができない
要するに、データ取得→ETL→解析の最初の部分でコストがかかりすぎるんですよね。
技術的な評価ポイント
1) 機械可読性ルールとの整合性
- 内閣官房の決定(2026/03/31)を踏まえると「機械可読」=CSV/JSON/JSON-LD+メタデータ必須が望ましい。
2) フォーマット品質
- 文字コード: Shift_JIS/CP932の混在は多い。手元のツールでUTF-8に変換する処理が必須。
- スキーマ: 都度フィールド名が変わるとクライアントコードが壊れる。
3) API設計
- オープンなREST/GraphQL APIがあると、フロント/データパイプラインが簡潔になる。
- OpenAPI仕様で契約化しておくと自動テストや型生成が可能。
実践的なコード例(エンジニア的に言うと)
これ見てくださいよ、CSVを拾って前処理するPythonスニペットです(要するに、文字コードと日付を直すだけでだいぶ楽になります)。
import requests
import io
import pandas as pd
r = requests.get('https://notice.go.jp/docs/status_notice.csv')
r.encoding = 'utf-8' # 必要なら 'cp932'
df = pd.read_csv(io.StringIO(r.text))
日付列をパース
if '更新日' in df.columns:
df['更新日'] = pd.to_datetime(df['更新日'], errors='coerce')
print(df.head())
要するに、現場では「最初の10行」を正しくパースするだけで運用コストが下がるんです。
政策目標と実績ギャップの扱い
例えばグリーンファイナンスの発行データ(greenfinanceportal)で「発行金額」の時系列を取ると、政策目標の達成度を自動算出できる。問題は発行体名やカテゴリが自由記述だと集計が難しい点。ここは正規化ルールと標準分類(業種コード等)を定めるべきです。
改善提案(エンジニア視点)
- すべての数値指標はCSVまたはJSONで公開。PDFは補助資料に限定。
- 文字コードUTF-8必須、BOMなし推奨。
- DCAT準拠のカタログを用意。更新日時、ライセンス、スキーマを明記。
- 中央のAPIゲートウェイで認証・差分・レート制御を行い、OpenAPIで仕様を公開。
- データセットをGitで管理し、CIでスキーマチェック・テスト・自動公開(CSV→S3/公開URL)を行う。
- 各自治体向けに共通のPython/Rubyテンプレを配布して、取り込み・正規化を自動化。
参考URL(現場で触れるもの)
- https://notice.go.jp/docs/status_notice.csv
- https://www.digital.go.jp/(行政データのフィールドリソース)
- https://greenfinanceportal.env.go.jp/csv/issuance_list_gb.csv
- 内閣官房「行政データにおける機械可読性に関するルール」(2026/03/31)
期待される効果
- データ利用者(研究者、企業、自治体内DX担当)のコストが下がる
- APIとスキーマの安定で再現性が高まる(政策評価の信頼性向上)
- データを起点にしたサービス(アプリ、ダッシュボード、アラート)が増える
まとめ
現場は徐々に整備されているが、ルール→実装の落とし込みが足りない。要は「規約(OpenAPI・DCAT・UTF-8)で約束して、コードで守る」アプローチをもっと広げようという話です。エンジニア的に言うと、API一本で解決する部分が多いんですよね!
おかむーから一言
テクノロジーで政府をアップデートするの、めちゃ楽しいです。まずは小さなCSV一つをAPIにするところから始めましょう!
정보 출처
- https://govtechbridge.com/
- https://www.zhihu.com/question/1940157301433557604
- https://www.zhihu.com/question/40553450
- https://note.govtechtokyo.jp/n/n77785a8254d6
- https://www.zhihu.com/question/372341437/answers/updated
- https://notice.go.jp/docs/status_notice.csv
- https://www5.cao.go.jp/j-j/wp/wp-je24/csv/d1-1-4.csv
- https://www.digital.go.jp/assets/contents/node/basic_page/field_ref_resources/0066e8a8-6734-44ab-a9a9-8e09ba9cb508/xxxxxx_hospital.csv
- https://www.env.go.jp/content/900398071.csv
- https://greenfinanceportal.env.go.jp/csv/issuance_list_gb.csv
- https://www.zhihu.com/question/290714454
- https://www.cas.go.jp/jp/seisaku/digital_gyozaikaikaku/kakusyoDX4/kakusyoDX4.html
- https://www.zhihu.com/question/6430289390
- https://www.digital.go.jp/assets/contents/node/basic_page/field_ref_resources/256dcba6-b936-4031-b88d-3abb27e27f9b/7c809f2f/20260331_meeting_executive_outline_05.pdf
- https://www.zhihu.com/question/2031197523432453026
공유하기
관련 리포트

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

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

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