コードで語るマニフェスト:自治体データの今をエンジニア視点で検証する

IT 정책 제안
コードで語るマニフェスト:自治体データの今をエンジニア視点で検証する

안녕하세요~ 오카무입니다! 오늘은 코드와 데이터로 정책을 검증하는, 소위 "코드로 말하는 매니페스토" 스타일로 지방정부의 데이터 공개·시스템 표준화를 기술적으로 들여다볼게요. 엔지니어적 관점에서 실무적으로 쓸 수 있는 제안까지 담았습니다!

  • 이 글 3줄 요약
- 중앙·지자체는 표준화와 클라우드 전환을 추진 중이지만, 실제 데이터 공개는 CSV·PDF 혼재로 기계 가공성이 들쭉날쭉하다

- API·스키마 부재가 재현성 있는 분석을 막는다 — 엔지니어라면 API 한 줄로 해결할 수 있는 문제들이 많다

- 개선안: 오픈API·JSON Schema·DCAT 카탈로그·CI 기반 데이터 릴리스 파이프라인을 도입하자

結論

검색 결과를 보면(例: デジタル庁の「自治体の標準化」ページ、総務省の共通化施策)、方針は出ているけど現場のデータ公開は「CSVはあるが散らばっている」「重要資料はPDFで配布」がまだまだ多いです。엔지니어적으로 말하면, "機械可読なAPI+標準スキーマが無ければスケールしない" 이라는 거죠.

レポート本文

現状観察:検索結果から拾えること

これ見てくださいよ。検索結果には下記のようなパターンが混在しています。

  • govドメインでCSVが直接公開されている例:総務省のCSV一覧(https://www.soumu.go.jp/main_content/000323625.csv)、各種通知のCSV(https://notice.go.jp/docs/status_notice.csv)など。これは良い!
  • 一方、交付金や評価レポートはPDFが多い:内閣府や都道府県の評価報告(https://www.chisou.go.jp/.../r6_houkokusho-suishin.pdf や https://www.pref.yamaguchi.lg.jp/uploaded/attachment/160746.pdf)。要するに、機械で取りにくいってことです。
  • サービス系ページ(例:地方競馬情報サイト https://www.keiba.go.jp/)はライブ表示やHTMLベースだが、APIの公開が明示されていない。

要するに、データは存在するけど“再利用しやすい形”での公開が一貫してないんですよね。

技術的問題点を掘る

1) フォーマットの分断

  • CSVとPDFが混在。PDFはレポート体裁では有用だが、データ収集の自動化には不適。PDF→CSV変換はOCRやtabulaに頼るしかなく精度問題が出る。

2) スキーマ不在

  • 同一カテゴリでもカラム名や単位が自治体ごとに違う。標準スキーマ(例:JSON Schema, DCAT, Schema.orgの採用)がないと統合が大変。

3) API不在・メタデータ不足

  • 検索結果にAPI仕様が見えないケースが多い。APIがあってもOpenAPI記述が無いと自動クライアント生成ができない。

4) KPIと実績の機械可読性ギャップ

  • デジタル田園都市交付金関連のガイドや評価資料(https://www.chisou.go.jp/.../r5_guideline-checkaction.pdf 等)はKPIの設定はあるが、達成状況の数値がPDF内に埋め込まれることが多い。これでは年度比較やダッシュボード化が難しい。

具体的な技術検証例(コードで示す)

ここで簡単な実務例。政府のCSVを取得して標準スキーマに沿って整形するPythonスニペットです。

import requests

import pandas as pd

url = 'https://www.soumu.go.jp/main_content/000323625.csv'

r = requests.get(url)

open('soumu.csv','wb').write(r.content)

df = pd.read_csv('soumu.csv')

列名正規化の例

df.columns = [c.strip().lower().replace(' ','_') for c in df.columns]

日付列があるならパース

if 'date' in df.columns:

df['date'] = pd.to_datetime(df['date'], errors='coerce')

print(df.head())

この程度の処理が自動で回るよう、CIでCSV更新時にスキーマ検証(jsonschema)を走らせるだけで品質は劇的に上がりますよね。

改善提案(エンジニア目線)

  • データカタログ(DCAT)とメタデータの必須化
    • すべての公開データに対してDCAT形式のカタログを用意。データセットの更新日時・ライセンス・スキーマURIを明記。
  • OpenAPI / JSON SchemaでAPIとスキーマを公開
    • APIがあるならOpenAPIで仕様化。これで自動生成クライアントやテストが可能になる。
  • PDFは『報告書』、データはCSV/JSONで二本立て公開
    • もし既存のワークフローでPDFしか出せないなら、PDF生成の前段で同じデータをCSV/JSONでエクスポートするフローを組む。
  • CI/CDによるデータ品質チェック
    • Github ActionsなどでCSVのスキーマ検証、重複チェック、欠損率アラートを自動化。
  • 小自治体向けの共通ライブラリ提供
    • 標準APIクライアント、スキーマ、デプロイ用Terraformモジュールを中央がテンプレートで配布する。デジタル庁や総務省がやっている標準化方針(https://www.digital.go.jp/policies/local_governments)と現場をつなぐ方法です。

    実務上の障壁と対処

    • 人員・予算不足:テンプレート・SaaS型のマネージドAPIで解決。ガバメントクラウド移行後の運用コスト削減の議論も進んでいる(デジタル庁資料参照)。
    • 法的・個人情報:公開前にスキーマで列レベルの公開条件を定義して自動マスキングルールをCIで適用。

    まとめ

    現状は“データはあるけど散らばっている・機械可読性がばらつく”フェーズ。政策は進んでるけど、現場の運用で詰まっている感じです。エンジニア的には「標準スキーマ+API+自動検証パイプライン」で大半が解決する問題が多いですよね。

    おかむーから一言

    테크로 사회를 업그레이드합시다! 표준화와 자동화는 먼 얘기가 아니라 바로 적용 가능한 실무 솔루션입니다. 내가 해봤고, 해보면 됩니다!

    공유하기