Conversion Mapping
This document describes how upstream SHI FHIR resources RegulatedAuthorization is mapped into ReimbursementGroups.
RegulatedAuthorization → ReimbursementGroups
ReimbursementGroups contains the legal basis (hjemmel) for reimbursement and the reimbursement code/indication, as well as an association to one or more medicinal products.
| Source | Output field | Logic |
|---|---|---|
RegulatedAuthorization.Identifier[0].Value |
id |
First identifier value |
RegulatedAuthorization.Extension[] |
legalBasis |
The first extension whose URL contains reimbursementRegulation (case-insensitive); its ValueCodeableConcept is used directly |
RegulatedAuthorization.Basis.Coding[] |
indications |
Each coding in Basis.Coding becomes its own CodeableConcept (one indication per coding), preserving the diagnosis-per-entry model from upstream |
RegulatedAuthorization.ArticleNumber |
medicines |
If non-empty, becomes a single MedicinalReference with the article number as the FEST varenummer. Empty list otherwise |
Note: in upstream RegulatedAuthorization, Basis carries the diagnoses (e.g., ICD-10 codes) while the legal basis (e.g., H-resept §950) is delivered via the reimbursementRegulation extension — the mapping flips these into the consumer-friendly ReimbursementGroup shape.
Medicine Reference from ArticleNumber
When RegulatedAuthorization.ArticleNumber is present, it becomes a single MedicinalReference. The reference and display fields are null for FEST-sourced medicines:
{
"reference": null,
"type": "FEST/LegemiddelPakning",
"identifier": {
"system": "FEST/Varenummer",
"value": "<article number>"
},
"display": null
}
Upstream currently delivers a single article number per authorization. If that changes, the mapping fans out to multiple MedicinalReference entries in the same list.
Code Systems
| OID / URI | Description | Used in |
|---|---|---|
urn:oid:2.16.578.1.12.4.1.102 |
Norwegian Regional Health Authority (RHF) | Jurisdictions |
urn:oid:2.16.578.1.12.4.1.1.7110 |
ICD-10 (Norwegian) | Indications, Reimbursement codes |
http://terminology.hl7.org/CodeSystem/meddra |
MedDRA | Indications, Reimbursement codes |
urn:oid:2.16.578.1.12.4.1.1.7427 |
Reimbursement regulation codes | Reimbursement regulation |
FEST/Varenummer |
FEST article numbers | Medicine references |
Extending the Mapping
The mapping logic lives in Api/Services/ConversionService.cs. Each field extraction is isolated in a private method (e.g., ExtractDiseaseGroup, ExtractJurisdictions). To adjust mapping for a specific field:
- Identify the relevant
Extract*orBuild*method. - Modify the filtering or transformation logic.
- The method is pure (no I/O), so changes can be verified with unit tests.
If the upstream FHIR API introduces new extension URLs, the conversion service will need to be updated to recognize them. Unrecognized extensions are currently silently ignored.