Implementation Guide
25.0.0 - R4 APIs

Publish Box goes here

Resource Profile: AthenaImmunization - Mappings

Active as of 2022-03-01

Mappings for the athena-immunization-profile resource profile.

Mappings to Structures in this Implementation Guide

No Mappings Found

Mappings to other Structures

No Mappings Found

Other Mappings

NameathenaFlowathenaPracticeWorkflow PatternHL7 v2 MappingRIM MappingFiveWs Pattern MappingCDA (R2)doco
.. Immunization
FHIRR4_IMMUNIZATIONVIEW
FHIRR4_IMMUNIZATIONVIEW
Event
VXU_V04
SubstanceAdministration
... id
%IMMUNIZATIONGROUPID%
%IMMUNIZATIONGROUPID%
... meta
.... id
n/a
.... extension
n/a
.... versionId
%RESOURCEID%
%RESOURCEID%
.... lastUpdated
%WHENUPDATED%
%WHENUPDATED%
.... source
.... Slices for profile
..... profile:USCore Immunization Profile
..... profile:Athena Immunization Profile
.... Slices for security
..... security:SENSITIVECHART
CheckSensitive(%SENSITIVECHART%)
CheckSensitive(%SENSITIVECHART%)
..... security:CONFABBR
...... id
n/a
...... extension
n/a
...... system
getSiteCodeSystem("ConfidentialDocument")
getSiteCodeSystem("ConfidentialDocument")
C*E.3
./codeSystem
...... version
C*E.7
./codeSystemVersion
...... code
%CONFABBR%
%CONFABBR%
C*E.1
./code
...... display
C*E.2 - but note this is not well followed
CV.displayName
...... userSelected
Sometimes implied by being first
CD.codingRationale
.... tag
MakeChangeTagList(%CHANGE%)
MakeChangeTagList(%CHANGE%)
... implicitRules
... language
... text
Act.text?
... contained
N/A
... Slices for extension
.... extension:VFCEligibility
..... id
n/a
..... extension
n/a
..... url
N/A
..... value[x]
%VFCELIGIBILITY%
%VFCELIGIBILITY%
N/A
.... extension:WasNotGiven
..... id
n/a
..... extension
n/a
..... url
N/A
..... value[x]
  • Equals("N"
  • %WASGIVEN%)
  • Equals("N"
  • %WASGIVEN%)
N/A
... modifierExtension
N/A
... identifier
  • MakeIdentifier("U"
  • getSiteSystem("RESOURCEID")
  • %IMMUNIZATIONGROUPID%)
  • MakeIdentifier("U"
  • getSiteSystem("RESOURCEID")
  • %IMMUNIZATIONGROUPID%)
Event.identifier
.id
FiveWs.identifier
ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/id
... status
  • MapCode(%GIVENSTATUS%
  • "IMMUNIZATIONGIVENSTATUS")
  • MapCode(%GIVENSTATUS%
  • "IMMUNIZATIONGIVENSTATUS")
Event.status
statusCode
FiveWs.status
... statusReason
Event.statusReason
  • .inboundRelationship[typeCode=SUBJ].source[classCode=CACT
  • moodCode=EVN].reasonCOde
.... id
n/a
.... extension
n/a
.... Slices for coding
  • C*E.1-8
  • C*E.10-22
  • union(.
  • ./translation)
..... coding:SNOMED
  • C*E.1-8
  • C*E.10-22
  • union(.
  • ./translation)
...... id
n/a
...... extension
n/a
...... system
C*E.3
./codeSystem
...... version
C*E.7
./codeSystemVersion
...... code
%SNOMEDCODE%
%SNOMEDCODE%
C*E.1
./code
...... display
%STATUSREASON%
%STATUSREASON%
C*E.2 - but note this is not well followed
CV.displayName
...... userSelected
Sometimes implied by being first
CD.codingRationale
..... coding:ACT-REASON
  • MapCoding(%REASONNOTGIVEN%
  • "STATUSREASON")
  • MapCoding(%REASONNOTGIVEN%
  • "STATUSREASON")
  • C*E.1-8
  • C*E.10-22
  • union(.
  • ./translation)
