ICD-10 Coding Allowability
WHO 2022 ICD-10 Coding Allowability Policy
Purpose
This policy defines the ICD-10 2019-2 rows that are selectable during WHO 2022 verbal autopsy ICD coding.
This policy controls ICD coding search and selection only. COD bucket grouping, road-traffic versus other-transport bucket mapping, and ambiguous bucket resolution are out of scope for this step.
Why ICD-10 stays annex-only
ICD-10 allowability is limited to the WHO 2022 VA annex ranges (2,401 of
12,771 rows), while ICD-11 allows almost every category (owner 2026-09-27,
see WHO 2022 ICD-11 Coding Allowability).
The difference is deliberate (owner decision 2026-10-26, digitva-7pl2):
- ICD-11 coding goes through DORIS, which applies WHO's selection rules and may return any real cause; refusing a category DORIS selects would block a correct result. ICD-10 projects have no DORIS: the coder picks the final cause directly, so the annex list is the only check that the code is a WHO VA cause-of-death code.
- Keeping ICD-10 to the annex keeps every saved ICD-10 final inside a WHO VA cause, so VA cause mapping quality does not depend on fallbacks.
Sex and age restrictions are DigitVA decisions on both sides. WHO publishes
sex-specific category lists; DigitVA's age groups have no WHO table. ICD-10
keeps refusing both sex and age conflicts; the ICD-11 warn-on-age rule
(owner 2026-10-26, digitva-oh7j) applies to ICD-11 only, because it rests
on DORIS treating age as a plausibility warning.
Baseline Source
The WHO 2022 VA crosswalk workbook is the baseline source for ICD coding allowability. A generated policy JSON is a full replacement import payload, not an overlay. When imported, editable ICD rows absent from the generated JSON become not selectable through the existing overwrite-style import behavior.
Default allowed WHO ICD rows use:
is_coding_selectable=truesex_selectable=bothage_group_selectable=all
Exception rules override those defaults.
Age Groups
ICD coding age allowability supports:
allneonateinfantneonate_infantchildadult
Submission age classification is:
neonate:0to<28 daysinfant:28 daysto<365 dayschild:365 daysto<12 yearsadult:>=12 years
Policy matching is exact-or-all. A code marked all is available to every age
group. A code marked infant is available only to submissions classified as
infant. neonate_infant (owner, 2026-09-29) is the one non-exact value: a
code marked neonate_infant is available to submissions classified as
neonate or infant, and to no other group. No ICD-10 row uses it; the
ICD-10 policy data is unchanged (P00-P96 stay neonate). The value is
accepted here so ICD-10 and ICD-11 share one vocabulary.
Allowability Rules
Allowed ICD rows are active ICD10-2019-2 editable rows referenced by
WHO_2022_VA_Crosswalk.xlsx, after expanding raw ICD expressions against the
existing ICD10 master.
Expansion preserves the granularity shown by WHO:
- a three-character code such as
C50selects onlyC50 - a three-character range such as
C51-C58selects only three-character rows in that range - a dotted code such as
I11.0selects only that dotted code - a dotted range such as
V10.4-V10.9selects only dotted rows in that dotted range
Never selectable:
S00-T99, including all active editable rows in that range
Road-traffic footnote codes are selectable for both sexes and all ages. This only affects ICD coding allowability; road-traffic versus other-transport COD bucket mapping is deferred.
Transport codes are selectable only at the level where WHO decides the bucket
(owner decision, 2026-09-25, digitva-g2n):
- The three-character codes
V01-V89andY85are not selectable. WHO 2022 VA footnote f separates Road traffic accident (VAs-12.01) from Other transport accident (VAs-12.02) only by the fourth character (V01.1...V87.0-V87.9,V89.2-V89.3,Y85.0are road traffic). A three-character pick cannot be placed by that rule and fell to Other transport, under-counting road deaths. Every one of these codes has selectable fourth-character subcodes, so a coder always has a target. V90-V99stay selectable at three characters: footnote f lists them whole, as Other transport.- Final assessments already saved with a three-character code keep it; the change governs new selections only. Re-coding them is a separate decision.
- Applied by data migration (prior values captured, downgrade restores them).
Re-importing the released 2026 ICD-10 policy JSON would undo it, as with
the
Q00-Q99decision.
Neonate-only, both sexes:
P05,P07P20-P22P23-P24P36A33Q00-Q99P00-P04P08-P15P25-P35P37-P94P96P95
Infant-only, both sexes:
R95
Female-only, adult-only:
- all WHO maternal
Ocode rows
Sex-specific neoplasms:
C51-C58: female-only, all agesC60-C63: male-only, all agesC50: both sexes, all agesD25-D28: female-only, all agesD29: male-only, all ages
These sex-specific neoplasm restrictions are deliberate deviations from the
default WHO residual bucket allowability. For example, WHO bucket VAs-02.99
lists the broad residual range C64-D48; the generated ICD selection policy
still narrows genital-organ neoplasm rows such as D26 to the anatomically
applicable sex. The COD bucket assignment remains unchanged and is not resolved
by this ICD selection policy.
2026 Annex Adjustments
Adopted 2026-09-18. Only three of the 2026 annex's four ICD-10 differences
change this policy; VAs-12.99's change is punctuation only (S00-T99 is
already never-selectable, see above) and needs no action.
VAs-98 (Other and unspecified non-communicable disease): the allowed
range's floor moves from K77 to K70, and G43-G47 is added.
G43,G44,G45,G46,G47become selectable (three-character granularity), both sexes, all ages.K72,K73,K75,K76become selectable (three-character granularity), both sexes, all ages.K70andK71are NOT made selectable at three-character granularity, because that would swallow the existing liver-cirrhosis carve-out below. Instead, every dotted (detailed) code underK70andK71other thanK70.2,K70.3andK71.7becomes selectable, both sexes, all ages.K74was already selectable at three-character granularity and is unaffected.
VAs-06.02 (Liver cirrhosis) carve-out — unchanged: K70.2, K70.3,
K71.7, K74 remain reserved to VAs-06.02 and are excluded from the
VAs-98 grant above.
VAs-99 (Unknown and ill-defined cause of death): the allowed range
expands from R95-R99 to R00-R09; R11-R94; R96-R99.
R00,R01,R02,R03,R04,R05,R06,R07,R09become selectable (three-character granularity;R08does not exist in ICD-10), both sexes, all ages.R11-R94become selectable (three-character granularity).R10is not part of this grant; it has its own rule underVAs-06.01below.R96-R99were already selectable and are unchanged.
VAs-06.01 (Acute abdomen): R10 becomes selectable (three-character
granularity), both sexes, all ages, bucketed to VAs-06.01 in the
WHO_2022_VA_2026 scheme, as the WHO annex lists it. Before 2026-09-19 R10 was
not selectable and the live WHO_2022_VA scheme mapped it by manual override to
the non-WHO bucket "Other Gastrointestinal Diseases"; that override is
deliberately not carried into WHO_2022_VA_2026. WHO_2022_VA is unchanged.
VAs-10.99 (Other and unspecified perinatal cause of death): R95 moves
into this bucket's range from the earlier VAs-99/"Cause of death unknown"
assignment. R95's selectability policy is unchanged (infant-only, both
sexes, listed under "Infant-only, both sexes" above); only its WHO bucket
assignment moves, from "Cause of death unknown" to VAs-10.99. See the COD
bucket mapping (who_2022_va_2026 scheme) rather than this ICD-selection
policy for the bucket change itself.
Overlap Rules
Never-selectable rules win over all other rules. Age and sex exceptions win over default WHO allowability. Within exceptions, the most restrictive applicable rule wins. Bucket ambiguity may be recorded in notes where useful but is not resolved by this policy.
A more specific ICD code wins over a broader range it falls inside, whenever
the two are assigned to different buckets or carry different exceptions. This
is why the VAs-98 grant of K70-K76 (2026 Annex Adjustments, above) does not
override the dotted K70.2, K70.3, K71.7 codes already carved out to
VAs-06.02: those three dotted codes are more specific than the three-character
K70/K71 range and win the conflict. The same rule applies to any future
range expansion that overlaps an existing dotted-code exception.
Carried-forward overrides in WHO_2022_VA_2026
The WHO_2022_VA_2026 COD bucket scheme carries forward 33 manual bucket
overrides that already existed in the live WHO_2022_VA scheme, so the 2026
revision does not regress prior clinical curation. Of those 33, the 16 below
land in a different bucket from the one the WHO 2026 annex (Annex 1 Table A1,
docs/icd-causegrp-mappings/ICD-to-VA-Buckets/who_2022_va_cause_list_icd10_icd11.csv)
would give the code; the remaining 17 agree with the annex and need no record
here.
"Bucket the annex gives" is derived by expanding the annex ICD-10 ranges with
the granularity rules under "Allowability Rules" and the specific-beats-range
rule under "Overlap Rules". (none) means no annex range covers the code at
its own granularity: UU1 and UU2 are local pseudo-codes that are not ICD-10
at all, U07 appears in the annex only as the dotted U07.1/U07.2, I11
falls between the annex's I11.0 and I11.9-I15, and Y91 is in no annex
range.
| ICD-10 code | Title | Bucket kept | Bucket the annex gives | Decided by |
|---|---|---|---|---|
G46 |
Vascular syndromes of brain in cerebrovascular diseasesI60-I67 | VAs-04.02 Stroke |
VAs-98 Other and unspecified non-communicable disease |
clinical lead 2026-09-19 (keep) |
G47 |
Sleep disorders | VAs-99 Cause of death unknown |
VAs-98 Other and unspecified non-communicable disease |
clinical lead 2026-09-19 (keep) |
I11 |
Hypertensive heart disease | VAs-04.01 Acute cardiac disease |
(none) | clinical lead 2026-09-19 (keep) |
I46 |
Cardiac arrest | VAs-04.01 Acute cardiac disease |
VAs-04.99 Other and unspecified cardiac disease |
clinical lead 2026-09-19 (keep) |
I50 |
Heart failure | VAs-04.01 Acute cardiac disease |
VAs-04.99 Other and unspecified cardiac disease |
clinical lead 2026-09-19 (keep) |
K64 |
Haemorrhoids and perianal venous thrombosis | Other Gastrointestinal Diseases | VAs-98 Other and unspecified non-communicable disease |
clinical lead 2026-09-19 (keep) |
K70 |
Alcoholic liver disease | VAs-06.02 Liver cirrhosis |
VAs-98 Other and unspecified non-communicable disease |
clinical lead 2026-09-19 (keep) |
K72 |
Hepatic failure, not elsewhere classified | VAs-06.02 Liver cirrhosis |
VAs-98 Other and unspecified non-communicable disease |
clinical lead 2026-09-19 (keep) |
K73 |
Chronic hepatitis, not elsewhere classified | VAs-06.02 Liver cirrhosis |
VAs-98 Other and unspecified non-communicable disease |
clinical lead 2026-09-19 (keep) |
K75 |
Other inflammatory liver diseases | Other Gastrointestinal Diseases | VAs-98 Other and unspecified non-communicable disease |
clinical lead 2026-09-19 (keep) |
K76 |
Other diseases of liver | Other Gastrointestinal Diseases | VAs-98 Other and unspecified non-communicable disease |
clinical lead 2026-09-19 (keep) |
R50 |
Fever of other and unknown origin | VAs-01.99 Unspecified infectious disease |
VAs-99 Unknown and ill-defined cause of death |
clinical lead 2026-09-19 (keep) |
U07 |
Emergency use of U07 | VAs-01.13 Coronavirus disease (COVID-19) |
(none) | clinical lead 2026-09-19 (keep) |
Y91 |
Evidence of alcohol involvement determined by level of intoxication | VAs-99 Cause of death unknown |
(none) | clinical lead 2026-09-19 (keep) |
UU1 |
Other Non-communicable Diseases | VAs-98 Other and unspecified non-communicable disease |
(none) | clinical lead 2026-09-19 (keep) |
UU2 |
Other Defined Causes of Child Deaths | Other Defined cause of Child Death | (none) | clinical lead 2026-09-19 (keep) |
Rule. These overrides are kept deliberately: the bucket in the artifact
wins over the annex-derived bucket for these codes. A future annex revision
re-evaluates each of them one at a time; none is dropped silently, and none is
"fixed" to the annex value without the clinical lead's sign-off. Titles are
reproduced verbatim from the derived workbook, including the G46 title's
trailing I60-I67 fragment, so the row stays traceable to its source.
None of the 16 codes is ICD-10 coding-selectable today; these are bucket mappings for reporting and legacy-data coverage. Adding one to the selectable set is a separate decision under "Allowability Rules".
R10 — confirmed 2026-09-19 by the clinical lead. In WHO_2022_VA_2026,
R10 is selectable, both sexes, all ages, and bucketed to VAs-06.01 Acute
abdomen, as the WHO 2026 annex lists it (see "2026 Annex Adjustments" above).
The 34th manual override in the live WHO_2022_VA scheme, which mapped R10
to "Other Gastrointestinal Diseases", is deliberately not carried forward and
so does not appear in the table. The old WHO_2022_VA scheme keeps its own
mapping unchanged.