US Veterans Health Administration FHIR Map Set Implementation Guide
1.8.0 - 250901 United States of America flag

US Veterans Health Administration FHIR Map Set Implementation Guide - Downloaded Version 1.8.0 See the Directory of published versions

Resource Profile: EncounterInpatientEncounter - Mappings

Active as of 2025-09-02

Mappings for the EncounterInpatientEncounter resource profile.

Scroll down for the Raw FHIR, CDW & SDA mappings (if any).

Note that the CDW, SDA and VPR XML mappings are derived from a look-up based on the VistA source.

Mapping Sources

Use Case: Encounter: Inpatient (Source)Use Case: Encounter: Inpatient (Source)WARD LOCATION (42)44HOSPITAL LOCATION FILE POINTERPTF (45).001NUMBER.01PATIENT2ADMISSION DATE2.1INTERNAL ADMISSION #2.2WARD AT DISCHARGE3FACILITY20SOURCE OF ADMISSION21.1TRANSFERRING FACILITY70DISCHARGE DATE75PLACE OF DISPOSITION76.1RECEIVING FACILITY79PRINCIPAL DIAGNOSIS79.1PROVIDER79.*SECONDARY DIAGNOSIS 1-2445.01+to+45.05PROCEDURE 1-5INPATIENT CPT CODE (46).01CPT CODEICD DIAGNOSIS (80).01CODE NUMBERCPT (81).01CPT CODE2SHORT NAMEICD OPERATION/PROCEDURE (80.1).01CODE NUMBERSOURCE OF ADMISSION (45.1).01PTF CODE

Raw Mappings

key status direction source mapApproach mapCase FHIR Path subPath mapValue mapParameter mapComment FHIR URL | Ver
427 team-approved V2F PTF - NUMBER (45-.001) source value Encounter.identifier[va-IEN] .value .system= http://va.gov/identifiers/$Sta3n/45
.type.text = "IEN"
removed use=IFN typo and split of class to new mapset row http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
1601 for review V2F fixed value Encounter.class http://terminology.hl7.org/CodeSystem/v3-ActCode#IMP http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
428 team-approved V2F PTF - INTERNAL ADMISSION # (45-2.1) source value Encounter.identifier[va-IA] .value .system=http://va.gov/identifiers/$Sta3n/45-2.1
.type.text = "Internal Admission #"
http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
433 team-approved V2F PTF - ADMISSION DATE (45-2) fixed value null or > now Encounter.status #planned http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
434 team-approved V2F PTF - ADMISSION DATE (45-2) fixed value not null, < now, field 70 null Encounter.status #in-progress http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
435 team-approved V2F PTF - DISCHARGE DATE (45-70) fixed value not null Encounter.status #finished http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
441 team-approved V2F PTF - PATIENT (45-.01) reference Encounter.subject /Patient http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
442 team-approved V2F PTF - PROVIDER (45-79.1) reference Encounter.participant .individual /Practitioner .type.coding = http://terminology.hl7.org/CodeSystem/v3-ParticipationType#PPRF http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
445 team-approved V2F PTF - ADMISSION DATE (45-2) source value Encounter.period .start http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
446 team-approved V2F PTF - DISCHARGE DATE (45-70) source value Encounter.period .end http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
448 team-approved V2F PTF - PRINCIPAL DIAGNOSIS (45-79) source value Encounter.reasonCode[va-principle].coding .code .system=termmap({VF_ICDCodingSystems,CODING SYSTEM(1.1)}) http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
1723 for review V2F reference Encounter.diagnosis .condition Condition .rank=1 This points to the Condition identified at #956 http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
449 team-approved V2F PTF - SECONDARY DIAGNOSIS 1-24 > ICD DIAGNOSIS - CODE NUMBER (45-79.* > 80-.01) source value Encounter.reasonCode[va-secondary].coding .code .system=termmap({VF_ICDCodingSystems,CODING SYSTEM(1.1)}) *) 79.16-79.19,79.201,79.21-79.24,79.241-79.249,79.2491,79.24911-79.24915 http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
450 team-approved V2F PTF - PROCEDURE 1-5 > ICD OPERATION/PROCEDURE - CODE NUMBER (45-45.01+to+45.05 > 80.1-.01) source value Encounter.reasonCode[va-procedure].coding .code .system=http://www.cms.gov/Medicare/Coding/ICD10 45.01-45.05 http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
453 team-approved V2F PTF - SOURCE OF ADMISSION > SOURCE OF ADMISSION - PTF CODE (45-20 > 45.1-.01) source value Encounter.hospitalization.admitSource.coding .code .system = http://va.gov/terminology/vistaDefinedTerms/45.1 http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
955 team-approved V2F PTF - SOURCE OF ADMISSION > SOURCE OF ADMISSION - PTF CODE (45-20 > 45.1-.01) terminologyMaps Encounter.hospitalization.admitSource.coding VF_SourceOfAdmission preferred binding http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
454 team-approved V2F PTF - TRANSFERRING FACILITY (45-21.1) source value Encounter.hospitalization.origin .display http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
455 team-approved V2F PTF - RECEIVING FACILITY (45-76.1) source value Encounter.hospitalization.destination .display http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
456 team-approved V2F PTF - PLACE OF DISPOSITION (45-75) source value Encounter.hospitalization.dischargeDisposition.coding .code .system = http://va.gov/terminology/vistaDefinedTerms/45.6 http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
460 team-approved V2F PTF - WARD AT DISCHARGE > WARD LOCATION - HOSPITAL LOCATION FILE POINTER (45-2.2 > 42-44) reference Encounter.location[va-ward].location /Location computed 45-2.2 is in CDW ; DIM WardLocation.SID 104.302 indirect pointer http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
461 team-approved V2F PTF - FACILITY (45-3) reference Encounter.location[va-facility].location /Location This is the Sta3n http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
1600 for review V2F PTF - FACILITY (45-3) reference Encounter.serviceProvider /Organization http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
1616 for review V2F INPATIENT CPT CODE - CPT CODE > CPT (46-.01 > 81-) source value Encounter.type .coding.system=http://www.ama-assn.org/go/cpt
.coding.code = {CPT CODE (.01)}
.coding.display = {SHORT NAME (2)} 
.text = {SHORT NAME (2)}
http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1
1800 for review V2F target not supported Encounter.participant.period http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter | 5.0.1

