Endometrial carcinoma: the classification the checklist applies
Primary source: College of American Pathologists, Protocol for the Examination of Specimens from Patients with Carcinoma of the Endometrium, version 5.1.0.0, December 2024. Content is drawn from the reporting template and from Explanatory Notes C, D, E, F, J, L, M and N. The FIGO 2023 staging system is taken from Berek et al. 2023. The mapping from FIGO 1988 to FIGO 2009 is taken from Abu-Rustum et al. 2011. Every source is listed with its identifier at the end of this document.
The registry under data/taxonomy/ is transcribed from this document. It records every judgment the
transcription depends on, so that nobody has to make one again while transcribing.
docs/taxonomy_agent_prd.md tracks candidate additions against the wider reference literature and queues
them as tickets. Nothing there is ground truth until a ticket lands here.
Conventions
A dimension is one question the checklist asks. A value is one permitted answer to that question. In the trees below, a dimension appears as a folder and a value as a leaf.
Every dimension carries a closure tag stating how many values a single case may take.
| tag | meaning |
|---|---|
exactly one |
the values are mutually exclusive and exhaustive |
exactly one, residual: X |
the values are exhaustive only because X absorbs everything unnamed |
overlapping |
more than one value may hold, and a precedence rule is stated |
zero or one |
the dimension is optional |
Three relations connect dimensions and values. No tree in this document draws more than one of them.
- is-a relates a value to the dimension it belongs to. The trees below draw this relation.
- gated-by relates a dimension to a condition on another dimension. Histologic type gates FIGO grade,
which places FIGO grade beneath endometrioid carcinoma without making it a kind of endometrioid
carcinoma. An
applies when:line writes this relation. - derived-from relates a computed value to the values it is computed from. These appear in section 2 and never in a tree.
1. Asserted values
A reviewer reads each value in this section from the report and confirms or corrects it. No value in this section is computed.
1.1 Histologic type
Dimension histologic_type. Closure: exactly one, residual: other_nos.
histologic_type/
βββ endometrioid
βββ serous
βββ clear_cell
βββ undifferentiated
βββ dedifferentiated
βββ carcinosarcoma
βββ mesonephric_like
βββ squamous_cell
βββ gastric_type gastric / gastrointestinal type
βββ small_cell_neuroendocrine
βββ large_cell_neuroendocrine
βββ mixed two distinct types, one usually serous or clear cell
βββ other_nos residual: the value that makes the set exhaustive
mixed names a value rather than a grouping of values. "Non-endometrioid" names no value. Prose uses the
phrase, no coding system assigns it a code, and it never becomes a row.
undifferentiated and dedifferentiated name two separate values.
CAP version 5.1.0.0 does not list mucinous carcinoma as a type. WHO 2020 treats extensive mucinous differentiation as a feature of endometrioid carcinoma rather than as a separate type.
1.2 FIGO grade
Dimension figo_grade. Closure: exactly one.
figo_grade/ applies when: histologic_type = endometrioid
βββ 1
βββ 2
βββ 3
CAP Note D restricts FIGO grading to endometrioid carcinoma, and defines every other type as high-grade. Requesting a grade for another type therefore commits a category error rather than reporting a missing value, and the field carries the absence reason given in section 6.1.
How it is decided (not extracted). The percentage of non-squamous solid growth determines the grade, at cut-offs of 5 percent and 50 percent. Severe cytologic atypia in more than half of the tumour cells raises the grade by one and points toward serous carcinoma, TP53-mutated carcinoma and POLE-mutated carcinoma.
1.3 Myometrial invasion
Dimensions invasion_depth and myometrial_thickness. Both are quantities measured in millimetres.
Neither carries a closure tag, because a quantity forms no value set.
The registry stores both numbers, and section 2 computes the percentage and the category from them. A report that states "less than one-half" without measurements asserts the category directly, and a report that states "5 mm in a 21 mm wall" asserts the two quantities. Each records faithfully what the report said. Only the quantities survive a change of staging convention.
The derived category takes three values rather than two, separating zero invasion from shallow invasion. FIGO 2023 draws that separation between stage IA1 and stage IA2, and clinical risk assessment draws it as well. A report that states no depth has not asserted a depth of zero, and conflating the two loses the distinction.
How it is decided (CAP Note F, not extracted). The pathologist measures depth from the endomyometrial junction to the deepest point of invasion, and excludes exophytic tumour and polyps from the thickness. An invaded leiomyoma contributes to both the depth and the thickness. Foci of lymphovascular invasion contribute to neither. The pathologist does not assess depth at the cornu unless tumour reaches it.
1.4 Cervical involvement
Dimension cervical_stromal_invasion. Closure: exactly one.
cervical_stromal_invasion/
βββ present
βββ absent
βββ cannot_be_assessed
Endocervical glandular involvement falls outside stromal invasion. A retrieval anchor that matches the phrase "cervical involvement" conflates the two.
cervical_invasion_depth and cervical_wall_thickness measure quantities in millimetres. They feed the
same ratio formula the two myometrial quantities feed. The registry holds that formula once and binds it
twice, because one formula applies to two different organs.
1.5 Lymphovascular space invasion
This dimension carries one asserted status, one asserted quantity and one derived extent. The corpus and the reference standards share no vocabulary for it.
lvsi_status/ Closure: exactly one
βββ present
βββ not_identified
βββ suspicious used by the corpus; present in no reference value set
βββ cannot_be_determined
lvsi_foci_count/ Quantity: the number of involved vessels
applies when: lvsi_status = present
Pathologists write suspicious as a hedge, and no reference standard names it.
data/taxonomy/induced/lvsi_lexicon.csv records how often the corpus uses it. The registry assigns it an
extension concept in a local endopath/1 coding system and crosswalks it to CAP and FIGO with the
predicate noMatch, so that it survives an export and never collapses into present.
The foci count alone makes the extent reprojectable between staging conventions, and no report in this corpus states one. Section 5 gives the consequence.
1.6 Regional lymph nodes
Dimension pn_category. Closure: exactly one.
pn_category/
βββ pN0
β βββ pN0_i_plus isolated tumour cells, β€0.2 mm and β€200 cells
β applies when: no micrometastasis and no macrometastasis
βββ pN1mi pelvic node, >0.2 mm and β€2.0 mm
βββ pN1a pelvic node, >2.0 mm
βββ pN2mi para-aortic node, micrometastasis
βββ pN2a para-aortic node, macrometastasis
pN0_i_plus sits beneath pN0 because it refines "no metastasis" under a gate on the absence of its
siblings. It does not sit peer to pN1mi.
A regional node belongs either to the pelvic group (parametrial, obturator, internal iliac, external
iliac, common iliac, sacral and presacral) or to the para-aortic group. An involved node outside those
groups takes the code pM1 and counts as no regional node.
1.7 Molecular class
Two coding systems describe the same biology. Both are optional reporting elements.
ProMisE reads three assays and derives a surrogate-marker class from their results.
assay results/ each: zero or one
βββ pole_exonuclease_mutation sequencing
βββ mmr_ihc MLH1, PMS2, MSH2, MSH6
βββ p53_ihc
The four ProMisE categories do not partition the set of abnormal assays, because more than one assay may be abnormal in the same tumour. Section 3.1 gives the precedence rule. The categories partition the set of assay result combinations.
promise_class/ Closure: exactly one
βββ pole_mutated POLE abnormal, others normal
βββ mmr_deficient MMR abnormal, others normal
βββ p53_abnormal p53 abnormal, others normal
βββ nsmp all three normal ("no specific molecular profile")
βββ double_classifier two or more abnormal
The TCGA scheme is based on sequencing. Closure: exactly one.
tcga_class/
βββ pole_ultramutated about 7% of cases, excellent prognosis
βββ msi_hypermutated about 28%, variable outcome
βββ copy_number_low about 39%, variable outcome
βββ copy_number_high about 26%, about 95% TP53-mutated, poor prognosis
The two systems are related rather than identical. The mapping from copy_number_high to
p53_abnormal is recorded with the predicate broadMatch, because CAP Note E reports that copy-number
high tumours are TP53-mutated in approximately 95 percent of cases. The remaining 5 percent propagates
into the confidence of any stage projected through that mapping.
Interpretation notes. MMR immunohistochemistry is read as intact, lost, or subclonally lost. Subclonal loss describes discrete areas of complete loss beside areas of retained expression, occurs in about 7 percent of endometrioid carcinomas, and must not be read as patchy but intact. p53 immunohistochemistry is read as wild-type or abnormal. Abnormal has three patterns, which are overexpression, null and cytoplasmic, and a subclonal form occurs in up to 21 percent of cases.
2. Derived values
No value in this section is read from a report or entered by a reviewer. Each is computed from the
values in section 1 by a named rule. Each rule has a rule_kind of formula, threshold or
membership.
| derived value | computed from | rule | note |
|---|---|---|---|
myometrial_invasion_percent |
invasion_depth, myometrial_thickness |
formula: ratio_percent |
the same formula is bound a second time to the two cervical quantities |
myometrial_invasion_category |
myometrial_invasion_percent |
threshold at 0% and at 50% |
three categories: none, less than half, half or more. FIGO 1988, 2009 and 2023 share the 50 percent boundary and differ only in the stage label. FIGO 2023 additionally separates zero invasion from shallow invasion, at stage IA1 against IA2, and clinical risk assessment makes the same separation |
cervical_wall_percent |
cervical_invasion_depth, cervical_wall_thickness |
formula: ratio_percent |
CAP requests this as a reporting element in its own right |
grade_binary |
figo_grade |
membership: {1,2} low, {3} high |
endorsed by ISGyP, ICCR and WHO 2020 for reproducibility. CAP records that it is not widely adopted |
histotype_aggressiveness |
histologic_type, figo_grade |
membership |
non-aggressive is low-grade endometrioid, and aggressive is every other combination. The rule is partial: endometrioid carcinoma of unknown grade is indeterminate rather than aggressive |
lvsi_extent |
lvsi_foci_count |
threshold, scoped by coding system |
see section 5. Without a count the rule returns constrained({focal, substantial}) |
figo_stage |
all of the above | an algorithm, one per edition | see section 4 |
The reason for separating asserted values from derived values is that a quantity can be reprojected into any convention and a category cannot. A report that states four foci is recorded as four foci, and FIGO 2009 then calls that extent substantial while FIGO 2023 calls it focal. A record that stores the word "substantial" has discarded the ability to answer the other question.
3. Dimensions whose values are not mutually exclusive
Sibling values are mutually exclusive everywhere else in this document. The three dimensions below are exceptions, and each requires a precedence rule that is stated here before any code selects one answer.
3.1 The ProMisE double classifier
Two or three assays may be abnormal in the same tumour, and CAP assigns no precedence order among them.
A tumour that is p53-abnormal and MMR-deficient, one that is p53-abnormal and POLE-mutated, and one that
is POLE-mutated and MMR-deficient are all reported as double_classifier. The prognosis of a double
classifier differs from that of the pure categories.
The rule is to count the abnormal assays. Zero abnormal assays is nsmp, one abnormal assay names
itself, and two or more is double_classifier. No winner is selected among abnormal assays.
3.2 The FIGO 2023 molecular modifier
IAmPOLEmut and IICmp53abn are not siblings of the anatomic substages. A POLE-mutated tumour confined
to the corpus with less than half myometrial invasion satisfies the plain reading of both IA2 and
IAmPOLEmut.
The rule is that the molecular modifier supersedes the anatomic substage, and that it applies only to stages I and II. Stages III and IV are anatomic and take no modifier. A case whose molecular class is unknown is staged anatomically, and FIGO states this explicitly: high-grade endometrioid carcinomas are in that case grouped with the aggressive types.
The modifier is therefore a layer applied last, and only over stages I and II.
stage I or II, staged anatomically
βββ then, if molecular class is known:
βββ pole_mutated β IAmPOLEmut downstage
βββ p53_abnormal β IICmp53abn upstage
βββ otherwise β keep the anatomic substage
3.3 pN0(i+)
Isolated tumour cells are reported only when there is neither a micrometastasis nor a macrometastasis.
pN0_i_plus refines pN0 under a gate on the absence of its siblings. It does not join pN1mi and
pN1a as a fourth peer.
4. Derivation of FIGO stage
T1b and IB denote opposite disease extents in different reports of this corpus, because the reports
use different FIGO editions and none of them records which edition was used. A stage code has no meaning
without its edition. Concepts are therefore keyed on the triple (system, dimension, code), and
figo_endo/1988.IB and figo_endo/2009.IB are two different concepts that share three characters.
The remapping below drives this project to store assertions and project a stage from them, rather than to store a stage.
| extent | FIGO 1988 | FIGO 2009 |
|---|---|---|
| limited to the endometrium | IA |
IA |
| invades less than half the myometrium | IB |
IA |
| invades half or more of the myometrium | IC |
IB |
FIGO 2023 incorporates histologic type, grade, lymphovascular space invasion and molecular class into the stage itself. A FIGO 2023 stage therefore cannot be recovered from a FIGO 2009 stage label, and must be projected from the asserted values.
derive_stage(assertions, edition) returns one of three results, and the second one succeeds.
- A stage, when the asserted values determine one.
constrained(candidates, reason), when the asserted values narrow the answer to a set and no further. This corpus supplies one instance:IBagainstIIB, where lymphovascular space invasion is present but unquantified.indeterminate(reason), when a required assertion is missing, or when the report states that the required value cannot be assessed.
5. The threshold for substantial lymphovascular space invasion
Substantial lymphovascular space invasion is defined by a vessel count. Four bodies have adopted three different cut-offs, which CAP records in Note J.
| coding system | substantial at | evidence cited by CAP |
|---|---|---|
| ICCR 2022, ISGyP 2019 | 3 or more vessels | Matias-Guiu et al. 2024; Singh et al. 2019 |
| AJCC 8 and FIGO 2009, as read by CAP | 4 or more vessels | Peters et al. 2022; Turashvili and Hanley 2024 |
| FIGO 2023, WHO 2020, ESGO/ESTRO/ESP 2021 | 5 or more vessels | Berek et al. 2023; Concin et al. 2021 |
CAP adopts 4, the only numeric threshold that outcome data supports: the PORTEC-1 and PORTEC-2 trials (926 cases) together with a Danish cohort of 401 cases, scored by four pathologists.
A report that states four foci therefore describes substantial invasion under FIGO 2009 and focal
invasion under FIGO 2023. No report in this corpus states a foci count. lvsi_extent is consequently
constrained for every case in which lymphovascular space invasion is present, and is determined only
for cases in which it is not identified.
6. Fields without a plain value
An empty field takes one of several states. A reviewer performs a different action for each, and an export that cannot distinguish them loses its provenance link. The states divide into three groups, and only the first group describes an absent value.
6.1 The field has no value
These two states are coded against the HL7 dataAbsentReason code system, whose canonical URL is
http://terminology.hl7.org/CodeSystem/data-absent-reason.
| code | meaning | example |
|---|---|---|
not-applicable |
there is no proper value for this element | FIGO grade on a serous carcinoma, which section 1.2 gates away |
asked-unknown |
the source was asked but does not know the value | the field applies, the report is silent, and the escalating search confirmed the silence |
The state is asked-unknown rather than not-asked, because the escalating search does ask. dataAbsentReason defines
not-asked as "The workflow didn't lead to this value being known", which claims something else about a
different situation.
A gate is itself a reviewed value. Histologic type is drafted by the same model that may be wrong about it. Suppressing the grade of a case whose type is drafted as serous must therefore preserve the drafted grade, and correcting the type to endometrioid must restore it.
6.2 Values that resist a single code
Neither of these states describes an absence, and no code system for absent values expresses either.
| state | meaning |
|---|---|
indeterminate |
the report states that the value cannot be assessed. This is an assertion the pathologist made, and CAP prints Cannot be determined as a checklist choice |
constrained |
the value is derived, and the asserted values narrow it to a set and no further |
Recording indeterminate as an absent value discards the assertion. Recording constrained as an absent
value discards the set, and the set carries the answer.
6.3 The value is obtained from another source
| state | meaning |
|---|---|
determined_by_join |
the value exists and is not in the report. Molecular class is obtained from cBioPortal |
This state describes the provenance of a value rather than the absence of one.
Sources
Each identifier below names a source_id in data/taxonomy/sources.csv, which records the retrieval URL,
the SHA-256 of the retrieved bytes, and the licence. Copyright keeps most of the source documents
uncommitted.
| source_id | document |
|---|---|
cap_uterus/5.1.0.0 |
CAP, Protocol for the Examination of Specimens from Patients with Carcinoma of the Endometrium, v5.1.0.0, December 2024 |
figo_endo/2023 |
Berek JS, Matias-Guiu X, Creutzberg C, et al. FIGO staging of endometrial cancer: 2023 |
figo_endo/2023-corrigendum |
Correction to "FIGO staging of endometrial cancer", 2024 |
abu_rustum/2011 |
Abu-Rustum NR, Zhou Q, Iasonos A, et al. The Revised 2009 FIGO Staging System for Endometrial Cancer. The 1988 to 2009 remapping |
who_fgt/2020 |
WHO Classification of Tumours Editorial Board. Female genital tumours. 5th ed. Histologic type definitions |
ajcc/8 |
AJCC Cancer Staging Manual, 8th edition. The pT, pN and pM categories |
tcga_ucec/2013 |
Cancer Genome Atlas Research Network, Kandoth C, Schultz N, et al. Integrated genomic characterization of endometrial carcinoma. The four molecular groups |
promise/2017 |
Talhouk A, McConechy MK, Leung S, et al. Confirmation of ProMisE |
mccluggage/2023 |
McCluggage WG, Bosse T, Gilks CB, et al. FIGO 2023 endometrial cancer staging: too much, too soon? The critique CAP cites when declining to mandate FIGO 2023, which is why both FIGO systems remain optional elements |
huvila/2024 |
Huvila J, Jamieson A, Pors J, et al. Endometrial carcinosarcomas are almost exclusively of p53abn molecular subtype after exclusion of mimics |
fhir_dar/1.0.0 |
HL7 dataAbsentReason code system, used in section 6.1 |
The AJCC manual and the WHO classification sit behind paywalls. The CAP protocol reproduces every pT, pN and pM category, and in Note C the histologic type definitions, so the registry transcribes their content from CAP.
Nobody can obtain the FIGO 2023 corrigendum. It sits behind a paywall and PubMed Central holds no copy. The open-access co-publication of the FIGO 2023 paper recovers the threshold it corrects, stating the isolated tumour cell bound correctly in body text on page 7. The footnote to Table 1 of that same paper reproduces the original error, and no extraction may cite it.
CAP cites the following in support of its classification content. This project retrieves none of them, and lists them so that a reader can follow CAP's reasoning.
- Kommoss S, McConechy MK, Kommoss F, et al. Final validation of the ProMisE classifier. Ann Oncol. 2018;29:1180-1188.
- LeΓ³n-Castillo A, de Boer SM, Powell ME, et al. Molecular classification of the PORTEC-3 trial. J Clin Oncol. 2020;38:3388-3397. The TransPORTEC classifier.
- Peters EEM, LeΓ³n-Castillo A, Smit VTHBM, et al. Defining substantial lymphovascular space invasion in endometrial cancer. Int J Gynecol Pathol. 2022;41:220-226.
- Concin N, Matias-Guiu X, Vergote I, et al. ESGO/ESTRO/ESP guidelines for the management of patients with endometrial carcinoma. Int J Gynecol Cancer. 2021;31:12-39.