--- type: "resource" title: "Person" resource: "Person" --- # 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)](patient#maternity) \[%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](security). ## StructureDefinition ### Elements (Simplified) - **[Person](/person-definitions#Person)** [0..*]: - A generic person record - **[Person.identifier](/person-definitions#Person.identifier)** [0..*]: [Identifier](/Identifier) A human identifier for this person - **[Person.active](/person-definitions#Person.active)** [0..1]: [boolean](/boolean) This person's record is in active use - **[Person.name](/person-definitions#Person.name)** [0..*]: [HumanName](/HumanName) A name associated with the person - **[Person.telecom](/person-definitions#Person.telecom)** [0..*]: [ContactPoint](/ContactPoint) A contact detail for the person - **[Person.gender](/person-definitions#Person.gender)** [0..1]: [code](/code) required:[administrative-gender](/valueset-administrative-gender) male | female | other | unknown - **[Person.birthDate](/person-definitions#Person.birthDate)** [0..1]: [date](/date) The date on which the person was born - **[Person.deceased[x]](/person-definitions#Person.deceased%5Bx%5D)** [0..1]: [boolean](/boolean), [dateTime](/dateTime) Indicates if the individual is deceased or not - **[Person.address](/person-definitions#Person.address)** [0..*]: [Address](/Address) One or more addresses for the person - **[Person.maritalStatus](/person-definitions#Person.maritalStatus)** [0..1]: [CodeableConcept](/CodeableConcept) extensible:[marital-status](/valueset-marital-status) Marital (civil) status of a person - **[Person.photo](/person-definitions#Person.photo)** [0..*]: [Attachment](/Attachment) Image of the person - **[Person.communication](/person-definitions#Person.communication)** [0..*]: [BackboneElement](/BackboneElement) A language which may be used to communicate with the person about his or her health - **[Person.communication.language](/person-definitions#Person.communication.language)** [1..1]: [CodeableConcept](/CodeableConcept) required:[all-languages](/valueset-all-languages) The language which can be used to communicate with the person about his or her health - **[Person.communication.preferred](/person-definitions#Person.communication.preferred)** [0..1]: [boolean](/boolean) Language preference indicator - **[Person.managingOrganization](/person-definitions#Person.managingOrganization)** [0..1]: Reference([Organization](/Organization)) The organization that is the custodian of the person record - **[Person.link](/person-definitions#Person.link)** [0..*]: [BackboneElement](/BackboneElement) Link to a resource that concerns the same actual person - **[Person.link.target](/person-definitions#Person.link.target)** [1..1]: [Reference(Patient](/Reference(Patient), [Practitioner](/Practitioner), [RelatedPerson](/RelatedPerson), [Person)](/Person)) The resource to which this actual person is associated - **[Person.link.assurance](/person-definitions#Person.link.assurance)** [0..1]: [code](/code) required:[identity-assuranceLevel](/valueset-identity-assuranceLevel) level1 | level2 | level3 | level4 ## Mappings - [Person Mappings](/person-mappings) — 32 mapping entries ## Resource Packs ### list-Person-packs.xml ```xml ``` ## Search Parameters - [address](/person-search#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](/person-search#address-city) — **string** — A city specified in an address — `Person.address.city` - [address-country](/person-search#address-country) — **string** — A country specified in an address — `Person.address.country` - [address-postalcode](/person-search#address-postalcode) — **string** — A postal code specified in an address — `Person.address.postalCode` - [address-state](/person-search#address-state) — **string** — A state specified in an address — `Person.address.state` - [address-use](/person-search#address-use) — **token** — A use code specified in an address — `Person.address.use` - [birthdate](/person-search#birthdate) — **date** — The person's date of birth — `Person.birthDate` - [email](/person-search#email) — **token** — A value in an email contact — `Person.telecom.where(system='email')` - [gender](/person-search#gender) — **token** — The gender of the person — `Person.gender` - [identifier](/person-search#identifier) — **token** — A person Identifier — `Person.identifier` - [link](/person-search#link) — **reference** — Any link has this Patient, Person, RelatedPerson or Practitioner reference — `Person.link.target` - [name](/person-search#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](/person-search#organization) — **reference** — The organization at which this person record is being managed — `Person.managingOrganization` - [patient](/person-search#patient) — **reference** — The Person links to this Patient — `Person.link.target.where(resolve() is Patient)` - [phone](/person-search#phone) — **token** — A value in a phone contact — `Person.telecom.where(system='phone')` - [phonetic](/person-search#phonetic) — **string** — A portion of name using some kind of phonetic matching algorithm — `Person.name` - [practitioner](/person-search#practitioner) — **reference** — The Person links to this Practitioner — `Person.link.target.where(resolve() is Practitioner)` - [relatedperson](/person-search#relatedperson) — **reference** — The Person links to this RelatedPerson — `Person.link.target.where(resolve() is RelatedPerson)` - [telecom](/person-search#telecom) — **token** — The value in any kind of contact — `Person.telecom` - [family](/person-search#family) — **string** — A portion of the family name of the person — `Person.name.family` - [given](/person-search#given) — **string** — A portion of the given name of the person — `Person.name.given` - [death-date](/person-search#death-date) — **date** — The date of death has been provided and satisfies this search value — `(Person.deceased.ofType(dateTime))` - [deceased](/person-search#deceased) — **token** — This person has been marked as deceased, or has a death date entered — `Person.deceased.exists() and Person.deceased != false` [Full Search Parameters](/person-search) ## Examples - [example](/person-example-example) — person-example — General Person Example - [f002](/person-example-f002) — person-example-f002-ariadne — Same person from RelatedPerson - [grahame](/person-example-grahame) — person-grahame — Grahame's person resource - [pd](/person-example-pd) — person-provider-directory — Provider Directory Example - [per4](/person-example-per4) — person-example-per4 — Deceased Person (details also in patient) - [person-example](/person-example-person-example) — person-example - [person-example-f002-ariadne](/person-example-person-example-f002-ariadne) — person-example-f002-ariadne - [person-example-per4](/person-example-person-example-per4) — person-example-per4 - [person-examples-header](/person-example-person-examples-header) — person-examples-header - [pp](/person-example-pp) — person-patient-portal — Patient Portal Example [Full Examples](/person-examples) ## 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