# K6 control – butler2008 (Singapore Chinese Health Study, Br J Cancer 2008;99:1511–1516)

Controller: K6 · 2026-10-30 · Source: `Understudier WCRF/butler2008.txt`.

## Method
- Table 1 (p. 1512) was read. The three meat/fish rows were compared field by field.
- The footnote covariates were compared with the adjustments.csv flags.
- The Methods and Results were read for any other meat estimates.

## Results of the number check

| row | paper (Table 1, p. 1512) | DB | match |
|---|---|---|---|
| butler2008_001 Red meat | 1.01 (0.82–1.26), P trend 0.60 | 1.01 / 0.82 / 1.26 / 0.60 | yes |
| butler2008_002 Preserved meat | 1.16 (0.95–1.41), P trend 0.10 | 1.16 / 0.95 / 1.41 / 0.10 | yes |
| butler2008_003 Fish | 1.17 (0.96–1.43), P trend 0.07 | 1.17 / 0.96 / 1.43 / 0.07 | yes |

- **The percentile distributions in notes and dose_conversions are correct:** cases 5.0/24/74 vs non-cases 4.4/25/76; 0/1.2/8.5 vs 0/1.3/10; 14/51/111 vs 14/51/114.
- **n_cases = 961** (all cases; per-quartile counts not printed). Non-cases 60,360 = 61,321 − 961. Consistent.
- **The CIs contain the points and are log-symmetric.**

## Discrepancies

| estimate_id | field | in database | in paper | severity |
|---|---|---|---|---|
| butler2008_002 | notes vs field | The field exposure_includes_processed = `yes`, but the note says "exposure_includes_processed=unclear refers to scope" | The field value (`yes`) is the right one for "preserved meat". The note contradicts it and should be edited | minor |

## Checked by reading
- **Exposure.** "Red meat" is not defined anywhere in the paper. `red_undefined` with includes_processed = unclear is correct. "Preserved meat" → `processed` is correct. Fish's processing status is unclear.
- **HR, Q4 vs Q1,** with quartiles "based on the distribution among the entire cohort". Trend on ordinal scores 0–3. Correct as coded.
- **adjustments.csv butler2008_m1** matches the Table 1 footnote:
  - age, sex, dialect, interview year, diabetes, smoking, BMI, alcohol, education, physical activity, family history and total energy;
  - energy_method covariate;
  - no other dietary covariates.

  All flags are correct.
- **is_main_model = no.** This follows OPPDRAG_tillegg 2 (rows reported only as highest vs lowest are `no`). Note that under KODEBOK 4.2 alone it would be `yes`, because it is the only and fully adjusted model. Whoever pools HvL rows must not filter on is_main_model.
- **studies.csv:**
  - n = 61,321; age 45–74; recruitment 1993–1998; mean follow-up 9.8 y; 165-item FFQ; registry ascertainment.
  - Cases 961 (591 colon, 370 rectal/rectosigmoid). cases_colon and cases_rectum are left empty because single foods are not analysed by subsite. Correct.
- **Outside estimates.csv:** studies.csv says `cup_role = hvl_only` and in_cup2016 = yes, but cup_extraction.csv has **no row for butler2008**. The extractor's NOTES say it should point to butler2008_001.

## Missing estimates
None.
- The paper's other estimates are dietary patterns (Table 3; meat–dim sum pattern by subsite and sex in the text). They are not meat exposures.
- No poultry, heme or subsite estimates exist for single foods.

## Confirmed rows
butler2008_001, _002 and _003 are confirmed.

## Internal inconsistencies in the paper
- **Table 1, total fat, non-cases:** "25, 16, 34". The 5th percentile is above the median, so this is a misprint. It is not a meat row and has no DB impact.

## Verdict
**Fit for use as an HvL-only study.** Also add the missing cup_extraction row.
