Belgian Cancer Registry on FHIR
0.1.0 - ci-build
Belgian Cancer Registry on FHIR - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
The BCR data ecosystem is fed by two parallel streams with different sources, granularities, and submission channels. The published research dataset is a derived view over both, with pseudonymisation and aggregation applied.
Hospital MOC discusses a patient
│
▼
Coordinating physician fills in Bijlage 55
│
├──── Section 1-11 (universal) ──► BCRCancerRegistrationForm
├──── Vervolg 1 (only if breast tumour) ──► BCRBreastTumourSupplement
├──── Vervolg 2 (MOC attestation) ──► BCRMOCForm
└──── Vervolg 3 (subsequent follow-up MOCs) ──► BCRFollowUpForm
│
▼
Submission via WBCR
│
├── manual entry (web UI), OR
└── batch extraction from HIS
│
▼
BCR internal database
IdentifyPerson lookup.Pathology / clinical biology / haematology lab
│
│ Processes a screening sample (breast / cervix / colorectal)
│
▼
Structured dataset + pathology report
│
▼
sFTP transfer to BCR
│
├── monthly cadence (cervical samples)
└── quarterly cadence (breast, colorectal, general)
│
▼
CHP (cyto-histopathology) register ──► BCRChpSample
├── BCRChpBreastSample
├── BCRChpCervixSample
└── BCRChpColonSample
BCR internal database (streams 1 + 2 + registry-wide processing)
│
│ Pseudonymisation
│ Field derivation (numeric ICD-10, age categories, vital-status dates)
│ Aggregation (totaltum, multiple, borsttelling)
│ Filtering to non-identifiable variables
│
▼
"Cancer in Belgium" research dataset ──► BCRCancerCase
BCRCancerCase.The three streams are deliberately modelled as separate logical structures rather than a single unified model:
| Difference | Form (stream 1) | CHP (stream 2) | Research dataset (stream 3) |
|---|---|---|---|
| Granularity | Per cancer case | Per lab sample | Per cancer case |
| Patient identity | Plaintext name + INSZ | Plaintext (then pseudonymised) | Pseudonymised |
| Treatment data | Full chronology in treatmentEpisode |
Absent | Absent |
| Vital status dates | Captured per follow-up event | Absent | Computed registry-wide |
| Source | Hospital | Lab | BCR processing pipeline |
Trying to use a single resource for all three would either lose information from streams 1 and 2 or pollute the research-dataset shape with form-level concerns. Separation is honest.