Mappings to Structures in this Implementation Guide

No Mappings Found

Mappings to other Structures

No Mappings Found

Other Mappings

NameWorkflow PatternRIM MappingFiveWs Pattern MappingHL7 v2 Mappingdoco
.. Encounter
Event
Encounter[@moodCode='EVN']
... id
... meta
... implicitRules
... language
... text
Act.text?
... contained
N/A
... extension
N/A
... modifierExtension
N/A
... Slices for identifier
Event.identifier
.id
FiveWs.identifier
PV1-19
.... identifier:All Slices
..... id
n/a
..... extension
n/a
..... use
Role.code or implied by context
N/A
..... type
Role.code or implied by context
CX.5
..... system
II.root or Role.id.root
CX.4 / EI-2-4
..... value
II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
CX.1 / EI.1
..... period
Role.effectiveTime or implied by context
CX.7 + CX.8
..... assigner
II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • CX.4 / (CX.4
  • CX.9
  • CX.10)
.... identifier:va-IEN
Event.identifier
.id
FiveWs.identifier
PV1-19
..... id
n/a
..... extension
n/a
..... use
Role.code or implied by context
N/A
..... type
Role.code or implied by context
CX.5
...... id
n/a
...... extension
n/a
...... coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
...... text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
..... system
II.root or Role.id.root
CX.4 / EI-2-4
..... value
II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
CX.1 / EI.1
..... period
Role.effectiveTime or implied by context
CX.7 + CX.8
..... assigner
II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • CX.4 / (CX.4
  • CX.9
  • CX.10)
