{
  "provenance_version": "food-map-provenance-v1",
  "snapshot_id": "mfds-kfind-food-2025-12-29-v1",
  "coordinate_source": {
    "provider": "식품의약품안전처",
    "dataset_name": "식품영양성분DB정보 / K-FIND 음식 DB",
    "data_go_dataset_id": "15127578",
    "data_go_metadata_url": "https://www.data.go.kr/data/15127578/openapi.do",
    "kfind_download_index_url": "https://various.foodsafetykorea.go.kr/nutrient/general/down/historyList.do",
    "kfind_release_id": "K-FCDB-FOOD-2025-12-29",
    "kfind_db_sequence": "1767073014252",
    "release_version": "2025-12-29",
    "data_basis_at": "2025-12-29",
    "license": "이용허락범위 제한 없음"
  },
  "acquisition": {
    "fetched_at": "2026-07-28T18:34:14+09:00",
    "request_method": "GET",
    "release_detail_endpoint": "https://various.foodsafetykorea.go.kr/nutrient/export/down/filePop.do",
    "release_detail_parameters": {
      "searchDbSeq": "1767073014252",
      "searchDbGubun": "02"
    },
    "binary_endpoint": "https://various.foodsafetykorea.go.kr/nutrient/multi/file/download.do",
    "binary_parameter_note": "filePop 응답이 그 시점에 발급한 file key를 그대로 사용했으며 저장소에는 일회성 key를 보존하지 않음",
    "response_headers": {
      "date": "Tue, 28 Jul 2026 09:34:14 GMT",
      "content_type": "application/download;charset=utf-8",
      "content_disposition": "attachment;filename=\"20251229_음식DB 19495건.xlsx\"",
      "content_length": 11903812
    }
  },
  "source_file": {
    "file_name": "20251229_음식DB 19495건.xlsx",
    "sheet_name": "20251229_음식DB_19,495건",
    "row_count_excluding_header": 19495,
    "column_count": 160,
    "sha256": "442e13d4bb4fb01755a28b418742e5cbc9af44e566ba6370502e3ccac215868c"
  },
  "selection_and_transform": {
    "raw_extract_rows": 60,
    "normalized_rows": 60,
    "layer_quota": "10개 층 × 6행",
    "required_data_type": "음식",
    "required_generation_method": "분석",
    "brand_or_franchise_rows": 0,
    "missing_required_values": 0,
    "missing_value_imputations": 0,
    "representative_food_code_duplicates": 0,
    "gram_to_milliliter_conversions": 0,
    "milliliter_to_gram_conversions": 0,
    "source_dataset_ids": [
      "15127578"
    ],
    "coordinate_formula_x": "나트륨(mg) × 식품중량 ÷ 영양성분함량기준량",
    "coordinate_formula_y": "포화지방산(g) × 9 kcal/g ÷ 에너지(kcal) × 100",
    "transform_version": "food-map-transform-v1"
  },
  "kfind_detail_cross_check": {
    "checked_at": "2026-07-28T18:40:00+09:00",
    "checked_fields": [
      "식품명",
      "식품중량",
      "영양성분함량기준량",
      "에너지",
      "나트륨",
      "포화지방산",
      "데이터생성방법",
      "데이터생성일자"
    ],
    "matched_rows": 10,
    "food_codes": [
      "D101-007000000-0001",
      "D103-148000000-0001",
      "D105-245000000-0001",
      "D106-275000000-0001",
      "D107-317120000-0001",
      "D108-357110000-0001",
      "D110-465000000-0001",
      "D109-412000000-0001",
      "D113-586000000-0001",
      "D315-670000000-0001"
    ],
    "result": "10행 모두 동결 XLSX의 표시 분량·기준량·필수 영양값·생성방법·생성일자와 현재 K-FIND 상세 화면이 일치",
    "live_detail_data_basis_at": "2026-06-04",
    "version_note": "현재 상세 화면의 기준일은 동결 파일보다 새롭다. 좌표에는 현재 화면 값을 섞지 않고 2025-12-29 다운로드 릴리스만 사용한다."
  },
  "artifact_sha256": {
    "food-map.raw.json": "c5f6d9732115ed5b67befb42d282f3b3c16d79c2d51b601693733377c7f78848",
    "food-map.manifest.json": "3d95fa49cb7a8c43eb335b1d9d385f113517e350dea89c89b023b5fad33641bd",
    "food-map.snapshot.json": "dba5dd83b4c80d68d5380bf88ad4dfb395d81cbc81622372cad2f9a0ca4681f6"
  }
}
