コードで語るマニフェスト:日本の自治体データはAPI一本で変わるか?

안녕하세요~ 오카무입니다! 오늘은 일본 정부·지자체가 공개하는 데이터와 시스템을 엔지니어 관점에서 까발려보려 합니다. 코드를 좋아하는 사람이라면 공공 데이터가 어떻게 더 잘 쓰일 수 있는지 궁금하실 텐데요, 이번 기사에서는 실제 공개 소스(정부 CSV, 플랫폼)를 직접 보고 기계가 읽기 좋은 데이터로 개선할 제안까지 합니다!
- 요약 3줄
- API·표준 스키마·메타데이터 부재가 재사용을 가로막음
- 엔지니어링 관점에서 실용적 개선(CSV→JSON API, データパッケージ, CI 검증)을 제안
結論
정부·지자체의 정책은 수치로 말해야 하고, 엔지니어 관점에선 "API一本で解決"인 경우가 많습니다. 당장이라도 표준화된 머신リーダブルフォーマット과 간단한REST API, 자동검증 파이프라인을 도입하면 재현 가능성·KPI 검증·市民活用이 비약적으로 향상됩니다.
레포트 본문
현재 상태(데이터 소스 사례)
이거 보세요! 정부가 공개한 CSV 파일이나 플랫폼을 보면 패턴이 보입니다:
- notice.go.jp의 https://notice.go.jp/docs/status_notice.csv 는 CSV로 공개되어 있으나 컬럼명·エンコーディング 표준이 설명되어 있지 않음
- digital.go.jp 에서 병원 목록 CSV(예: xxxxxx_hospital.csv) 같은 원자료는 제공하지만, 메타데이터(更新日時, スキーマバージョン)가 부족
- RAIDA(https://raida.go.jp/) 같은 플랫폼은 사례 조회에 좋지만, API가 잘 정비되어 있지 않아 자동화가 어려움
- デジタル田園都市交付金 관련 가이드(https://www.chisou.go.jp/)는 KPI를 요구하지만, KPI 실적 데이터는 PDF·報告書에 묻혀 있어 기계가 비교·검証하기 어려움
문제 요약:
- PDF 우선 공개 및 CSV여도 문자 인코딩(Shift_JIS/UTF-8) 혼재
- 스키마·メタ데ータ 미흡(説明書がない、カラム意味不明)
- 버ージョン링크·タイムスタンプ 미존재 → 데이터 이력 추적 불가
- API 부재 또는 비표준レスポンス
엔지니어적 진단
에러가 나는 원인은 단순합니다: 구조화가 안 돼 있어요. 엔지니어적으론 아래가 필요합니다:
- 기계가 읽을 수 있는 포맷(JSON/CSV/GeoJSON) + 스키마(JSON Schema)
- データパッケージ(Frictiionless Data)로 메타데이터 포함
- API 한 줄로 가져올 수 있는 엔드포인트(REST/GraphQL)
- CI로 데이터 품질 검증(스키마 검증, null·型チェック、ジオコーディング整合性)
코드 예시(간단한 가져오기와 스키마 검사)
다음은 curl과 Python(pandas + jsonschema)로 CSV를 가져와 기본 스키마를 확인하는 예시입니다. 코드 쓰는 사람은 알죠, API 한 줄이면 해결된다는 걸!
curl -o status_notice.csv https://notice.go.jp/docs/status_notice.csv
import pandas as pd
from jsonschema import validate
df = pd.read_csv('status_notice.csv', encoding='utf-8')
간단 스키마 예
schema = {
'type': 'object',
'properties': {
'notice_id': {'type': 'integer'},
'title': {'type': 'string'},
'date': {'type': 'string', 'format': 'date'}
},
'required': ['notice_id','title','date']
}
레코드 단위로 검증
for rec in df.to_dict(orient='records'):
validate(rec, schema)
정책数値目標と実績のギャップ分析(手順例)
이 과정에서 가장時間を食うのが「データを機械可読化する作業」です。だから最初からAPIとストラクチャードデータで公開しておくのが大事なんです!
개선提案(実装ロードマップ)
- 단기(3개월): 모든 신규公開データ에 대해 UTF-8 CSV + JSON Schema 제공
- 중기(6-12ヶ月): REST API(エンドポイント 단순화), ページング·メタ데ータ 포함
- 장기(1년+): データカタログ(DCAT), OAI-PMH/CKAN 도입, 오픈データCI 파이프라인 구축
実践的なツール:
- Frictionless Data / datapackage.json
- jsonschema + pytest로 품질 검증
- GitHub Actions로 데이터パイプラインCI
- GeoJSON + turf.js로 지리空間検証
まとめ
- 공개 데이터의 가치 대부분은 "再利用のしやすさ"에 달려 있음
- PDF에서 CSV로, CSV에서 표준스키마·API로의 점진적 전환이 현실적인 해법
- エンジニア視点の小さな改善(エンコーディング統一、メタデータ付与、スキーマ公開)で政策評価の透明性が劇的に上がる
おかむーから一言
테크로 사회를 바꾸는 건 복잡하지 않아요. 작은 API 하나, 명확한 스키마 하나가 정책을 살아 움직이게 만듭니다. 실천해봅시다!
정보 출처
- https://www.zhihu.com/question/290714454
- https://metidx-gov.note.jp/n/n9468573c213b
- https://www.zhihu.com/question/6430289390
- https://zenn.dev/govtechtokyo/articles/b65dc687e50918
- https://www.zhihu.com/question/38923279
- https://ja.wikipedia.org/wiki/%E3%83%87%E3%82%B8%E3%82%BF%E3%83%AB
- https://raida.go.jp/
- https://www.chisou.go.jp/sousei/pdf/r5_guideline-checkaction.pdf
- https://www.digital.go.jp/
- https://www.chisou.go.jp/sousei/about/mirai/policy/policy1.html
- 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.jinji.go.jp/content/900024615.csv
- https://www5.cao.go.jp/j-j/wp/wp-je24/csv/d1-1-42.csv
공유하기
관련 리포트

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

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

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