FHIR Core Implementation Guide (CO)
0.1.0 - STU1 Colombia flag

FHIR Core Implementation Guide (CO) - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: EncounterConsultationCO - Mappings

Draft as of 2024-11-19

Mappings for the EncounterConsultationCO resource profile.

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

EncounterConsultationCO
EncounterEvent
   identifierEvent.identifier
   identifier (InvoiceIdentifier)Event.identifier
   identifier (AuthorizationIdentifier)Event.identifier
   identifier (EncounterIdentifier)Event.identifier
   statusEvent.status
   typeEvent.code
   serviceTypeEvent.code
   subjectEvent.subject
   episodeOfCareEvent.context
   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
   diagnosis (MainDiagnosis)
      conditionEvent.reasonReference
   diagnosis (Comobility-1)
      conditionEvent.reasonReference
   diagnosis (Comobility-2)
      conditionEvent.reasonReference
   diagnosis (Comobility-3)
      conditionEvent.reasonReference
   location
      locationEvent.location
   serviceProviderEvent.performer.actor
   partOfEvent.partOf

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

EncounterConsultationCO
EncounterEntity. Role, or Act, Encounter[@moodCode='EVN']
   textAct.text?
   containedN/A
   extensionN/A
   modifierExtensionN/A
   identifier.id
   identifier (InvoiceIdentifier).id
      idn/a
      extensionn/a
      useRole.code or implied by context
      typeRole.code or implied by context
      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
      assignerII.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
   identifier (AuthorizationIdentifier).id
      idn/a
      extensionn/a
      useRole.code or implied by context
      typeRole.code or implied by context
      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
      assignerII.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
   identifier (EncounterIdentifier).id
      idn/a
      extensionn/a
      useRole.code or implied by context
      typeRole.code or implied by context
      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
      assignerII.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
   status.statusCode
   statusHistoryn/a
      idn/a
      extensionn/a
      modifierExtensionN/A
      statusn/a
      periodn/a
   class.inboundRelationship[typeCode=SUBJ].source[classCode=LIST].code
      idn/a
      extensionn/a
      system./codeSystem
      version./codeSystemVersion
      code./code
      displayCV.displayName
      userSelectedCD.codingRationale
   classHistoryn/a
      idn/a
      extensionn/a
      modifierExtensionN/A
      classn/a
      periodn/a
   type.code
      idn/a
      extensionn/a
      codingunion(., ./translation)
         idn/a
         extensionn/a
         system./codeSystem
         version./codeSystemVersion
         code./code
         displayCV.displayName
         userSelectedCD.codingRationale
      text./originalText[mediaType/code="text/plain"]/data
   serviceTypen/a
      idn/a
      extensionn/a
      codingunion(., ./translation)
         idn/a
         extensionn/a
         system./codeSystem
         version./codeSystemVersion
         code./code
         displayCV.displayName
         userSelectedCD.codingRationale
      text./originalText[mediaType/code="text/plain"]/data
   priority.priorityCode
   subject.participation[typeCode=SBJ]/role[classCode=PAT]
   episodeOfCaren/a
   basedOn.reason.ClinicalDocument
   participant.participation[typeCode=PFM]
      idn/a
      extensionn/a
      modifierExtensionN/A
      type.functionCode
      period.time
      individual.role
   appointment.outboundRelationship[typeCode=FLFS].target[classCode=ENC, moodCode=APT]
   period.effectiveTime (low & high)
      idn/a
      extensionn/a
      start./low
      end./high
   length.lengthOfStayQuantity
   reasonCode.reasonCode
      idn/a
      extensionn/a
      codingunion(., ./translation)
         idn/a
         extensionn/a
         system./codeSystem
         version./codeSystemVersion
         code./code
         displayCV.displayName
         userSelectedCD.codingRationale
      text./originalText[mediaType/code="text/plain"]/data
   reasonReference.reasonCode
   diagnosis.outboundRelationship[typeCode=RSON]
      idn/a
      extensionn/a
      modifierExtensionN/A
      condition.outboundRelationship[typeCode=RSON].target
      usen/a
      rank.outboundRelationship[typeCode=RSON].priority
   diagnosis (MainDiagnosis).outboundRelationship[typeCode=RSON]
      idn/a
      extensionn/a
      modifierExtensionN/A
      condition.outboundRelationship[typeCode=RSON].target
      usen/a
         idn/a
         extensionn/a
         codingunion(., ./translation)
            idn/a
            extensionn/a
            system./codeSystem
            version./codeSystemVersion
            code./code
            displayCV.displayName
            userSelectedCD.codingRationale
         text./originalText[mediaType/code="text/plain"]/data
      rank.outboundRelationship[typeCode=RSON].priority
   diagnosis (Comobility-1).outboundRelationship[typeCode=RSON]
      idn/a
      extensionn/a
      modifierExtensionN/A
      condition.outboundRelationship[typeCode=RSON].target
      usen/a
         idn/a
         extensionn/a
         codingunion(., ./translation)
            idn/a
            extensionn/a
            system./codeSystem
            version./codeSystemVersion
            code./code
            displayCV.displayName
            userSelectedCD.codingRationale
         text./originalText[mediaType/code="text/plain"]/data
      rank.outboundRelationship[typeCode=RSON].priority
   diagnosis (Comobility-2).outboundRelationship[typeCode=RSON]
      idn/a
      extensionn/a
      modifierExtensionN/A
      condition.outboundRelationship[typeCode=RSON].target
      usen/a
         idn/a
         extensionn/a
         codingunion(., ./translation)
            idn/a
            extensionn/a
            system./codeSystem
            version./codeSystemVersion
            code./code
            displayCV.displayName
            userSelectedCD.codingRationale
         text./originalText[mediaType/code="text/plain"]/data
      rank.outboundRelationship[typeCode=RSON].priority
   diagnosis (Comobility-3).outboundRelationship[typeCode=RSON]
      idn/a
      extensionn/a
      modifierExtensionN/A
      condition.outboundRelationship[typeCode=RSON].target
      usen/a
         idn/a
         extensionn/a
         codingunion(., ./translation)
            idn/a
            extensionn/a
            system./codeSystem
            version./codeSystemVersion
            code./code
            displayCV.displayName
            userSelectedCD.codingRationale
         text./originalText[mediaType/code="text/plain"]/data
      rank.outboundRelationship[typeCode=RSON].priority
   account.pertains.A_Account
   hospitalization.outboundRelationship[typeCode=COMP].target[classCode=ENC, moodCode=EVN]
      idn/a
      extensionn/a
      modifierExtensionN/A
      preAdmissionIdentifier.id
      origin.participation[typeCode=ORG].role
      admitSource.admissionReferralSourceCode
      reAdmissionn/a
      dietPreference.outboundRelationship[typeCode=COMP].target[classCode=SBADM, moodCode=EVN, code="diet"]
      specialCourtesy.specialCourtesiesCode
      specialArrangement.specialArrangementCode
      destination.participation[typeCode=DST]
      dischargeDisposition.dischargeDispositionCode
   location.participation[typeCode=LOC]
      idn/a
      extensionn/a
      modifierExtensionN/A
      location.role
      status.role.statusCode
      period.time
   serviceProvider.particiaption[typeCode=PFM].role
   partOf.inboundRelationship[typeCode=COMP].source[classCode=COMP, moodCode=EVN]

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

