HL7 Europe Common Cancer Model, published by HL7 Europe. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7-eu/cancer-common/ and changes regularly. See the Directory of published versions
This page provides logical-level example instances populated according to the European Cancer Common Logical Model , following the steps of the Cancer Patient Journey.
The purpose of this section is to show how the logical model can be populated over time, by creating concrete instances of its entities at specific moments of the cancer journey, and by explicitly linking these instances to preserve longitudinal traceability.
This page focuses on the logical level of the model. It complements:
Readers are therefore expected to be familiar with those pages before consulting this section.
Compared to the conceptual Data Evolution example, this logical example shows a more complete population of attributes, including illustrative terminology codes (e.g. SNOMED CT, ICD-O-3, ICD-10) and additional fields not shown in the conceptual narrative. These codes are provided for demonstration purposes only, to illustrate how the logical model can be populated and validated.
In particular, terminology bindings shown in this page should not be interpreted as mandatory or prescriptive. Implementations may adopt different coding systems according to local, national, or project‑specific requirements.
This page shows concrete examples of logical model instances, highlighting:
The diagrams presented in the following sections use schematic representations based on the Logical Model, and are intended to support implementers in understanding how the model can be applied in practice, without prescribing a specific technical implementation.
For ease of consultation and reuse, especially for readers less familiar with FHIR, a complete representation of the exaple is also available in Excel format (LogicalModelExample.xlsx).
This section instantiates the logical entities required to represent diagnosis and the initial treatment phase. The example includes instances of CancerPatient, CancerConditionAtDiagnosis, Imaging, CancerStage (clinical and pathological), Surgery and Radiotherapy.
In this logical example, attributes are populated in greater detail than in the conceptual Data Evolution narrative. For instance, tumour histology and primary site are represented using ICD‑O‑3 codes, and imaging and treatment types are illustrated using SNOMED CT codes.
These coded values are provided for demonstration purposes, to show how the logical model can be concretely populated, and do not represent mandatory bindings.
For CancerStage, the staging assessment is represented using the stageValue element, expressed as a code / value pair. In this example, TNM staging is used and, accordingly, the stage is represented through multiple stageValue entries corresponding to T, N, and M, while classificationType is populated to explicitly indicate the TNM framework.
For the purpose of this example, classificationType is populated using its text element only. Staging values are represented using the text field of stageValue.code and stageValue.value (e.g. T category / T2, N category / N1, M category / M0). This choice reflects the fact that defining complete and context‑specific terminology bindings for staging values (especially for TNM) is non‑trivial and out of scope for this guide.
In real implementations, classificationType, stageValue.code and stageValue.value are expected to be populated using appropriate coded representations, according to the terminology policies adopted in a given national or project‑specific context.
This section therefore illustrates how the logical model can represent both simple and composite staging systems, while preserving explicit semantics, traceability to clinical evidence, and longitudinal consistency.
This section shows the first post-treatment assessment at the logical level. New instances are created for:
In this example, the response and disease status are recorded as Complete Remission, with the follow-up date aligned to the same assessment moment.
This section represents a follow-up visit where the previously recorded remission status is confirmed. Even when no clinical change is observed, the logical model captures the follow-up as a distinct event by creating:
This section represents an additional follow-up visit confirming the same disease status. New instances of ClinicalCancerProgression and LastFollowUp are created to preserve temporal traceability across repeated assessments.
This section represents a disease evolution event identified during follow-up. A new ClinicalCancerProgression instance records Recurrence and the associated extent information. In this example, loco-regional extent is captured and a loco-regional site is provided using an illustrative ICD-O-3 code.
A corresponding LastFollowUp instance records that the patient is alive with evidence of disease at the same time point.
This section represents a new treatment episode initiated following the documented recurrence. A SystemicTreatment instance captures treatment intent, type, and timing, and is explicitly linked to the ClinicalCancerProgression instance representing the recurrence that motivated the treatment.
In this example, the systemic treatment type is illustrated using a SNOMED CT procedure code.
This section represents the assessment performed after the systemic treatment course. A new OverallCancerTreatmentResponse instance records the response evaluation and explicitly references the previous recurrence context.
A new ClinicalCancerProgression instance captures the updated disease status (Partial Remission) and associated extent information. A new LastFollowUp instance records patient status at the same follow-up date.
This section represents a further disease evolution event. A new ClinicalCancerProgression instance records Progression and metastatic extent, with an illustrative metastatic site code provided in this example.
A corresponding LastFollowUp instance records that the patient remains alive with evidence of disease at the same time point.
This final section records the patient outcome. A new LastFollowUp instance captures vital status as Dead, the date of death, and (when available) the cause of death.
In this example, the cause of death is illustrated using an ICD-10 code.