.... text
C*E.9. But note many systems use C*E.2 for this
./originalText[mediaType/code="text/plain"]/data
... vaccineCode
Event.code
RXA-5
.code
FiveWs.what[x]
ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/consumable/manfacturedProduct/manufacturedMaterial/realmCode/code
.... id
n/a
.... extension
n/a
.... Slices for coding
  • C*E.1-8
  • C*E.10-22
  • union(.
  • ./translation)
..... coding:CVX Code
  • MakeCoding(%CVXCODE%
  • //hl7.org/fhir/sid/cvx"
  • %VACCINENAME%)
  • MakeCoding(%CVXCODE%
  • //hl7.org/fhir/sid/cvx"
  • %VACCINENAME%)
  • C*E.1-8
  • C*E.10-22
  • union(.
  • ./translation)
..... coding:NDC Code
  • MakeCoding(%NDCCODE%
  • //hl7.org/fhir/sid/ndc"
  • %VACCINENAME%)
  • MakeCoding(%NDCCODE%
  • //hl7.org/fhir/sid/ndc"
  • %VACCINENAME%)
  • C*E.1-8
  • C*E.10-22
  • union(.
  • ./translation)
.... text
C*E.9. But note many systems use C*E.2 for this
./originalText[mediaType/code="text/plain"]/data
... patient
  • MakeReference("PATIENT"
  • %PID%
  • "Patient")
  • MakeReference("PATIENT"
  • %PID%
  • "Patient")
Event.subject
PID-3
.partipication[ttypeCode=].role
FiveWs.subject
... encounter
  • MakeReference("DOCUMENT"
  • %SDID%
  • "Encounter")
  • MakeReference("DOCUMENT"
  • %SDID%
  • "Encounter")
Event.context
PV1-19
component->EncounterEvent
FiveWs.context
... occurrence[x]
  • MakeDateToPrecision(%ADMINISTEREDDATE%
  • %ADMINISTEREDDATETYPE%)
  • MakeDateToPrecision(%ADMINISTEREDDATE%
  • %ADMINISTEREDDATETYPE%)
Event.occurrence[x]
RXA-3
.effectiveTime
FiveWs.done[x]
ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/effectiveTime/value
... recorded
.participation[typeCode=AUT].time
FiveWs.recorded
... primarySource
  • Equals("N"
  • %HISTORICAL%)
  • Equals("N"
  • %HISTORICAL%)
RXA-9
  • immunization.uncertaintycode (if primary source=false
  • uncertainty=U)
FiveWs.source
... reportOrigin
  • MapConcept(%HISTORICALSOURCE%
  • "IMMUNIZATIONREPORTORIGIN")
  • MapConcept(%HISTORICALSOURCE%
  • "IMMUNIZATIONREPORTORIGIN")
RXA-9
.participation[typeCode=INF].role[classCode=PAT] (this syntax for self-reported) .participation[typeCode=INF].role[classCode=LIC] (this syntax for health care professional) .participation[typeCode=INF].role[classCode=PRS] (this syntax for family member)
FiveWs.source
... location
  • MakeReference("LOCREG"
  • %DOCLOCATIONID%
  • "Location")
  • MakeReference("LOCREG"
  • %DOCLOCATIONID%
  • "Location")
Event.location
  • RXA-27 (or RXA-11
  • deprecated as of v2.7)
.participation[typeCode=LOC].COCT_MT240000UV
FiveWs.where[x]
... manufacturer
  • MakeImmunizationTextReference(%MANUFACTURERCODE%
  • %MANUFACTURER%)
  • MakeImmunizationTextReference(%MANUFACTURERCODE%
  • %MANUFACTURER%)
