Inera Core Implementation Guide
0.2.0 - ci-build
Sweden
Inera Core Implementation Guide - Local Development build (v0.2.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| Official URL: https://inera.se/fhir/core/ConceptMap/getdiagnosis-tkb-to-condition | Version: 0.2.0 | |||
| Draft as of 2025-11-24 | Computable Name: ConceptMapGetDiagnosisTKBToCondition | |||
Complete mapping from GetDiagnosis TKB service to FHIR Condition and Provenance resources
Mapping from https://rivta.se/domains/clinicalprocess/healthcond/description/GetDiagnosisResponder/2 to Condition
Group 1 Mapping from https://rivta.se/domains/clinicalprocess/healthcond/description/GetDiagnosisResponder/2 to Bundle
| Source Code | Relationship | Target Code | Comment |
| patientId (Query parameter: Patient ID filter) | (not mapped) | NOT MAPPED. Used as search parameter: GET /Condition?subject=Patient/191212121212 | |
| careUnitHSAid (Query parameter: Filter by care unit HSA-ID) | (not mapped) | NOT MAPPED. Used as search parameter: GET /Condition?asserter.onBehalfOf.identifier=https://hsaid.se|SE2321000016-A001 | |
| timePeriod (Query parameter: Time period filter (from-to)) | (not mapped) | NOT MAPPED. Used as search parameter: GET /Condition?recorded-date=ge2025-01-01&recorded-date=le2025-12-31 | |
Group 2 Mapping from https://rivta.se/domains/clinicalprocess/healthcond/description/GetDiagnosisResponder/2 to Condition
| Source Code | Relationship | Target Code | Comment |
| diagnosis.diagnosisHeader.documentId (Diagnosis ID (unique business identifier)) | is equivalent to | identifier | Unique diagnosis identifier within source system. System derived from sourceSystemHSAid. |
| diagnosis.diagnosisHeader.patientId (Patient ID (personnummer/samordningsnummer/reservnummer)) | is equivalent to | subject | Reference to Patient with Swedish national identifier. OID 1.2.752.129.2.1.3.1 (personnummer), 1.2.752.129.2.1.3.3 (samordningsnummer) |
| diagnosis.diagnosisHeader.approvedForPatient (Approved for patient access (true/false)) | is equivalent to | meta.security | If false, add security label NOPATIENT to restrict patient access (menprövningsflagga). |
| diagnosis.diagnosisBody.diagnosisCode (Diagnosis code (ICD-10-SE, KVÅ)) | is equivalent to | code | ICD-10-SE (http://hl7.org/fhir/sid/icd-10) or KVÅ codes. code.coding.code, code.coding.display, code.text. May have multiple codings. |
| diagnosis.diagnosisBody.diagnosisCode.code (Diagnosis code value) | is equivalent to | code.coding.code | ICD-10-SE code value (e.g., I10, E11.9). System: http://hl7.org/fhir/sid/icd-10 |
| diagnosis.diagnosisBody.diagnosisCode.codeSystem (Diagnosis code system OID) | is related to | code.coding.system | OID → FHIR URL. ICD-10-SE OID → http://hl7.org/fhir/sid/icd-10. KVÅ → Swedish classification URL. |
| diagnosis.diagnosisBody.diagnosisCode.displayName (Diagnosis text/display name) | is equivalent to | code.coding.display | Human-readable diagnosis name. Also populate code.text for overall display. |
| diagnosis.diagnosisBody.diagnosisCode.originalText (Original diagnosis text) | is equivalent to | code.text | Free-text diagnosis description. Use when no exact code match. |
| diagnosis.diagnosisBody.diagnosisType (Diagnosis type (primär, sekundär, underdiagnos)) | maps to wider concept | category | Swedish diagnosis types → FHIR category. May need ConceptMap. Use condition-category: problem-list-item|encounter-diagnosis. |
| diagnosis.diagnosisBody.diagnosisStatus (Diagnosis clinical status) | maps to wider concept | clinicalStatus | Swedish status → FHIR clinicalStatus (active|recurrence|relapse|inactive|remission|resolved). Requires transformation. |
| diagnosis.diagnosisBody.verificationStatus (Diagnosis verification status (confirmed, provisional, differential)) | is equivalent to | verificationStatus | FHIR verificationStatus: unconfirmed|provisional|differential|confirmed|refuted|entered-in-error |
| diagnosis.diagnosisBody.diagnosisSeverity (Diagnosis severity (mild, moderate, severe)) | is equivalent to | severity | Use SNOMED CT severity codes: 255604002 (mild), 6736007 (moderate), 24484000 (severe) |
| diagnosis.diagnosisBody.diagnosisTime (Diagnosis date/time) | maps to wider concept | onsetDateTime | When condition started → onsetDateTime. When diagnosis recorded → recordedDate. Use based on context. |
| diagnosis.diagnosisHeader.careContactId (Care contact ID (encounter context)) | is equivalent to | encounter | Reference to Encounter when diagnosis made during care contact. |
| diagnosis.diagnosisBody.bodyStructure (Body structure/location) | is equivalent to | bodySite | Body site affected by condition. Use SNOMED CT body structure codes. |
| diagnosis.diagnosisHeader.nullified (Diagnosis nullified flag) | is equivalent to | verificationStatus | If nullified=true, set verificationStatus=entered-in-error. Store nullifiedReason in Provenance. |
Group 3 Mapping from https://rivta.se/domains/clinicalprocess/healthcond/description/GetDiagnosisResponder/2 to Provenance
| Source Code | Relationship | Target Code | Comment |
| diagnosis.diagnosisHeader.sourceSystemHSAid (Source system HSA-ID) | is equivalent to | entity.what | HSA-ID of source system. Also mapped to Condition.meta.source as https://hsaid.se/{HSA-ID}. Provenance.entity.role=source. |
| diagnosis.diagnosisHeader.accountableHealthcareProfessional.authorTime (Author time (registration timestamp)) | is equivalent to | recorded | When diagnosis was recorded. Also mapped to Condition.recordedDate. |
| diagnosis.diagnosisHeader.accountableHealthcareProfessional.healthcareProfessionalHSAid (Healthcare professional HSA-ID) | is equivalent to | agent.who | Reference to Practitioner with HSA-ID. Provenance.agent.type=author. Also in Condition.recorder/asserter. |
| diagnosis.diagnosisHeader.accountableHealthcareProfessional.healthcareProfessionalName (Healthcare professional name) | is equivalent to | agent.who.display | Display name. Full Practitioner resource should have structured name. |
| diagnosis.diagnosisHeader.accountableHealthcareProfessional.healthcareProfessionalRoleCode (Healthcare professional role/befattning) | is related to | agent.role | Professional role (befattning). Use KV Befattning (OID 1.2.752.129.2.2.1.4). Also in Practitioner.qualification. |
| diagnosis.diagnosisHeader.accountableHealthcareProfessional.healthcareProfessionalOrgUnit (Organization unit (where professional works)) | is equivalent to | agent.onBehalfOf | Reference to Organization (organizational unit). Full details (HSA-ID, name, telecom, address, location) in Organization resource. |
| diagnosis.diagnosisHeader.accountableHealthcareProfessional.healthcareProfessionalCareUnitHSAid (Care unit HSA-ID (vårdenhet)) | is equivalent to | entity.what | HSA-ID for care unit. Reference to Organization. Part of PDL hierarchy. |
| diagnosis.diagnosisHeader.accountableHealthcareProfessional.healthcareProfessionalCareGiverHSAid (Care provider HSA-ID (vårdgivare)) | is equivalent to | entity.what | HSA-ID for care provider. Top-level organization in PDL hierarchy. Reference to Organization. |
| diagnosis.diagnosisHeader.legalAuthenticator.signatureTime (Signature timestamp) | is equivalent to | signature.when | When diagnosis was digitally signed (if applicable). |
| diagnosis.diagnosisHeader.legalAuthenticator.legalAuthenticatorHSAid (Legal authenticator HSA-ID) | is equivalent to | signature.who | Reference to Practitioner who signed diagnosis. Provenance.agent.type=legal. |
| diagnosis.diagnosisHeader.nullifiedReason (Reason for nullification) | is related to | reason | Why diagnosis was nullified. Store in Provenance.reason when verificationStatus=entered-in-error. |
Group 4 Mapping from https://rivta.se/domains/clinicalprocess/healthcond/description/GetDiagnosisResponder/2 to Bundle
| Source Code | Relationship | Target Code | Comment |
| diagnosis.diagnosisHeader.documentTitle (Document title) | (not mapped) | NOT MAPPED. Cardinality 0..0 for GetDiagnosis. Use diagnosisCode.displayName instead. | |
| diagnosis.diagnosisHeader.documentTime (Document time) | (not mapped) | NOT MAPPED. Cardinality 0..0 for GetDiagnosis. Use authorTime or diagnosisTime instead. | |
| result.resultCode (Result code (OK, INFO, ERROR)) | (not mapped) | NOT MAPPED to resources. HTTP status: OK→200, INFO→200 with warnings, ERROR→4xx/5xx. Bundle-level OperationOutcome for details. | |
| result.errorCode (Error code) | (not mapped) | NOT MAPPED to resources. Use in OperationOutcome.issue.code when resultCode=ERROR. | |
| result.logId (Log ID (UUID for troubleshooting)) | (not mapped) | NOT MAPPED to resources. Use in OperationOutcome.issue.diagnostics or X-Request-Id header. | |
| result.message (Result message) | (not mapped) | NOT MAPPED to resources. User-facing message in OperationOutcome.issue.diagnostics. | |