EncounterConsultationCO
Encounter
   identifierFiveWs.identifier
   identifier (InvoiceIdentifier)FiveWs.identifier
   identifier (AuthorizationIdentifier)FiveWs.identifier
   identifier (EncounterIdentifier)FiveWs.identifier
   statusFiveWs.status
   classFiveWs.class
   typeFiveWs.class
   priorityFiveWs.grade
   subjectFiveWs.subject[x], FiveWs.subject
   episodeOfCareFiveWs.context
   participant
      individualFiveWs.who
   periodFiveWs.done[x]
   reasonCodeFiveWs.why[x]
   reasonReferenceFiveWs.why[x]
   diagnosis
      conditionFiveWs.why[x]
   diagnosis (MainDiagnosis)
      conditionFiveWs.why[x]
   diagnosis (Comobility-1)
      conditionFiveWs.why[x]
   diagnosis (Comobility-2)
      conditionFiveWs.why[x]
   diagnosis (Comobility-3)
      conditionFiveWs.why[x]
   location
      locationFiveWs.where[x]

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

EncounterConsultationCO
Encounter
   identifierPV1-19
   identifier (InvoiceIdentifier)PV1-19
      useN/A
      typeCX.5
      systemCX.4 / EI-2-4
      valueCX.1 / EI.1
      periodCX.7 + CX.8
      assignerCX.4 / (CX.4,CX.9,CX.10)
   identifier (AuthorizationIdentifier)PV1-19
      useN/A
      typeCX.5
      systemCX.4 / EI-2-4
      valueCX.1 / EI.1
      periodCX.7 + CX.8
      assignerCX.4 / (CX.4,CX.9,CX.10)
   identifier (EncounterIdentifier)PV1-19
      useN/A
      typeCX.5
      systemCX.4 / EI-2-4
      valueCX.1 / EI.1
      periodCX.7 + CX.8
      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
      versionC*E.7
      codeC*E.1
      displayC*E.2 - but note this is not well followed
      userSelectedSometimes implied by being first
   typePV1-4 / PV1-18
      codingC*E.1-8, C*E.10-22
         systemC*E.3
         versionC*E.7
         codeC*E.1
         displayC*E.2 - but note this is not well followed
         userSelectedSometimes implied by being first
      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
         versionC*E.7
         codeC*E.1
         displayC*E.2 - but note this is not well followed
         userSelectedSometimes implied by being first
      textC*E.9. But note many systems use C*E.2 for this
   priorityPV2-25
   subjectPID-3
   episodeOfCarePV1-54, PV1-53
   participantROL
      typeROL-3 (or maybe PRT-4)
      periodROL-5, ROL-6 (or maybe PRT-5)
      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
   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
         versionC*E.7
         codeC*E.1
         displayC*E.2 - but note this is not well followed
         userSelectedSometimes implied by being first
      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
   diagnosis (MainDiagnosis)
      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
            versionC*E.7
            codeC*E.1
            displayC*E.2 - but note this is not well followed
            userSelectedSometimes implied by being first
         textC*E.9. But note many systems use C*E.2 for this
   diagnosis (Comobility-1)
      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
            versionC*E.7
            codeC*E.1
            displayC*E.2 - but note this is not well followed
            userSelectedSometimes implied by being first
         textC*E.9. But note many systems use C*E.2 for this
   diagnosis (Comobility-2)
      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
            versionC*E.7
            codeC*E.1
            displayC*E.2 - but note this is not well followed
            userSelectedSometimes implied by being first
         textC*E.9. But note many systems use C*E.2 for this
   diagnosis (Comobility-3)
      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
            versionC*E.7
            codeC*E.1
            displayC*E.2 - but note this is not well followed
            userSelectedSometimes implied by being first
         textC*E.9. But note many systems use C*E.2 for this
   hospitalization
      preAdmissionIdentifierPV1-5
      admitSourcePV1-14
      reAdmissionPV1-13
      dietPreferencePV1-38
      specialCourtesyPV1-16
      specialArrangementPV1-15 / OBR-30 / OBR-43
      destinationPV1-37
      dischargeDispositionPV1-36
   location
      locationPV1-3 / PV1-6 / PV1-11 / PV1-42 / PV1-43
   serviceProviderPL.6 & PL.1