.... identifier:va-IA
Event.identifier
.id
FiveWs.identifier
PV1-19
..... id
n/a
..... extension
n/a
..... use
Role.code or implied by context
N/A
..... type
Role.code or implied by context
CX.5
...... id
n/a
...... extension
n/a
...... coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
...... text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
..... system
II.root or Role.id.root
CX.4 / EI-2-4
..... value
II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
CX.1 / EI.1
..... period
Role.effectiveTime or implied by context
CX.7 + CX.8
..... assigner
II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • CX.4 / (CX.4
  • CX.9
  • CX.10)
... status
Event.status
.statusCode
FiveWs.status
  • No clear equivalent in HL7 v2; active/finished could be inferred from PV1-44
  • PV1-45
  • PV2-24; inactive could be inferred from PV2-16
... statusHistory
n/a
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... status
n/a
.... period
n/a
... class
.inboundRelationship[typeCode=SUBJ].source[classCode=LIST].code
FiveWs.class
PV1-2
... classHistory
n/a
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... class
n/a
.... period
n/a
... type
Event.code
.code
FiveWs.class
PV1-4 / PV1-18
.... id
n/a
.... extension
n/a
.... coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
..... id
n/a
..... extension
n/a
..... system
./codeSystem
C*E.3
..... version
./codeSystemVersion
C*E.7
..... code
./code
C*E.1
..... display
CV.displayName
C*E.2 - but note this is not well followed
..... userSelected
CD.codingRationale
Sometimes implied by being first
.... text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
... serviceType
Event.code
n/a
PV1-10
... priority
.priorityCode
FiveWs.grade
PV2-25
... subject
Event.subject
.participation[typeCode=SBJ]/role[classCode=PAT]
FiveWs.subject
PID-3
... episodeOfCare
Event.context
n/a
FiveWs.context
  • PV1-54
  • PV1-53
... basedOn
Event.basedOn
.reason.ClinicalDocument
... participant
Event.performer
.participation[typeCode=PFM]
ROL
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... type
Event.performer.function
.functionCode
ROL-3 (or maybe PRT-4)
..... id
n/a
..... extension
n/a
..... coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
..... text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
.... period
.time
  • ROL-5
  • ROL-6 (or maybe PRT-5)
.... individual
Event.performer.actor
.role
FiveWs.who
ROL-4
... appointment
Event.basedOn
  • .outboundRelationship[typeCode=FLFS].target[classCode=ENC
  • moodCode=APT]
SCH-1 / SCH-2
... period
Event.occurrence[x]
.effectiveTime (low & high)
FiveWs.done[x]
  • PV1-44
  • PV1-45
