Pure derivation of the full 2017 World Workshop periodontal classification
(diagnosis/stage/grade/extent) from an already-reduced input struct. No
engine state, no Date/random — safe to call repeatedly with the same
input and always get the same output (fed from a serialized FHIR-export-time
snapshot, not live module state).
Pure derivation of the full 2017 World Workshop periodontal classification (diagnosis/stage/grade/extent) from an already-reduced input struct. No engine state, no Date/random — safe to call repeatedly with the same input and always get the same output (fed from a serialized FHIR-export-time snapshot, not live module state).