コードで語るマニフェスト:自治体オープンデータを技術で検証する

どうも〜おかむーです!今日はちょっとエンジニアっぽい話をしますよ〜
- 오픈데이터, PDF 지옥에서 CSV·API로 바꾸는 게 핵심이다
- 표준·클라우드·UX가 맞물려야 시민이 실제로 데이터를 쓸 수 있다
- 개선안은 기술 스택·거버넌스·계량지표까지 세트로 제안한다
結論
이 글의 핵심은 단순합니다: 행정이 "데이터를 공개했다"는 사실만으로는 충분하지 않다! PDF에 갇힌 통계, 비표준 포맷, API 부재는 재사용을 막는 진짜 장벽이에요. 엔지니어적으로 말하면 "머신 리더블 + 명세화된 API + 자동화된 데이터 파이프라인"이 없으면 실용적 오픈데이터가 아니다. 총무성(https://www.soumu.go.jp/)과 디지털청(https://www.digital.go.jp/)의 정책방향은 맞는데, 현장 적용에서 파일 포맷·운영요건·UX가 따르지 못하는 경우가多いんですよね〜
레포트 본문
현재상태: 무엇이 문제인가
これ見てくださいよ。総務省のオープンデータ推進資料(https://www.soumu.go.jp/menu_seisaku/ictseisaku/ictriyou/opendata/)やデジタル庁の事例(https://www.digital.go.jp/resources/data_case_study_private)を見れば方針は出てるんですけど、現場の公開はPDF・表組み画像が多い。要するに、機械が読めない形で公開されてるってことです。
具体的に問題点を技術的に整理すると:
- PDFや散在するExcel: 테이블 추출이 불안정해서 데이터 파이프라인을 만들기 어려움
- スキーマ不在: カラム名・単位・更新頻度が明示されない
- API未整備またはドキュメント不十分: 認証方式やレスポンス仕様がバラバラ
- 地理情報の非標準化: GeoJSON/GMLではなく座標をばらばらに持っているケース
- ライセンス曖昧: 二次利用ルールが明確でない
データ品質・ガバナンスのチェックリスト(エンジニア視点)
- 機械可読性: CSV/JSON/GeoJSONがあるか
- API: REST/GraphQLの有無、OpenAPI仕様の提供
- メタデータ: スキーマ、更新日時、担当部署、ライセンス
- ID: 各エンティティに永続IDが振られているか
- テスト: データ検証(型、レンジ、欠損)を自動化しているか
実例コード: PDFテーブル vs CSV
まずはPDFに埋まってるテーブルをスクレイピングしてCSVに変える簡単な例。コード書く人ならわかると思うんですけど、タスクは2段階です: 抽出 → 正規化。
# tabula-pyを使う例(Javaが必要です)
import tabula
import pandas as pd
PDFからテーブルを抽出してDataFrameに
dfs = tabula.read_pdf('municipal_report.pdf', pages='all', multiple_tables=True)
単純にconcatして整形
df = pd.concat(dfs, ignore_index=True)
カラム名・単位を正規化
df.columns = ['facility_id', 'name', 'lat', 'lon', 'count']
CSVに保存
df.to_csv('municipal_facilities.csv', index=False)
でも正直、これは脆弱です。ページレイアウトが変わると壊れます。だから理想は最初からCSV/JSONで公開してもらうことなんですよね〜
APIの理想設計(ミニ提案)
- エンドポイント例: GET /api/v1/facilities?bbox=lngmin,latmin,lngmax,latmax
- レスポンス: JSON+GeoJSONフィーチャーコレクション
- ドキュメント: OpenAPI 3.0 を提供、サンプルクエリを明記
- 認証: 公開データは無認証でOK、アクセス制限が要る場合はAPIキー
curlで呼ぶ例:
curl "https://data.city.example.gov/api/v1/facilities?city=tokyo" -H "Accept: application/json"
データパイプラインとCI
運用面ではこういう仕組みが必要です:
- ETL自動化: GitOpsスタイルでデータパイプラインをコード化(Airflow / Prefect)
- バリデーション: Great Expectationsでスキーマ検証をCIに組み込む
- リリース: CSV/JSONをデータポータル(CKAN等)に自動登録
- モニタ: 更新失敗・異常をSlackやOpsチームに通知
標準化とクラウド移行の意義
地方自治体の基幹業務システム標準化・ガバメントクラウド移行は重要課題です(参考: デジタル庁資料 https://www.digital.go.jp/policies/local_governments)。
要するに、レガシー分散を放置するとデータ設計もバラバラで、API一本統合しても下流の整備が追いつかないんですよね。クラウド移行で得られる利点:
- 共通の運用基盤でCI/CDやログ収集を統一
- 標準ミドルウェアでセキュリティ・バックアップを簡素化
- データレイク/カタログで検索性を向上
ただし移行は技術だけじゃなく、人と契約・SLAの設計が鍵です。
政策目標 vs 実績のギャップ分析(例)
政策として「2025年までに主要データを機械可読で公開」といった目標が出ることがあります(計画値)。でも現場の公開状況をランダムサンプリングしてみると、公開率は目標を下回るケースが多い。原因は:
- 工数の見積り不足(PDF→機械可読化は想像以上に手間)
- 担当者のスキル不足(データモデリング経験がない)
- 法務・権利関係で公開を渋るケース
定量化するには、公開データの「機械可読率」「API提供率」「更新頻度準拠率」をKPI化して月次で公開するのが良いです。
UX와 시민 활용성
データがあるだけじゃダメで、サービスへの繋ぎ込み(位置情報検索、洪水リスク可視化など)が重要。METIやデジタル庁のUI/UXガイドラインを参考に、使いやすい検索UIとAPIサンプルを同梱すると採用率が上がります(参考: https://www.digital.go.jp/policies/servicedesign/government-system-ui)。
実装優先度リスト(短期〜中期)
まとめ
正直、ここは改善の余地ありまくりだと思ってます!オープンデータは単に公開するだけじゃ意味がない。エンジニア的に言うと、API一本で解決する話なんですよね、でもその前段でスキーマ設計、データ品質、運用自動化が必要。総務省やデジタル庁の方針はあるけど、現場適用のためのツールとスキル、そして計測指標をセットで整備することが最重要です。
おかむーから一言
テクノロジーで行政をアップデートするのは夢じゃないです。小さなCSV一枚が、市民の利便性を劇的に変える。まずは一つ、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_private
- https://kotobank.jp/word/%E5%85%AC%E5%85%B1-494676
- https://www.keiba.go.jp/
- https://www.digital.go.jp/policies/local_governments
- https://www.keiba.go.jp/KeibaWeb/TodayRaceInfo/TodayRaceInfoTop
- https://www.soumu.go.jp/menu_seisaku/chiho/jichitaijoho_system/index.html
- https://www.keiba.go.jp/live/
- https://metidx-gov.note.jp/n/n9468573c213b
- https://www.digital.go.jp/policies/servicedesign/government-system-ui
- https://zenn.dev/govtechtokyo/articles/b65dc687e50918
- https://picks-design.com/blog/5751/
- https://www.meti.go.jp/meti_lib/report/2024FY/000072.pdf
공유하기
관련 리포트

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

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

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