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

ConceptMap: ConceptMap GetCarePlan TKB to FHIR DocumentReference (Experimental)

Official URL: https://inera.se/fhir/core/ConceptMap/getcareplan-tkb-to-documentreference Version: 0.2.0
Draft as of 2026-01-09 Computable Name: ConceptMapGetCarePlanTKBToDocumentReference

Mapping from GetCarePlan v2.0 TKB service to FHIR DocumentReference and Provenance resources.

TKB Service: GetCarePlan v2.0
TKB Domain: clinicalprocess:logistics:logistics v2 Logical Model: GetcareplansResponseLM FHIR Resources: DocumentReference (primary), Provenance (metadata)

Mapping Coverage:

  • ✅ Header metadata: 15+ elements (document ID, title, patient, author, signer, care contact)
  • ✅ Document content: Multiple attachments with mediaType (text/plain, text/html, image/png, image/jpeg, image/tiff, application/pdf)
  • ✅ Plan metadata: Type of care plan (SIP, SPLPTLRV, SPU, VP, HP, RP, GP, SVP), participating care units
  • ✅ Access control: approvedForPatient flag for patient portal visibility

Care Plan Types (typeOfCarePlan):

  • SIP - Samordnad individuell plan (Coordinated individual plan)
  • SPLPTLRV - Samordnad plan enligt LPT eller LRV (Coordinated plan according to Mental Health Act)
  • SPU - Samordnad plan vid utskrivning (Coordinated discharge plan)
  • VP - Vårdplan (Care plan)
  • HP - Habiliteringsplan (Habilitation plan)
  • RP - Rehabiliteringsplan (Rehabilitation plan)
  • GP - Genomförandeplan (Implementation plan)
  • SVP - Standardiserad vårdplan (Standardized care plan)

Mapping from https://rivta.se/domains/clinicalprocess/logistics/logistics/GetCarePlansResponder/2 to DocumentReference


Group 1 Mapping from https://rivta.se/domains/clinicalprocess/logistics/logistics/GetCarePlansResponder/2 to Bundle

Source CodeRelationshipTarget CodeComment
patientId (Patient ID (personnummer/samordningsnummer/reservnummer))(not mapped)Query parameter: GET /DocumentReference?subject=Patient/191212121212&type=care-plan
careUnitHSAId (Care unit HSA-ID filter)(not mapped)Query parameter: GET /DocumentReference?custodian=Organization/{hsaid}
datePeriod (Date period for document creation)(not mapped)Query parameter: GET /DocumentReference?date=ge2024-01-01&date=le2024-12-31
sourceSystemHSAId(not mapped)Query parameter: GET /DocumentReference?custodian.identifier={hsaid}
careContactId (Care contact ID filter)(not mapped)Query parameter: GET /DocumentReference?context=Encounter/{careContactId}

Group 2 Mapping from https://rivta.se/domains/clinicalprocess/logistics/logistics/GetCarePlansResponder/2 to DocumentReference

