コードで語るマニフェスト:自治体データはこう直せば動き出すよ

IT 정책 제안
コードで語るマニフェスト:自治体データはこう直せば動き出すよ

どうも〜 오카무입니다! 오늘은 공공데이터와 지방정부 시스템을 엔지니어 관점에서 까놓고 분석해보려 합니다~

  • 이 글 3문장 요약
- 중앙·지방의 시스템 표준화 정책은 방향성은 맞지만, 실제 데이터는 PDF·비정형에 묶여 있음

- 엔지니어적으로 말하면 API·CSV·스키마가 없어서 재사용이 힘들다

- 해결책은 기계가 읽을 수 있는 공개 포맷·OpenAPI·ETL 파이프라인 도입이다

結論

요약하면, 정부/지방자치단체의 데이터는 "정책 문서화"는 잘 되어가지만 "데이터화"가 덜 되어 있다. PDF로 배포된 통계나 제안서가 많고, API·CSV·메타데이터 표준(DCAT, JIS 코드 준수 등)이 부족해서 실무에서 재사용·검증이 어렵다. 엔지니어 입장에선 "CSV 한 줄, JSON 한 엔드포인트"가 더 큰 정책 효과를 만든다!

レポート本文

現状の観察(データソース参照)

これ見てくださいよ、総務省とデジタル庁の施策ページ(https://www.soumu.go.jp/...、https://www.digital.go.jp/...)には標準化・共通化の方針が並んでます。要するに「全部標準に合わせますよ」という宣言はあるんです。ただし、公開されている資料の多くはPDF、あるいはスライドで、機械可読性が低い。

内閣官房の資料(https://www.cas.go.jp/...pdf)でも“AI-Ready社会では機械可読が重要”と明記されてますが、現場で配布されるデータセットはまだCSV化されていないケースが多いんです。

技術的な問題点

  • PDF優先の公開:表が画像化されていると抽出コストが高い。要するにスクレイピングとOCRが増えるだけ。
  • API不在または限定公開:自治体によってAPI整備の差が激しい。ある自治体はCKAN等を使っているが、多くは静的なファイル置き場。
  • スキーマ不統一:フィールド名がバラバラ(例:population, 人口, pop)、コード体系も自治体ごとに差。結合がめんどい。
  • 更新頻度とタイムスタンプ欠如:データがいつ更新されたかわからないため再現性が低い。

エンジニア的に言うと

この状況、API 한 편이면 해결되는 문제예요。要するに、次の4点セットがあれば劇的に良くなる。

1) 機械可読フォーマット(CSV/JSON/Parquet)

2) OpenAPI/GraphQLでのエンドポイント公開

3) DCAT互換のメタデータ + ライセンス明示(CC BYなど)

4) 標準コード(JIS X 0401 等)でデータ正規化

コード例:PDFテーブルをCSVにする実務スニペット

# tabulaを使ってPDFの表をCSV化する例

import tabula

tables = tabula.read_pdf('report.pdf', pages='all', multiple_tables=True)

import pandas as pd

df = pd.concat(tables)

スキーマ正規化の簡単な処理

df = df.rename(columns={'人口':'population'})

df.to_csv('output.csv', index=False)

要するに、これよくあるワークアラウンドで、本来はPDFじゃなく最初からCSVで提供してほしいんです!

APIがある自治体向けの検証例

APIがある場合、以下のようにスキーマ検証を入れてCIでチェックするのが良い。

import requests

from jsonschema import validate

r = requests.get('https://example.gov/api/population')

data = r.json()

schema = {"type":"array","items":{"type":"object","properties":{"year":{"type":"integer"},"population":{"type":"integer"}},"required":["year","population"]}}

validate(instance=data, schema=schema)

これでデータ供給側の破壊的変更を自動で拾える。要するに継続的デリバリーの観点での品質確保です。

政策目標と実績のギャップ分析

デジタル庁や総務省は「標準化推進」を掲げているが、現場の進捗は自治体ごとにムラがある(総務省の標準化PMOツールで報告状況は見られる)。目標は“標準準拠システムへ移行”だが、具体的な数値目標(何割の自治体がAPIを公開する、何割がCSVで提供する等)が明確でないケースがある。要するにKPIが曖昧で、達成度の評価にブレがあるんです。

改善提案(技術プラン)

  • まずは優先データ(人口、公共施設、予算・決算)をCSV/JSONで公開。PDFはアーカイブのみ。
  • OpenAPI仕様書を公開してエンドポイントを標準化。Swaggerで自動ドキュメント化。
  • CIパイプラインでスキーマ検証(jsonschema/pandera)を導入。破壊的変更はPRで止める。
  • メタデータはDCAT-AP互換で統一、ライセンスはCC BY 4.0推奨。
  • S3+CloudFront等で配信し、レート制御・監視を実装。
  • 地方向けにはテンプレート(Dockerized API + DB migrations + OpenAPIテンプレ)を配布してローリング展開を促進。

利活用シナリオ

  • 洪水リスク可視化:ハザードマップ×建物点データをCSVで結合→市民向けハザードAPI
  • 地域サービス連携:予算データと事業実績を紐付けて可視化、行政監視の民主化
  • AI学習用データ:Data for AIサブユニットの示唆に沿って、機械可読データセットの整備(https://digital-gov.note.jp/...)

まとめ

  • 現状は方針はあるが、実務はまだPDF頼みで機械可読性が低い
  • エンジニア的にはAPI + スキーマ + メタデータがあれば再利用が爆増する
  • 小さくても良いから、まずは重要データのCSV/JSON公開・OpenAPI化・CIでのスキーマ検証を始めよう

おかむーから一言

기술로 사회를 바꾸는 건 결국 실행력입니다. 선언이 아니라 엔드포인트 하나가 시민 삶을 바꿉니다. 같이 해보죠!

공유하기