.... id
n/a
.... extension
n/a
.... start
./low
DR.1
.... end
./high
DR.2
... length
Event.occurrence[x]
.lengthOfStayQuantity
(PV1-45 less PV1-44) iff ( (PV1-44 not empty) and (PV1-45 not empty) ); units in minutes
... Slices for reasonCode
Event.reasonCode
.reasonCode
FiveWs.why[x]
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 )
.... reasonCode:va-principle
Event.reasonCode
.reasonCode
FiveWs.why[x]
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 )
..... id
n/a
..... extension
n/a
..... coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
...... id
n/a
...... extension
n/a
...... system
./codeSystem
C*E.3
...... version
./codeSystemVersion
C*E.7
...... code
./code
C*E.1
...... display
CV.displayName
C*E.2 - but note this is not well followed
...... userSelected
CD.codingRationale
Sometimes implied by being first
..... text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
.... reasonCode:va-secondary
Event.reasonCode
.reasonCode
FiveWs.why[x]
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 )
..... id
n/a
..... extension
n/a
..... coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
...... id
n/a
...... extension
n/a
...... system
./codeSystem
C*E.3
...... version
./codeSystemVersion
C*E.7
...... code
./code
C*E.1
...... display
CV.displayName
C*E.2 - but note this is not well followed
...... userSelected
CD.codingRationale
Sometimes implied by being first
..... text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
.... reasonCode:va-procedure
Event.reasonCode
.reasonCode
FiveWs.why[x]
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 )
..... id
n/a
..... extension
n/a
..... coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
...... id
n/a
...... extension
n/a
...... system
./codeSystem
C*E.3
...... version
./codeSystemVersion
C*E.7
...... code
./code
C*E.1
...... display
CV.displayName
C*E.2 - but note this is not well followed
...... userSelected
CD.codingRationale
Sometimes implied by being first
..... text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
... reasonReference
Event.reasonCode
.reasonCode
FiveWs.why[x]
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
.outboundRelationship[typeCode=RSON]
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... condition
Event.reasonReference
.outboundRelationship[typeCode=RSON].target
FiveWs.why[x]
Resources that would commonly referenced at Encounter.indication would be Condition and/or Procedure. These most closely align with DG1/PRB and PR1 respectively.
.... use
n/a
.... rank
.outboundRelationship[typeCode=RSON].priority
... account
.pertains.A_Account
... hospitalization
  • .outboundRelationship[typeCode=COMP].target[classCode=ENC
  • moodCode=EVN]
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... preAdmissionIdentifier
.id
PV1-5
.... origin
.participation[typeCode=ORG].role
..... id
n/a
..... extension
n/a
..... reference
N/A
..... type
N/A
..... identifier
.identifier
..... display
N/A
.... admitSource
.admissionReferralSourceCode
PV1-14
..... id
n/a
..... extension
n/a
..... coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
...... id
n/a
...... extension
n/a
...... system
./codeSystem
C*E.3
...... version
./codeSystemVersion
C*E.7
...... code
./code
C*E.1
...... display
CV.displayName
C*E.2 - but note this is not well followed
...... userSelected
CD.codingRationale
Sometimes implied by being first
..... text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
.... reAdmission
n/a
PV1-13
.... dietPreference
  • .outboundRelationship[typeCode=COMP].target[classCode=SBADM
  • moodCode=EVN
  • code="diet"]
PV1-38
.... specialCourtesy
.specialCourtesiesCode
PV1-16
.... specialArrangement
.specialArrangementCode
PV1-15 / OBR-30 / OBR-43
.... destination
.participation[typeCode=DST]
PV1-37
..... id
n/a
..... extension
n/a
..... reference
N/A
..... type
N/A
..... identifier
.identifier
..... display
N/A
.... dischargeDisposition
.dischargeDispositionCode
PV1-36
..... id
n/a
..... extension
n/a
..... coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
...... id
n/a
...... extension
n/a
...... system
./codeSystem
C*E.3
...... version
./codeSystemVersion
C*E.7
...... code
./code
C*E.1
...... display
CV.displayName
C*E.2 - but note this is not well followed
...... userSelected
CD.codingRationale
Sometimes implied by being first
..... text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
... Slices for location
.participation[typeCode=LOC]
.... location:All Slices
..... id
n/a
..... extension
n/a
..... modifierExtension
N/A
..... location
Event.location
.role
FiveWs.where[x]
PV1-3 / PV1-6 / PV1-11 / PV1-42 / PV1-43
..... status
.role.statusCode
..... physicalType
..... period
.time
.... location:va-ward
.participation[typeCode=LOC]
..... id
n/a
..... extension
n/a
..... modifierExtension
N/A
..... location
Event.location
.role
FiveWs.where[x]
PV1-3 / PV1-6 / PV1-11 / PV1-42 / PV1-43
..... status
.role.statusCode
..... physicalType
..... period
.time
.... location:va-facility
.participation[typeCode=LOC]
..... id
n/a
..... extension
n/a
..... modifierExtension
N/A
..... location
Event.location
.role
FiveWs.where[x]
PV1-3 / PV1-6 / PV1-11 / PV1-42 / PV1-43
..... status
.role.statusCode
..... physicalType
..... period
.time
... serviceProvider
Event.performer.actor
.particiaption[typeCode=PFM].role
PL.6 & PL.1
... partOf
Event.partOf
  • .inboundRelationship[typeCode=COMP].source[classCode=COMP
  • moodCode=EVN]

doco Documentation for this format