Source CodeRelationshipTarget CodeComment
carePlan.carePlanHeader.documentId (Document ID (care plan identifier))is equivalent tomasterIdentifierUnique identifier for the care plan document, stable across versions
carePlan.carePlanHeader.documentTitle (Document title (care plan heading))is equivalent todescriptionDescriptive title for the care plan (e.g., 'Samordnad vårdplanering', 'Rehabiliteringsplan')
carePlan.carePlanHeader.documentTime (Document creation time)is equivalent todateWhen the care plan document was created
carePlan.carePlanHeader.patientId (Patient ID)is equivalent tosubjectReference to Patient resource with Swedish national identifier
carePlan.carePlanHeader.accountableHealthcareProfessional (Accountable healthcare professional (care plan author))is equivalent toauthorReference to PractitionerRole for the healthcare professional responsible for the care plan
carePlan.carePlanHeader.legalAuthenticator (Legal authenticator (signer))is equivalent toauthenticatorReference to Practitioner who signed the care plan document
carePlan.carePlanHeader.approvedForPatient (Approved for patient viewing (direktåtkomst))is related tosecurityLabelIf false, add security label to restrict patient portal access. Use SNOMED CT code or custom extension
carePlan.carePlanHeader.careContactId (Care contact ID (triggering encounter))is equivalent tocontext.encounterReference to Encounter that prompted the care plan creation
carePlan.carePlanHeader.sourceSystemHSAId (Source system HSA-ID)is equivalent tocustodianReference to Organization (source system) that maintains the document
carePlan.carePlanBody.typeOfCarePlan (Type of care plan (SIP, VP, HP, RP, etc.))is equivalent totypeCodeableConcept for care plan type: SIP, SPLPTLRV, SPU, VP, HP, RP, GP, SVP. Use Swedish care plan terminology
carePlan.carePlanBody.content (Care plan content (document attachments))is equivalent tocontentArray of attachments with content.attachment elements. Each TKB content maps to one FHIR content element
carePlan.carePlanBody.content.mediaType (Media type (MIME type))is equivalent tocontent.attachment.contentTypeMIME type: text/plain, text/html, image/png, image/jpeg, image/tiff, application/pdf
carePlan.carePlanBody.content.value (Inline binary data (base64))is equivalent tocontent.attachment.dataBase64-encoded binary data. Use when content is embedded inline
carePlan.carePlanBody.content.reference (External reference (URL))is equivalent tocontent.attachment.urlURL to external binary file. Use when content is stored externally
carePlan.carePlanBody.participatingCareUnitHSAId (Participating care units (HSA-IDs))is related tocontext.relatedArray of Organization references for participating care units. Use context.related or custom extension
carePlan.status (Document status (implicit from TKB))is equivalent tostatusDocumentReference.status: current (if active), superseded (if replaced), entered-in-error (if nullified)
carePlan.category (Document category (care plan))is equivalent tocategoryUse LOINC code for care plan documents or Swedish care plan category codes

Group 3 Mapping from https://rivta.se/domains/clinicalprocess/logistics/logistics/GetCarePlansResponder/2 to Provenance

Source CodeRelationshipTarget CodeComment
carePlan.carePlanHeader.sourceSystemHSAId (Source system HSA-ID)is equivalent toentity.whatProvenance.entity.what references Device with HSA-ID. Provenance.entity.role = source
carePlan.carePlanHeader.accountableHealthcareProfessional.authorTime (Author time (registration time))is equivalent torecordedWhen the care plan was documented/registered in the source system
carePlan.carePlanHeader.accountableHealthcareProfessional.healthcareProfessionalHSAId (Author HSA-ID)is equivalent toagent.whoProvenance.agent.who references PractitionerRole with type=author/documenter
carePlan.carePlanHeader.accountableHealthcareProfessional.healthcareProfessionalcareUnitHSAId (Author's care unit HSA-ID)is equivalent toagent.onBehalfOfProvenance.agent.onBehalfOf references Organization (care unit)
carePlan.carePlanHeader.accountableHealthcareProfessional.healthcareProfessionalcareGiverHSAId (Care giver HSA-ID (vårdgivare))is equivalent toentity.whatProvenance.entity.what references Organization (care giver) for organizational hierarchy
carePlan.carePlanHeader.legalAuthenticator.signatureTime (Signature time)is equivalent tosignature.whenWhen the care plan document was signed
carePlan.carePlanHeader.legalAuthenticator.legalAuthenticatorHSAId (Signer HSA-ID)is equivalent tosignature.whoProvenance.signature.who references Practitioner who signed the document

Group 4 Mapping from https://rivta.se/domains/clinicalprocess/logistics/logistics/GetCarePlansResponder/2 to Bundle

Source CodeRelationshipTarget CodeComment
result.resultCode (Result code (OK, INFO, ERROR))(not mapped)Maps to Bundle.entry.response.status or OperationOutcome for errors
result.errorCode (Error code)(not mapped)Maps to OperationOutcome.issue.code when resultCode=ERROR
result.logId (Log ID (UUID for troubleshooting))(not mapped)UUID for error tracking. Can be included in OperationOutcome.issue.diagnostics
result.message (Result message)(not mapped)User-facing message. Maps to OperationOutcome.issue.diagnostics
result.subcode (Result subcode (not specified))(not mapped)No subcodes defined in this version. Reserved for future use