RXA-17
.participation[typeCode=CSM].role[classCode=INST].scopedRole.scoper[classCode=ORG]
ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/consumable/manfacturedProduct/manufacuturerOrganization/name
... lotNumber
%LOTNUMBER%
%LOTNUMBER%
RXA-15
.participation[typeCode=CSM].role[classCode=INST].scopedRole.scoper[classCode=MMAT].id
ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/consumable/manfacturedProduct/manufacturedMaterial/lotNumberText
... expirationDate
%EXPIRATIONDATE%
%EXPIRATIONDATE%
RXA-16
.participation[typeCode=CSM].role[classCode=INST].scopedRole.scoper[classCode=MMAT].expirationTime
... site
  • MapConcept(%SITECODE%
  • "IMMUNIZATIONSITE")
  • MapConcept(%SITECODE%
  • "IMMUNIZATIONSITE")
RXR-2
observation.targetSiteCode
ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/approachSiteCode/code
... route
  • MakeConcept(%ROUTECODE%
  • //ncimeta.nci.nih.gov"
  • %ROUTE%)
  • MakeConcept(%ROUTECODE%
  • //ncimeta.nci.nih.gov"
  • %ROUTE%)
RXR-1
.routeCode
ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/routeCode/code
... doseQuantity
  • MakeNonZeroQuantity(%ADMINISTEREDDOSE%
  • %ADMINISTEREDDOSEUNITS%)
  • MakeNonZeroQuantity(%ADMINISTEREDDOSE%
  • %ADMINISTEREDDOSEUNITS%)
RXA-6 / RXA-7
.doseQuantity
... performer
Event.performer
ORC-12 / RXA-10
.participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE]
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... function
Event.performer.function
.participation.functionCode
.... actor
  • MakeReference("USR"
  • %ADMINISTEREDBYPVID%
  • "Practitioner")
  • MakeReference("USR"
  • %ADMINISTEREDBYPVID%
  • "Practitioner")
Event.performer.actor
.player
FiveWs.actor
... note
  • IfEqual( %WASGIVEN%
  • "N").Then(MakeAnnotation(%ADMINISTEREDCOMMENTS%))
  • IfEqual( %WASGIVEN%
  • "N").Then(MakeAnnotation(%ADMINISTEREDCOMMENTS%))
Event.note
OBX-3 = 48767-8
note
... reasonCode
  • IfEqual( %WASGIVEN%
  • "Y").Then(MakeTextConcept(%ADMINISTEREDCOMMENTS%))
  • IfEqual( %WASGIVEN%
  • "Y").Then(MakeTextConcept(%ADMINISTEREDCOMMENTS%))
Event.reasonCode
[actionNegationInd=false].reasonCode
... reasonReference
Event.reasonReference
N/A
... isSubpotent
RXA-20 = PA (partial administration)
N/A
... subpotentReason
N/A
... education
N/A
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... documentType
OBX-3 = 69764-9
N/A
.... reference
N/A
.... publicationDate
OBX-3 = 29768-9
N/A
.... presentationDate
OBX-3 = 29769-7
N/A
... programEligibility
OBX-3 = 64994-7
N/A
... fundingSource
N/A
... reaction
OBX-3
Observation[classCode=obs].code
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... date
  • MakeDateToPrecision(%ADVREACTIONDATETIME%
  • %ADVREACTIONDATETIMETYPE%)
  • MakeDateToPrecision(%ADVREACTIONDATETIME%
  • %ADVREACTIONDATETIMETYPE%)
  • OBX-14 (ideally this would be reported in an IAM segment
  • but IAM is not part of the HL7 v2 VXU message - most likely would appear in OBX segments if at all)
.effectiveTime
.... detail
MakeTextReference(%ADVREACTIONCOMMENTS%)
MakeTextReference(%ADVREACTIONCOMMENTS%)
OBX-5
.value
.... reported
(HL7 v2 doesn't seem to provide for this)
.participation[typeCode=INF].role[classCode=PAT] (this syntax for self-reported=true)
... protocolApplied
N/A
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... series
%VACCINEGROUPNAME%
%VACCINEGROUPNAME%
N/A
.... authority
N/A
.... targetDisease
N/A
.... doseNumber[x]
%SERIES%
%SERIES%
N/A
.... seriesDoses[x]
N/A

doco Documentation for this format