Person
Introduction
Scope and Usage
The Person resource serves as a linkage resource that may provide a reference set of common demographics for an individual (human or animal) across multiple roles.
This linkage can be direct to role-specific FHIR resources (Patient, Practitioner and RelatedPerson) residing on the same or possibly distinct FHIR systems/applications, or indirectly through the use of business identifiers.
The Person resource may be used in many situations/contexts, including:
- A set of demographics that can be used to co-ordinate the maintenance of this de-normalized information across practitioners, patients and/or related persons
e.g. link known resources of the different types together within a system - A state/network based Master Person Index
e.g. A National Identifier Index or a Network membership/subscriber list - A central register that links patient resources from multiple servers, indicating they all correspond to the same individual
e.g. Within a large organization with many systems to be able to link the various records, without having to modify the source information with external links - A support for access monitoring software that is able to assert what practitioner, patient and related person records correspond to the same human being to assist in detecting improper querying.
e.g. asserting that a Patient A is the same individual as a RelatedPerson B who is related to Patient C, who is also Practitioner D. As such, monitoring for Practitioner D’s accesses to Patient A’s records should be carefully scrutinized. - Local record(s) on a mobile device listing links to remote server patient resources
e.g. A mobile phone application storing references to the hospitals they have access to
[%stu-note advanced%] The Person resource is an advanced feature. Many systems don’t have a way to relate information across resource types, or systems, especially from Patient to Practitioner, and therefore might not implement this functionality. Some do have ways of relating the Patient and RelatedPerson resource types. FHIR is also able to do this without the Person resource, utilizing the Patient.link property (as shown in the Mother and newborn relationship example) [%end-note%]
Boundaries and Relationships
Person resources may have references to Patient, RelatedPerson and/or Practitioner resources. These linkages assert that all the records relate to the same individual.
Person instances are NEVER directly referenced as actors (authors, subjects, performers, etc.) Individual actors are always identified as either Patient, Practitioner or RelatedPerson, depending on the role of the individual when undertaking the action. Therefore this resource SHALL NOT be referenced by any other clinical or administrative resources.
E.g. it can be the focus of an operation or message or included in a Bundle, but cannot be a member of a List or Group, the subject of an Observation, or other similar non-infrastructural usage.
Note that the usage of Practitioner is broader in FHIR than the term may suggest, and can encompass individuals who are not licensed healthcare practitioners.
In some use cases the linkages will be indirect, and through business Identifiers, such as in the case of the various types of Master Person Indexes, where the records are not there for the purpose of healthcare, but simply describing a population of people, and has other purposes and not just to represent a population patients.
Background and Context
Provides additional detail on exactly how the resource is to be used
Notes
De-normalized Data
Most of the properties of the Person resource are replicated within the other resources that they are shared with. This is intentional and highlights the loose coupling of the resources.
Not many systems implement a shared Person record, and as such the values DO become out of sync with each other. The inclusion of this resource does permit a capability for systems to identify other instances of this actual person's data via a centralized registry that can assist in keeping things up to date.
Person and Linking
The person.link element is used to relate resources under a common person record. This element supports two primary scenarios where other resources refer to the same person resource.
[%stu-note linking1%] In previous versions of the FHIR specification the patient.link element was not able link to RelatedPerson entries, leaving the Person resource to link them. Since STU3 the patient.link property was updated to also support RelatedPerson, reducing the need to link using the Person resource, however this can still be done. [%end-note%]
Cross-Domain Patient Directory
In a data sharing network, finding the location of patient records across different systems is a necessary pre-requisite for accessing external patient data. Using the link element, systems associate patient resources from different organizations. The assuranceLevel associated with the link provides a way for a system to qualify its confidence in the asserted link. For example, a relationship from the person to a patient using a probabilistic matching algorithm may be represented using a link with an assurance level of level1, while a relationship established using a government-issued photo ID may be created with an assurance level of level3.
Cross-Domain Provider Directory
Similarly, providers working in multiple healthcare service settings may be linked across different organizations using the link element. The various practitioner resources can be related using a common person resource with a link for each of the practitioner resources located in other organizations.
Person Master Index
Many national and state programs maintain a central register of people, and their key Identifiers. These systems do not store any health related information, they are purely a validated set data, often provided by government departments. These may contain identifiers for patients, practitioners from various departments for various purposes. Access to these systems typically requires some form of professional role or permission, such as those in healthcare, law enforcement, or other internal government uses.
These may also operate outside of government in the private sector, such as associations or healthcare networks that a person may be involved with and may work in the same was as they do inside government. The usage of the data into the healthcare environment is not the only use of the register.
[%stu-note system%] This style of system may use the Person resource without any FHIR references to Patient or Practitioner resources. In these environments the Master Index is likely to have a master identifier that performs this logical linking.
This style of usage has fewer security implications, as it doesn’t disclose where the information is being used. [%end-note%]
Client Portal
Client Portals provide consumer access to a window of their data locked up in healthcare systems. In many cases these systems are externally integrated and do not have access to the legacy CIS/PAS systems.
In contrast to most systems where a user has access to multiple patients depending on their roles and permissions, a client portal provides a consumer with direct access to their data (with permissions applied). This can also include not just their data (via the Person.link Patient entries), but also to information that they have entered, or were involved with (via the Person.link RelatedPerson entries), such as observations that they entered.
With appropriate permissions/consent applied, the user could have access to other Patient records linked via a RelatedPerson.
Security and Privacy Considerations
The Person resource may contain identifying and demographic information about an individual, therefore it must be protected as Identifying Information.
The Person resource may contain references to the individual's other various Patient, Practitioner, and RelatedPerson resources, where the referenced record might be to very sensitive information. The access to the linked sensitive Resource may be protected, but the link itself may expose information.
For example where a Practitioner and Patient resource are linked through a Person resource, inspecting the Patient URL could reveal that the Practitioner has a record at a sensitive medical health clinic (e.g. Drug Rehabilitation Clinic).
When implementing the Person resource consideration should be given to the security and privacy of this information. Some mitigations to these risks include higher access control protections, filling out the Person resource as sparsely as practical for the given use-cases, and masking some data elements for certain users of the information. Additional security guidance can be found on the security page.
StructureDefinition
Elements (Simplified)
- Person [0..*]: - A generic person record
- Person.identifier [0..*]: Identifier A human identifier for this person
- Person.active [0..1]: boolean This person's record is in active use
- Person.name [0..*]: HumanName A name associated with the person
- Person.telecom [0..*]: ContactPoint A contact detail for the person
- Person.gender [0..1]: code required:administrative-gender male | female | other | unknown
- Person.birthDate [0..1]: date The date on which the person was born
- Person.deceased[x] [0..1]: boolean, dateTime Indicates if the individual is deceased or not
- Person.address [0..*]: Address One or more addresses for the person
- Person.maritalStatus [0..1]: CodeableConcept extensible:marital-status Marital (civil) status of a person
- Person.photo [0..*]: Attachment Image of the person
- Person.communication [0..*]: BackboneElement A language which may be used to communicate with the person about his or her health
- Person.communication.language [1..1]: CodeableConcept required:all-languages The language which can be used to communicate with the person about his or her health
- Person.communication.preferred [0..1]: boolean Language preference indicator
- Person.managingOrganization [0..1]: Reference(Organization) The organization that is the custodian of the person record
- Person.link [0..*]: BackboneElement Link to a resource that concerns the same actual person
- Person.link.target [1..1]: [Reference(Patient](/Reference(Patient), Practitioner, RelatedPerson, Person)) The resource to which this actual person is associated
- Person.link.assurance [0..1]: code required:identity-assuranceLevel level1 | level2 | level3 | level4
Mappings
- Person Mappings — 32 mapping entries
Resource Packs
list-Person-packs.xml
<?xml version="1.0" encoding="UTF-8"?>
<List xmlns="http://hl7.org/fhir">
<id value="Person-packs"/>
<status value="current"/>
<mode value="working"/>
</List>
Search Parameters
- address — 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 —
Person.address - address-city — string — A city specified in an address —
Person.address.city - address-country — string — A country specified in an address —
Person.address.country - address-postalcode — string — A postal code specified in an address —
Person.address.postalCode - address-state — string — A state specified in an address —
Person.address.state - address-use — token — A use code specified in an address —
Person.address.use - birthdate — date — The person's date of birth —
Person.birthDate - email — token — A value in an email contact —
Person.telecom.where(system='email') - gender — token — The gender of the person —
Person.gender - identifier — token — A person Identifier —
Person.identifier - link — reference — Any link has this Patient, Person, RelatedPerson or Practitioner reference —
Person.link.target - name — string — A server defined search that may match any of the string fields in the HumanName, including family, give, prefix, suffix, suffix, and/or text —
Person.name - organization — reference — The organization at which this person record is being managed —
Person.managingOrganization - patient — reference — The Person links to this Patient —
Person.link.target.where(resolve() is Patient) - phone — token — A value in a phone contact —
Person.telecom.where(system='phone') - phonetic — string — A portion of name using some kind of phonetic matching algorithm —
Person.name - practitioner — reference — The Person links to this Practitioner —
Person.link.target.where(resolve() is Practitioner) - relatedperson — reference — The Person links to this RelatedPerson —
Person.link.target.where(resolve() is RelatedPerson) - telecom — token — The value in any kind of contact —
Person.telecom - family — string — A portion of the family name of the person —
Person.name.family - given — string — A portion of the given name of the person —
Person.name.given - death-date — date — The date of death has been provided and satisfies this search value —
(Person.deceased.ofType(dateTime)) - deceased — token — This person has been marked as deceased, or has a death date entered —
Person.deceased.exists() and Person.deceased != false
Examples
- example — person-example — General Person Example
- f002 — person-example-f002-ariadne — Same person from RelatedPerson
- grahame — person-grahame — Grahame's person resource
- pd — person-provider-directory — Provider Directory Example
- per4 — person-example-per4 — Deceased Person (details also in patient)
- person-example — person-example
- person-example-f002-ariadne — person-example-f002-ariadne
- person-example-per4 — person-example-per4
- person-examples-header — person-examples-header
- pp — person-patient-portal — Patient Portal Example
Mapping Exceptions
person-fivews-mapping-exceptions.xml
Unmapped Elements
- FiveWs.what — Unknown
- FiveWs.recorded — Unknown
- FiveWs.author — Unknown
- FiveWs.actor — Unknown
- FiveWs.cause — Unknown
- FiveWs.version — Unknown
- FiveWs.witness — Unknown
- FiveWs.class — Unknown
- FiveWs.where — Unknown
- FiveWs.context — Unknown
- FiveWs.init — Unknown
- FiveWs.why — Unknown
- FiveWs.source — Unknown
- FiveWs.who — Unknown
- FiveWs.grade — Unknown
- FiveWs.planned — Unknown
- FiveWs.done — Unknown
- FiveWs.subject — Unknown