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/getcarecontacts-tkb-to-encounter | Version: 0.2.0 | |||
| Draft as of 2025-11-24 | Computable Name: ConceptMapGetCareContactsTKBToEncounter | |||
Complete mapping from GetCareContacts TKB logical model to FHIR Encounter and Provenance resources
Mapping from https://rivta.se/domains/clinicalprocess/logistics/logistics/GetCareContactsResponder/2 to Encounter
Group 1 Mapping from https://rivta.se/domains/clinicalprocess/logistics/logistics/GetCareContactsResponder/2 to Bundle
| Source Code | Relationship | Target Code | Comment |
| GetCareContactsResponse.patient-id (Patient ID (personnummer/samordningsnummer)) | is equivalent to | subject | Reference to Patient resource with Swedish national identifier |
| GetCareContactsResponse.careContact.careContactId (Care contact ID (unique identifier)) | is equivalent to | identifier | Business identifier for care contact. Use system from source system URL. |
| GetCareContactsResponse.careContact.contactStatus (Contact status (planned, arrived, in-progress, finished)) | is equivalent to | status | Encounter status: planned|arrived|triaged|in-progress|onleave|finished|cancelled|entered-in-error|unknown |
| GetCareContactsResponse.careContact.careContactType.class (Care contact class (inpatient, outpatient, emergency)) | is equivalent to | class | Encounter class. System: http://terminology.hl7.org/CodeSystem/v3-ActCode. Values: IMP (inpatient), AMB (ambulatory/outpatient), EMER (emergency), HH (home health), VR (virtual) |
| GetCareContactsResponse.careContact.careContactType.code (Care contact type code (detailed Swedish contact type)) | is equivalent to | type.coding.code | Swedish care contact type codes. System: https://terminologitjansten.inera.se/inera-kodverksforvaltning/kodverk/kv_vardkontakttyp (OID: 1.2.752.129.2.2.2.25). Examples: läkarbesök, sjuksköterskebesök, hembesök, telefonkontakt |
| GetCareContactsResponse.careContact.serviceType.code (Service type (specialty, clinic type)) | is equivalent to | serviceType.coding.code | Type of service provided. Swedish specialty codes or clinic types. |
| GetCareContactsResponse.careContact.priority (Contact priority (routine, urgent, emergency)) | is equivalent to | priority | Encounter priority. System: http://terminology.hl7.org/CodeSystem/v3-ActPriority |
| GetCareContactsResponse.careContact.period.start (Contact start date/time) | is equivalent to | period.start | When care contact started (admission time for inpatient, arrival time for outpatient) |
| GetCareContactsResponse.careContact.period.end (Contact end date/time) | is equivalent to | period.end | When care contact ended (discharge time for inpatient, departure time for outpatient) |
| GetCareContactsResponse.careContact.length (Contact length/duration) | is equivalent to | length | Quantity of time the encounter lasted. Can be calculated from period if not explicitly provided. |
| GetCareContactsResponse.careContact.reasonCode.code (Reason for contact (chief complaint, diagnosis)) | is equivalent to | reasonCode.coding.code | Coded reason for encounter. ICD-10-SE, SNOMED CT, or Swedish symptom codes. |
| GetCareContactsResponse.careContact.reasonReference (Reason reference (condition, observation)) | is equivalent to | reasonReference | Reference to Condition, Observation, or Procedure representing reason for encounter |
| GetCareContactsResponse.careContact.diagnosis.diagnosisCode (Encounter diagnosis) | is equivalent to | diagnosis.condition | Reference to Condition resource. Can have multiple diagnoses with different uses (admission, discharge, billing). |
| GetCareContactsResponse.careContact.diagnosis.use (Diagnosis use (admission, discharge, billing)) | is equivalent to | diagnosis.use | Role of diagnosis. System: http://terminology.hl7.org/CodeSystem/diagnosis-role. Values: AD (admission), DD (discharge), CC (chief complaint), billing |
| GetCareContactsResponse.careContact.diagnosis.rank (Diagnosis rank (primary, secondary)) | is equivalent to | diagnosis.rank | Ranking of diagnosis (1 = primary diagnosis) |
| GetCareContactsResponse.careContact.participant.healthcareProfessionalHSAId (Participant HSA-ID (physician, nurse, etc.)) | is equivalent to | participant.individual | Reference to Practitioner participating in encounter. Can have multiple participants. |
| GetCareContactsResponse.careContact.participant.participantType (Participant type/role (attending, consulting, etc.)) | is equivalent to | participant.type.coding.code | Type of participation. System: http://terminology.hl7.org/CodeSystem/v3-ParticipationType. Values: ATND (attender), CON (consultant), ADM (admitter), DIS (discharger) |
| GetCareContactsResponse.careContact.participant.period (Participant period (when participant was involved)) | is equivalent to | participant.period | Time period during which participant was involved in encounter |
| GetCareContactsResponse.careContact.appointmentId (Appointment ID (if contact was pre-scheduled)) | is equivalent to | appointment | Reference to Appointment resource if encounter was scheduled |
| GetCareContactsResponse.careContact.basedOn (Based on (referral, service request)) | is equivalent to | basedOn | Reference to ServiceRequest, CarePlan, or other request that initiated the encounter |
| GetCareContactsResponse.careContact.partOf (Part of (parent encounter)) | is equivalent to | partOf | Reference to parent Encounter. Example: outpatient visit as part of inpatient stay. |
| GetCareContactsResponse.careContact.serviceProvider.organizationHSAId (Service provider HSA-ID (care unit)) | is equivalent to | serviceProvider | Reference to Organization (care unit) providing the encounter |
| GetCareContactsResponse.careContact.location.locationId (Location ID (room, ward, clinic)) | is equivalent to | location.location | Reference to Location resource (room, ward, clinic, building) |
| GetCareContactsResponse.careContact.location.status (Location status (planned, active, completed)) | is equivalent to | location.status | Status of location during encounter: planned|active|reserved|completed |
| GetCareContactsResponse.careContact.location.period (Location period (time at this location)) | is equivalent to | location.period | Time period patient was at this location. Can have multiple locations during one encounter. |
| GetCareContactsResponse.careContact.hospitalization.preAdmissionIdentifier (Pre-admission identifier) | is equivalent to | hospitalization.preAdmissionIdentifier | Pre-admission identifier (e.g., pre-registration number) |
| GetCareContactsResponse.careContact.hospitalization.origin (Admission origin (from where patient came)) | is equivalent to | hospitalization.origin | Reference to Location from where patient came (e.g., home, other hospital, nursing home) |
| GetCareContactsResponse.careContact.hospitalization.admitSource (Admit source (how patient was admitted)) | is equivalent to | hospitalization.admitSource | From where patient was admitted. System: http://terminology.hl7.org/CodeSystem/admit-source |
| GetCareContactsResponse.careContact.hospitalization.reAdmission (Re-admission indicator) | is equivalent to | hospitalization.reAdmission | Whether this hospitalization is a re-admission |
| GetCareContactsResponse.careContact.hospitalization.dietPreference (Dietary preference) | is equivalent to | hospitalization.dietPreference | Diet preferences or restrictions during hospitalization |
| GetCareContactsResponse.careContact.hospitalization.specialArrangement (Special arrangements (interpreter, wheelchair, etc.)) | is equivalent to | hospitalization.specialArrangement | Special arrangements needed during encounter |
| GetCareContactsResponse.careContact.hospitalization.destination (Discharge destination (to where patient discharged)) | is equivalent to | hospitalization.destination | Reference to Location to where patient was discharged (e.g., home, other hospital, nursing home, deceased) |
| GetCareContactsResponse.careContact.hospitalization.dischargeDisposition (Discharge disposition (outcome of hospitalization)) | is equivalent to | hospitalization.dischargeDisposition | Category or kind of location after discharge. System: http://terminology.hl7.org/CodeSystem/discharge-disposition |
Group 2 Mapping from https://rivta.se/domains/clinicalprocess/logistics/logistics/GetCareContactsResponder/2 to Encounter
| Source Code | Relationship | Target Code | Comment |
| careContact.careContactHeader.documentId (Care contact document ID (unique business identifier)) | is equivalent to | identifier | Business identifier for care contact. System derived from sourceSystemHSAId. Must be consistent across TKB contract versions. |
| careContact.careContactHeader.patientId (Patient ID (personnummer/samordningsnummer/reservnummer)) | is equivalent to | subject | Reference to Patient resource with Swedish national identifier (OID 1.2.752.129.2.1.3.1 for personnummer, 1.2.752.129.2.1.3.3 for samordningsnummer) |
| careContact.careContactHeader.approvedForPatient (Approved for patient access (true/false)) | is equivalent to | meta.security | If false, add security label NOPATIENT (http://terminology.hl7.org/CodeSystem/v3-ActCode#NOPATIENT) to restrict patient access. See menprövningsflagga documentation. |
| careContact.careContactBody.careContactCode (Care contact type code (vårdkontakttyp)) | is equivalent to | type | Swedish care contact type. System: https://terminologitjansten.inera.se/inera-kodverksforvaltning/kodverk/kv_vardkontakttyp (OID 1.2.752.129.2.2.2.25). Maps to both Encounter.class (high-level) and Encounter.type (detailed). |
| careContact.careContactBody.careContactReason (Care contact reason (free text from patient)) | is equivalent to | reasonCode.text | Free text reason for care contact as stated by patient or representative. Can also create Condition/Observation and reference via reasonReference. |
| careContact.careContactBody.careContactTimePeriod.start (Care contact start time) | is equivalent to | period.start | Start time of care contact (admission for inpatient, arrival for outpatient). For outpatient visits, start and end may be same value. |
| careContact.careContactBody.careContactTimePeriod.end (Care contact end time) | is equivalent to | period.end | End time of care contact (discharge for inpatient, departure for outpatient). For outpatient visits, start and end may be same value. |
| careContact.careContactBody.careContactStatus (Care contact status (SNOMED CT SE codes)) | is related to | status | Maps from SNOMED CT SE (SCTID 53761000052103) to FHIR status. SNOMED 53631000052103 (tidbokad)→planned, 53651000052107 (pågående)→in-progress, 53671000052101 (avslutad)→finished, 53661000052105 (avbruten)→cancelled, 53641000052109 (inställd)→cancelled, 53691000052102 (makulerad)→entered-in-error |
| careContact.careContactBody.additionalPatientInformation.dateOfBirth (Patient date of birth) | (not mapped) | NOT MAPPED to Encounter. Belongs in Patient.birthDate. Included in TKB for cases without PU lookup. Format can be YYYY, YYYYMM, or YYYYMMDD. | |
| careContact.careContactBody.additionalPatientInformation.gender (Patient gender) | (not mapped) | NOT MAPPED to Encounter. Belongs in Patient.gender. Included in TKB for cases without PU lookup. Use KV Kön (OID 1.2.752.129.2.2.1.1). | |
Group 3 Mapping from https://rivta.se/domains/clinicalprocess/logistics/logistics/GetCareContactsResponder/2 to Provenance
| Source Code | Relationship | Target Code | Comment |
| careContact.careContactHeader.sourceSystemHSAid (Source system HSA-ID) | is equivalent to | entity.what | HSA-ID of source system. Also mapped to Encounter.meta.source as URI: https://hsaid.se/{HSA-ID}. In Provenance.entity with role=source. |
| careContact.careContactHeader.accountableHealthcareProfessional.authorTime (Author time (when information was registered)) | is equivalent to | recorded | Timestamp when care contact information was recorded/registered. Also mapped to Encounter.meta.lastUpdated. |
| careContact.careContactHeader.accountableHealthcareProfessional.healthcareProfessionalHSAid (Healthcare professional HSA-ID) | is equivalent to | agent.who | Reference to Practitioner with HSA-ID identifier. Agent.type=author. Also mapped to Encounter.participant for clinical involvement. |
| careContact.careContactHeader.accountableHealthcareProfessional.healthcareProfessionalName (Healthcare professional name) | is equivalent to | agent.who.display | Display name for practitioner. Full Practitioner resource should include structured name. |
| careContact.careContactHeader.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). Mapped to Provenance.agent.role or stored in Practitioner.qualification. |
| careContact.careContactHeader.accountableHealthcareProfessional.healthcareProfessionalOrgUnit.orgUnitHSAid (Organization unit HSA-ID (where professional works)) | is equivalent to | agent.onBehalfOf | Reference to Organization representing organizational unit. Part of organization hierarchy (orgUnit → careUnit → careGiver). |
| careContact.careContactHeader.accountableHealthcareProfessional.healthcareProfessionalOrgUnit.orgUnitName (Organization unit name) | is related to | Name of organizational unit. Stored in referenced Organization resource, not in Provenance directly. | |
| careContact.careContactHeader.accountableHealthcareProfessional.healthcareProfessionalOrgUnit.orgUnitTelecom (Organization unit telephone) | is related to | Phone number. Stored in Organization.telecom with system=phone. | |
| careContact.careContactHeader.accountableHealthcareProfessional.healthcareProfessionalOrgUnit.orgUnitEmail (Organization unit email) | is related to | Email address. Stored in Organization.telecom with system=email. | |
| careContact.careContactHeader.accountableHealthcareProfessional.healthcareProfessionalOrgUnit.orgUnitAddress (Organization unit postal address) | is related to | Postal address in natural format. Stored in Organization.address.text and parsed into structured elements if possible. | |
| careContact.careContactHeader.accountableHealthcareProfessional.healthcareProfessionalOrgUnit.orgUnitLocation (Organization unit location (city/place)) | is related to | Physical location name/city. Stored in Organization.address.city or as Location resource. | |
| careContact.careContactHeader.accountableHealthcareProfessional.healthcareProfessionalCareUnitHSAid (Care unit HSA-ID (vårdenhet - PDL enhet)) | is equivalent to | entity.what | HSA-ID for care unit (vårdenhet). Reference to Organization. Part of hierarchy chain. Also in Encounter.serviceProvider. |
| careContact.careContactHeader.accountableHealthcareProfessional.healthcareProfessionalCareGiverHSAid (Care provider HSA-ID (vårdgivare)) | is equivalent to | entity.what | HSA-ID for care provider (vårdgivare). Top-level organization in hierarchy. Reference to Organization. |
| careContact.careContactBody.careContactOrgUnit.orgUnitHSAid (Care contact org unit HSA-ID (where contact occurred)) | is related to | Organization unit where care contact was performed. Can differ from professional's home unit. Mapped to Encounter.serviceProvider or Encounter.location. | |
| careContact.careContactBody.careContactOrgUnit.orgUnitName (Care contact org unit name) | is related to | Name of unit where contact occurred. Stored in Organization or Location resource. | |
| careContact.careContactBody.careContactOrgUnit.orgUnitTelecom (Care contact org unit telephone) | is related to | Phone for unit where contact occurred. | |
| careContact.careContactBody.careContactOrgUnit.orgUnitEmail (Care contact org unit email) | is related to | Email for unit where contact occurred. | |
| careContact.careContactBody.careContactOrgUnit.orgUnitAddress (Care contact org unit address) | is related to | Address of unit where contact occurred. | |
| careContact.careContactBody.careContactOrgUnit.orgUnitLocation (Care contact org unit location (city/place)) | is related to | Physical location/city where contact occurred. |
Group 4 Mapping from https://rivta.se/domains/clinicalprocess/logistics/logistics/GetCareContactsResponder/2 to Bundle
| Source Code | Relationship | Target Code | Comment |
| careContact.careContactHeader.documentTitle (Document title (DEPRECATED - shall not be used)) | (not mapped) | NOT MAPPED. TKB specifies cardinality 0..0 - this field shall not be populated. | |
| careContact.careContactHeader.documentTime (Document time (DEPRECATED - shall not be used)) | (not mapped) | NOT MAPPED. TKB specifies cardinality 0..0 - use accountableHealthcareProfessional.authorTime instead. | |
| careContact.careContactHeader.legalAuthenticator (Legal authenticator (DEPRECATED - shall not be used)) | (not mapped) | NOT MAPPED. TKB specifies cardinality 0..0 - not used for care contacts. | |
| careContact.careContactHeader.nullified (Nullified flag (DEPRECATED - shall not be used)) | (not mapped) | NOT MAPPED. TKB specifies cardinality 0..0 - use careContactStatus=makulerad (53691000052102) instead. | |
| careContact.careContactHeader.nullifiedReason (Nullified reason (DEPRECATED - shall not be used)) | (not mapped) | NOT MAPPED. TKB specifies cardinality 0..0. | |
| careContact.careContactHeader.careContactId (Care contact ID in header (DEPRECATED - use documentId)) | (not mapped) | NOT MAPPED. TKB specifies cardinality 0..0 - use careContactHeader.documentId instead. | |
| result.resultCode (Result code (OK, INFO, ERROR)) | (not mapped) | NOT MAPPED to resources. Used in Bundle-level OperationOutcome or HTTP status codes. OK→200, INFO→200 with warnings, ERROR→4xx/5xx. | |
| result.errorCode (Error code (when resultCode=ERROR)) | (not mapped) | NOT MAPPED to resources. Used in OperationOutcome.issue.code for error responses. | |
| result.subCode (Error sub-code) | (not mapped) | NOT MAPPED. No subcodes specified in GetCareContacts v2.0/v3.0. | |
| result.logId (Log ID (UUID for troubleshooting)) | (not mapped) | NOT MAPPED to resources. Used in OperationOutcome.issue.diagnostics or X-Request-Id header for error tracking. | |
| result.message (Result message (descriptive text)) | (not mapped) | NOT MAPPED to resources. User-facing message in OperationOutcome.issue.diagnostics or Bundle.entry.response.outcome. | |