US Core Implementation Guide, published by HL7 International / Cross-Group Projects. This guide is not an authorized publication; it is the continuous build for version 8.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/US-Core/ and changes regularly. See the Directory of published versions
Official URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient | Version: 8.0.0 | |||
Standards status: Trial-use | Computable Name: USCorePatientProfile | |||
Other Identifiers: OID:2.16.840.1.113883.4.642.40.2.42.49 | ||||
Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License |
The US Core Patient Profile inherits from the FHIR Patient resource; refer to it for scope and usage definitions. This profile meets the requirements of the U.S. Core Data for Interoperability (USCDI) Patient Demographics/Information Data Class. It sets minimum expectations for the Patient resource to record, search, and fetch basic demographics and other administrative information about an individual patient. It specifies which core elements, extensions, vocabularies, and value sets SHALL be present and constrains how the elements are used. Providing the floor for standards development for specific use cases promotes interoperability and adoption.
Example Usage Scenarios:
The following are example usage scenarios for this profile:
identifier.system
and may be location specific.The following data elements must always be present (Mandatory definition) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Views below provides the formal summary, definitions, and terminology requirements.
Each Patient Must Have:
Each Patient Must Support:
Additional USCDI Requirements:
These Additional USCDI Requirements elements are not Mandatory or Must Support but are required for ONC Health IT certification testing and are included in the formal definition of the profile and the Patient examples.
*see guidance below
Profile Specific Implementation Guidance:
Patient.deceasedDateTime
element.
Patient.deceased[x]
is marked as 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜, Certifying Systems are not required to support both, but SHALL support at least Patient.deceasedDateTime
Patient.name.use
to "usual".Patient.name.use
to "old" or providing an end date in Patient.name.period
or doing both.Patient.name.suffix
element.Patient.address.use
to "old" or providing an end date in Patient.address.period
or doing both.Communication.preferred
element or by using the FHIR standard Patient Proficiency Extension and infer a patient's language service needs from it.The USCDI Patient Demographics Data Class requires following the Project US@ Technical Specification for Patient Addresses Final Version 1.0 for patient addresses. For new and updated records, Certifying Systems SHALL and non-Certifying Systems SHOULD follow it as the standard style guide for Patient addresses.
Consult the style guide for details about the format for the Address datatypes elements, especially Patient.address.line
and Patient.address.city
.
Note: historical records or documents that are not exposed through FHIR-based APIs may not meet this requirement.
value
url has the same meaning as the LOINC 99501-9 (Sex parameter for clinical use) and uses the same Sex Parameter for Clinical Use ValueSet answer list as the LOINC.US Core certified systems are required to support the Patient Sex Parameter For Clinical Use extension on US Core Patient to support at least a patient-level context. Systems SHOULD also use the extension on other US Core Profiles for specific clinical contexts when appropriate, for example, on US Core Observation when interpreting a laboratory result. However, this extension is not used in contexts such as "Ask at Order Entry" (AOE) questions for laboratory testing orders, typically communicated using Observation. With more implementation experience and user feedback, US Core may provide additional guidance for using this extension with other US Core Profiles.
Patient.identifier.value
. There is increasing concern over using Social Security Numbers in healthcare due to the risk of identity theft and related issues. Many payers and providers have purged them from their systems and filtered them out of incoming data.Usage:
Changes since version 7.0.0:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
Other representations of profile: CSV, Excel, Schematron
Below is an overview of the required Server RESTful FHIR interactions for this profile - for example, search and read operations - when supporting the US Core interactions to access this profile's information (Profile Support + Interaction Support). Note that systems that support only US Core Profiles (Profile Only Support) are not required to support these interactions. See the US Core Server CapabilityStatement for a complete list of supported RESTful interactions for this IG.
Servers providing access to patient data SHALL support these US Core SMART Scopes:
<patient|user|system>/Patient.rs
The following search parameters and search parameter combinations SHALL be supported:
SHALL support both read Patient by id
AND Patient search using the _id
search parameter:
GET [base]/Patient/[id]
or GET [base]/Patient?_id=[id]
Example:
Implementation Notes: (how to search by the logical id of the resource)
SHALL support searching a patient by an identifier such as a MPI using the identifier
search parameter:
GET [base]/Patient?identifier={system|}[code]
Example:
Implementation Notes: Fetches a bundle containing any Patient resources matching the identifier (how to search by token)
SHALL support searching for a patient by a Server defined search that matches any of the string fields in the HumanName, including family, given, prefix, suffix, and/or text using the name
search parameter:
GET [base]/Patient?name=[string]
Example:
Implementation Notes: Fetches a bundle of all Patient resources matching the name (how to search by string)
SHALL support searching using the combination of the birthdate
and name
search parameters:
GET [base]/Patient?birthdate=[date]&name=[string]
Example:
Implementation Notes: Fetches a bundle of all Patient resources matching the specified birthdate and name (how to search by date and how to search by string)
SHALL support searching using the combination of the gender
and name
search parameters:
GET [base]/Patient?gender={system|}[code]&name=[string]
Example:
Implementation Notes: Fetches a bundle of all Patient resources matching the specified gender and name (how to search by string and how to search by token)
The following search parameter combinations SHOULD be supported:
SHOULD support searching using the combination of the birthdate
and family
search parameters:
GET [base]/Patient?birthdate=[date]&family=[string]
Example:
Implementation Notes: Fetches a bundle of all Patient resources matching the specified birthdate and family (how to search by date and how to search by string)
SHOULD support searching using the combination of the death-date
and family
search parameters:
GET [base]/Patient?death-date=[date]&family=[string]
Example:
Implementation Notes: Fetches a bundle of all Patient resources matching the specified death-date and family (how to search by date and how to search by string)
SHOULD support searching using the combination of the family
and gender
search parameters:
GET [base]/Patient?family=[string]&gender={system|}[code]
Example:
Implementation Notes: Fetches a bundle of all Patient resources matching the specified family and gender (how to search by string and how to search by token)