This
page
is
part
of
the
FHIR
Specification
(v4.3.0:
R4B
(v5.0.0:
R5
-
STU
).
The
This
is
the
current
published
version
which
supercedes
in
it's
permanent
home
(it
will
always
be
available
at
this
version
is
5.0.0
.
URL).
For
a
full
list
of
available
versions,
see
the
Directory
of
published
versions
.
Page
versions:
R5
R4B
R5
R4B
R4
R3
Patient
Administration
Work
Group
|
Maturity Level : N/A | Standards Status : Informative | Security Category : Patient | Compartments : Patient , Practitioner , RelatedPerson |
R3
:
R4
:
R5
Conversion
maps
for
Patient.
Functional
status
for
this
map:
16
tests
that
all
execute
ok.
All
tests
pass
round-trip
testing
and
all
r3
resources
are
valid.
See
Conversions
Summary
.
(
see
documentation)
map "http://hl7.org/fhir/StructureMap/Patient3to4" = "R3 to R4 Conversions for Patient"
uses "http://hl7.org/fhir/3.0/StructureDefinition/Patient" alias PatientR3 as source
uses "http://hl7.org/fhir/StructureDefinition/Patient" alias Patient as target
imports "http://hl7.org/fhir/StructureMap/*3to4"
group Patient(source src : PatientR3, target tgt : Patient) extends DomainResource <<type+>> {
src.identifier -> tgt.identifier;
src.active -> tgt.active;
src.name -> tgt.name;
src.telecom -> tgt.telecom;
src.gender -> tgt.gender;
src.birthDate -> tgt.birthDate;
src.deceased : boolean as vs -> tgt.deceased = create('boolean') as vt then boolean(vs, vt);
src.deceased : dateTime as vs -> tgt.deceased = create('dateTime') as vt then dateTime(vs, vt);
src.address -> tgt.address;
src.maritalStatus -> tgt.maritalStatus;
src.multipleBirth : boolean as vs -> tgt.multipleBirth = create('boolean') as vt then boolean(vs, vt);
src.multipleBirth : integer as vs -> tgt.multipleBirth = create('integer') as vt then integer(vs, vt);
src.photo -> tgt.photo;
src.contact as vs0 -> tgt.contact as vt0 then contact(vs0, vt0);
src.animal as vs0 -> tgt.extension as vt0 then animal(vs0, vt0);
src.communication as vs0 -> tgt.communication as vt0 then communication(vs0, vt0);
src.generalPractitioner -> tgt.generalPractitioner;
src.managingOrganization -> tgt.managingOrganization;
src.link as vs0 -> tgt.link as vt0 then link(vs0, vt0);
}
group contact(source src, target tgt) extends BackboneElement {
src.relationship -> tgt.relationship;
src.name -> tgt.name;
src.telecom -> tgt.telecom;
src.address -> tgt.address;
src.gender -> tgt.gender;
src.organization -> tgt.organization;
src.period -> tgt.period;
}
group animal(source src, target tgt) extends Element {
src -> tgt.url = 'http://hl7.org/fhir/StructureDefinition/patient-animal' "animal";
src.species as vs -> tgt.extension as ext, ext.url = 'species', ext.value = vs;
src.breed as vs -> tgt.extension as ext, ext.url = 'breed', ext.value = vs;
src.genderStatus as vs -> tgt.extension as ext, ext.url = 'genderStatus', ext.value = vs;
}
group communication(source src, target tgt) extends BackboneElement {
src.language -> tgt.language;
src.preferred -> tgt.preferred;
}
group link(source src, target tgt) extends BackboneElement {
src.other -> tgt.other;
src.type -> tgt.type;
}
map "http://hl7.org/fhir/StructureMap/Patient4to3" = "R4 to R3 Conversion for Patient"
uses "http://hl7.org/fhir/StructureDefinition/Patient" alias Patient as source
uses "http://hl7.org/fhir/3.0/StructureDefinition/Patient" alias PatientR3 as target
imports "http://hl7.org/fhir/StructureMap/*4to3"
group Patient(source src : Patient, target tgt : PatientR3) extends DomainResource <<type+>> {
src.identifier -> tgt.identifier;
src.active -> tgt.active;
src.name -> tgt.name;
src.telecom -> tgt.telecom;
src.gender -> tgt.gender;
src.birthDate -> tgt.birthDate;
src.deceased : boolean as vs -> tgt.deceased = create('boolean') as vt then boolean(vs, vt);
src.deceased : dateTime as vs -> tgt.deceased = create('dateTime') as vt then dateTime(vs, vt);
src.address -> tgt.address;
src.maritalStatus -> tgt.maritalStatus;
src.multipleBirth : boolean as vs -> tgt.multipleBirth = create('boolean') as vt then boolean(vs, vt);
src.multipleBirth : integer as vs -> tgt.multipleBirth = create('integer') as vt then integer(vs, vt);
src.photo -> tgt.photo;
src.contact as vs0 -> tgt.contact as vt0 then contact(vs0, vt0);
src.extension as vs0 where url = 'http://hl7.org/fhir/StructureDefinition/patient-animal' -> tgt.animal as vt0 then animal(vs0, vt0) "animal";
src.communication as vs0 -> tgt.communication as vt0 then communication(vs0, vt0);
src.generalPractitioner -> tgt.generalPractitioner;
src.managingOrganization -> tgt.managingOrganization;
src.link as vs0 -> tgt.link as vt0 then link(vs0, vt0);
}
group contact(source src, target tgt) extends BackboneElement {
src.relationship -> tgt.relationship;
src.name -> tgt.name;
src.telecom -> tgt.telecom;
src.address -> tgt.address;
src.gender -> tgt.gender;
src.organization -> tgt.organization;
src.period -> tgt.period;
}
group animal(source src, target tgt) {
src.extension as ext where url = 'species' then {
ext.value as vs0 -> tgt.species = vs0 "species2";
} "species";
src.extension as ext where url = 'breed' then {
ext.value as vs0 -> tgt.breed = vs0 "breed";
} "breed";
src.extension as ext where url = 'genderStatus' then {
ext.value as vs0 -> tgt.genderStatus = vs0 "genderStatus";
} "genderStatus";
}
group communication(source src, target tgt) extends BackboneElement {
src.language -> tgt.language;
src.preferred -> tgt.preferred;
}
group link(source src, target tgt) extends BackboneElement {
src.other -> tgt.other;
src.type -> tgt.type;
}
No
validation
errors
-
all
conversions
are
clean</p>
clean