{
 "때": "2026-09-06T13:36:05",
 "fail": 0,
 "warn": 0,
 "항목": [
  {
   "관문": "C0",
   "이름": "구분 칸이 아는 값인가",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "계산·인용·해석 중 하나여야 한다 — 대장 24행을 봤다"
  },
  {
   "관문": "C1",
   "이름": "필수 칸이 다 있는가",
   "통과": true,
   "등급": "OK",
   "잼": false,
   "사람": false,
   "한마디": "이 호에는 «인용» 구분의 행이 없어 잴 것이 없었다"
  },
  {
   "관문": "C1",
   "이름": "그 값이 자리표시자가 아닌가",
   "통과": true,
   "등급": "OK",
   "잼": false,
   "사람": false,
   "한마디": "이 호에는 «인용» 구분의 행이 없어 잴 것이 없었다"
  },
  {
   "관문": "C1",
   "이름": "원문확인이 Y 인가",
   "통과": true,
   "등급": "OK",
   "잼": false,
   "사람": false,
   "한마디": "이 호에는 «인용» 구분의 행이 없어 잴 것이 없었다"
  },
  {
   "관문": "C1",
   "이름": "URL 이 주소 형식인가",
   "통과": true,
   "등급": "OK",
   "잼": false,
   "사람": false,
   "한마디": "이 호에는 «인용» 구분의 행이 없어 잴 것이 없었다"
  },
  {
   "관문": "C1",
   "이름": "기준일에 연도가 있는가",
   "통과": true,
   "등급": "OK",
   "잼": false,
   "사람": false,
   "한마디": "이 호에는 «인용» 구분의 행이 없어 잴 것이 없었다"
  },
  {
   "관문": "C2",
   "이름": "N01 1인가구",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "raw:값:구분=합계,연도=2015 → 1026471.0 (허용오차 0.00e+00)"
  },
  {
   "관문": "C2",
   "이름": "N02 1인가구",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "raw:값:연도=2024,구분=합계 → 1775259.0 (허용오차 0.00e+00)"
  },
  {
   "관문": "C2",
   "이름": "N03 1인가구",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "raw:값:연도=2025,구분=합계 → 1822657.0 (허용오차 0.00e+00)"
  },
  {
   "관문": "C2",
   "이름": "N04 증가율",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "expr:100*(N02/N01-1) → 72.9 (허용오차 5.00e-02)"
  },
  {
   "관문": "C2",
   "이름": "N05 증가율",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "expr:100*(N03/N01-1) → 77.6 (허용오차 5.00e-02)"
  },
  {
   "관문": "C2",
   "이름": "N06 1인가구",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "raw:값:연도=2015,구분=20~29세 → 149561.0 (허용오차 0.00e+00)"
  },
  {
   "관문": "C2",
   "이름": "N07 1인가구",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "raw:값:연도=2022,구분=20~29세 → 273818.0 (허용오차 0.00e+00)"
  },
  {
   "관문": "C2",
   "이름": "N08 1인가구",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "raw:값:연도=2025,구분=20~29세 → 253926.0 (허용오차 0.00e+00)"
  },
  {
   "관문": "C2",
   "이름": "N09 정점대비감소",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "expr:N07-N08 → 19892.0 (허용오차 5.00e-02)"
  },
  {
   "관문": "C2",
   "이름": "N10 정점대비감소율",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "expr:100*(N08/N07-1) → -7.3 (허용오차 5.00e-02)"
  },
  {
   "관문": "C2",
   "이름": "N12 1인가구",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "raw:값:연도=2015,구분=65세이상 → 195059.0 (허용오차 0.00e+00)"
  },
  {
   "관문": "C2",
   "이름": "N13 1인가구",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "raw:값:연도=2025,구분=65세이상 → 484832.0 (허용오차 0.00e+00)"
  },
  {
   "관문": "C2",
   "이름": "N14 증가율",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "expr:100*(N13/N12-1) → 148.6 (허용오차 5.00e-02)"
  },
  {
   "관문": "C2",
   "이름": "N16 1인가구",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "raw:값:연도=2025,구분=30~34세 → 214032.0 (허용오차 0.00e+00)"
  },
  {
   "관문": "C2",
   "이름": "N17 증가율",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "expr:100*(N16/N19-1) → 80.8 (허용오차 5.00e-02)"
  },
  {
   "관문": "C2",
   "이름": "N18 정점대비감소율절댓값",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "expr:-1*N10 → 7.3 (허용오차 5.00e-02)"
  },
  {
   "관문": "C2",
   "이름": "N19 1인가구",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "raw:값:연도=2015,구분=30~34세 → 118409.0 (허용오차 0.00e+00)"
  },
  {
   "관문": "C2",
   "이름": "N20 1인가구",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "raw:값:연도=2017,구분=30~34세 → 114390.0 (허용오차 0.00e+00)"
  },
  {
   "관문": "C2",
   "이름": "N21 증가율",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "expr:100*(N16/N20-1) → 87.11 (허용오차 5.00e-03)"
  },
  {
   "관문": "C2",
   "이름": "N22 기준연도흔들림",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "expr:N21-N17 → 6.31 (허용오차 5.00e-03)"
  },
  {
   "관문": "C2",
   "이름": "N23 1인가구",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "raw:값:연도=2023,구분=20~29세 → 267856.0 (허용오차 0.00e+00)"
  },
  {
   "관문": "C2",
   "이름": "N24 1인가구",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "raw:값:연도=2024,구분=20~29세 → 264003.0 (허용오차 0.00e+00)"
  },
  {
   "관문": "C2",
   "이름": "파생값이 원자료에서 다시 계산되는가",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "22건 일치 · 0건은 다시 계산할 수 없었다"
  },
  {
   "관문": "C3",
   "이름": "값이 어긋나는 곳을 정의로 구분하고 본문에 병기했는가",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "대장 24행에서 그런 곳이 없었다"
  },
  {
   "관문": "C4",
   "이름": "본문 수치가 모두 대장에 있는가",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "통계성 수치 37개를 봤다"
  },
  {
   "관문": "C4",
   "이름": "「무시목록」으로 건너뛴 수치가 없는가",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "무시목록을 쓰지 않았다"
  },
  {
   "관문": "C5",
   "이름": "해석 주장에 유보 표현이 붙었는가",
   "통과": true,
   "등급": "OK",
   "잼": false,
   "사람": false,
   "한마디": "이 호에는 «해석» 구분의 행이 없어 잴 것이 없었다"
  },
  {
   "관문": "C6",
   "이름": "강조 태그가 글자로 새어 나가지 않았는가",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "`<b>` 가 본문에 글자로 찍히는 것 (B03 이 그렇게 발행됐다)"
  },
  {
   "관문": "C6",
   "이름": "자리표시자가 다 채워졌는가",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "`{N04}` 같은 것이 안 채워진 채 나가는 것"
  },
  {
   "관문": "C6",
   "이름": "본문이 비어 있지 않은가",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "400자 미만이면 빌드가 덜 된 것으로 본다"
  },
  {
   "관문": "C6",
   "이름": "viewport 메타가 있는가",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "없으면 폰에서 데스크톱 너비로 그려진다"
  },
  {
   "관문": "C6",
   "이름": "doctype 과 html lang 이 있는가",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "없으면 쿼크 모드 · 스크린리더가 언어를 못 정한다"
  },
  {
   "관문": "C6",
   "이름": "수치 표기가 안 깨졌는가",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "대장 값은 정수인데 본문에 「11,937,415.0명」처럼 나가는 것"
  },
  {
   "관문": "C6",
   "이름": "canonical·구조화 데이터가 있는가",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "없어도 발행은 막지 않는다(WARN) — 검색·공유에서 손해"
  },
  {
   "관문": "C7",
   "이름": "대장 값을 KOSIS 에 다시 물어 맞췄는가",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "12건 일치 — 대장 24행 중 출처식이 적힌 것은 12행"
  },
  {
   "관문": "C8",
   "이름": "선언 1〔크기〕",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "근거 3개 · 역할 「None」 을 갖췄다 (N01, N03, N05)"
  },
  {
   "관문": "C8",
   "이름": "선언 2〔크기〕",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "근거 6개 · 역할 「None」 을 갖췄다 (N07, N23, N24, N08, N09, N18)"
  },
  {
   "관문": "C9",
   "이름": "N04 증가율",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "분모를 파생식 안의 대장 행으로 짚는다 (N01, N02)"
  },
  {
   "관문": "C9",
   "이름": "N05 증가율",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "분모를 파생식 안의 대장 행으로 짚는다 (N01, N03)"
  },
  {
   "관문": "C9",
   "이름": "N10 정점대비감소율",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "분모를 파생식 안의 대장 행으로 짚는다 (N07, N08)"
  },
  {
   "관문": "C9",
   "이름": "N14 증가율",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "분모를 파생식 안의 대장 행으로 짚는다 (N12, N13)"
  },
  {
   "관문": "C9",
   "이름": "N17 증가율",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "분모를 파생식 안의 대장 행으로 짚는다 (N16, N19)"
  },
  {
   "관문": "C9",
   "이름": "N18 정점대비감소율절댓값",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "분모를 파생식 안의 대장 행으로 짚는다 (N10)"
  },
  {
   "관문": "C9",
   "이름": "N21 증가율",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "분모를 파생식 안의 대장 행으로 짚는다 (N16, N20)"
  },
  {
   "관문": "C9",
   "이름": "N22 기준연도흔들림",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "분모를 파생식 안의 대장 행으로 짚는다 (N17, N21)"
  },
  {
   "관문": "C10",
   "이름": "검증 1〔결론을 좁혔다〕",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "크기를 값으로 댔다 (N17, N19, N20, N21, N22)"
  },
  {
   "관문": "C10",
   "이름": "검증 2〔결론이 선다〕",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "크기를 값으로 댔다 (N07, N23, N24, N08, N09, N18)"
  },
  {
   "관문": "C10",
   "이름": "검증 3〔말하지 않는다〕",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "「말하지 않는다」 — 값을 안 대는 대신 그렇다고 적었다"
  },
  {
   "관문": "C10",
   "이름": "검증 4〔말하지 않는다〕",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "「말하지 않는다」 — 값을 안 대는 대신 그렇다고 적었다"
  },
  {
   "관문": "C10",
   "이름": "검증 5〔말하지 않는다〕",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "「말하지 않는다」 — 값을 안 대는 대신 그렇다고 적었다"
  },
  {
   "관문": "C10",
   "이름": "한계 문단 ↔ 검증 수",
   "통과": true,
   "등급": "OK",
   "잼": false,
   "사람": false,
   "한마디": "한계 문단에서 항목을 못 셌다 — 검증 5건만 본다"
  },
  {
   "관문": "C11",
   "이름": "「살기 시작」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C11",
   "이름": "「하기 시작했」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C11",
   "이름": "「독립했」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C11",
   "이름": "「독립하기」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C11",
   "이름": "「이사했」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C11",
   "이름": "「이사 왔」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C11",
   "이름": "「이사왔」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C11",
   "이름": "「이사 갔」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C11",
   "이름": "「이사갔」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C11",
   "이름": "「옮겨 갔」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C11",
   "이름": "「옮겨갔」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C11",
   "이름": "「빠져나갔」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C11",
   "이름": "「빠져나간」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C11",
   "이름": "「떠났」",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "본문에 없다"
  },
  {
   "관문": "C12",
   "이름": "원자료가 호 폴더 안에 있습니다",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "원자료가 호 폴더 안에 있습니다 — 중간층이 없어 해당 없음"
  },
  {
   "관문": "C13",
   "이름": "「이유는」 B02 가 이 전환을 놓친 이유는 방법에 있다.",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": true,
   "한마디": "사람이 봄 — 근거있음: ★ 처음에 「우리 방법 이야기니 오탐」으로 봤으나 적대적 교차검토에서 codex·DeepSeek 이 둘 다 뒤집었고 그게 맞다. 「두 시점만 비교해서 놓쳤다」는 «자료로 검증 가능한 명제»다 — N06(2015 149,561) → N07(2022 정점 273,818) → N23(2023) → N24(2024) → N08(2025 253,926) 이 두 끝점만으로는 안 보이는 모양을 실제로 보여 준다. · 근거 N06·N07·N08·N23·N24"
  },
  {
   "관문": "C13",
   "이름": "「이유는」 중간 두 해를 대장에 올린 이유는 「3년 연속」이라는 말이 «세 번 잰 ",
   "통과": true,
   "등급": "OK",
   "잼": true,
   "사람": false,
   "한마디": "(라) 집필 선택"
  }
 ],
 "줄": [
  {
   "등급": "OK",
   "관문": "C0",
   "말": "구분 값 이상 없음 (계산·인용·해석)"
  },
  {
   "등급": "OK",
   "관문": "C1",
   "말": "인용행 메타 이상 없음 (원문위치·URL·기준일까지 확인)"
  },
  {
   "등급": "OK",
   "관문": "C2",
   "말": "파생값 22건 원자료와 일치"
  },
  {
   "등급": "OK",
   "관문": "C3",
   "말": "같은 지표·대상의 값 충돌 없음"
  },
  {
   "등급": "OK",
   "관문": "C4",
   "말": "본문 통계 수치가 모두 대장에 등록됨"
  },
  {
   "등급": "OK",
   "관문": "C5",
   "말": "해석 주장에 유보 표현이 붙어 있음"
  },
  {
   "등급": "OK",
   "관문": "C6",
   "말": "렌더링 이상 없음 (태그 유출·자리표시자·본문량·viewport·문서구조)"
  },
  {
   "등급": "OK",
   "관문": "C7",
   "말": "N01 1인가구: 대장 1,026,471.0 = KOSIS 재조회 1,026,471.0 (셀 1개)"
  },
  {
   "등급": "OK",
   "관문": "C7",
   "말": "N03 1인가구: 대장 1,822,657.0 = KOSIS 재조회 1,822,657.0 (셀 1개)"
  },
  {
   "등급": "OK",
   "관문": "C7",
   "말": "N06 1인가구: 대장 149,561.0 = KOSIS 재조회 149,561.0 (셀 2개)"
  },
  {
   "등급": "OK",
   "관문": "C7",
   "말": "N07 1인가구: 대장 273,818.0 = KOSIS 재조회 273,818.0 (셀 2개)"
  },
  {
   "등급": "OK",
   "관문": "C7",
   "말": "N08 1인가구: 대장 253,926.0 = KOSIS 재조회 253,926.0 (셀 2개)"
  },
  {
   "등급": "OK",
   "관문": "C7",
   "말": "N12 1인가구: 대장 195,059.0 = KOSIS 재조회 195,059.0 (셀 5개)"
  },
  {
   "등급": "OK",
   "관문": "C7",
   "말": "N13 1인가구: 대장 484,832.0 = KOSIS 재조회 484,832.0 (셀 5개)"
  },
  {
   "등급": "OK",
   "관문": "C7",
   "말": "N16 1인가구: 대장 214,032.0 = KOSIS 재조회 214,032.0 (셀 1개)"
  },
  {
   "등급": "OK",
   "관문": "C7",
   "말": "N19 1인가구: 대장 118,409.0 = KOSIS 재조회 118,409.0 (셀 1개)"
  },
  {
   "등급": "OK",
   "관문": "C7",
   "말": "N20 1인가구: 대장 114,390.0 = KOSIS 재조회 114,390.0 (셀 1개)"
  },
  {
   "등급": "OK",
   "관문": "C7",
   "말": "N23 1인가구: 대장 267,856.0 = KOSIS 재조회 267,856.0 (셀 2개)"
  },
  {
   "등급": "OK",
   "관문": "C7",
   "말": "N24 1인가구: 대장 264,003.0 = KOSIS 재조회 264,003.0 (셀 2개)"
  },
  {
   "등급": "OK",
   "관문": "C7",
   "말": "원본 재조회 12건 일치 (대장 24행 중 출처식 12행)"
  },
  {
   "등급": "OK",
   "관문": "C8",
   "말": "주장 2건이 모두 계산으로 받쳐집니다 (역할이 붙은 근거 0개)"
  },
  {
   "등급": "OK",
   "관문": "C9",
   "말": "비율성 행 8건이 모두 분모를 짚습니다"
  },
  {
   "등급": "OK",
   "관문": "C10",
   "말": "한계 5건이 모두 값 또는 이유를 갖췄습니다 · 값을 댄 것 2건 · 「말하지 않는다」 3건"
  },
  {
   "등급": "OK",
   "관문": "C11",
   "말": "개인 수준 전이 주장 없음 (낱말 14개 · 인용부호 안과 부정문은 세지 않음)"
  },
  {
   "등급": "OK",
   "관문": "C12",
   "말": "원자료가 호 폴더 안에 있습니다 — 중간층이 없어 해당 없음"
  },
  {
   "등급": "OK",
   "관문": "C13",
   "말": "사람이 본 인과 1건 — 「이유는」 근거있음"
  },
  {
   "등급": "OK",
   "관문": "C13",
   "말": "인과 표현 2건이 모두 근거를 짚거나 유보를 선언합니다 (변수 13개와 대조)"
  }
 ]
}