This
page
is
part
of
the
FHIR
Specification
(v5.0.0:
R5
(v4.0.1:
R4
-
Mixed
Normative
and
STU
).
This
is
the
)
in
it's
permanent
home
(it
will
always
be
available
at
this
URL).
The
current
published
version.
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
R2
Patient
Administration
Work
Group
|
Maturity Level : N | Normative (from v4.0.0) | Security Category : Patient | Compartments : Patient , Practitioner , RelatedPerson |
|
|
This
page
has
been
approved
as
part
of
an
ANSI
standard.
See
the
Patient
Package
for
further
details.
|
Demographics and other administrative information about an individual or animal receiving care or other health-related services.
This Resource covers data about patients and animals involved in a wide range of health-related activities, including:
The data in the Resource covers the "who" information about the patient: its attributes are focused on the demographic information necessary to support the administrative, financial and logistic procedures. A Patient record is generally created and maintained by each organization providing care for a patient. A patient or animal receiving care at multiple organizations may therefore have its information present in multiple Patient Resources.
Not all concepts are included within the base resource (such as race, ethnicity, organ donor status, nationality, etc.), but may be found in profiles defined for specific jurisdictions (e.g., US Meaningful Use Program) or standard extensions . Such fields vary widely between jurisdictions and often have different names and valuesets for the similar concepts, but they are not similar enough to be able to map and exchange.
This
resource
is
referenced
by
Annotation
,
ActivityDefinition
Signature
,
Account
,
AdverseEvent
,
AllergyIntolerance
,
Annotation
...
Show
83
more
,
Appointment
,
AppointmentResponse
,
ArtifactAssessment
,
AuditEvent
,
Basic
,
BiologicallyDerivedProduct
,
BiologicallyDerivedProductDispense
,
BodyStructure
,
CarePlan
,
CareTeam
,
ChargeItem
,
Claim
,
ClaimResponse
,
ClinicalImpression
,
Communication
,
CommunicationRequest
,
Composition
,
Condition
,
Consent
,
Contract
,
Coverage
,
CoverageEligibilityRequest
,
CoverageEligibilityResponse
,
DetectedIssue
,
DeviceAssociation
,
DeviceDispense
Device
,
DeviceRequest
,
DeviceUsage
DeviceUseStatement
,
DiagnosticReport
,
DocumentManifest
,
DocumentReference
,
Encounter
,
EncounterHistory
,
EnrollmentRequest
,
EpisodeOfCare
,
EvidenceReport
,
ExplanationOfBenefit
,
FamilyMemberHistory
,
Flag
,
GenomicStudy
,
Goal
,
Group
,
GuidanceResponse
,
ImagingSelection
,
ImagingStudy
,
Immunization
,
ImmunizationEvaluation
,
ImmunizationRecommendation
,
InventoryItem
,
InventoryReport
,
Invoice
,
List
,
MeasureReport
,
Media
,
MedicationAdministration
,
MedicationDispense
,
MedicationRequest
,
MedicationStatement
,
MolecularSequence
,
NutritionIntake
,
NutritionOrder
,
Observation
,
itself
,
PaymentReconciliation
,
Permission
,
itself,
Person
,
PlanDefinition
,
Procedure
,
Provenance
,
QuestionnaireResponse
,
RelatedPerson
,
RequestOrchestration
,
Requirements
RequestGroup
,
ResearchSubject
,
RiskAssessment
,
Schedule
,
ServiceRequest
,
Signature
,
Specimen
,
Subscription
,
SupplyDelivery
,
SupplyRequest
,
Task
,
Transport
and
VisionPrescription
Extension
References:
AuditEvent
agent
OnBehalfOf
,
Consent
Transcriber
,
Consent
Witness
,
Contact
detail
reference
,
DocumentReference
Source
Patient
...
Show
8
more
,
FamilyMemberHistory
Patient
Record
,
Goal
acceptance
,
List
For
Extension
,
Procedure
Directed
By
,
QuestionnaireResponse
Attester
,
QuestionnaireResponse
Author
,
Receiving
person
and
initiating
person
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
N | DomainResource |
Information
about
an
individual
or
animal
receiving
health
care
services
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension |
|
|
Σ | 0..* | Identifier |
An
identifier
for
this
patient
|
|
?! Σ | 0..1 | boolean | Whether this patient's record is in active use |
|
Σ | 0..* | HumanName |
A
name
associated
with
the
patient
|
|
Σ | 0..* | ContactPoint |
A
contact
detail
for
the
individual
|
|
Σ | 0..1 | code |
male
|
female
|
other
|
unknown
|
|
Σ | 0..1 | date | The date of birth for the individual |
|
?! Σ | 0..1 | Indicates if the individual is deceased or not | |
|
boolean | |||
|
dateTime | |||
|
Σ | 0..* | Address |
An
address
for
the
individual
|
|
0..1 | CodeableConcept |
Marital
(civil)
status
of
a
patient
|
|
|
0..1 | Whether patient is part of a multiple birth | ||
|
boolean | |||
|
integer | |||
|
0..* | Attachment |
Image
of
the
patient
|
|
|
|
0..* | BackboneElement |
A
contact
party
(e.g.
guardian,
partner,
friend)
for
the
patient
+ Rule: SHALL at least contain a contact's details or a reference to an organization |
|
0..* | CodeableConcept |
The
kind
of
relationship
|
|
|
|
0..1 | HumanName | A name associated with the contact person |
|
|
0..* | ContactPoint |
A
contact
detail
for
the
person
|
|
|
0..1 | Address | Address for the contact person |
|
0..1 | code |
male
|
female
|
other
|
unknown
|
|
|
|
0..1 | Reference ( Organization ) | Organization that is associated with the contact |
|
0..1 | Period | The period during which this contact person or organization is valid to be contacted relating to this patient | |
|
0..* | BackboneElement |
A
language
which
may
be
used
to
communicate
with
the
patient
about
his
or
her
health
|
|
|
1..1 | CodeableConcept |
The
language
which
can
be
used
to
communicate
with
the
patient
about
his
or
her
health
|
|
|
0..1 | boolean | Language preference indicator | |
|
0..* | Reference ( Organization | Practitioner | PractitionerRole ) |
Patient's
nominated
primary
care
provider
|
|
|
Σ | 0..1 | Reference ( Organization ) | Organization that is the custodian of the patient record |
|
?! Σ | 0..* | BackboneElement |
Link
to
|
|
Σ | 1..1 | Reference ( Patient | RelatedPerson ) | The other patient or related person resource that the link refers to |
|
Σ | 1..1 | code |
replaced-by
|
replaces
|
refer
|
seealso
|
Documentation
for
this
format
|
||||
UML Diagram ( Legend )
XML Template
<Patient xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier An identifier for this patient --></identifier> <active value="[boolean]"/><!-- 0..1 Whether this patient's record is in active use --> <name><!-- 0..* HumanName A name associated with the patient --></name> <telecom><!-- 0..* ContactPoint A contact detail for the individual --></telecom> <gender value="[code]"/><!-- 0..1 male | female | other | unknown --> <birthDate value="[date]"/><!-- 0..1 The date of birth for the individual --> <deceased[x]><!-- 0..1 boolean|dateTime Indicates if the individual is deceased or not --></deceased[x]> <address><!-- 0..* Address An address for the individual --></address> <maritalStatus><!-- 0..1 CodeableConcept Marital (civil) status of a patient --></maritalStatus> <multipleBirth[x]><!-- 0..1 boolean|integer Whether patient is part of a multiple birth --></multipleBirth[x]> <photo><!-- 0..* Attachment Image of the patient --></photo> <contact> <!-- 0..* A contact party (e.g. guardian, partner, friend) for the patient --> <relationship><!-- 0..* CodeableConcept The kind of relationship --></relationship>
<</name> <</telecom> <</address><name><!-- 0..1 HumanName A name associated with the contact person --></name> <telecom><!-- 0..* ContactPoint A contact detail for the person --></telecom> <address><!-- 0..1 Address Address for the contact person --></address> <gender value="[code]"/><!-- 0..1 male | female | other | unknown --><</organization><organization><!--0..1 Reference(Organization) Organization that is associated with the contact --></organization> <period><!-- 0..1 Period The period during which this contact person or organization is valid to be contacted relating to this patient --></period> </contact> <communication> <!-- 0..* A language which may be used to communicate with the patient about his or her health -->
<</language><language><!-- 1..1 CodeableConcept The language which can be used to communicate with the patient about his or her health --></language> <preferred value="[boolean]"/><!-- 0..1 Language preference indicator --> </communication> <generalPractitioner><!-- 0..* Reference(Organization|Practitioner| PractitionerRole) Patient's nominated primary care provider --></generalPractitioner> <managingOrganization><!-- 0..1 Reference(Organization) Organization that is the custodian of the patient record --></managingOrganization>< <</other><link> <!-- 0..* Link to another patient resource that concerns the same actual person --> <other><!-- 1..1 Reference(Patient|RelatedPerson) The other patient or related person resource that the link refers to --></other> <type value="[code]"/><!-- 1..1 replaced-by | replaces | refer | seealso --> </link> </Patient>
JSON Template
{
"resourceType" : "Patient",
// from Resource: id, meta, implicitRules, and language
// from DomainResource: text, contained, extension, and modifierExtension
"identifier" : [{ Identifier }], // An identifier for this patient
"active" : <boolean>, // Whether this patient's record is in active use
"name" : [{ HumanName }], // A name associated with the patient
"telecom" : [{ ContactPoint }], // A contact detail for the individual
"gender" : "<code>", // male | female | other | unknown
"birthDate" : "<date>", // The date of birth for the individual
// deceased[x]: Indicates if the individual is deceased or not. One of these 2:
"deceasedBoolean" : <boolean>,
"deceasedDateTime" : "<dateTime>",
"address" : [{ Address }], // An address for the individual
"maritalStatus" : { CodeableConcept }, // Marital (civil) status of a patient
// multipleBirth[x]: Whether patient is part of a multiple birth. One of these 2:
"multipleBirthBoolean" : <boolean>,
"multipleBirthInteger" : <integer>,
"photo" : [{ Attachment }], // Image of the patient
"contact" : [{ // A contact party (e.g. guardian, partner, friend) for the patient
"relationship" : [{ CodeableConcept }], // The kind of relationship
"
"
"
"name" : { HumanName }, // A name associated with the contact person
"telecom" : [{ ContactPoint }], // A contact detail for the person
"address" : { Address }, // Address for the contact person
"gender" : "<code>", // male | female | other | unknown
"
"organization" : { Reference(Organization) }, // C? Organization that is associated with the contact
"period" : { Period } // The period during which this contact person or organization is valid to be contacted relating to this patient
}],
"communication" : [{ // A language which may be used to communicate with the patient about his or her health
"
"language" : { CodeableConcept }, // R! The language which can be used to communicate with the patient about his or her health
"preferred" : <boolean> // Language preference indicator
}],
"generalPractitioner" : [{ Reference(Organization|Practitioner|
PractitionerRole) }], // Patient's nominated primary care provider
"managingOrganization" : { Reference(Organization) }, // Organization that is the custodian of the patient record
"
"
"link" : [{ // Link to another patient resource that concerns the same actual person
"other" : { Reference(Patient|RelatedPerson) }, // R! The other patient or related person resource that the link refers to
"type" : "<code>" // R! replaced-by | replaces | refer | seealso
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .[ a fhir:Patient; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension
fhir:fhir:Patient.identifier [ Identifier ], ... ; # 0..* An identifier for this patient fhir:Deceased patients may also be marked as inactive for the same reasons, but may be active for some time after death (this element modifies the meaning of other elements)" class="dict"> fhir: fhir: fhir: fhir: # . One of these 2 fhir: ] fhir: ] fhir: fhir: # . One of these 2 fhir: ] fhir: ] fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: ] ... ) ; fhir: fhir: fhir: ] ... ) ; fhir: fhir: fhir: fhir: fhir: ] ... ) ; Deceased patients may also be marked as inactive for the same reasons, but may be active for some time after death (this element modifies the meaning of other elements)" class="dict">Patient.active [ boolean ]; # 0..1 Whether this patient's record is in active use fhir:Patient.name [ HumanName ], ... ; # 0..* A name associated with the patient fhir:Patient.telecom [ ContactPoint ], ... ; # 0..* A contact detail for the individual fhir:Patient.gender [ code ]; # 0..1 male | female | other | unknown fhir:Patient.birthDate [ date ]; # 0..1 The date of birth for the individual # Patient.deceased[x] : 0..1 Indicates if the individual is deceased or not. One of these 2 fhir:Patient.deceasedBoolean [ boolean ] fhir:Patient.deceasedDateTime [ dateTime ] fhir:Patient.address [ Address ], ... ; # 0..* An address for the individual fhir:Patient.maritalStatus [ CodeableConcept ]; # 0..1 Marital (civil) status of a patient # Patient.multipleBirth[x] : 0..1 Whether patient is part of a multiple birth. One of these 2 fhir:Patient.multipleBirthBoolean [ boolean ] fhir:Patient.multipleBirthInteger [ integer ] fhir:Patient.photo [ Attachment ], ... ; # 0..* Image of the patient fhir:Patient.contact [ # 0..* A contact party (e.g. guardian, partner, friend) for the patient fhir:Patient.contact.relationship [ CodeableConcept ], ... ; # 0..* The kind of relationship fhir:Patient.contact.name [ HumanName ]; # 0..1 A name associated with the contact person fhir:Patient.contact.telecom [ ContactPoint ], ... ; # 0..* A contact detail for the person fhir:Patient.contact.address [ Address ]; # 0..1 Address for the contact person fhir:Patient.contact.gender [ code ]; # 0..1 male | female | other | unknown fhir:Patient.contact.organization [ Reference(Organization) ]; # 0..1 Organization that is associated with the contact fhir:Patient.contact.period [ Period ]; # 0..1 The period during which this contact person or organization is valid to be contacted relating to this patient ], ...; fhir:Patient.communication [ # 0..* A language which may be used to communicate with the patient about his or her health fhir:Patient.communication.language [ CodeableConcept ]; # 1..1 The language which can be used to communicate with the patient about his or her health fhir:Patient.communication.preferred [ boolean ]; # 0..1 Language preference indicator ], ...; fhir:Patient.generalPractitioner [ Reference(Organization|Practitioner|PractitionerRole) ], ... ; # 0..* Patient's nominated primary care provider fhir:Patient.managingOrganization [ Reference(Organization) ]; # 0..1 Organization that is the custodian of the patient record fhir:Patient.link [ # 0..* Link to another patient resource that concerns the same actual person fhir:Patient.link.other [ Reference(Patient|RelatedPerson) ]; # 1..1 The other patient or related person resource that the link refers to fhir:Patient.link.type [ code ]; # 1..1 replaced-by | replaces | refer | seealso ], ...; ]
Changes
from
both
R4
and
R4B
since
R3
| Patient | |
|
|
|
| Patient.gender |
|
| Patient.contact.relationship |
|
| Patient.contact.gender |
|
| Patient.communication.language |
|
| Patient.generalPractitioner |
|
| Patient.link.type |
|
| Patient.animal |
|
See the Full Difference for further information
This
analysis
is
available
for
R4
as
XML
or
JSON
and
for
R4B
as
XML
or
JSON
.
See
R4
R3
<-->
R5
R4
Conversion
Maps
(status
=
See
Conversions
Summary
.)
16
tests
that
all
execute
ok.
All
tests
pass
round-trip
testing
and
all
r3
resources
are
valid.)
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
N | DomainResource |
Information
about
an
individual
or
animal
receiving
health
care
services
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension |
|
|
Σ | 0..* | Identifier |
An
identifier
for
this
patient
|
|
?! Σ | 0..1 | boolean | Whether this patient's record is in active use |
|
Σ | 0..* | HumanName |
A
name
associated
with
the
patient
|
|
Σ | 0..* | ContactPoint |
A
contact
detail
for
the
individual
|
|
Σ | 0..1 | code |
male
|
female
|
other
|
unknown
|
|
Σ | 0..1 | date | The date of birth for the individual |
|
?! Σ | 0..1 | Indicates if the individual is deceased or not | |
|
boolean | |||
|
dateTime | |||
|
Σ | 0..* | Address |
An
address
for
the
individual
|
|
0..1 | CodeableConcept |
Marital
(civil)
status
of
a
patient
|
|
|
0..1 | Whether patient is part of a multiple birth | ||
|
boolean | |||
|
integer | |||
|
0..* | Attachment |
Image
of
the
patient
|
|
|
|
0..* | BackboneElement |
A
contact
party
(e.g.
guardian,
partner,
friend)
for
the
patient
+ Rule: SHALL at least contain a contact's details or a reference to an organization |
|
0..* | CodeableConcept |
The
kind
of
relationship
|
|
|
|
0..1 | HumanName | A name associated with the contact person |
|
|
0..* | ContactPoint |
A
contact
detail
for
the
person
|
|
|
0..1 | Address | Address for the contact person |
|
0..1 | code |
male
|
female
|
other
|
unknown
|
|
|
|
0..1 | Reference ( Organization ) | Organization that is associated with the contact |
|
0..1 | Period | The period during which this contact person or organization is valid to be contacted relating to this patient | |
|
0..* | BackboneElement |
A
language
which
may
be
used
to
communicate
with
the
patient
about
his
or
her
health
|
|
|
1..1 | CodeableConcept |
The
language
which
can
be
used
to
communicate
with
the
patient
about
his
or
her
health
|
|
|
0..1 | boolean | Language preference indicator | |
|
0..* | Reference ( Organization | Practitioner | PractitionerRole ) |
Patient's
nominated
primary
care
provider
|
|
|
Σ | 0..1 | Reference ( Organization ) | Organization that is the custodian of the patient record |
|
?! Σ | 0..* | BackboneElement |
Link
to
|
|
Σ | 1..1 | Reference ( Patient | RelatedPerson ) | The other patient or related person resource that the link refers to |
|
Σ | 1..1 | code |
replaced-by
|
replaces
|
refer
|
seealso
|
Documentation
for
this
format
|
||||
XML Template
<Patient xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier An identifier for this patient --></identifier> <active value="[boolean]"/><!-- 0..1 Whether this patient's record is in active use --> <name><!-- 0..* HumanName A name associated with the patient --></name> <telecom><!-- 0..* ContactPoint A contact detail for the individual --></telecom> <gender value="[code]"/><!-- 0..1 male | female | other | unknown --> <birthDate value="[date]"/><!-- 0..1 The date of birth for the individual --> <deceased[x]><!-- 0..1 boolean|dateTime Indicates if the individual is deceased or not --></deceased[x]> <address><!-- 0..* Address An address for the individual --></address> <maritalStatus><!-- 0..1 CodeableConcept Marital (civil) status of a patient --></maritalStatus> <multipleBirth[x]><!-- 0..1 boolean|integer Whether patient is part of a multiple birth --></multipleBirth[x]> <photo><!-- 0..* Attachment Image of the patient --></photo> <contact> <!-- 0..* A contact party (e.g. guardian, partner, friend) for the patient --> <relationship><!-- 0..* CodeableConcept The kind of relationship --></relationship>
<</name> <</telecom> <</address><name><!-- 0..1 HumanName A name associated with the contact person --></name> <telecom><!-- 0..* ContactPoint A contact detail for the person --></telecom> <address><!-- 0..1 Address Address for the contact person --></address> <gender value="[code]"/><!-- 0..1 male | female | other | unknown --><</organization><organization><!--0..1 Reference(Organization) Organization that is associated with the contact --></organization> <period><!-- 0..1 Period The period during which this contact person or organization is valid to be contacted relating to this patient --></period> </contact> <communication> <!-- 0..* A language which may be used to communicate with the patient about his or her health -->
<</language><language><!-- 1..1 CodeableConcept The language which can be used to communicate with the patient about his or her health --></language> <preferred value="[boolean]"/><!-- 0..1 Language preference indicator --> </communication> <generalPractitioner><!-- 0..* Reference(Organization|Practitioner| PractitionerRole) Patient's nominated primary care provider --></generalPractitioner> <managingOrganization><!-- 0..1 Reference(Organization) Organization that is the custodian of the patient record --></managingOrganization>< <</other><link> <!-- 0..* Link to another patient resource that concerns the same actual person --> <other><!-- 1..1 Reference(Patient|RelatedPerson) The other patient or related person resource that the link refers to --></other> <type value="[code]"/><!-- 1..1 replaced-by | replaces | refer | seealso --> </link> </Patient>
JSON Template
{
"resourceType" : "Patient",
// from Resource: id, meta, implicitRules, and language
// from DomainResource: text, contained, extension, and modifierExtension
"identifier" : [{ Identifier }], // An identifier for this patient
"active" : <boolean>, // Whether this patient's record is in active use
"name" : [{ HumanName }], // A name associated with the patient
"telecom" : [{ ContactPoint }], // A contact detail for the individual
"gender" : "<code>", // male | female | other | unknown
"birthDate" : "<date>", // The date of birth for the individual
// deceased[x]: Indicates if the individual is deceased or not. One of these 2:
"deceasedBoolean" : <boolean>,
"deceasedDateTime" : "<dateTime>",
"address" : [{ Address }], // An address for the individual
"maritalStatus" : { CodeableConcept }, // Marital (civil) status of a patient
// multipleBirth[x]: Whether patient is part of a multiple birth. One of these 2:
"multipleBirthBoolean" : <boolean>,
"multipleBirthInteger" : <integer>,
"photo" : [{ Attachment }], // Image of the patient
"contact" : [{ // A contact party (e.g. guardian, partner, friend) for the patient
"relationship" : [{ CodeableConcept }], // The kind of relationship
"
"
"
"name" : { HumanName }, // A name associated with the contact person
"telecom" : [{ ContactPoint }], // A contact detail for the person
"address" : { Address }, // Address for the contact person
"gender" : "<code>", // male | female | other | unknown
"
"organization" : { Reference(Organization) }, // C? Organization that is associated with the contact
"period" : { Period } // The period during which this contact person or organization is valid to be contacted relating to this patient
}],
"communication" : [{ // A language which may be used to communicate with the patient about his or her health
"
"language" : { CodeableConcept }, // R! The language which can be used to communicate with the patient about his or her health
"preferred" : <boolean> // Language preference indicator
}],
"generalPractitioner" : [{ Reference(Organization|Practitioner|
PractitionerRole) }], // Patient's nominated primary care provider
"managingOrganization" : { Reference(Organization) }, // Organization that is the custodian of the patient record
"
"
"link" : [{ // Link to another patient resource that concerns the same actual person
"other" : { Reference(Patient|RelatedPerson) }, // R! The other patient or related person resource that the link refers to
"type" : "<code>" // R! replaced-by | replaces | refer | seealso
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .[ a fhir:Patient; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension
fhir:fhir:Patient.identifier [ Identifier ], ... ; # 0..* An identifier for this patient fhir:Deceased patients may also be marked as inactive for the same reasons, but may be active for some time after death (this element modifies the meaning of other elements)" class="dict"> fhir: fhir: fhir: fhir: # . One of these 2 fhir: ] fhir: ] fhir: fhir: # . One of these 2 fhir: ] fhir: ] fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: ] ... ) ; fhir: fhir: fhir: ] ... ) ; fhir: fhir: fhir: fhir: fhir: ] ... ) ; Deceased patients may also be marked as inactive for the same reasons, but may be active for some time after death (this element modifies the meaning of other elements)" class="dict">Patient.active [ boolean ]; # 0..1 Whether this patient's record is in active use fhir:Patient.name [ HumanName ], ... ; # 0..* A name associated with the patient fhir:Patient.telecom [ ContactPoint ], ... ; # 0..* A contact detail for the individual fhir:Patient.gender [ code ]; # 0..1 male | female | other | unknown fhir:Patient.birthDate [ date ]; # 0..1 The date of birth for the individual # Patient.deceased[x] : 0..1 Indicates if the individual is deceased or not. One of these 2 fhir:Patient.deceasedBoolean [ boolean ] fhir:Patient.deceasedDateTime [ dateTime ] fhir:Patient.address [ Address ], ... ; # 0..* An address for the individual fhir:Patient.maritalStatus [ CodeableConcept ]; # 0..1 Marital (civil) status of a patient # Patient.multipleBirth[x] : 0..1 Whether patient is part of a multiple birth. One of these 2 fhir:Patient.multipleBirthBoolean [ boolean ] fhir:Patient.multipleBirthInteger [ integer ] fhir:Patient.photo [ Attachment ], ... ; # 0..* Image of the patient fhir:Patient.contact [ # 0..* A contact party (e.g. guardian, partner, friend) for the patient fhir:Patient.contact.relationship [ CodeableConcept ], ... ; # 0..* The kind of relationship fhir:Patient.contact.name [ HumanName ]; # 0..1 A name associated with the contact person fhir:Patient.contact.telecom [ ContactPoint ], ... ; # 0..* A contact detail for the person fhir:Patient.contact.address [ Address ]; # 0..1 Address for the contact person fhir:Patient.contact.gender [ code ]; # 0..1 male | female | other | unknown fhir:Patient.contact.organization [ Reference(Organization) ]; # 0..1 Organization that is associated with the contact fhir:Patient.contact.period [ Period ]; # 0..1 The period during which this contact person or organization is valid to be contacted relating to this patient ], ...; fhir:Patient.communication [ # 0..* A language which may be used to communicate with the patient about his or her health fhir:Patient.communication.language [ CodeableConcept ]; # 1..1 The language which can be used to communicate with the patient about his or her health fhir:Patient.communication.preferred [ boolean ]; # 0..1 Language preference indicator ], ...; fhir:Patient.generalPractitioner [ Reference(Organization|Practitioner|PractitionerRole) ], ... ; # 0..* Patient's nominated primary care provider fhir:Patient.managingOrganization [ Reference(Organization) ]; # 0..1 Organization that is the custodian of the patient record fhir:Patient.link [ # 0..* Link to another patient resource that concerns the same actual person fhir:Patient.link.other [ Reference(Patient|RelatedPerson) ]; # 1..1 The other patient or related person resource that the link refers to fhir:Patient.link.type [ code ]; # 1..1 replaced-by | replaces | refer | seealso ], ...; ]
Changes
from
both
R4
and
R4B
since
Release
3
| Patient | |
|
|
|
| Patient.gender |
|
| Patient.contact.relationship |
|
| Patient.contact.gender |
|
| Patient.communication.language |
|
| Patient.generalPractitioner |
|
| Patient.link.type |
|
| Patient.animal |
|
See the Full Difference for further information
This
analysis
is
available
for
R4
as
XML
or
JSON
and
for
R4B
as
XML
or
JSON
.
See
R4
R3
<-->
R5
R4
Conversion
Maps
(status
=
See
Conversions
Summary
.)
16
tests
that
all
execute
ok.
All
tests
pass
round-trip
testing
and
all
r3
resources
are
valid.)
Additional
See
the
Profiles
&
Extensions
and
the
alternate
definitions:
Master
Definition
XML
+
JSON
,
XML
Schema
/
Schematron
+
JSON
Schema
,
ShEx
(for
Turtle
)
+
see
the
extensions
,
the
spreadsheet
version
&
the
dependency
analysis
| Path |
|
Type |
|
|---|---|---|---|
|
Patient.gender
Patient.contact.gender |
|
Required |
|
| Patient.maritalStatus |
|
Extensible |
|
| Patient.contact.relationship |
|
|
|
| Patient.communication.language | A human language. |
|
|
| Patient.link.type |
|
Required |
|
|
|
Level | Location | Description | Expression |
|
|
Rule | Patient.contact | SHALL at least contain a contact's details or a reference to an organization | name.exists() or telecom.exists() or address.exists() or organization.exists() |
Notes:
A Patient record's Resource Id can never change. For this reason, the identifiers with which humans are concerned (often called MRN - Medical Record Number, or UR - Unit Record) should not be used for the resource's id, since MRN's may change, i.e. as a result of having duplicate records of the same patient. Instead they should be represented in the Patient.identifier list where they can be managed. This is also useful for the case of institutions that have acquired multiple numbers because of mergers of patient record systems over time.
Where there is a need to implement an automated MRN Identifier created for a patient record, this could be achieved by providing an identifier in the patient with an appropriate assigner, MRN Type and/or system but with no value assigned. Internal business rules can then detect this and replace/populate this identifier with 1 or more identifiers (as required).
The link element is used to assert that patient resources refer to the same patient. This element is used to support the following scenarios where multiple patient records exist:
Managing
Patient
registration
is
a
well-known
difficult
problem.
Around
2%
of
registrations
are
in
error,
mostly
duplicate
records.
Sometimes
the
duplicate
record
is
caught
fairly
quickly
and
retired
before
much
data
is
accumulated.
In
other
cases,
substantial
amounts
of
data
may
accumulate.
There
are
two
common
approaches
for
resolving
duplicate
patient
records:
merging
and
linking.
Merging
duplicate
patients
is
described
in
the
$merge
operation
page.
Linking
duplicate
records
can
be
accomplished
by
By
using
a
link
of
type
'replaced-by'
where
'replaced-by',
the
record
containing
such
a
link
is
marked
as
a
duplicate
and
the
link
points
forward
to
a
record
that
should
be
used
instead.
Note
that
the
record
pointed
to
may
in
its
turn
have
been
identified
as
created
in
error
and
forward
to
yet
another
Patient
resource.
Records
that
replace
another
record
may
use
a
link
type
of
'replaces'
pointing
to
the
old
record.
A Patient record may be present in a system that acts as a Patient Index: it maintains a (summary of) patient data and a list of one or more servers that are known to hold a more comprehensive and/or authoritative record of the same patient. The link type 'refer' is used to denote such a link. Note that linked records may contain contradictory information. The record referred to does not point back to the referring record.
In a distributed architecture, multiple systems keep separate patient records concerning the same patient. These records are not considered duplicates, but contain a distributed, potentially overlapping view of the patient's data. Each such record may have its own focus or maintaining organization and there need not be a sense of one record being more complete or more authoritative than another. In such cases, links of type 'see also' can be used to point to other patient records. It is not a requirement that such links are bilateral.
The
Person
resource
on
the
surface
appears
to
be
very
similar
to
the
Patient
resource,
and
the
usage
for
it
is
very
similar
to
using
the
Patient.Link
capability.
The
intention
of
the
Person
resource
is
to
be
able
to
link
instances
of
resources
together
that
are
believed
to
be
the
same
individual.
This
includes
across
resource
types,
such
as
RelatedPerson,
Practitioner,
Patient
and
even
other
Person
resources.
The
Patient
Link
however
is
only
intended
to
be
used
for
Patient
resources.
The
primary
use
case
for
the
Person
resource
is
to
be
able
to
support
person
registries
that
do
not
necessarily
have
a
healthcare
context,
and
are
able
to
identify
and
quantify
confidence
levels
that
this
is
the
same
person.
This
could
include
consumer
portals
where
the
maintainer
of
the
person
information
is
the
actual
person
themselves.
A
system
could
use
the
Person
entry
to
cross
check
changes
to
information
applied
to
one
part
of
a
record
to
values
in
another
system;
e.g.,
when
moving,
a
consumer
updates
his
contact
numbers
and
address
in
his
person
record,
and
then
a
Patient
Administration
system
is
able
to
see
that
this
data
is
changed
and
prompt
the
organization
to
follow
up
with
the
patient
that
was
linked
to
the
person
record
if
they
want
their
details
updated,
or
if
they
no
longer
need
services
and
they
should
be
cancelled,
as
they've
moved
from
the
area.
The
Linkage
resource
and
the
Patient.link
property
conceptually
perform
similar
functions
in
FHIR,
both
provide
an
assertion
of
linkages
between
multiple
resource
instances
that
are
referring
to
the
same
underlying
individual.
When
a
Patient
resource
is
linked/merged
then
it
needs
to
have
an
internal
indication
that
there
is
another
patient
resource
that
should
be
considered
when
referencing
other
records,
which
is
achieved
using
the
patient.link
property.
Not
detecting/checking
for
a
potential
linkage
could
mean
that
related
clinical
records
are
not
discovered,
potentially
impacting
patient
safety.
(which
is
why
using
the
Linkage
resource
is
not
appropriate,
as
its
use
in
this
manner
would
force
the
use
of
either
another
query
to
potentially
locate
other
patient
resources
to
consider,
or
use
_revinclude)
The contact element on the Patient resource should be used for storing the details of people to contact. This information always travels with the Patient resource, and cannot be used as the target of a reference. Where related people need to be referenced by other resources (e.g. CarePlan.participant, Encounter.participant, DocumentReference.author, Appointment.participant), the RelatedPerson resource must be used.
It is not expected that these records will be used for recording the primary care provider; this information should be stored in the Patient.generalPractitioner field.
Many
systems
and
organizations
only
provide
for
a
single
attribute
that
aspires
to
represent
all
aspects
of
a
patient's
gender
and
sex
with
a
single
value.
However,
there
are
many
considerations
around
sex
and
gender
documentation
and
interoperability.
Listed
below
are
the
various
social
and
biological
attributes
that
are
relevant
in
the
healthcare
setting,
as
well
as
information
on
how
each
can
be
communicated.
Each
of
these
attributes
may
be
useful
to
address
different
use
cases,
and
it
is
up
to
the
implementer
to
identify
which
attribute
or
combination
of
attributes
are
most
appropriate.
In addition to this administrative gender, other kinds of gender or sex properties may be represented:
.
Clinical
gender
observations
can
provide
both
history
and
confidentiality,
where
the
genderIdentity
extension
does
not.
.
For veterinary use, the animal extension also includes the genderStatus which indicates sterility information.
There are several ways to represent the relationship between a mother and a child. This is due to the when it is recorded and the purpose for which it is recorded:
During
a
maternity
encounter,
the
Patient
and
Encounter
resources
for
the
mother
will
be
present.
After
the
child
is
born,
new
Patient,
Encounter
and
RelatedPerson
(for
the
mother)
records
will
be
created.
The
Child's
encounter
should
reference
the
Mother's
encounter
using
the
partOf
property.
The
Patient/RelatedPerson
structure
should
also
be
created
for
ongoing
usage,
as
shown
in
this
example:
<Patient> <id value="child"/> <!-- The details of the child --> </Patient> <RelatedPerson> <id value="rp-mom"/> <patient> <reference value="Patient/child"/> </patient> </RelatedPerson> <Patient> <id value="pat-mom"/> <!-- The details of the mom --> <link> <other value="rp-mom"/> <type value="see-also"/> </link> </Patient> <Encounter> <id value="mom-enc"/> <status value="in-progress"/> <class value="inpatient"/> <patient> <reference value="Patient/mom"/> </patient> </Encounter> <Encounter> <id value="child-enc"/> <status value="in-progress"/> <class value="inpatient"/> <patient> <reference value="Patient/child"/> </patient> <partOf> <reference value="Encounter/mom-enc"/> </partOf> </Encounter>
This specification does not specify merge functionality: if multiple patient records are found to be duplicates, they can be linked together, as described above. These links merely express the relationship between records, and in the case of a replacement link, indicate a "master" record. This specification does not mandate that FHIR servers migrate information between such records on finding such a link. Note:
Note: We are seeking input from the implementer community on what effect linking/merging/unlinking should have on other functionality such as the GET operation, searching, reverse includes, etc.;
How should an unlink behavior be done?
How will the patient compartment interact with the merge?
This functionality and related behaviors is subject to ongoing experimentation and implementation testing, with a definition to be proposed in a future version of this specification.Feedback here
.
A
Master
Patient
Index
(
MPI
)
is
a
service
used
to
manage
patient
identification
in
a
context
where
multiple
patient
databases
exist.
Healthcare
applications
and
middleware
use
the
MPI
to
match
patients
between
the
databases,
and
as
new
patient
details
are
encountered.
MPIs
are
highly
specialized
applications,
often
tailored
extensively
to
the
institution's
particular
mix
of
patients.
MPIs
can
also
be
run
on
a
regional
and
national
basis.
To
ask
an
MPI
to
match
a
patient,
clients
call
the
patient
$match
operation,
which
processes
a
parameters
resource
containing
a
complete
or
fragment
of
a
patient
resource,
along
with
some
other
control
parameters.
This
provided
patient
resource
does
not
need
to
pass
full
validation
(mandatory
fields,
or
invariants)
as
the
resource
will
not
be
stored,
it
does
however
need
to
be
a
parsable
instance.
The
MPI
can
then
use
the
properties
of
the
resource
as
MPI
inputs,
and
process
them
using
an
internal
MPI
algorithm
of
some
kind
to
determine
the
most
appropriate
matches
in
the
patient
set.
It
does
not
have
to
use
all
the
properties
provided,
and
may
ignore
others
provided
quietly.
A
specific
profile
(with
the
required
fields/invariants)
can
be
used
to
define
what
parameters
the
MPI
algorithm
requires.
POST [base]/Patient/$match [some headers including content-type xml or json] [parameters body with patient resource inside]
The response from an MPI $match operation is a set of patient records, ordered from most likely to least likely. If there are not patient matches, the MPI SHALL return an empty search set with no error, but may include an operation outcome with further advice. All patient records should have a score from 0 to 1, where 1 is the most certain match, along with an extension "match-grade" that indicates the MPI's position on the match quality:
<entry>
<resource>
<Patient>
<!-- patient details -->
</Patient>
</resource>
<search>
<extension url="http://hl7.org/fhir/StructureDefinition/match-grade">
<valueCode value="probable"/>
</extension>
<score value="0.80"/>
</search>
</entry>
The match-grade extension has one of the following codes :
| certain | This record meets the matching criteria to be automatically considered as a full match. |
| probable | This record is a close match, but not a certain match. Additional review (e.g. by a human) may be required before using this as a match. |
| possible | This record may be a matching one. Additional review (e.g. by a human) SHOULD be performed before using this as a match. |
| certainly-not | This record is known not to be a match. Note that usually non-matching records are not returned, but in some cases records previously or likely considered as a match may specifically be negated by the matching engine. |
The
purpose
of
using
an
MPI
search
versus
a
regular
search
is
that
the
MPI
search
is
really
intended
to
target
and
find
a
specific
single
patient
for
recording
information
about
reducing
errors
through
incorrectly
selecting
the
wrong
patient.
Often
MPIs
won't
return
data
if
there
is
insufficient
search
parameter
data,
such
as
a
partial
surname.
This
compares
to
a
regular
search
which
can
be
used
for
finding
lists
of
patients,
such
as
to
locate
a
group
of
patients
that
share
a
property
in
common,
such
as
live
in
a
specific
location,
or
fit
within
an
age
range
for
performing
population
analysis.
A formal definition for the MPI $match operation is published.
Veterinary care is very much within the scope of FHIR, and the Patient resource can be used to communicate information about animal patients. To support this, there is a standard patient-animal extension which can be used for recording details about species, breed, and gender status. This extension is not intended to cover all relevant properties for veterinary care, and the use of additional domain-relevant extensions is expected for areas such as laboratory, zoological and livestock care.
The veterinary client ("owner") is represented using the RelatedPerson resource.
Search
parameters
for
this
resource.
See
also
the
full
list
of
search
parameters
for
this
resource
,
and
check
the
Extensions
registry
for
search
parameters
on
extensions
related
to
this
resource.
The
common
parameters
also
apply.
See
Searching
for
more
information
about
searching
in
REST,
messaging,
and
services.
| Name | Type | Description | Expression | In Common |
| active TU | token | Whether the patient record is active | Patient.active | |
| address TU | string | A server defined search that may match any of the string fields in the Address, including line, city, district, state, country, postalCode, and/or text | Patient.address |
|
| address-city TU | string | A city specified in an address | Patient.address.city |
|
| address-country TU | string | A country specified in an address | Patient.address.country |
|
| address-postalcode TU | string | A postalCode specified in an address | Patient.address.postalCode |
|
| address-state TU | string | A state specified in an address | Patient.address.state |
|
| address-use TU | token | A use code specified in an address | Patient.address.use |
|
| birthdate TU | date | The patient's date of birth | Patient.birthDate |
|
| death-date TU | date | The date of death has been provided and satisfies this search value |
|
|
| deceased TU | token |
This
patient
has
been
marked
as
deceased,
or
|
Patient.deceased.exists() and Patient.deceased != false | |
| email TU | token | A value in an email contact | Patient.telecom.where(system='email') |
|
| family TU | string | A portion of the family name of the patient | Patient.name.family |
|
| gender TU | token | Gender of the patient | Patient.gender |
|
| general-practitioner TU | reference | Patient's nominated general practitioner, not the organization that manages the record |
Patient.generalPractitioner
( Practitioner , Organization , PractitionerRole ) |
|
| given TU | string | A portion of the given name of the patient | Patient.name.given |
|
| identifier TU | token | A patient identifier | Patient.identifier | |
| language TU | token | Language code (irrespective of use value) | Patient.communication.language | |
| link TU | reference |
All
|
Patient.link.other
( Patient , RelatedPerson ) |
|
| name TU | string |
A
server
defined
search
that
may
match
any
of
the
string
fields
in
the
HumanName,
including
family,
|
Patient.name | |
| organization TU | reference | The organization that is the custodian of the patient record |
Patient.managingOrganization
( Organization ) |
|
| phone TU | token | A value in a phone contact | Patient.telecom.where(system='phone') |
|
| phonetic TU | string | A portion of either family or given name using some kind of phonetic matching algorithm | Patient.name |
|
| telecom TU | token | The value in any kind of telecom details of the patient | Patient.telecom |
|