This
page
is
part
of
the
FHIR
Specification
(v3.0.2:
STU
3).
(v3.5.0:
R4
Ballot
#2).
The
current
version
which
supercedes
this
version
is
5.0.0
.
For
a
full
list
of
available
versions,
see
the
Directory
of
published
versions
.
Page
versions:
R5
R4B
R4
R3
Patient
Administration
Work
Group
|
Maturity Level : N/A | Ballot Status : Informative | Compartments : Encounter , Patient , Practitioner , RelatedPerson |
R2
:
R3
Converson
:
R4
Conversion
maps
for
Encounter.
Functional
status
for
this
map:
10
tests
that
all
of
which
1
fail
to
execute
ok.
.
1
9
fail
round-trip
testing
and
2
9
r3
resources
are
invalid
(2
(0
errors).
(
see
documentation)
map "http://hl7.org/fhir/StructureMap/Encounter2to3" = "R2 to R3 Conversions for Encounter"map "http://hl7.org/fhir/StructureMap/Encounter3to4" = "R3 to R4 Conversions for Encounter"conceptmap "ActEncounterCode" { prefix s = "http://hl7.org/fhir/encounter-class" prefix t = "http://hl7.org/fhir/v3/ActCode"s:inpatient = t:IMP s:outpatient = t:AMB s:ambulatory = t:AMB s:emergency = t:EMER s:home = t:HH s:field = t:FLD s:daytime = t:SS s:virtual = t:VR s:other = s:other }uses "http://hl7.org/fhir/3.0/StructureDefinition/Encounter" alias EncounterR3 as source uses "http://hl7.org/fhir/StructureDefinition/Encounter" alias Encounter as target imports "http://hl7.org/fhir/StructureMap/*3to4"uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Encounter" alias EncounterR2 as source uses "http://hl7.org/fhir/StructureDefinition/Encounter" alias Encounter as targetimports "http://hl7.org/fhir/StructureMap/*2to3"group for type+types Encounter extends DomainResource input src : EncounterR2 as sourcegroup Encounter extends DomainResource input src : EncounterR3 as source input tgt : Encounter as target"Encounter-identifier" : for src.identifier make tgt.identifier "Encounter-status" : for src.status make tgt.status "Encounter-statusHistory" : for src.statusHistory as vs0 make tgt.statusHistory as vt0 then encStatusHistory(vs0, vt0) "Encounter-class" : for src.class as v make tgt.class = translate(v, "#ActEncounterCode", "Coding") "Encounter-type" : for src.type make tgt.type "Encounter-priority" : for src.priority make tgt.priority "Encounter-patient" : for src.patient make tgt.subject "Encounter-episodeOfCare" : for src.episodeOfCare make tgt.episodeOfCare "Encounter-incomingReferral" : for src.incomingReferral make tgt.incomingReferral "Encounter-participant" : for src.participant as vs0 make tgt.participant as vt0 then encParticipant(vs0, vt0) "Encounter-appointment" : for src.appointment make tgt.appointment "Encounter-period" : for src.period make tgt.period "Encounter-length" : for src.length as vs make tgt.length as vt then QuantityToDuration(vs, vt) "Encounter-reason" : for src.reason make tgt.reason "Encounter-indication" : for src.indication as v make tgt.diagnosis as d, d.condition = v "Encounter-hospitalization" : for src.hospitalization as vs0 make tgt.hospitalization as vt0 then encHospitaization(vs0, vt0, tgt) "Encounter-location" : for src.location as vs0 make tgt.location as vt0 then encLocation(vs0, vt0) "Encounter-serviceProvider" : for src.serviceProvider make tgt.serviceProvider "Encounter-partOf" : for src.partOf make tgt.partOf endgroup group encStatusHistory extends BackboneElement input src as source input tgt as target "Encounter.statusHistory-status" : for src.status make tgt.status "Encounter.statusHistory-period" : for src.period make tgt.period endgroup group encParticipant extends BackboneElement input src as source input tgt as target "Encounter.participant-type" : for src.type make tgt.type "Encounter.participant-period" : for src.period make tgt.period "Encounter.participant-individual" : for src.individual make tgt.individual endgroup group encHospitaization extends BackboneElement input src as source input tgt as target input res as target "Encounter.hospitalization-preAdmissionIdentifier" : for src.preAdmissionIdentifier make tgt.preAdmissionIdentifier "Encounter.hospitalization-origin" : for src.origin make tgt.origin "Encounter.hospitalization-admitSource" : for src.admitSource make tgt.admitSource "Encounter.hospitalization-admittingDiagnosis" : for src.admittingDiagnosis as v make tgt.diagnosis as d, d.role = cc("http://hl7.org/fhir/diagnosis-role", "AD"), d.condition = v "Encounter.hospitalization-reAdmission" : for src.reAdmission make tgt.reAdmission "Encounter.hospitalization-dietPreference" : for src.dietPreference make tgt.dietPreference "Encounter.hospitalization-specialCourtesy" : for src.specialCourtesy make tgt.specialCourtesy "Encounter.hospitalization-specialArrangement" : for src.specialArrangement make tgt.specialArrangement "Encounter.hospitalization-destination" : for src.destination make tgt.destination "Encounter.hospitalization-dischargeDisposition" : for src.dischargeDisposition make tgt.dischargeDisposition "Encounter.hospitalization-dischargeDiagnosis" : for src.dischargeDiagnosis as v make tgt.diagnosis as d, d.role = cc("http://hl7.org/fhir/diagnosis-role", "DD"), d.condition = v"Encounter.identifier" : for src.identifier as vs make tgt.identifier as vt "Encounter.status" : for src.status as vs make tgt.status as vt "Encounter.class" : for src.class as vs make tgt.class as vt "Encounter.type" : for src.type as vs make tgt.type as vt "Encounter.priority" : for src.priority as vs make tgt.priority as vt "Encounter.subject" : for src.subject as vs make tgt.subject as vt "Encounter.episodeOfCare" : for src.episodeOfCare as vs make tgt.episodeOfCare as vt "Encounter.basedOn" : for src.incomingReferral as vs make tgt.basedOn as vt "Encounter.participant" : for src.participant as vs0 make tgt.participant as vt0 then { "Encounter.participant.type" : for vs0.type as vs make vt0.type as vt "Encounter.participant.period" : for vs0.period as vs make vt0.period as vt "Encounter.participant.individual" : for vs0.individual as vs make vt0.individual as vt } "Encounter.appointment" : for src.appointment as vs make tgt.appointment as vt "Encounter.period" : for src.period as vs make tgt.period as vt "Encounter.length" : for src.length as vs make tgt.length as vt "Encounter.reason" : for src.reason as vs make tgt.reason as vt "Encounter.account" : for src.account as vs make tgt.account as vt "Encounter.hospitalization" : for src.hospitalization as vs0 make tgt.hospitalization as vt0 then { "Encounter.hospitalization.preAdmissionIdentifier" : for vs0.preAdmissionIdentifier as vs make vt0.preAdmissionIdentifier as vt "Encounter.hospitalization.origin" : for vs0.origin as vs make vt0.origin as vt "Encounter.hospitalization.admitSource" : for vs0.admitSource as vs make vt0.admitSource as vt "Encounter.hospitalization.reAdmission" : for vs0.reAdmission as vs make vt0.reAdmission as vt "Encounter.hospitalization.dietPreference" : for vs0.dietPreference as vs make vt0.dietPreference as vt "Encounter.hospitalization.specialCourtesy" : for vs0.specialCourtesy as vs make vt0.specialCourtesy as vt "Encounter.hospitalization.specialArrangement" : for vs0.specialArrangement as vs make vt0.specialArrangement as vt "Encounter.hospitalization.destination" : for vs0.destination as vs make vt0.destination as vt "Encounter.hospitalization.dischargeDisposition" : for vs0.dischargeDisposition as vs make vt0.dischargeDisposition as vt } "Encounter.location" : for src.location as vs0 make tgt.location as vt0 then { "Encounter.location.location" : for vs0.location as vs make vt0.location as vt "Encounter.location.status" : for vs0.status as vs make vt0.status as vt "Encounter.location.period" : for vs0.period as vs make vt0.period as vt } "Encounter.serviceProvider" : for src.serviceProvider as vs make tgt.serviceProvider as vt "Encounter.partOf" : for src.partOf as vs make tgt.partOf as vt endgroupgroup encLocation extends BackboneElement input src as source input tgt as target "Encounter.location-location" : for src.location make tgt.location "Encounter.location-status" : for src.status make tgt.status "Encounter.location-period" : for src.period make tgt.period endgroup
map "http://hl7.org/fhir/StructureMap/Encounter3to2" = "R3 to R2 Conversion for Encounter"map "http://hl7.org/fhir/StructureMap/Encounter4to3" = "R4 to R3 Conversion for Encounter"conceptmap "ActEncounterCode" { prefix s = "http://hl7.org/fhir/encounter-class" prefix t = "http://hl7.org/fhir/v3/ActCode"t:IMP = s:inpatient t:AMB = s:outpatient t:AMB = s:ambulatory t:EMER = s:emergency t:HH = s:home t:FLD = s:field t:SS = s:daytime t:VR = s:virtual }uses "http://hl7.org/fhir/StructureDefinition/Encounter" alias Encounter as source uses "http://hl7.org/fhir/3.0/StructureDefinition/Encounter" alias EncounterR3 as target imports "http://hl7.org/fhir/StructureMap/*4to3"uses "http://hl7.org/fhir/StructureDefinition/Encounter" alias Encounter as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Encounter" alias EncounterR2 as targetimports "http://hl7.org/fhir/StructureMap/*3to2"group for type+types Encounter extends DomainResourcegroup Encounter extends DomainResource input src : Encounter as sourceinput tgt : EncounterR2 as target "Encounter-identifier" : for src.identifier make tgt.identifier "Encounter-status" : for src.status check status != 'entered-in-error' make tgt.status "Encounter-statusHistory" : for src.statusHistory as vs0 make tgt.statusHistory as vt0 then encStatusHistory(vs0, vt0) "Encounter-class" : for src.class as v make tgt.class = translate(v, "#ActEncounterCode", "code") "Encounter-type" : for src.type make tgt.type "Encounter-priority" : for src.priority make tgt.priority "Encounter-patient" : for src.subject make tgt.patient "Encounter-episodeOfCare" : for src.episodeOfCare make tgt.episodeOfCare "Encounter-incomingReferral" : for src.incomingReferral make tgt.incomingReferral "Encounter-participant" : for src.participant as vs0 make tgt.participant as vt0 then encParticipant(vs0, vt0) "Encounter-appointment" : for src.appointment make tgt.appointment "Encounter-period" : for src.period make tgt.period "Encounter-length" : for src.length as vs make tgt.length as vt then DurationToQuantity(vs, vt) "Encounter-reason" : for src.reason make tgt.reason "Encounter-indication" : for src.diagnosis as d then encDiagnosis(d, tgt) "Encounter-hospitalization" : for src.hospitalization as vs0 make tgt.hospitalization as vt0 then encHospitaization(vs0, vt0) "Encounter-location" : for src.location as vs0 make tgt.location as vt0 then encLocation(vs0, vt0) "Encounter-serviceProvider" : for src.serviceProvider make tgt.serviceProvider "Encounter-partOf" : for src.partOf make tgt.partOf endgroup group encDiagnosis extends BackboneElement input src as source input tgt as target "Encounter.indication-condition1" : for src.condition as v where src.role.coding.code.contains("AD").not() and role.coding.code.contains("DD").not() make tgt.indication = v "Encounter.indication-condition2" : for src.condition as v where src.role.coding.code.contains("AD") make tgt.hospitalization as h, h.admittingDiagnosis = v "Encounter.indication-condition3" : for src.condition as v where src.role.coding.code.contains("DD") make tgt.hospitalization as h, h.dischargeDiagnosis = v endgroup group encStatusHistory extends BackboneElement input src as source input tgt as target "Encounter.statusHistory-status" : for src.status make tgt.status "Encounter.statusHistory-period" : for src.period make tgt.period endgroup group encParticipant extends BackboneElement input src as source input tgt as target "Encounter.participant-type" : for src.type make tgt.type "Encounter.participant-period" : for src.period make tgt.period "Encounter.participant-individual" : for src.individual make tgt.individual endgroup group encHospitaization extends BackboneElement input src as source input tgt as target "Encounter.hospitalization-preAdmissionIdentifier" : for src.preAdmissionIdentifier make tgt.preAdmissionIdentifier "Encounter.hospitalization-origin" : for src.origin make tgt.origin "Encounter.hospitalization-admitSource" : for src.admitSource make tgt.admitSource "Encounter.hospitalization-reAdmission" : for src.reAdmission make tgt.reAdmission "Encounter.hospitalization-dietPreference" : for src.dietPreference make tgt.dietPreference "Encounter.hospitalization-specialCourtesy" : for src.specialCourtesy make tgt.specialCourtesy "Encounter.hospitalization-specialArrangement" : for src.specialArrangement make tgt.specialArrangement "Encounter.hospitalization-destination" : for src.destination make tgt.destination "Encounter.hospitalization-dischargeDisposition" : for src.dischargeDisposition make tgt.dischargeDispositioninput tgt : EncounterR3 as target "Encounter.identifier" : for src.identifier as vs make tgt.identifier as vt "Encounter.status" : for src.status as vs make tgt.status as vt "Encounter.class" : for src.class as vs make tgt.class as vt "Encounter.type" : for src.type as vs make tgt.type as vt "Encounter.priority" : for src.priority as vs make tgt.priority as vt "Encounter.subject" : for src.subject as vs make tgt.subject as vt "Encounter.episodeOfCare" : for src.episodeOfCare as vs make tgt.episodeOfCare as vt "Encounter.incomingReferral" : for src.basedOn as vs make tgt.incomingReferral as vt "Encounter.participant" : for src.participant as vs0 make tgt.participant as vt0 then { "Encounter.participant.type" : for vs0.type as vs make vt0.type as vt "Encounter.participant.period" : for vs0.period as vs make vt0.period as vt "Encounter.participant.individual" : for vs0.individual as vs make vt0.individual as vt } "Encounter.appointment" : for src.appointment as vs make tgt.appointment as vt "Encounter.period" : for src.period as vs make tgt.period as vt "Encounter.length" : for src.length as vs make tgt.length as vt "Encounter.reason" : for src.reason as vs make tgt.reason as vt "Encounter.account" : for src.account as vs make tgt.account as vt "Encounter.hospitalization" : for src.hospitalization as vs0 make tgt.hospitalization as vt0 then { "Encounter.hospitalization.preAdmissionIdentifier" : for vs0.preAdmissionIdentifier as vs make vt0.preAdmissionIdentifier as vt "Encounter.hospitalization.origin" : for vs0.origin as vs make vt0.origin as vt "Encounter.hospitalization.admitSource" : for vs0.admitSource as vs make vt0.admitSource as vt "Encounter.hospitalization.reAdmission" : for vs0.reAdmission as vs make vt0.reAdmission as vt "Encounter.hospitalization.dietPreference" : for vs0.dietPreference as vs make vt0.dietPreference as vt "Encounter.hospitalization.specialCourtesy" : for vs0.specialCourtesy as vs make vt0.specialCourtesy as vt "Encounter.hospitalization.specialArrangement" : for vs0.specialArrangement as vs make vt0.specialArrangement as vt "Encounter.hospitalization.destination" : for vs0.destination as vs make vt0.destination as vt "Encounter.hospitalization.dischargeDisposition" : for vs0.dischargeDisposition as vs make vt0.dischargeDisposition as vt } "Encounter.location" : for src.location as vs0 make tgt.location as vt0 then { "Encounter.location.location" : for vs0.location as vs make vt0.location as vt "Encounter.location.status" : for vs0.status as vs make vt0.status as vt "Encounter.location.period" : for vs0.period as vs make vt0.period as vt } "Encounter.serviceProvider" : for src.serviceProvider as vs make tgt.serviceProvider as vt "Encounter.partOf" : for src.partOf as vs make tgt.partOf as vt endgroupgroup encLocation extends BackboneElement input src as source input tgt as target "Encounter.location-location" : for src.location make tgt.location "Encounter.location-status" : for src.status make tgt.status "Encounter.location-period" : for src.period make tgt.period endgroup