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 GetActivities TKB to FHIR Procedure - XML Representation

Draft as of 2025-11-25

Raw xml | Download


<ConceptMap xmlns="http://hl7.org/fhir">
  <id value="ConceptMapGetActivitiesTKBToProcedure"/>
  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: ConceptMap ConceptMapGetActivitiesTKBToProcedure</b></p><a name="ConceptMapGetActivitiesTKBToProcedure"> </a><a name="hcConceptMapGetActivitiesTKBToProcedure"> </a><p>Mapping from https://rivta.se/domains/clinicalprocess/activity/actions/GetActivitiesResponder/1 to <a href="http://hl7.org/fhir/R4/procedure.html">Procedure</a></p><br/><p><b>Group 1 </b>Mapping from <code>https://rivta.se/domains/clinicalprocess/activity/actions/GetActivitiesResponder/1</code> to <a href="http://hl7.org/fhir/R4/bundle.html">Bundle</a></p><table class="grid"><tr><td><b>Source Code</b></td><td><b>Relationship</b></td><td><b>Target Code</b></td><td><b>Comment</b></td></tr><tr><td>patientId (Query parameter: Patient ID filter)</td><td colspan="2" style="background-color: #efefef">(not mapped)</td><td style="background-color: #efefef">NOT MAPPED. Used as search parameter: GET /Procedure?patient=Patient/191212121212</td></tr><tr><td>time (Query parameter: Time period filter)</td><td colspan="2" style="background-color: #efefef">(not mapped)</td><td style="background-color: #efefef">NOT MAPPED. Used as search parameter: GET /Procedure?date=ge2024-01-01&amp;date=le2024-12-31</td></tr><tr><td>activityCode (Query parameter: Activity code filter (KVÅ))</td><td colspan="2" style="background-color: #efefef">(not mapped)</td><td style="background-color: #efefef">NOT MAPPED. Used as search parameter: GET /Procedure?code=http://www.socialstyrelsen.se/kva|ABC12</td></tr><tr><td>activityId (Query parameter: Activity ID filter)</td><td colspan="2" style="background-color: #efefef">(not mapped)</td><td style="background-color: #efefef">NOT MAPPED. Used as search parameter: GET /Procedure?identifier=hsaid|xyz123</td></tr><tr><td>sourceSystemId (Query parameter: Source system filter)</td><td colspan="2" style="background-color: #efefef">(not mapped)</td><td style="background-color: #efefef">NOT MAPPED. Filter by source system HSA-ID</td></tr><tr><td>careGiverId (Query parameter: Care giver filter)</td><td colspan="2" style="background-color: #efefef">(not mapped)</td><td style="background-color: #efefef">NOT MAPPED. Used to filter by care giver organization</td></tr><tr><td>careUnitId (Query parameter: Care unit filter)</td><td colspan="2" style="background-color: #efefef">(not mapped)</td><td style="background-color: #efefef">NOT MAPPED. Used to filter by care unit</td></tr><tr><td>relation (Query parameter: Related information filter)</td><td colspan="2" style="background-color: #efefef">(not mapped)</td><td style="background-color: #efefef">NOT MAPPED. Filter by relationships to other clinical information</td></tr><tr><td>interactionAgreementId (Query parameter: Interaction agreement (deprecated))</td><td colspan="2" style="background-color: #efefef">(not mapped)</td><td style="background-color: #efefef">NOT MAPPED. Fixed UUID, not used: 2866a7c4-9c60-433f-9035-a4d779ffe7a1</td></tr></table><hr/><p><b>Group 2 </b>Mapping from <code>https://rivta.se/domains/clinicalprocess/activity/actions/GetActivitiesResponder/1</code> to <a href="http://hl7.org/fhir/R4/procedure.html">Procedure</a></p><table class="grid"><tr><td><b>Source Code</b></td><td><b>Relationship</b></td><td><b>Target Code</b></td><td><b>Comment</b></td></tr><tr><td>activityGroup.activity.id (Activity ID (unique business identifier))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>identifier</td><td>Unique activity identifier within source system. id.root = source system HSA-ID, id.extension = local activity ID.</td></tr><tr><td>activityGroup.patient.id (Patient ID (personnummer/samordningsnummer))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>subject</td><td>Reference to PatientBaseInera. Maps personnummer (1.2.752.129.2.1.3.1) or samordningsnummer (1.2.752.129.2.1.3.3).</td></tr><tr><td>activityGroup.activity.code (Activity code (KVÅ or other classification))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>code</td><td>Activity code, typically KVÅ (OID 1.2.752.116.1.1.1.1.4). Maps to CodeableConcept with code.code, code.codeSystem, code.displayName.</td></tr><tr><td>activityGroup.activity.status (Activity status)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#relatedto" title="relatedto">is related to</a></td><td>status</td><td>Maps to FHIR status values: preparation, in-progress, completed, not-done, stopped, unknown. TKB uses different code system, requires mapping.</td></tr><tr><td>activityGroup.activity.time (Activity time (point in time or period))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>performedDateTime</td><td>If time.start == time.end, use performedDateTime. If time.start != time.end, use performedPeriod.</td></tr><tr><td>activityGroup.activity.time.start (Activity start time)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>performedPeriod.start</td><td>Start of activity period. Format: ÅÅÅÅMMDDttmmss.</td></tr><tr><td>activityGroup.activity.time.end (Activity end time)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>performedPeriod.end</td><td>End of activity period. Format: ÅÅÅÅMMDDttmmss.</td></tr><tr><td>activityGroup.performerRole (Performer (practitioner role))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>performer</td><td>Person who performed the activity. Maps to performer.actor (PractitionerBaseInera).</td></tr><tr><td>activityGroup.performerRole.person.id (Performer person ID (HSA-ID))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>performer.actor</td><td>Reference to PractitionerBaseInera. HSA-ID in id.extension (OID 1.2.752.129.2.1.4.1).</td></tr><tr><td>activityGroup.performerRole.code (Performer role code (KV Befattning))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>performer.function</td><td>Role of performer, typically KV Befattning (OID 1.2.752.129.2.2.1.4).</td></tr><tr><td>activityGroup.performerRole.careUnit.id (Care unit (PDL vårdenhet))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#relatedto" title="relatedto">is related to</a></td><td>location</td><td>Care unit HSA-ID. Maps to Location resource reference, or use performer.onBehalfOf for organization.</td></tr><tr><td>activityGroup.performerRole.careUnit.careGiver.id (Care giver (vårdgivare organization))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>performer.onBehalfOf</td><td>Reference to OrganizationBaseInera. Care giver HSA-ID (OID 1.2.752.129.2.1.4.1).</td></tr><tr><td>activityGroup.activity.targetSite (Target body site)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>bodySite</td><td>Anatomical location where procedure was performed. Maps to CodeableConcept (e.g., SNOMED CT body site codes).</td></tr><tr><td>activityGroup.activity.method (Activity method)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>extension:method</td><td>Method/technique used during the procedure. Uses standard HL7 procedure-method extension (http://hl7.org/fhir/StructureDefinition/procedure-method).</td></tr><tr><td>activityGroup.activity.description (Activity description (free text))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>note</td><td>Free text description of the activity.</td></tr><tr><td>activityGroup.activity.registrationTime (Registration time)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>Provenance.recorded</td><td>When activity was registered in system. Use Provenance.recorded with activity=CREATE and target=Procedure.</td></tr><tr><td>activityGroup.activity.approvedForPatient (Approved for patient viewing (menprövningsflagga))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#relatedto" title="relatedto">is related to</a></td><td>meta.security</td><td>Menprövningsflagga - indicates patient viewing approval. Use meta.security labels or link to Consent resource for patient access control.</td></tr><tr><td>activityGroup.legalAuthenticator (Legal authenticator (signatory))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>Provenance.agent</td><td>Person who signed/authenticated the activity. Map to Provenance resource with agent.role = legal authenticator (http://terminology.hl7.org/CodeSystem/v3-ParticipationType#LA).</td></tr><tr><td>activityGroup.sourceSystem.id (Source system (HSA-ID))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#relatedto" title="relatedto">is related to</a></td><td>identifier.system</td><td>Source system HSA-ID. Used as identifier.system prefix, or in meta.source.</td></tr><tr><td>activityGroup.careProcessId (Care process UUID (vårdprocess))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>basedOn</td><td>UUID for individualized care process. Reference EpisodeOfCare resource with identifier.value = careProcessId UUID. Use basedOn since Procedure.partOf only allows Procedure|Observation|MedicationAdministration.</td></tr><tr><td>activityGroup.additionalParticipant (Additional participants)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#relatedto" title="relatedto">is related to</a></td><td>performer</td><td>Other participants (persons, devices, locations) in the activity. Map persons to additional performer entries, devices to focalDevice, locations to location element.</td></tr><tr><td>activityGroup.additionalParticipant.type (Participant type)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#relatedto" title="relatedto">is related to</a></td><td>performer.function</td><td>Type of participant involvement.</td></tr><tr><td>activityGroup.additionalParticipant.role (Participant role)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#relatedto" title="relatedto">is related to</a></td><td>performer.function</td><td>Role code for participant.</td></tr><tr><td>activityGroup.additionalParticipant.device (Participating device)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>focalDevice</td><td>Device used in procedure. Maps to focalDevice with reference to Device resource.</td></tr><tr><td>activityGroup.additionalParticipant.location (Participating location)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>location</td><td>Location where procedure was performed. Reference to Location resource.</td></tr><tr><td>activityGroup.activity.relation (Relations to other clinical information)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#relatedto" title="relatedto">is related to</a></td><td>basedOn</td><td>Relationships to observations (chb-o) or other activities (caa-ga). Use basedOn (fulfills order/request), partOf (part of larger activity), or reasonReference (justification) depending on relation type.</td></tr><tr><td>activityGroup.activity.relation.code (Relation type code)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#relatedto" title="relatedto">is related to</a></td><td>basedOn</td><td>Type of relationship determines which element to use: basedOn (fulfills), partOf (component), reasonReference (justification). Relation.code context preserved in referenced resource identifier.</td></tr><tr><td>activityGroup.activity.relation.referredInformation.id (Related information ID)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#relatedto" title="relatedto">is related to</a></td><td>basedOn</td><td>ID of related observation or activity. Maps to reference (Observation, Procedure, etc.).</td></tr><tr><td>activityGroup.activity.additionalInformation (Additional information (key-value pairs))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#relatedto" title="relatedto">is related to</a></td><td>note</td><td>Additional structured information as key-value pairs. Store as formatted text in Procedure.note (Annotation type). For structured data, create referenced Observation resources.</td></tr></table><hr/><p><b>Group 3 </b>Mapping from <code>https://rivta.se/domains/clinicalprocess/activity/actions/GetActivitiesResponder/1</code> to <a href="http://hl7.org/fhir/R4/provenance.html">Provenance</a></p><table class="grid"><tr><td><b>Source Code</b></td><td><b>Relationship</b></td><td><b>Target Code</b></td><td><b>Comment</b></td></tr><tr><td>activityGroup.legalAuthenticator.id (Legal authenticator ID)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>agent.who</td><td>Reference to PractitionerBaseInera who signed/authenticated the activity.</td></tr><tr><td>activityGroup.legalAuthenticator.time (Authentication time)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>occurredDateTime</td><td>When the activity was authenticated/signed.</td></tr><tr><td>activityGroup.legalAuthenticator.name (Authenticator name)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#equivalent" title="equivalent">is equivalent to</a></td><td>agent.who.display</td><td>Name of legal authenticator.</td></tr><tr><td>activityGroup.patient.dateOfBirth (Patient date of birth)</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#relatedto" title="relatedto">is related to</a></td><td>target</td><td>Patient demographics echoed in response. Not mapped separately; available in referenced Patient resource.</td></tr><tr><td>activityGroup.patient.gender (Patient gender (KV Kön))</td><td><a href="http://hl7.org/fhir/R5/codesystem-concept-map-relationship.html#relatedto" title="relatedto">is related to</a></td><td>target</td><td>Patient demographics. Available in referenced Patient resource with KV Kön code (OID 1.2.752.129.2.2.1.1).</td></tr></table><hr/><p><b>Group 4 </b>Mapping from <code>https://rivta.se/domains/clinicalprocess/activity/actions/GetActivitiesResponder/1</code> to <a href="http://hl7.org/fhir/R4/bundle.html">Bundle</a></p><table class="grid"><tr><td><b>Source Code</b></td><td><b>Relationship</b></td><td><b>Target Code</b></td><td><b>Comment</b></td></tr><tr><td>activityGroup (Activity group (container))</td><td colspan="2" style="background-color: #efefef">(not mapped)</td><td style="background-color: #efefef">NOT MAPPED. Container/grouping structure for optimization. In FHIR, each activity becomes separate Procedure resource in Bundle.</td></tr><tr><td>activityGroup.device (Device (deprecated - use additionalParticipant))</td><td colspan="2" style="background-color: #efefef">(not mapped)</td><td style="background-color: #efefef">NOT MAPPED. Deprecated in TKB v1.3. Use activityGroup.additionalParticipant.device instead.</td></tr><tr><td>activityGroup.location (Location (deprecated - use additionalParticipant))</td><td colspan="2" style="background-color: #efefef">(not mapped)</td><td style="background-color: #efefef">NOT MAPPED. Deprecated in TKB v1.3. Use activityGroup.additionalParticipant.location instead.</td></tr></table></div>
  </text>
  <url
       value="https://inera.se/fhir/core/ConceptMap/getactivities-tkb-to-procedure"/>
  <version value="0.2.0"/>
  <name value="ConceptMapGetActivitiesTKBToProcedure"/>
  <title value="ConceptMap GetActivities TKB to FHIR Procedure"/>
  <status value="draft"/>
  <experimental value="true"/>
  <date value="2025-11-25"/>
  <publisher value="Inera AB"/>
  <contact>
    <name value="Inera AB"/>
    <telecom>
      <system value="url"/>
      <value value="https://www.inera.se"/>
    </telecom>
    <telecom>
      <system value="email"/>
      <value value="info@inera.se"/>
    </telecom>
  </contact>
  <contact>
    <name value="Inera AB"/>
    <telecom>
      <system value="url"/>
      <value value="https://www.inera.se"/>
    </telecom>
    <telecom>
      <system value="email"/>
      <value value="info@inera.se"/>
    </telecom>
  </contact>
  <description
               value="Complete mapping from GetActivities TKB service to FHIR Procedure resource"/>
  <jurisdiction>
    <coding>
      <system value="urn:iso:std:iso:3166"/>
      <code value="SE"/>
      <display value="Sweden"/>
    </coding>
  </jurisdiction>
  <sourceUri
             value="https://rivta.se/domains/clinicalprocess/activity/actions/GetActivitiesResponder/1"/>
  <targetCanonical value="http://hl7.org/fhir/StructureDefinition/Procedure"/>
  <group>
    <source
            value="https://rivta.se/domains/clinicalprocess/activity/actions/GetActivitiesResponder/1"/>
    <target value="http://hl7.org/fhir/StructureDefinition/Bundle"/>
    <element>
      <code value="patientId"/>
      <display value="Query parameter: Patient ID filter"/>
      <target>
        <equivalence value="unmatched"/>
        <comment
                 value="NOT MAPPED. Used as search parameter: GET /Procedure?patient=Patient/191212121212"/>
      </target>
    </element>
    <element>
      <code value="time"/>
      <display value="Query parameter: Time period filter"/>
      <target>
        <equivalence value="unmatched"/>
        <comment
                 value="NOT MAPPED. Used as search parameter: GET /Procedure?date=ge2024-01-01&amp;date=le2024-12-31"/>
      </target>
    </element>
    <element>
      <code value="activityCode"/>
      <display value="Query parameter: Activity code filter (KVÅ)"/>
      <target>
        <equivalence value="unmatched"/>
        <comment
                 value="NOT MAPPED. Used as search parameter: GET /Procedure?code=http://www.socialstyrelsen.se/kva|ABC12"/>
      </target>
    </element>
    <element>
      <code value="activityId"/>
      <display value="Query parameter: Activity ID filter"/>
      <target>
        <equivalence value="unmatched"/>
        <comment
                 value="NOT MAPPED. Used as search parameter: GET /Procedure?identifier=hsaid|xyz123"/>
      </target>
    </element>
    <element>
      <code value="sourceSystemId"/>
      <display value="Query parameter: Source system filter"/>
      <target>
        <equivalence value="unmatched"/>
        <comment value="NOT MAPPED. Filter by source system HSA-ID"/>
      </target>
    </element>
    <element>
      <code value="careGiverId"/>
      <display value="Query parameter: Care giver filter"/>
      <target>
        <equivalence value="unmatched"/>
        <comment
                 value="NOT MAPPED. Used to filter by care giver organization"/>
      </target>
    </element>
    <element>
      <code value="careUnitId"/>
      <display value="Query parameter: Care unit filter"/>
      <target>
        <equivalence value="unmatched"/>
        <comment value="NOT MAPPED. Used to filter by care unit"/>
      </target>
    </element>
    <element>
      <code value="relation"/>
      <display value="Query parameter: Related information filter"/>
      <target>
        <equivalence value="unmatched"/>
        <comment
                 value="NOT MAPPED. Filter by relationships to other clinical information"/>
      </target>
    </element>
    <element>
      <code value="interactionAgreementId"/>
      <display value="Query parameter: Interaction agreement (deprecated)"/>
      <target>
        <equivalence value="unmatched"/>
        <comment
                 value="NOT MAPPED. Fixed UUID, not used: 2866a7c4-9c60-433f-9035-a4d779ffe7a1"/>
      </target>
    </element>
  </group>
  <group>
    <source
            value="https://rivta.se/domains/clinicalprocess/activity/actions/GetActivitiesResponder/1"/>
    <target value="http://hl7.org/fhir/StructureDefinition/Procedure"/>
    <element>
      <code value="activityGroup.activity.id"/>
      <display value="Activity ID (unique business identifier)"/>
      <target>
        <code value="identifier"/>
        <equivalence value="equivalent"/>
        <comment
                 value="Unique activity identifier within source system. id.root = source system HSA-ID, id.extension = local activity ID."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.patient.id"/>
      <display value="Patient ID (personnummer/samordningsnummer)"/>
      <target>
        <code value="subject"/>
        <equivalence value="equivalent"/>
        <comment
                 value="Reference to PatientBaseInera. Maps personnummer (1.2.752.129.2.1.3.1) or samordningsnummer (1.2.752.129.2.1.3.3)."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.code"/>
      <display value="Activity code (KVÅ or other classification)"/>
      <target>
        <code value="code"/>
        <equivalence value="equivalent"/>
        <comment
                 value="Activity code, typically KVÅ (OID 1.2.752.116.1.1.1.1.4). Maps to CodeableConcept with code.code, code.codeSystem, code.displayName."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.status"/>
      <display value="Activity status"/>
      <target>
        <code value="status"/>
        <equivalence value="relatedto"/>
        <comment
                 value="Maps to FHIR status values: preparation, in-progress, completed, not-done, stopped, unknown. TKB uses different code system, requires mapping."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.time"/>
      <display value="Activity time (point in time or period)"/>
      <target>
        <code value="performedDateTime"/>
        <equivalence value="equivalent"/>
        <comment
                 value="If time.start == time.end, use performedDateTime. If time.start != time.end, use performedPeriod."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.time.start"/>
      <display value="Activity start time"/>
      <target>
        <code value="performedPeriod.start"/>
        <equivalence value="equivalent"/>
        <comment value="Start of activity period. Format: ÅÅÅÅMMDDttmmss."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.time.end"/>
      <display value="Activity end time"/>
      <target>
        <code value="performedPeriod.end"/>
        <equivalence value="equivalent"/>
        <comment value="End of activity period. Format: ÅÅÅÅMMDDttmmss."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.performerRole"/>
      <display value="Performer (practitioner role)"/>
      <target>
        <code value="performer"/>
        <equivalence value="equivalent"/>
        <comment
                 value="Person who performed the activity. Maps to performer.actor (PractitionerBaseInera)."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.performerRole.person.id"/>
      <display value="Performer person ID (HSA-ID)"/>
      <target>
        <code value="performer.actor"/>
        <equivalence value="equivalent"/>
        <comment
                 value="Reference to PractitionerBaseInera. HSA-ID in id.extension (OID 1.2.752.129.2.1.4.1)."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.performerRole.code"/>
      <display value="Performer role code (KV Befattning)"/>
      <target>
        <code value="performer.function"/>
        <equivalence value="equivalent"/>
        <comment
                 value="Role of performer, typically KV Befattning (OID 1.2.752.129.2.2.1.4)."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.performerRole.careUnit.id"/>
      <display value="Care unit (PDL vårdenhet)"/>
      <target>
        <code value="location"/>
        <equivalence value="relatedto"/>
        <comment
                 value="Care unit HSA-ID. Maps to Location resource reference, or use performer.onBehalfOf for organization."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.performerRole.careUnit.careGiver.id"/>
      <display value="Care giver (vårdgivare organization)"/>
      <target>
        <code value="performer.onBehalfOf"/>
        <equivalence value="equivalent"/>
        <comment
                 value="Reference to OrganizationBaseInera. Care giver HSA-ID (OID 1.2.752.129.2.1.4.1)."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.targetSite"/>
      <display value="Target body site"/>
      <target>
        <code value="bodySite"/>
        <equivalence value="equivalent"/>
        <comment
                 value="Anatomical location where procedure was performed. Maps to CodeableConcept (e.g., SNOMED CT body site codes)."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.method"/>
      <display value="Activity method"/>
      <target>
        <code value="extension:method"/>
        <equivalence value="equivalent"/>
        <comment
                 value="Method/technique used during the procedure. Uses standard HL7 procedure-method extension (http://hl7.org/fhir/StructureDefinition/procedure-method)."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.description"/>
      <display value="Activity description (free text)"/>
      <target>
        <code value="note"/>
        <equivalence value="equivalent"/>
        <comment value="Free text description of the activity."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.registrationTime"/>
      <display value="Registration time"/>
      <target>
        <code value="Provenance.recorded"/>
        <equivalence value="equivalent"/>
        <comment
                 value="When activity was registered in system. Use Provenance.recorded with activity=CREATE and target=Procedure."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.approvedForPatient"/>
      <display value="Approved for patient viewing (menprövningsflagga)"/>
      <target>
        <code value="meta.security"/>
        <equivalence value="relatedto"/>
        <comment
                 value="Menprövningsflagga - indicates patient viewing approval. Use meta.security labels or link to Consent resource for patient access control."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.legalAuthenticator"/>
      <display value="Legal authenticator (signatory)"/>
      <target>
        <code value="Provenance.agent"/>
        <equivalence value="equivalent"/>
        <comment
                 value="Person who signed/authenticated the activity. Map to Provenance resource with agent.role = legal authenticator (http://terminology.hl7.org/CodeSystem/v3-ParticipationType#LA)."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.sourceSystem.id"/>
      <display value="Source system (HSA-ID)"/>
      <target>
        <code value="identifier.system"/>
        <equivalence value="relatedto"/>
        <comment
                 value="Source system HSA-ID. Used as identifier.system prefix, or in meta.source."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.careProcessId"/>
      <display value="Care process UUID (vårdprocess)"/>
      <target>
        <code value="basedOn"/>
        <equivalence value="equivalent"/>
        <comment
                 value="UUID for individualized care process. Reference EpisodeOfCare resource with identifier.value = careProcessId UUID. Use basedOn since Procedure.partOf only allows Procedure|Observation|MedicationAdministration."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.additionalParticipant"/>
      <display value="Additional participants"/>
      <target>
        <code value="performer"/>
        <equivalence value="relatedto"/>
        <comment
                 value="Other participants (persons, devices, locations) in the activity. Map persons to additional performer entries, devices to focalDevice, locations to location element."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.additionalParticipant.type"/>
      <display value="Participant type"/>
      <target>
        <code value="performer.function"/>
        <equivalence value="relatedto"/>
        <comment value="Type of participant involvement."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.additionalParticipant.role"/>
      <display value="Participant role"/>
      <target>
        <code value="performer.function"/>
        <equivalence value="relatedto"/>
        <comment value="Role code for participant."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.additionalParticipant.device"/>
      <display value="Participating device"/>
      <target>
        <code value="focalDevice"/>
        <equivalence value="equivalent"/>
        <comment
                 value="Device used in procedure. Maps to focalDevice with reference to Device resource."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.additionalParticipant.location"/>
      <display value="Participating location"/>
      <target>
        <code value="location"/>
        <equivalence value="equivalent"/>
        <comment
                 value="Location where procedure was performed. Reference to Location resource."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.relation"/>
      <display value="Relations to other clinical information"/>
      <target>
        <code value="basedOn"/>
        <equivalence value="relatedto"/>
        <comment
                 value="Relationships to observations (chb-o) or other activities (caa-ga). Use basedOn (fulfills order/request), partOf (part of larger activity), or reasonReference (justification) depending on relation type."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.relation.code"/>
      <display value="Relation type code"/>
      <target>
        <code value="basedOn"/>
        <equivalence value="relatedto"/>
        <comment
                 value="Type of relationship determines which element to use: basedOn (fulfills), partOf (component), reasonReference (justification). Relation.code context preserved in referenced resource identifier."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.relation.referredInformation.id"/>
      <display value="Related information ID"/>
      <target>
        <code value="basedOn"/>
        <equivalence value="relatedto"/>
        <comment
                 value="ID of related observation or activity. Maps to reference (Observation, Procedure, etc.)."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.activity.additionalInformation"/>
      <display value="Additional information (key-value pairs)"/>
      <target>
        <code value="note"/>
        <equivalence value="relatedto"/>
        <comment
                 value="Additional structured information as key-value pairs. Store as formatted text in Procedure.note (Annotation type). For structured data, create referenced Observation resources."/>
      </target>
    </element>
  </group>
  <group>
    <source
            value="https://rivta.se/domains/clinicalprocess/activity/actions/GetActivitiesResponder/1"/>
    <target value="http://hl7.org/fhir/StructureDefinition/Provenance"/>
    <element>
      <code value="activityGroup.legalAuthenticator.id"/>
      <display value="Legal authenticator ID"/>
      <target>
        <code value="agent.who"/>
        <equivalence value="equivalent"/>
        <comment
                 value="Reference to PractitionerBaseInera who signed/authenticated the activity."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.legalAuthenticator.time"/>
      <display value="Authentication time"/>
      <target>
        <code value="occurredDateTime"/>
        <equivalence value="equivalent"/>
        <comment value="When the activity was authenticated/signed."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.legalAuthenticator.name"/>
      <display value="Authenticator name"/>
      <target>
        <code value="agent.who.display"/>
        <equivalence value="equivalent"/>
        <comment value="Name of legal authenticator."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.patient.dateOfBirth"/>
      <display value="Patient date of birth"/>
      <target>
        <code value="target"/>
        <equivalence value="relatedto"/>
        <comment
                 value="Patient demographics echoed in response. Not mapped separately; available in referenced Patient resource."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.patient.gender"/>
      <display value="Patient gender (KV Kön)"/>
      <target>
        <code value="target"/>
        <equivalence value="relatedto"/>
        <comment
                 value="Patient demographics. Available in referenced Patient resource with KV Kön code (OID 1.2.752.129.2.2.1.1)."/>
      </target>
    </element>
  </group>
  <group>
    <source
            value="https://rivta.se/domains/clinicalprocess/activity/actions/GetActivitiesResponder/1"/>
    <target value="http://hl7.org/fhir/StructureDefinition/Bundle"/>
    <element>
      <code value="activityGroup"/>
      <display value="Activity group (container)"/>
      <target>
        <equivalence value="unmatched"/>
        <comment
                 value="NOT MAPPED. Container/grouping structure for optimization. In FHIR, each activity becomes separate Procedure resource in Bundle."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.device"/>
      <display value="Device (deprecated - use additionalParticipant)"/>
      <target>
        <equivalence value="unmatched"/>
        <comment
                 value="NOT MAPPED. Deprecated in TKB v1.3. Use activityGroup.additionalParticipant.device instead."/>
      </target>
    </element>
    <element>
      <code value="activityGroup.location"/>
      <display value="Location (deprecated - use additionalParticipant)"/>
      <target>
        <equivalence value="unmatched"/>
        <comment
                 value="NOT MAPPED. Deprecated in TKB v1.3. Use activityGroup.additionalParticipant.location instead."/>
      </target>
    </element>
  </group>
</ConceptMap>