HL7 PT FHIR Implementation Guide: Visita do Utente
1.0.0 - STU1 Portugal flag

HL7 PT FHIR Implementation Guide: Visita do Utente, published by HL7 Portugal. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7-pt/workflow-ep-ig/tree/master and changes regularly. See the Directory of published versions

Resource Profile: PT_Encounter - Mappings

Active as of 2022-01-13

Mappings for the PTEncounter resource profile.

Mappings for Workflow Pattern (http://hl7.org/fhir/workflow)

PT_Encounter
EncounterEvent
   identifierEvent.identifier
   statusEvent.status
   typeEvent.code
   serviceTypeEvent.code
   subjectEvent.subject
   basedOnEvent.basedOn
   participantEvent.performer
      typeEvent.performer.function
      individualEvent.performer.actor
   appointmentEvent.basedOn
   periodEvent.occurrence[x]
   lengthEvent.occurrence[x]
   reasonCodeEvent.reasonCode
   reasonReferenceEvent.reasonCode
   diagnosis
      conditionEvent.reasonReference
   location
      locationEvent.location
   serviceProviderEvent.performer.actor

Mappings for RIM Mapping (http://hl7.org/v3)

PT_Encounter
EncounterEntity. Role, or Act, Encounter[@moodCode='EVN']
   meta
      extensionn/a
   extensionN/A
   modifierExtensionN/A
   identifier.id
      extensionn/a
      useRole.code or implied by context
      typeRole.code or implied by context
         extensionn/a
         codingunion(., ./translation)
            extensionn/a
            system./codeSystem
            code./code
            displayCV.displayName
         text./originalText[mediaType/code="text/plain"]/data
      systemII.root or Role.id.root
      valueII.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
      periodRole.effectiveTime or implied by context
         extensionn/a
         start./low
         end./high
      assignerII.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
         extensionn/a
         displayN/A
   status.statusCode
   statusHistoryn/a
      extensionn/a
      modifierExtensionN/A
      statusn/a
      periodn/a
   class.inboundRelationship[typeCode=SUBJ].source[classCode=LIST].code
      extensionn/a
      system./codeSystem
      code./code
      displayCV.displayName
   classHistoryn/a
      extensionn/a
      modifierExtensionN/A
      classn/a
      periodn/a
   type.code
      extensionn/a
      codingunion(., ./translation)
         extensionn/a
         system./codeSystem
         code./code
         displayCV.displayName
      text./originalText[mediaType/code="text/plain"]/data
   serviceTypen/a
      extensionn/a
      codingunion(., ./translation)
         extensionn/a
         system./codeSystem
         code./code
         displayCV.displayName
      text./originalText[mediaType/code="text/plain"]/data
   priority.priorityCode
      extensionn/a
      codingunion(., ./translation)
         extensionn/a
         system./codeSystem
         code./code
         displayCV.displayName
      text./originalText[mediaType/code="text/plain"]/data
   subject.participation[typeCode=SBJ]/role[classCode=PAT]
      extensionn/a
      referenceN/A
   basedOn.reason.ClinicalDocument
   participant.participation[typeCode=PFM]
      extensionn/a
      modifierExtensionN/A
      type.functionCode
         extensionn/a
         codingunion(., ./translation)
            extensionn/a
            system./codeSystem
            code./code
            displayCV.displayName
         text./originalText[mediaType/code="text/plain"]/data
      period.time
         extensionn/a
         start./low
         end./high
      individual.role
         extensionn/a
         referenceN/A
   appointment.outboundRelationship[typeCode=FLFS].target[classCode=ENC, moodCode=APT]
   period.effectiveTime (low & high)
      extensionn/a
      start./low
      end./high
   length.lengthOfStayQuantity
      extensionn/a
      valuePQ.value, CO.value, MO.value, IVL.high or IVL.low depending on the value
      unitPQ.unit
      systemCO.codeSystem, PQ.translation.codeSystem
      codePQ.code, MO.currency, PQ.translation.code
   reasonCode.reasonCode
      extensionn/a
      codingunion(., ./translation)
         extensionn/a
         system./codeSystem
         code./code
         displayCV.displayName
      text./originalText[mediaType/code="text/plain"]/data
   reasonReference.reasonCode
      extensionn/a
      referenceN/A
   diagnosis.outboundRelationship[typeCode=RSON]
      extensionn/a
      modifierExtensionN/A
      condition.outboundRelationship[typeCode=RSON].target
         extensionn/a
         referenceN/A
      usen/a
         extensionn/a
         codingunion(., ./translation)
            extensionn/a
            system./codeSystem
            code./code
            displayCV.displayName
         text./originalText[mediaType/code="text/plain"]/data
      rank.outboundRelationship[typeCode=RSON].priority
   hospitalization.outboundRelationship[typeCode=COMP].target[classCode=ENC, moodCode=EVN]
      extensionn/a
      modifierExtensionN/A
      preAdmissionIdentifier.id
         extensionn/a
         useRole.code or implied by context
         typeRole.code or implied by context
            extensionn/a
            codingunion(., ./translation)
               extensionn/a
               system./codeSystem
               code./code
               displayCV.displayName
            text./originalText[mediaType/code="text/plain"]/data
         systemII.root or Role.id.root
         valueII.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
         periodRole.effectiveTime or implied by context
            extensionn/a
            start./low
            end./high
         assignerII.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
            extensionn/a
            displayN/A
      origin.participation[typeCode=ORG].role
         extensionn/a
         referenceN/A
      admitSource.admissionReferralSourceCode
         extensionn/a
         codingunion(., ./translation)
            extensionn/a
            system./codeSystem
            code./code
            displayCV.displayName
         text./originalText[mediaType/code="text/plain"]/data
      reAdmissionn/a
         extensionn/a
         codingunion(., ./translation)
            extensionn/a
            system./codeSystem
            code./code
            displayCV.displayName
         text./originalText[mediaType/code="text/plain"]/data
      dietPreference.outboundRelationship[typeCode=COMP].target[classCode=SBADM, moodCode=EVN, code="diet"]
         extensionn/a
         codingunion(., ./translation)
            extensionn/a
            system./codeSystem
            code./code
            displayCV.displayName
         text./originalText[mediaType/code="text/plain"]/data
      specialCourtesy.specialCourtesiesCode
         extensionn/a
         codingunion(., ./translation)
            extensionn/a
            system./codeSystem
            code./code
            displayCV.displayName
         text./originalText[mediaType/code="text/plain"]/data
      specialArrangement.specialArrangementCode
         extensionn/a
         codingunion(., ./translation)
            extensionn/a
            system./codeSystem
            code./code
            displayCV.displayName
         text./originalText[mediaType/code="text/plain"]/data
      destination.participation[typeCode=DST]
         extensionn/a
         referenceN/A
      dischargeDisposition.dischargeDispositionCode
         extensionn/a
         codingunion(., ./translation)
            extensionn/a
            system./codeSystem
            code./code
            displayCV.displayName
         text./originalText[mediaType/code="text/plain"]/data
   location.participation[typeCode=LOC]
      extensionn/a
      modifierExtensionN/A
      location.role
         extensionn/a
         referenceN/A
      status.role.statusCode
      physicalType
         extensionn/a
         codingunion(., ./translation)
            extensionn/a
            system./codeSystem
            code./code
            displayCV.displayName
         text./originalText[mediaType/code="text/plain"]/data
   serviceProvider.particiaption[typeCode=PFM].role
      extensionn/a
      referenceN/A

Mappings for FiveWs Pattern Mapping (http://hl7.org/fhir/fivews)

PT_Encounter
Encounter
   identifierFiveWs.identifier
   statusFiveWs.status
   classFiveWs.class
   typeFiveWs.class
   priorityFiveWs.grade
   subjectFiveWs.subject[x], FiveWs.subject
   participant
      individualFiveWs.who
   periodFiveWs.done[x]
   reasonCodeFiveWs.why[x]
   reasonReferenceFiveWs.why[x]
   diagnosis
      conditionFiveWs.why[x]
   location
      locationFiveWs.where[x]

Mappings for HL7 v2 Mapping (http://hl7.org/v2)

PT_Encounter
Encounter
   identifierPV1-19
      useN/A
      typeCX.5
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            codeC*E.1
            displayC*E.2 - but note this is not well followed
         textC*E.9. But note many systems use C*E.2 for this
      systemCX.4 / EI-2-4
      valueCX.1 / EI.1
      periodCX.7 + CX.8
         startDR.1
         endDR.2
      assignerCX.4 / (CX.4,CX.9,CX.10)
   statusNo clear equivalent in HL7 v2; active/finished could be inferred from PV1-44, PV1-45, PV2-24; inactive could be inferred from PV2-16
   classPV1-2
      systemC*E.3
      codeC*E.1
      displayC*E.2 - but note this is not well followed
   typePV1-4 / PV1-18
      codingC*E.1-8, C*E.10-22
         systemC*E.3
         codeC*E.1
         displayC*E.2 - but note this is not well followed
      textC*E.9. But note many systems use C*E.2 for this
   serviceTypePV1-10
      codingC*E.1-8, C*E.10-22
         systemC*E.3
         codeC*E.1
         displayC*E.2 - but note this is not well followed
      textC*E.9. But note many systems use C*E.2 for this
   priorityPV2-25
      codingC*E.1-8, C*E.10-22
         systemC*E.3
         codeC*E.1
         displayC*E.2 - but note this is not well followed
      textC*E.9. But note many systems use C*E.2 for this
   subjectPID-3
   participantROL
      typeROL-3 (or maybe PRT-4)
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            codeC*E.1
            displayC*E.2 - but note this is not well followed
         textC*E.9. But note many systems use C*E.2 for this
      periodROL-5, ROL-6 (or maybe PRT-5)
         startDR.1
         endDR.2
      individualROL-4
   appointmentSCH-1 / SCH-2
   periodPV1-44, PV1-45
      startDR.1
      endDR.2
   length(PV1-45 less PV1-44) iff ( (PV1-44 not empty) and (PV1-45 not empty) ); units in minutes
      valueSN.2 / CQ - N/A
      unit(see OBX.6 etc.) / CQ.2
      system(see OBX.6 etc.) / CQ.2
      code(see OBX.6 etc.) / CQ.2
   reasonCodeEVN-4 / PV2-3 (note: PV2-3 is nominally constrained to inpatient admissions; HL7 v2 makes no vocabulary suggestions for PV2-3; would not expect PV2 segment or PV2-3 to be in use in all implementations )
      codingC*E.1-8, C*E.10-22
         systemC*E.3
         codeC*E.1
         displayC*E.2 - but note this is not well followed
      textC*E.9. But note many systems use C*E.2 for this
   reasonReferenceEVN-4 / PV2-3 (note: PV2-3 is nominally constrained to inpatient admissions; HL7 v2 makes no vocabulary suggestions for PV2-3; would not expect PV2 segment or PV2-3 to be in use in all implementations )
   diagnosis
      conditionResources that would commonly referenced at Encounter.indication would be Condition and/or Procedure. These most closely align with DG1/PRB and PR1 respectively.
      use
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            codeC*E.1
            displayC*E.2 - but note this is not well followed
         textC*E.9. But note many systems use C*E.2 for this
   hospitalization
      preAdmissionIdentifierPV1-5
         useN/A
         typeCX.5
            codingC*E.1-8, C*E.10-22
               systemC*E.3
               codeC*E.1
               displayC*E.2 - but note this is not well followed
            textC*E.9. But note many systems use C*E.2 for this
         systemCX.4 / EI-2-4
         valueCX.1 / EI.1
         periodCX.7 + CX.8
            startDR.1
            endDR.2
         assignerCX.4 / (CX.4,CX.9,CX.10)
      admitSourcePV1-14
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            codeC*E.1
            displayC*E.2 - but note this is not well followed
         textC*E.9. But note many systems use C*E.2 for this
      reAdmissionPV1-13
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            codeC*E.1
            displayC*E.2 - but note this is not well followed
         textC*E.9. But note many systems use C*E.2 for this
      dietPreferencePV1-38
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            codeC*E.1
            displayC*E.2 - but note this is not well followed
         textC*E.9. But note many systems use C*E.2 for this
      specialCourtesyPV1-16
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            codeC*E.1
            displayC*E.2 - but note this is not well followed
         textC*E.9. But note many systems use C*E.2 for this
      specialArrangementPV1-15 / OBR-30 / OBR-43
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            codeC*E.1
            displayC*E.2 - but note this is not well followed
         textC*E.9. But note many systems use C*E.2 for this
      destinationPV1-37
      dischargeDispositionPV1-36
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            codeC*E.1
            displayC*E.2 - but note this is not well followed
         textC*E.9. But note many systems use C*E.2 for this
   location
      locationPV1-3 / PV1-6 / PV1-11 / PV1-42 / PV1-43
      physicalType
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            codeC*E.1
            displayC*E.2 - but note this is not well followed
         textC*E.9. But note many systems use C*E.2 for this
   serviceProviderPL.6 & PL.1