[
  {
    "table": "catch",
    "field": "YEAR",
    "type": "nullable number",
    "description": "Survey year",
    "unit": "year",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "YEAR DATA COLLECTED",
      "description": "Year (4-digit) ",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "WAVE",
    "type": "nullable numeric code",
    "description": "Two-month sampling wave, 1 to 6",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "WAVE OF DATA",
      "description": "Two-month sampling period\n1 = January/February\n2 = March/April\n3 = May/June\n4 = July/August\n5 = September/October\n6 = November/December",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "ST",
    "type": "nullable numeric code",
    "description": "State FIPS code for fishing geography",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "STATE OF INTERCEPT",
      "description": "FIPS code for state of intercept",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "MODE_FX",
    "type": "nullable numeric code",
    "description": "Collapsed fishing mode",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "MODE OF FISHING  (FISHERMAN COLLAPSED)",
      "description": "Collapsed fishing mode code \n1=Man-Made\n2=Beach/Bank\n3=Shore\n4=Headboat\n5=Charter Boat (sub_reg=6 or 7 & mode_f=7)\n7=Private/Rental Boat",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "AREA_X",
    "type": "nullable numeric code",
    "description": "Collapsed fishing area",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "COLLAPSED AREA OF FISHING",
      "description": " Collapsed area of fishing \n1 = Ocean <= 3 mi (all but WFL) \n2 = Ocean > 3 mi (all but WFL) \n3 = Ocean <= 10 mi (WFL only) \n4 = Ocean > 10 mi (WFL only) \n5 = Inland",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "SP_CODE",
    "type": "nullable numeric code",
    "description": "NOAA fish species code",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "SPECIES OF FISH",
      "description": "Species code of fish",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "CLAIM",
    "type": "nullable number",
    "description": "Observed harvested catch (type A)",
    "unit": "fish count",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "OBSERVED HARVEST (A)",
      "description": "Count of fish that were caught, landed whole, and available for identification to species and enumeration by the interviewer.  These fish were available for weighing and measuring. \n\nSome values have been adjusted to account for (depending on mode of fishing) incomplete shore trips and grouped catch. Compare to CLAIM_UNADJ to see if counts were adjusted.",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "RELEASE",
    "type": "nullable number",
    "description": "Reported live releases (type B2)",
    "unit": "fish count",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "RELEASED FISH(B2)",
      "description": "Number of fish that were caught and released alive.\n\nSome values have been adjusted to account for (depending on mode of fishing) incomplete shore trips. Compare to RELEASE_UNADJ to see if counts were adjusted.",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "HARVEST",
    "type": "nullable number",
    "description": "Reported harvested catch unavailable whole for inspection (type B1)",
    "unit": "fish count",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "REPORTED HARVEST (B1)",
      "description": "Number of fish that were caught, not released live, but not available in whole form for examination, identification, or enumeration.  They are all dead, and may be filleted, released dead, given away, or used for some other purpose but are not available for identification to species and counting.\n\nSome values have been adjusted to account for (depending on mode of fishing) incomplete shore trips. Compare to HARVEST_UNADJ to see if counts were adjusted.",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "TOT_CAT",
    "type": "nullable number",
    "description": "Total catch across catch types",
    "unit": "fish count",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "TOTAL CATCH(A+B1+B2)",
      "description": "The number of fish caught but not necessarily brought ashore.  May be obtained by summing catch types A (CLAIM), B1 (HARVEST), and B2 (RELEASE).",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "LANDING",
    "type": "nullable number",
    "description": "Landed catch",
    "unit": "fish count",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "HARVEST (A+B1)",
      "description": "The total number of fish removed from the fishery resource.  May be obtained by summing catch types A (CLAIM) and B1 (HARVEST).",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "WGT_A",
    "type": "nullable number",
    "description": "Weight for type A catch",
    "unit": "kilograms",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "TOTAL WEIGHT(A,KG)",
      "description": "Total weight (kg) of all Observed Harvest (CLAIM, A) by species on trip.",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "WGT_B1",
    "type": "nullable number",
    "description": "Weight for type B1 catch",
    "unit": "kilograms",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "TOTAL WEIGHT(B1,KG)",
      "description": "Total weight (kg) of all Reported Harvest (HARVEST, B1) by species on trip.",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "WGT_AB1",
    "type": "nullable number",
    "description": "Weight for types A and B1",
    "unit": "kilograms",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "TOTAL WEIGHT(A+B1,KG)",
      "description": "Total weight (kg) of all fish removed from the fishery resource (LANDING, A+B1) by species on trip.",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "TOT_LEN_A",
    "type": "nullable number",
    "description": "Length sum for type A catch",
    "unit": "millimeters",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "TOTAL LENGTH(A,MM)",
      "description": "Total Fork (centerline) length of fish (mm) for all Observed Harvest (CLAIM, A) by species on trip.",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "TOT_LEN_B1",
    "type": "nullable number",
    "description": "Length sum for type B1 catch",
    "unit": "millimeters",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "TOTAL LENGTH(B1,MM)",
      "description": "Total Fork (centerline) length of fish (mm) for all Reported Harvest (HARVEST, B1) by species on trip.",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "TOT_LEN",
    "type": "nullable number",
    "description": "Catch length total",
    "unit": "millimeters",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "TOTAL LENGTH(A+B1,MM)",
      "description": "Total Fork (centerline) length of fish (mm) for all landings (A+B1) by species on trip.",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "WP_CATCH",
    "type": "nullable number",
    "description": "Source post-stratified catch sampling weight",
    "unit": "survey weight",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "SAMPLE WEIGHT",
      "description": "Survey design sampling weight for CATCH datasets; wp_catch should only be used to weight records in CATCH datasets.  Should be specified in any survey procedure, using the CATCH datasets, for appropriate point estimate calculation and variance estimations.  \n\n** NOTE: WP_INT is still included in CATCH datasets for backwards compatibility.  WP_CATCH equals WP_INT for all records except those in specific STATE,MODE_FX,YEAR combinations with small sample size issues.",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "ALT_FLAG",
    "type": "nullable numeric code",
    "description": "Alternate estimation flag: 1 means annual level estimation for small-sample combinations",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "ALTERNATE ESTIMATION FLAG",
      "description": "(0 .) = Sample weights produced from standard 2-month wave level estimation;\n\n1 = Sample weights produced from annual level estimation used to address small sample size issue in the specific ST,MODE_FX,YEAR combination;",
      "source_sheet": "CATCH_CAL2026"
    }
  },
  {
    "table": "catch",
    "field": "record_count",
    "type": "positive integer",
    "description": "Number of retained source observations with this identical normalized feature vector. This is multiplicity, not a survey expansion weight.",
    "unit": "source observations",
    "missing": "never missing"
  },
  {
    "table": "trips",
    "field": "YEAR",
    "type": "nullable number",
    "description": "Survey year",
    "unit": "year",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "YEAR DATA COLLECTED",
      "description": "Year (4-digit) ",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "WAVE",
    "type": "nullable numeric code",
    "description": "Two-month sampling wave, 1 to 6",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "WAVE OF DATA",
      "description": "Two-month sampling period\n1 = January/February\n2 = March/April\n3 = May/June\n4 = July/August\n5 = September/October\n6 = November/December",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "ST",
    "type": "nullable numeric code",
    "description": "State FIPS code for fishing geography",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "STATE OF INTERCEPT",
      "description": "FIPS code for state of intercept",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "MODE_FX",
    "type": "nullable numeric code",
    "description": "Collapsed fishing mode",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "MODE OF FISHING (FISHERMAN COLLAPSED)",
      "description": "Collapsed fishing mode code \n1=Man-Made\n2=Beach/Bank\n3=Shore\n4=Headboat\n5=Charter Boat (sub_reg=6 or 7 & mode_f=7)\n7=Private/Rental Boat",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "AREA_X",
    "type": "nullable numeric code",
    "description": "Collapsed fishing area",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "COLLAPSED AREA OF FISHING",
      "description": " Collapsed area of fishing \n1 = Ocean <= 3 mi (all but WFL) \n2 = Ocean > 3 mi (all but WFL) \n3 = Ocean <= 10 mi (WFL only) \n4 = Ocean > 10 mi (WFL only) \n5 = Inland",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "HRSF",
    "type": "nullable number",
    "description": "Hours spent fishing",
    "unit": "hours",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "HOURS FISHED",
      "description": "Hours fished (to nearest 1/2 hour)",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "ADD_HRS",
    "type": "nullable number",
    "description": "Additional expected fishing hours for incomplete beach/bank trips",
    "unit": "hours",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "ADDED HRS FISHED FOR INCOMPLETE TRIPS",
      "description": "Additional hours fishing expected (to the nearest 1/2 hr)  \n(incomplete beach/bank trips only)",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "CATCH",
    "type": "nullable numeric code",
    "description": "Source trip catch indicator",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "CATCH AVAILABLE FOR ID & COUNTING",
      "description": "Did you catch any fish \n1 = Yes \n2 = No \n3 = Catch on another person's form ",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "PARTY",
    "type": "nullable number",
    "description": "Fishing party size",
    "unit": "count",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "NUMBER IN FISHING PARTY",
      "description": "Number of anglers in fishing party (Boat modes only)",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "BOAT_HRS",
    "type": "nullable number",
    "description": "Dock-to-dock hours of boat fishing trip",
    "unit": "hours",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "HOURS ON BOAT",
      "description": "Dock-to-dock hours of fishing trip (Boat modes only) (to nearest 1/2 hour) \n99.9 = Don\u2019t know or refused ",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "GEAR",
    "type": "nullable numeric code",
    "description": "Fishing gear code",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "TYPE OF GEAR",
      "description": " 1 = hook & line \n2 = dip net, A-frame net \n3 = cast net \n4 = Gill net \n5 = Seine \n6 = Trawl \n7 = Trap \n8 = Spear \n9 = Hand \n10 = Other \n11= YoYo (Puerto Rico only) \n98 = Unknown \n99 = Refused",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "PRIM1",
    "type": "nullable numeric code",
    "description": "First target species code",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "SPECIES CODE - PRIMARY SPECIES SOUGHT",
      "description": "First target species (see species codes)",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "PRIM2",
    "type": "nullable numeric code",
    "description": "Second target species code",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "SPECIES CODE - SECONDARY SPECIES SOUGHT",
      "description": "Second target species (see species codes)",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "FSHINSP_A",
    "type": "nullable number",
    "description": "Number of fish available for inspection",
    "unit": "count",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "NUMBER OF FISH (AVAIL.)",
      "description": "Number of fish available for inspection at time of interview",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "NUM_FISH_A",
    "type": "nullable number",
    "description": "Number of landed fish unavailable for inspection",
    "unit": "count",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "NUMBER OF FISH (UNAVAIL.)",
      "description": "Number of fish landed that were NOT available for interviewer inspection.",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "WP_INT",
    "type": "nullable number",
    "description": "Source post-stratified interview sampling weight",
    "unit": "survey weight",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "SAMPLE WEIGHT",
      "description": "Survey design sampling weight for TRIP and CATCH datasets; wp_int should only be used to weight records in TRIP and CATCH datasets.  Should be specified in any survey procedure, using the TRIP or CATCH datasets, for appropriate point estimate calculation and variance estimations.",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "ALT_FLAG",
    "type": "nullable numeric code",
    "description": "Alternate estimation flag: 1 means annual level estimation for small-sample combinations",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "ALTERNATE ESTIMATION FLAG",
      "description": "(0 .) = Sample weights produced from standard 2-month wave level estimation;\n\n1 = Sample weights produced from annual level estimation used to address small sample size issue in the specific ST,MODE_FX,YEAR combination;",
      "source_sheet": "TRIP_CAL2026"
    }
  },
  {
    "table": "trips",
    "field": "record_count",
    "type": "positive integer",
    "description": "Number of retained source observations with this identical normalized feature vector. This is multiplicity, not a survey expansion weight.",
    "unit": "source observations",
    "missing": "never missing"
  },
  {
    "table": "size",
    "field": "YEAR",
    "type": "nullable number",
    "description": "Survey year",
    "unit": "year",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "YEAR DATA COLLECTED",
      "description": "Year (4-digit) ",
      "source_sheet": "SIZE_CAL2026"
    }
  },
  {
    "table": "size",
    "field": "WAVE",
    "type": "nullable numeric code",
    "description": "Two-month sampling wave, 1 to 6",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "WAVE OF DATA",
      "description": "Two-month sampling period\n1 = January/February\n2 = March/April\n3 = May/June\n4 = July/August\n5 = September/October\n6 = November/December",
      "source_sheet": "SIZE_CAL2026"
    }
  },
  {
    "table": "size",
    "field": "ST",
    "type": "nullable numeric code",
    "description": "State FIPS code for fishing geography",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "STATE OF INTERCEPT",
      "description": "FIPS code for state of intercept",
      "source_sheet": "SIZE_CAL2026"
    }
  },
  {
    "table": "size",
    "field": "MODE_FX",
    "type": "nullable numeric code",
    "description": "Collapsed fishing mode",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "MODE OF FISHING  (FISHERMAN COLLAPSED)",
      "description": "Collapsed fishing mode code \n1=Man-Made\n2=Beach/Bank\n3=Shore\n4=Headboat\n5=Charter Boat (sub_reg=6 or 7 & mode_f=7)\n7=Private/Rental Boat",
      "source_sheet": "SIZE_CAL2026"
    }
  },
  {
    "table": "size",
    "field": "AREA_X",
    "type": "nullable numeric code",
    "description": "Collapsed fishing area",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "COLLAPSED AREA OF FISHING",
      "description": "Collapsed area of fishing \n1 = Ocean <= 3 mi (all but WFL) \n2 = Ocean > 3 mi (all but WFL) \n3 = Ocean <= 10 mi (WFL only) \n4 = Ocean > 10 mi (WFL only) \n5 = Inland",
      "source_sheet": "SIZE_CAL2026"
    }
  },
  {
    "table": "size",
    "field": "SP_CODE",
    "type": "nullable numeric code",
    "description": "NOAA fish species code",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "SPECIES CODE",
      "description": "Species code of fish",
      "source_sheet": "SIZE_CAL2026"
    }
  },
  {
    "table": "size",
    "field": "LNGTH",
    "type": "nullable number",
    "description": "Fish length",
    "unit": "millimeters",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "FORK LENGTH OF FISH (MM)",
      "description": "Fork length of fish or centerline length for non-forked fish (MM).",
      "source_sheet": "SIZE_CAL2026"
    }
  },
  {
    "table": "size",
    "field": "WGT",
    "type": "nullable number",
    "description": "Fish weight",
    "unit": "kilograms",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "WEIGHT OF FISH (KG)",
      "description": "Weight of fish in kg at time of interview (round, wet, or live weight).\n\n",
      "source_sheet": "SIZE_CAL2026"
    }
  },
  {
    "table": "size",
    "field": "LNGTH_IMP",
    "type": "nullable numeric code",
    "description": "Source fish-length imputation flag",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "LENGTH IMPUTATION INDICATOR (1:YES,0:NO)",
      "description": "Length imputation indicator\n1 = Yes\n0 = No",
      "source_sheet": "SIZE_CAL2026"
    }
  },
  {
    "table": "size",
    "field": "WGT_IMP",
    "type": "nullable numeric code",
    "description": "Source fish-weight imputation flag",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "WEIGHT IMPUTATION INDICATOR (1:YES,0:NO)",
      "description": "Weight imputation indicator\n1 = Yes\n0 = No",
      "source_sheet": "SIZE_CAL2026"
    }
  },
  {
    "table": "size",
    "field": "WP_SIZE",
    "type": "nullable number",
    "description": "Source post-stratified fish-size sampling weight",
    "unit": "survey weight",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "SAMPLE WEIGHT",
      "description": "Survey design sampling weight for SIZE dataset; wp_size should not be used to weight records in any other dataset.  Should be specified in any survey procedure, using the SIZE dataset, for appropriate point estimate calculation and variance estimation",
      "source_sheet": "SIZE_CAL2026"
    }
  },
  {
    "table": "size",
    "field": "ALT_FLAG",
    "type": "nullable numeric code",
    "description": "Alternate estimation flag: 1 means annual level estimation for small-sample combinations",
    "unit": "code",
    "missing": "empty CSV cell; source missing values preserved; no imputation; documented unknown/refused boat-hour and gear codes recoded",
    "source_definition": {
      "label": "ALTERNATE ESTIMATION FLAG",
      "description": "(0 .) = Sample weights produced from standard 2-month wave level estimation;\n\n1 = Sample weights produced from annual level estimation used to address small sample size issue in the specific ST,MODE_FX,YEAR combination;",
      "source_sheet": "SIZE_CAL2026"
    }
  },
  {
    "table": "size",
    "field": "record_count",
    "type": "positive integer",
    "description": "Number of retained source observations with this identical normalized feature vector. This is multiplicity, not a survey expansion weight.",
    "unit": "source observations",
    "missing": "never missing"
  }
]
