Technical Implementation Guidance

Functional requirements

The requirements regarding the obsolescence of data mean that the triage must have an indicator of whether it is less than or more than 15 minutes old. If it is less than 15 minutes old, the registration must be indicated with "Valid", and if it is more than 15 minutes old, the registration must be indicated with "Obsolete". These two requirements are thus supplier requirements, as data cannot be standardized to certain this indicator. The same applies to the requirements that all data must have an indication that it has been admitted pre-hospital. This is definitely supposed to be with an underline as this is not an unnecessary nuisance for the user of EPR. It is possible in the system that this standardization can be made, but it is the user system that sets up standardization itself.

List of profiles

The project contains 12 profiles:

  • ClinicalImpressionVitalSignsTriage
  • EncountPrehospitalEncounter
  • MedicationAdministrationGivenMedicine
  • Medication
  • ObservationAllergyIntolerance
  • ObservationCurrentMedicationUse¨
  • ObservationPriorIllness
  • Organization
  • Patient
  • Practitioner
  • ProcedureTreatment
  • SubstanceActiveIngredient

Terminology

The profiles contain SNOMED CT codes when a CodableConcept was required. A ValueSet for units was used in the profile MedicationAdministrationGivenMedicine for the element unit (http://hl7.org/fhir/ValueSet/ucum-units).

Mappings

Workflow
Workflow was mapped to Workflow Pattern (http://hl7.org/fhir/workflow).

v2
v2 was mapped to HL7 v2 Mapping (http://hl7.org/v2).

w5
w5 was mapped to FiveWs Pattern Mapping (http://hl7.org/fhir/fivews).

rim
rim was mapped to RIM Mapping (http://hl7.org/v3).

Example

The following is an example of how one of the developed profile would standardize data. The data in the example is data from the case.

In the example, the profile ProcedureTreatment contains information about the procedure done during the encounter. Therefor, the element AdditionalTreatment contains the string "Spinal stabilisering" (spinal stabilization). The element identifier also contains the patient's Danish social security number (CPR).

<?xml version="1.0" encoding="utf-8"?>
<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="RE10" />
  <url value="https://PrehospitalDataInEHR.dk/fhir/StructureDefinition/RE10" />
  <name value="PrehospitalDataInEHRProcedureTreatmentprofile" />
  <status value="draft" />
  <description value="This profile originates from the page Treatment in the pre-hospital patient journal (PPJ). The registration contains information regarding the treatment given to the patient prior to arrival to the ER." />
  <fhirVersion value="4.0.1" />
  <mapping>
    <identity value="workflow" />
    <uri value="http://hl7.org/fhir/workflow" />
    <name value="Workflow Pattern" />
  </mapping>
  <mapping>
    <identity value="rim" />
    <uri value="http://hl7.org/v3" />
    <name value="RIM Mapping" />
  </mapping>
  <mapping>
    <identity value="w5" />
    <uri value="http://hl7.org/fhir/fivews" />
    <name value="FiveWs Pattern Mapping" />
  </mapping>
  <mapping>
    <identity value="v2" />
    <uri value="http://hl7.org/v2" />
    <name value="HL7 v2 Mapping" />
  </mapping>
  <kind value="resource" />
  <abstract value="false" />
  <type value="Procedure" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Procedure" />
  <derivation value="constraint" />
  <differential>
    <element id="Procedure">
      <path value="Procedure" />
      <short value="Contains information regarding the treatments given to the patient prior to arrival to the ER" />
      <definition value="This profile originates from the page Treatment in the pre-hospital patient journal (PPJ). The registration contains information regarding the treatment given to the patient prior to arrival to the ER." />
    </element>
    <element id="Procedure.identifier">
      <path value="Procedure.identifier" />
      <short value="Danish social security number (CPR)" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Procedure.identifier.use">
      <path value="Procedure.identifier.use" />
      <max value="0" />
    </element>
    <element id="Procedure.identifier.type">
      <path value="Procedure.identifier.type" />
      <max value="0" />
    </element>
    <element id="Procedure.identifier.system">
      <path value="Procedure.identifier.system" />
      <short value="Entry to Danish social security number database" />
      <min value="1" />
    </element>
    <element id="Procedure.identifier.value">
      <path value="150649-4567" />
      <short value="Unique identifier of 10 digits" />
      <min value="1" />
    </element>
    <element id="Procedure.identifier.period">
      <path value="Procedure.identifier.period" />
      <max value="0" />
    </element>
    <element id="Procedure.identifier.assigner">
      <path value="Procedure.identifier.assigner" />
      <max value="0" />
    </element>
    <element id="Procedure.instantiatesCanonical">
      <path value="Procedure.instantiatesCanonical" />
      <max value="0" />
    </element>
    <element id="Procedure.instantiatesUri">
      <path value="Procedure.instantiatesUri" />
      <max value="0" />
    </element>
    <element id="Procedure.basedOn">
      <path value="Procedure.basedOn" />
      <max value="0" />
    </element>
    <element id="Procedure.partOf">
      <path value="Procedure.partOf" />
      <max value="0" />
    </element>
    <element id="Procedure.status">
      <path value="Procedure.status" />
      <fixedCode value="completed" />
    </element>
    <element id="Procedure.statusReason">
      <path value="Procedure.statusReason" />
      <max value="0" />
    </element>
    <element id="Procedure.category">
      <path value="Procedure.category" />
      <max value="0" />
    </element>
    <element id="Procedure.code">
      <path value="Procedure.code" />
      <slicing>
        <discriminator>
          <type value="exists" />
          <path value="text" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Procedure.code:A_airways">
      <path value="Procedure.code" />
      <sliceName value="A_airways" />
      <short value="Treatment regarding airways" />
    </element>
    <element id="Procedure.code:A_airways.coding">
      <path value="Procedure.code.coding" />
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="248553004" />
        <display value="Frie luftveje" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="251362004" />
        <display value="Nasal luftveje" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="232675003" />
        <display value="Oral Intubation" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="58058006" />
        <display value="Sugning" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="55622001" />
        <display value="Nødtrakeotomi" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="74964007" />
        <display value="Andet" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="32667006" />
        <display value="Tungeholder" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="257268009" />
        <display value="Larynxmaske" />
      </code>
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Procedure.code:A_airways.coding.system">
      <path value="Procedure.code.coding.system" />
      <max value="0" />
    </element>
    <element id="Procedure.code:A_airways.coding.version">
      <path value="Procedure.code.coding.version" />
      <max value="0" />
    </element>
    <element id="Procedure.code:A_airways.coding.code">
      <path value="Procedure.code.coding.code" />
      <max value="0" />
    </element>
    <element id="Procedure.code:A_airways.coding.display">
      <path value="Procedure.code.coding.display" />
      <max value="0" />
    </element>
    <element id="Procedure.code:A_airways.coding.userSelected">
      <path value="Procedure.code.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="Procedure.code:A_airways.text">
      <path value="Procedure.code.text" />
      <short value="Registration of treatment of the airways" />
      <min value="1" />
      <fixedString value="A-Luftveje" />
    </element>
    <element id="Procedure.code:B_respiration">
      <path value="Procedure.code" />
      <sliceName value="B_respiration" />
      <short value="Treatment of respiration" />
    </element>
    <element id="Procedure.code:B_respiration.coding">
      <path value="Procedure.code.coding" />
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="266700009" />
        <display value="Ventilation" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="336602003" />
        <display value="Ilt-Hudson" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="47545007" />
        <display value="CPAP/ASB" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="336623009" />
        <display value="Ilt-næsebrille" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="258071007" />
        <display value="Genånding" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="177765008" />
        <display value="Thorakotomi" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="334947002" />
        <display value="Ilt-nebulisator" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="410756002" />
        <display value="Nåle dekompression" />
      </code>
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Procedure.code:B_respiration.coding.system">
      <path value="Procedure.code.coding.system" />
      <max value="0" />
    </element>
    <element id="Procedure.code:B_respiration.coding.version">
      <path value="Procedure.code.coding.version" />
      <max value="0" />
    </element>
    <element id="Procedure.code:B_respiration.coding.code">
      <path value="Procedure.code.coding.code" />
      <max value="0" />
    </element>
    <element id="Procedure.code:B_respiration.coding.display">
      <path value="Procedure.code.coding.display" />
      <max value="0" />
    </element>
    <element id="Procedure.code:B_respiration.coding.userSelected">
      <path value="Procedure.code.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="Procedure.code:B_respiration.text">
      <path value="Procedure.code.text" />
      <short value="Registration of treatments of respiration" />
      <min value="1" />
      <fixedString value="B-Respiration" />
    </element>
    <element id="Procedure.code:C_circulation">
      <path value="Procedure.code" />
      <sliceName value="C_circulation" />
      <short value="Treatment of circulation" />
    </element>
    <element id="Procedure.code:C_circulation.coding">
      <path value="Procedure.code.coding" />
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="89666000" />
        <display value="HLR" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="59218006" />
        <display value="Ekstern pacing" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="308842001" />
        <display value="Defibrillering" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="430824005" />
        <display value="Intraossøs kanyle" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="429283006" />
        <display value="Mekanisk brystkompression" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="303728004" />
        <display value="Perifert venekateter" />
      </code>
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Procedure.code:C_circulation.coding.system">
      <path value="Procedure.code.coding.system" />
      <max value="0" />
    </element>
    <element id="Procedure.code:C_circulation.coding.version">
      <path value="Procedure.code.coding.version" />
      <max value="0" />
    </element>
    <element id="Procedure.code:C_circulation.coding.code">
      <path value="Procedure.code.coding.code" />
      <max value="0" />
    </element>
    <element id="Procedure.code:C_circulation.coding.display">
      <path value="Procedure.code.coding.display" />
      <max value="0" />
    </element>
    <element id="Procedure.code:C_circulation.coding.userSelected">
      <path value="Procedure.code.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="Procedure.code:C_circulation.text">
      <path value="Procedure.code.text" />
      <short value="Registration of treatments of circulation" />
      <min value="1" />
      <fixedString value="C-Cirkulation" />
    </element>
    <element id="Procedure.code:additionalTreatment">
      <path value="Procedure.code" />
      <sliceName value="additionalTreatment" />
      <short value="Additional treatments" />
    </element>
    <element id="Procedure.code:additionalTreatment.coding">
      <path value="Procedure.code.coding" />
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="229824005" />
        <display value="Lejring" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="229585002" />
        <display value="Kuldeindpakning" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="59102007" />
        <display value="Ispose" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="156009" />
        <display value="Spinal stabilisering" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="282009008" />
        <display value="Frakturstabilisering" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="182814007" />
        <display value="Forbinding" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="122469009" />
        <display value="Reponering" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <version value="2020/09/30" />
        <code value="67889009" />
        <display value="Skylning" />
      </code>
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Procedure.code:additionalTreatment.coding.system">
      <path value="Procedure.code.coding.system" />
      <max value="0" />
    </element>
    <element id="Procedure.code:additionalTreatment.coding.version">
      <path value="Procedure.code.coding.version" />
      <max value="0" />
    </element>
    <element id="Procedure.code:additionalTreatment.coding.code">
      <path value="Procedure.code.coding.code" />
      <max value="0" />
    </element>
    <element id="Procedure.code:additionalTreatment.coding.display">
      <path value="Procedure.code.coding.display" />
      <max value="0" />
    </element>
    <element id="Procedure.code:additionalTreatment.coding.userSelected">
      <path value="Procedure.code.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="Procedure.code:additionalTreatment.text">
      <path value="Procedure.code.text" />
      <short value="Registration of additonal treatments" />
      <min value="1" />
      <fixedString value="Spinal stabilisering" />
    </element>
    <element id="Procedure.subject">
      <path value="Procedure.subject" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://PrehospitalDataInEHR.dk/fhir/StructureDefinition/RE09" />
      </type>
    </element>
    <element id="Procedure.subject.reference">
      <path value="Procedure.subject.reference" />
      <max value="0" />
    </element>
    <element id="Procedure.subject.type">
      <path value="Procedure.subject.type" />
      <max value="0" />
    </element>
    <element id="Procedure.subject.identifier">
      <path value="Procedure.subject.identifier" />
      <max value="0" />
    </element>
    <element id="Procedure.subject.display">
      <path value="Procedure.subject.display" />
      <max value="0" />
    </element>
    <element id="Procedure.encounter">
      <path value="Procedure.encounter" />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://PrehospitalDataInEHR.dk/fhir/StructureDefinition/RE02" />
      </type>
    </element>
    <element id="Procedure.encounter.reference">
      <path value="Procedure.encounter.reference" />
      <max value="0" />
    </element>
    <element id="Procedure.encounter.type">
      <path value="Procedure.encounter.type" />
      <max value="0" />
    </element>
    <element id="Procedure.encounter.identifier">
      <path value="Procedure.encounter.identifier" />
      <max value="0" />
    </element>
    <element id="Procedure.encounter.display">
      <path value="Procedure.encounter.display" />
      <max value="0" />
    </element>
    <element id="Procedure.performed[x]">
      <path value="Procedure.performed[x]" />
      <min value="1" />
      <type>
        <code value="dateTime" />
      </type>
    </element>
    <element id="Procedure.recorder">
      <path value="Procedure.recorder" />
      <max value="0" />
    </element>
    <element id="Procedure.recorder.reference">
      <path value="Procedure.recorder.reference" />
      <max value="0" />
    </element>
    <element id="Procedure.recorder.type">
      <path value="Procedure.recorder.type" />
      <max value="0" />
    </element>
    <element id="Procedure.recorder.identifier">
      <path value="Procedure.recorder.identifier" />
      <max value="0" />
    </element>
    <element id="Procedure.recorder.display">
      <path value="Procedure.recorder.display" />
      <max value="0" />
    </element>
    <element id="Procedure.asserter">
      <path value="Procedure.asserter" />
      <max value="0" />
    </element>
    <element id="Procedure.performer">
      <path value="Procedure.performer" />
      <max value="0" />
    </element>
    <element id="Procedure.location">
      <path value="Procedure.location" />
      <max value="0" />
    </element>
    <element id="Procedure.reasonCode">
      <path value="Procedure.reasonCode" />
      <max value="0" />
    </element>
    <element id="Procedure.reasonReference">
      <path value="Procedure.reasonReference" />
      <max value="0" />
    </element>
    <element id="Procedure.bodySite">
      <path value="Procedure.bodySite" />
      <max value="0" />
    </element>
    <element id="Procedure.outcome">
      <path value="Procedure.outcome" />
      <max value="0" />
    </element>
    <element id="Procedure.report">
      <path value="Procedure.report" />
      <max value="0" />
    </element>
    <element id="Procedure.complication">
      <path value="Procedure.complication" />
      <max value="0" />
    </element>
    <element id="Procedure.complicationDetail">
      <path value="Procedure.complicationDetail" />
      <max value="0" />
    </element>
    <element id="Procedure.followUp">
      <path value="Procedure.followUp" />
      <max value="0" />
    </element>
    <element id="Procedure.note">
      <path value="Procedure.note" />
      <max value="0" />
    </element>
    <element id="Procedure.focalDevice">
      <path value="Procedure.focalDevice" />
      <max value="0" />
    </element>
    <element id="Procedure.usedReference">
      <path value="Procedure.usedReference" />
      <max value="0" />
    </element>
    <element id="Procedure.usedCode">
      <path value="Procedure.usedCode" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>