US Core Implementation Guide
6.1.0-snapshot1 - STU6 United States of America flag

This page is part of the US Core (v6.1.0-snapshot1: STU6 Update) based on FHIR R4. The current version which supercedes this version is 6.0.0. For a full list of available versions, see the Directory of published versions

Resource Profile: US Core Patient Profile

Official URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient Version: 6.1.0-snapshot1
Active as of 2022-09-30 Computable Name: USCorePatientProfile

Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License

The US Core Patient Profile meets the U.S. Core Data for Interoperability (USCDI) v3 ‘Patient Demographics’ requirements. This profile sets minimum expectations for the Patient resource to record, search, and fetch basic demographics and other administrative information about an individual patient. It identifies which core elements, extensions, vocabularies, and value sets SHALL be present in the resource when using this profile to promote interoperability and adoption through common implementation. It identifies which core elements, extensions, vocabularies, and value sets SHALL be present in the resource and constrains the way the elements are used when using this profile. It provides the floor for standards development for specific use cases.

Example Usage Scenarios:

The following are example usage scenarios for this profile:

  • Query for a Patient demographic information using Medical Record Number (MRN), which is a type of identifier. The MRN is identifiable by identifier.system and may be location specific.
  • Query for a Patient demographic information using first name, last name, birthdate, and gender.

Mandatory and Must Support Data Elements

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:

  1. a patient identifier (e.g. MRN)
  2. a patient name
  3. a gender*

Each Patient Must Support:

  1. a birth date
  2. an address

Additional USCDI Requirements

For ONC’s USCDI requirements, each Patient Must Support the following additional elements. These elements are included in the formal definition of the profile and the Patient examples.

  1. contact detail (e.g. a telephone number or an email address)
  2. a communication language
  3. a race
  4. an ethnicity
  5. a tribal affiliation
  6. sex*
  7. gender identity*
  8. date of death
  9. previous address
  10. previous name
  11. suffix

*see guidance below

Profile Specific Implementation Guidance:

  • Note that Date of Death, Previous Name, Suffix,and Previous address are listed in the U.S. Core Data for Interoperability.
    • Date of Death is communicated using the Patient.deceasedDateTime element.
    • Suffix is represented using the Patient.name.suffix element.
    • Previous name is represented by setting Patient.name.use to “old” or providing an end date in Patient.name.period or doing both.
    • Previous address is represented by setting Patient.address.use to “old” or providing an end date in Patient.address.period or doing both.
    • The Patient example demonstrates how these elements are represented.
  • *US Core has reviewed and updated value sets based on input from the HL7 Gender Harmony Project which is modeling gender and sex information which includes data elements, value sets, code systems. When their work is complete, US Core will align with their recommendations. The US Core Sex Extension meets the U.S. Core Data for Interoperability (USCDI) v3 data element “sex”. The US Core Birth Sex Extension is no longer a USCDI Requirement. See the FHIR specification for additional guidance and background for representing Administrative Gender, Sex assigned at Birth, and Gender Identity.
  • Provenance and the FHIR Extension Target Element can be use to document how individual patient demographic data was captured. See Element Level Provenance on the Basic Provenance page for more information.
  • The Patient’s Social Security Numbers SHOULD NOT be used as a patient identifier in Patient.identifier.value. There is increasing concern over the use of Social Security Numbers in healthcare due to the risk of identity theft and related issues. Many payers and providers have actively purged them from their systems and filter them out of incoming data.

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

This structure is derived from Patient

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*PatientInformation about an individual or animal receiving health care services
... race 0..1(Complex)(USCDI) US Core Race Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-race
... ethnicity 0..1(Complex)(USCDI) US Core ethnicity Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity
... tribalAffiliation 0..*(Complex)(USCDI) Tribal Affiliation Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-tribal-affiliation
... birthsex 0..1codeBirth Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex
Binding: Birth Sex (required): Code for sex assigned at birth

... sex 0..1code(USCDI) Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex
Binding: VSAC 2.16.840.1.113762.1.4.1099.53 (required): Concepts limited to Male, Female, Patient Sex Unknown.

... genderIdentity 0..*CodeableConcept(USCDI) The individual's gender identity
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-genderIdentity
Binding: Gender Identity (extensible)
... identifier S1..*Identifier(USCDI) An identifier for this patient
.... system S1..1uri(USCDI) The namespace for the identifier value
.... value S1..1string(USCDI) The value that is unique within the system.
... name SC1..*HumanName(USCDI) A name associated with the patient
us-core-6: At least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
.... use 0..1code(USCDI) usual | official | temp | nickname | anonymous | old | maiden
.... family SC0..1string(USCDI) Family name (often called 'Surname')
.... given SC0..*string(USCDI) Given names (not always 'first'). Includes middle names
.... suffix 0..*string(USCDI) Parts that come after the name
.... period 0..1Period(USCDI) Time period when name was/is in use
... telecom 0..*ContactPoint(USCDI) A contact detail for the individual
.... system S1..1code(USCDI) phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

.... value S1..1string(USCDI) The actual contact point details
.... use S0..1code(USCDI) home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required)
... gender S1..1code(USCDI) male | female | other | unknown
Binding: AdministrativeGender (required)
... birthDate S0..1date(USCDI) The date of birth for the individual
... deceased[x] 0..1boolean, dateTime(USCDI) Indicates if the individual is deceased or not
... address S0..*Address(USCDI) An address for the individual
.... use 0..1code(USCDI) home | work | temp | old | billing - purpose of this address
.... line S0..*string(USCDI) Street name, number, direction & P.O. Box etc.
.... city S0..1string(USCDI) Name of city, town etc.
.... state S0..1string(USCDI) Sub-unit of country (abbreviations ok)
Binding: USPS Two Letter Alphabetic Codes (extensible): Two Letter USPS alphabetic codes.

.... postalCode S0..1string(USCDI) US Zip Codes
.... period 0..1Period(USCDI) Time period when address was/is in use
... communication 0..*BackboneElement(USCDI) A language which may be used to communicate with the patient about his or her health
.... language S1..1CodeableConcept(USCDI) The language which can be used to communicate with the patient about his or her health
Binding: Language codes with language and optionally a region modifier (extensible)

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Patient.telecom.systemrequiredContactPointSystem
Patient.telecom.userequiredContactPointUse
Patient.genderrequiredAdministrativeGender
Patient.address.stateextensibleUspsTwoLetterAlphabeticCodes (a valid code from https://www.usps.com/)
Patient.communication.languageextensibleLanguageCodesWithLanguageAndOptionallyARegionModifier

Constraints

IdGradePath(s)DetailsRequirements
us-core-6errorPatient.nameAt least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
: (family.exists() or given.exists()) xor extension.where(url='http://hl7.org/fhir/StructureDefinition/data-absent-reason').exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*PatientInformation about an individual or animal receiving health care services
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... race 0..1(Complex)(USCDI) US Core Race Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-race
... ethnicity 0..1(Complex)(USCDI) US Core ethnicity Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity
... tribalAffiliation 0..*(Complex)(USCDI) Tribal Affiliation Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-tribal-affiliation
... birthsex 0..1codeBirth Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex
Binding: Birth Sex (required): Code for sex assigned at birth


... sex 0..1code(USCDI) Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex
Binding: VSAC 2.16.840.1.113762.1.4.1099.53 (required): Concepts limited to Male, Female, Patient Sex Unknown.


... genderIdentity 0..*CodeableConcept(USCDI) The individual's gender identity
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-genderIdentity
Binding: Gender Identity (extensible)
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier SΣ1..*Identifier(USCDI) An identifier for this patient
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... system SΣ1..1uri(USCDI) The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ1..1string(USCDI) The value that is unique within the system.
Example General: 123456
... active ?!Σ0..1booleanWhether this patient's record is in active use
... name SΣC1..*HumanName(USCDI) A name associated with the patient
us-core-6: At least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
.... use ?!Σ0..1code(USCDI) usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

.... family SΣC0..1string(USCDI) Family name (often called 'Surname')
.... given SΣC0..*string(USCDI) Given names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
.... suffix Σ0..*string(USCDI) Parts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
.... period Σ0..1Period(USCDI) Time period when name was/is in use
... telecom Σ0..*ContactPoint(USCDI) A contact detail for the individual
.... system SΣC1..1code(USCDI) phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

.... value SΣ1..1string(USCDI) The actual contact point details
.... use ?!SΣ0..1code(USCDI) home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required)
... gender SΣ1..1code(USCDI) male | female | other | unknown
Binding: AdministrativeGender (required)
... birthDate SΣ0..1date(USCDI) The date of birth for the individual
... deceased[x] ?!Σ0..1(USCDI) Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address SΣ0..*Address(USCDI) An address for the individual
.... use ?!Σ0..1code(USCDI) home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
.... line SΣ0..*string(USCDI) Street name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
.... city SΣ0..1string(USCDI) Name of city, town etc.
Example General: Erewhon
.... state SΣ0..1string(USCDI) Sub-unit of country (abbreviations ok)
Binding: USPS Two Letter Alphabetic Codes (extensible): Two Letter USPS alphabetic codes.

.... postalCode SΣ0..1string(USCDI) US Zip Codes
Example General: 9132
.... period Σ0..1Period(USCDI) Time period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
... communication 0..*BackboneElement(USCDI) A language which may be used to communicate with the patient about his or her health
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... language S1..1CodeableConcept(USCDI) The language which can be used to communicate with the patient about his or her health
Binding: Language codes with language and optionally a region modifier (extensible)
... link ?!Σ0..*BackboneElementLink to another patient resource that concerns the same actual person
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another patient resource.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Patient.identifier.userequiredIdentifierUse
Patient.name.userequiredNameUse
Patient.telecom.systemrequiredContactPointSystem
Patient.telecom.userequiredContactPointUse
Patient.genderrequiredAdministrativeGender
Patient.address.userequiredAddressUse
Patient.address.stateextensibleUspsTwoLetterAlphabeticCodes (a valid code from https://www.usps.com/)
Patient.communication.languageextensibleLanguageCodesWithLanguageAndOptionallyARegionModifier
Patient.link.typerequiredLinkType

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPatientIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPatientIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorPatientIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorPatientIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePatientA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
us-core-6errorPatient.nameAt least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
: (family.exists() or given.exists()) xor extension.where(url='http://hl7.org/fhir/StructureDefinition/data-absent-reason').exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*PatientInformation about an individual or animal receiving health care services
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... race 0..1(Complex)(USCDI) US Core Race Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-race
... ethnicity 0..1(Complex)(USCDI) US Core ethnicity Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity
... tribalAffiliation 0..*(Complex)(USCDI) Tribal Affiliation Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-tribal-affiliation
... birthsex 0..1codeBirth Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex
Binding: Birth Sex (required): Code for sex assigned at birth


... sex 0..1code(USCDI) Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex
Binding: VSAC 2.16.840.1.113762.1.4.1099.53 (required): Concepts limited to Male, Female, Patient Sex Unknown.


... genderIdentity 0..*CodeableConcept(USCDI) The individual's gender identity
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-genderIdentity
Binding: Gender Identity (extensible)
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier SΣ1..*Identifier(USCDI) An identifier for this patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system SΣ1..1uri(USCDI) The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ1..1string(USCDI) The value that is unique within the system.
Example General: 123456
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... active ?!Σ0..1booleanWhether this patient's record is in active use
... name SΣC1..*HumanName(USCDI) A name associated with the patient
us-core-6: At least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1code(USCDI) usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

.... text Σ0..1stringText representation of the full name
.... family SΣC0..1string(USCDI) Family name (often called 'Surname')
.... given SΣC0..*string(USCDI) Given names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
.... prefix Σ0..*stringParts that come before the name
This repeating element order: Prefixes appear in the correct order for presenting the name
.... suffix Σ0..*string(USCDI) Parts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
.... period Σ0..1Period(USCDI) Time period when name was/is in use
... telecom Σ0..*ContactPoint(USCDI) A contact detail for the individual
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... system SΣC1..1code(USCDI) phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

.... value SΣ1..1string(USCDI) The actual contact point details
.... use ?!SΣ0..1code(USCDI) home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required)
.... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
.... period Σ0..1PeriodTime period when the contact point was/is in use
... gender SΣ1..1code(USCDI) male | female | other | unknown
Binding: AdministrativeGender (required)
... birthDate SΣ0..1date(USCDI) The date of birth for the individual
... deceased[x] ?!Σ0..1(USCDI) Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address SΣ0..*Address(USCDI) An address for the individual
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1code(USCDI) home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
.... type Σ0..1codepostal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).


Example General: both
.... text Σ0..1stringText representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
.... line SΣ0..*string(USCDI) Street name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
.... city SΣ0..1string(USCDI) Name of city, town etc.
Example General: Erewhon
.... district Σ0..1stringDistrict name (aka county)
Example General: Madison
.... state SΣ0..1string(USCDI) Sub-unit of country (abbreviations ok)
Binding: USPS Two Letter Alphabetic Codes (extensible): Two Letter USPS alphabetic codes.

.... postalCode SΣ0..1string(USCDI) US Zip Codes
Example General: 9132
.... country Σ0..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
.... period Σ0..1Period(USCDI) Time period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
... maritalStatus 0..1CodeableConceptMarital (civil) status of a patient
Binding: Marital Status Codes (extensible): The domestic partnership status of a person.

... multipleBirth[x] 0..1Whether patient is part of a multiple birth
.... multipleBirthBooleanboolean
.... multipleBirthIntegerinteger
... photo 0..*AttachmentImage of the patient
... contact C0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... relationship 0..*CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


.... name 0..1HumanNameA name associated with the contact person
.... telecom 0..*ContactPointA contact detail for the person
.... address 0..1AddressAddress for the contact person
.... gender 0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

.... organization C0..1Reference(Organization)Organization that is associated with the contact
.... period 0..1PeriodThe period during which this contact person or organization is valid to be contacted relating to this patient
... communication 0..*BackboneElement(USCDI) A language which may be used to communicate with the patient about his or her health
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... language S1..1CodeableConcept(USCDI) The language which can be used to communicate with the patient about his or her health
Binding: Language codes with language and optionally a region modifier (extensible)
.... preferred 0..1booleanLanguage preference indicator
... generalPractitioner 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
... managingOrganization Σ0..1Reference(Organization)Organization that is the custodian of the patient record
... link ?!Σ0..*BackboneElementLink to another patient resource that concerns the same actual person
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another patient resource.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Patient.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Patient.identifier.userequiredIdentifierUse
Patient.identifier.typeextensibleIdentifier Type Codes
Patient.name.userequiredNameUse
Patient.telecom.systemrequiredContactPointSystem
Patient.telecom.userequiredContactPointUse
Patient.genderrequiredAdministrativeGender
Patient.address.userequiredAddressUse
Patient.address.typerequiredAddressType
Patient.address.stateextensibleUspsTwoLetterAlphabeticCodes (a valid code from https://www.usps.com/)
Patient.maritalStatusextensibleMarital Status Codes
Patient.contact.relationshipextensiblePatientContactRelationship
Patient.contact.genderrequiredAdministrativeGender
Patient.communication.languageextensibleLanguageCodesWithLanguageAndOptionallyARegionModifier
Patient.link.typerequiredLinkType

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
pat-1errorPatient.contactSHALL at least contain a contact's details or a reference to an organization
: name.exists() or telecom.exists() or address.exists() or organization.exists()
us-core-6errorPatient.nameAt least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
: (family.exists() or given.exists()) xor extension.where(url='http://hl7.org/fhir/StructureDefinition/data-absent-reason').exists()

Differential View

This structure is derived from Patient

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*PatientInformation about an individual or animal receiving health care services
... race 0..1(Complex)(USCDI) US Core Race Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-race
... ethnicity 0..1(Complex)(USCDI) US Core ethnicity Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity
... tribalAffiliation 0..*(Complex)(USCDI) Tribal Affiliation Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-tribal-affiliation
... birthsex 0..1codeBirth Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex
Binding: Birth Sex (required): Code for sex assigned at birth

... sex 0..1code(USCDI) Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex
Binding: VSAC 2.16.840.1.113762.1.4.1099.53 (required): Concepts limited to Male, Female, Patient Sex Unknown.

... genderIdentity 0..*CodeableConcept(USCDI) The individual's gender identity
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-genderIdentity
Binding: Gender Identity (extensible)
... identifier S1..*Identifier(USCDI) An identifier for this patient
.... system S1..1uri(USCDI) The namespace for the identifier value
.... value S1..1string(USCDI) The value that is unique within the system.
... name SC1..*HumanName(USCDI) A name associated with the patient
us-core-6: At least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
.... use 0..1code(USCDI) usual | official | temp | nickname | anonymous | old | maiden
.... family SC0..1string(USCDI) Family name (often called 'Surname')
.... given SC0..*string(USCDI) Given names (not always 'first'). Includes middle names
.... suffix 0..*string(USCDI) Parts that come after the name
.... period 0..1Period(USCDI) Time period when name was/is in use
... telecom 0..*ContactPoint(USCDI) A contact detail for the individual
.... system S1..1code(USCDI) phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

.... value S1..1string(USCDI) The actual contact point details
.... use S0..1code(USCDI) home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required)
... gender S1..1code(USCDI) male | female | other | unknown
Binding: AdministrativeGender (required)
... birthDate S0..1date(USCDI) The date of birth for the individual
... deceased[x] 0..1boolean, dateTime(USCDI) Indicates if the individual is deceased or not
... address S0..*Address(USCDI) An address for the individual
.... use 0..1code(USCDI) home | work | temp | old | billing - purpose of this address
.... line S0..*string(USCDI) Street name, number, direction & P.O. Box etc.
.... city S0..1string(USCDI) Name of city, town etc.
.... state S0..1string(USCDI) Sub-unit of country (abbreviations ok)
Binding: USPS Two Letter Alphabetic Codes (extensible): Two Letter USPS alphabetic codes.

.... postalCode S0..1string(USCDI) US Zip Codes
.... period 0..1Period(USCDI) Time period when address was/is in use
... communication 0..*BackboneElement(USCDI) A language which may be used to communicate with the patient about his or her health
.... language S1..1CodeableConcept(USCDI) The language which can be used to communicate with the patient about his or her health
Binding: Language codes with language and optionally a region modifier (extensible)

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Patient.telecom.systemrequiredContactPointSystem
Patient.telecom.userequiredContactPointUse
Patient.genderrequiredAdministrativeGender
Patient.address.stateextensibleUspsTwoLetterAlphabeticCodes (a valid code from https://www.usps.com/)
Patient.communication.languageextensibleLanguageCodesWithLanguageAndOptionallyARegionModifier

Constraints

IdGradePath(s)DetailsRequirements
us-core-6errorPatient.nameAt least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
: (family.exists() or given.exists()) xor extension.where(url='http://hl7.org/fhir/StructureDefinition/data-absent-reason').exists()

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*PatientInformation about an individual or animal receiving health care services
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... race 0..1(Complex)(USCDI) US Core Race Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-race
... ethnicity 0..1(Complex)(USCDI) US Core ethnicity Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity
... tribalAffiliation 0..*(Complex)(USCDI) Tribal Affiliation Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-tribal-affiliation
... birthsex 0..1codeBirth Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex
Binding: Birth Sex (required): Code for sex assigned at birth


... sex 0..1code(USCDI) Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex
Binding: VSAC 2.16.840.1.113762.1.4.1099.53 (required): Concepts limited to Male, Female, Patient Sex Unknown.


... genderIdentity 0..*CodeableConcept(USCDI) The individual's gender identity
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-genderIdentity
Binding: Gender Identity (extensible)
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier SΣ1..*Identifier(USCDI) An identifier for this patient
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... system SΣ1..1uri(USCDI) The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ1..1string(USCDI) The value that is unique within the system.
Example General: 123456
... active ?!Σ0..1booleanWhether this patient's record is in active use
... name SΣC1..*HumanName(USCDI) A name associated with the patient
us-core-6: At least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
.... use ?!Σ0..1code(USCDI) usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

.... family SΣC0..1string(USCDI) Family name (often called 'Surname')
.... given SΣC0..*string(USCDI) Given names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
.... suffix Σ0..*string(USCDI) Parts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
.... period Σ0..1Period(USCDI) Time period when name was/is in use
... telecom Σ0..*ContactPoint(USCDI) A contact detail for the individual
.... system SΣC1..1code(USCDI) phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

.... value SΣ1..1string(USCDI) The actual contact point details
.... use ?!SΣ0..1code(USCDI) home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required)
... gender SΣ1..1code(USCDI) male | female | other | unknown
Binding: AdministrativeGender (required)
... birthDate SΣ0..1date(USCDI) The date of birth for the individual
... deceased[x] ?!Σ0..1(USCDI) Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address SΣ0..*Address(USCDI) An address for the individual
.... use ?!Σ0..1code(USCDI) home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
.... line SΣ0..*string(USCDI) Street name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
.... city SΣ0..1string(USCDI) Name of city, town etc.
Example General: Erewhon
.... state SΣ0..1string(USCDI) Sub-unit of country (abbreviations ok)
Binding: USPS Two Letter Alphabetic Codes (extensible): Two Letter USPS alphabetic codes.

.... postalCode SΣ0..1string(USCDI) US Zip Codes
Example General: 9132
.... period Σ0..1Period(USCDI) Time period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
... communication 0..*BackboneElement(USCDI) A language which may be used to communicate with the patient about his or her health
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... language S1..1CodeableConcept(USCDI) The language which can be used to communicate with the patient about his or her health
Binding: Language codes with language and optionally a region modifier (extensible)
... link ?!Σ0..*BackboneElementLink to another patient resource that concerns the same actual person
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another patient resource.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Patient.identifier.userequiredIdentifierUse
Patient.name.userequiredNameUse
Patient.telecom.systemrequiredContactPointSystem
Patient.telecom.userequiredContactPointUse
Patient.genderrequiredAdministrativeGender
Patient.address.userequiredAddressUse
Patient.address.stateextensibleUspsTwoLetterAlphabeticCodes (a valid code from https://www.usps.com/)
Patient.communication.languageextensibleLanguageCodesWithLanguageAndOptionallyARegionModifier
Patient.link.typerequiredLinkType

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPatientIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPatientIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorPatientIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorPatientIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePatientA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
us-core-6errorPatient.nameAt least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
: (family.exists() or given.exists()) xor extension.where(url='http://hl7.org/fhir/StructureDefinition/data-absent-reason').exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*PatientInformation about an individual or animal receiving health care services
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... race 0..1(Complex)(USCDI) US Core Race Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-race
... ethnicity 0..1(Complex)(USCDI) US Core ethnicity Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity
... tribalAffiliation 0..*(Complex)(USCDI) Tribal Affiliation Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-tribal-affiliation
... birthsex 0..1codeBirth Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex
Binding: Birth Sex (required): Code for sex assigned at birth


... sex 0..1code(USCDI) Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex
Binding: VSAC 2.16.840.1.113762.1.4.1099.53 (required): Concepts limited to Male, Female, Patient Sex Unknown.


... genderIdentity 0..*CodeableConcept(USCDI) The individual's gender identity
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-genderIdentity
Binding: Gender Identity (extensible)
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier SΣ1..*Identifier(USCDI) An identifier for this patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system SΣ1..1uri(USCDI) The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ1..1string(USCDI) The value that is unique within the system.
Example General: 123456
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... active ?!Σ0..1booleanWhether this patient's record is in active use
... name SΣC1..*HumanName(USCDI) A name associated with the patient
us-core-6: At least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1code(USCDI) usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

.... text Σ0..1stringText representation of the full name
.... family SΣC0..1string(USCDI) Family name (often called 'Surname')
.... given SΣC0..*string(USCDI) Given names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
.... prefix Σ0..*stringParts that come before the name
This repeating element order: Prefixes appear in the correct order for presenting the name
.... suffix Σ0..*string(USCDI) Parts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
.... period Σ0..1Period(USCDI) Time period when name was/is in use
... telecom Σ0..*ContactPoint(USCDI) A contact detail for the individual
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... system SΣC1..1code(USCDI) phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

.... value SΣ1..1string(USCDI) The actual contact point details
.... use ?!SΣ0..1code(USCDI) home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required)
.... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
.... period Σ0..1PeriodTime period when the contact point was/is in use
... gender SΣ1..1code(USCDI) male | female | other | unknown
Binding: AdministrativeGender (required)
... birthDate SΣ0..1date(USCDI) The date of birth for the individual
... deceased[x] ?!Σ0..1(USCDI) Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address SΣ0..*Address(USCDI) An address for the individual
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1code(USCDI) home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
.... type Σ0..1codepostal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).


Example General: both
.... text Σ0..1stringText representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
.... line SΣ0..*string(USCDI) Street name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
.... city SΣ0..1string(USCDI) Name of city, town etc.
Example General: Erewhon
.... district Σ0..1stringDistrict name (aka county)
Example General: Madison
.... state SΣ0..1string(USCDI) Sub-unit of country (abbreviations ok)
Binding: USPS Two Letter Alphabetic Codes (extensible): Two Letter USPS alphabetic codes.

.... postalCode SΣ0..1string(USCDI) US Zip Codes
Example General: 9132
.... country Σ0..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
.... period Σ0..1Period(USCDI) Time period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
... maritalStatus 0..1CodeableConceptMarital (civil) status of a patient
Binding: Marital Status Codes (extensible): The domestic partnership status of a person.

... multipleBirth[x] 0..1Whether patient is part of a multiple birth
.... multipleBirthBooleanboolean
.... multipleBirthIntegerinteger
... photo 0..*AttachmentImage of the patient
... contact C0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... relationship 0..*CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


.... name 0..1HumanNameA name associated with the contact person
.... telecom 0..*ContactPointA contact detail for the person
.... address 0..1AddressAddress for the contact person
.... gender 0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

.... organization C0..1Reference(Organization)Organization that is associated with the contact
.... period 0..1PeriodThe period during which this contact person or organization is valid to be contacted relating to this patient
... communication 0..*BackboneElement(USCDI) A language which may be used to communicate with the patient about his or her health
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... language S1..1CodeableConcept(USCDI) The language which can be used to communicate with the patient about his or her health
Binding: Language codes with language and optionally a region modifier (extensible)
.... preferred 0..1booleanLanguage preference indicator
... generalPractitioner 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
... managingOrganization Σ0..1Reference(Organization)Organization that is the custodian of the patient record
... link ?!Σ0..*BackboneElementLink to another patient resource that concerns the same actual person
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another patient resource.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Patient.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Patient.identifier.userequiredIdentifierUse
Patient.identifier.typeextensibleIdentifier Type Codes
Patient.name.userequiredNameUse
Patient.telecom.systemrequiredContactPointSystem
Patient.telecom.userequiredContactPointUse
Patient.genderrequiredAdministrativeGender
Patient.address.userequiredAddressUse
Patient.address.typerequiredAddressType
Patient.address.stateextensibleUspsTwoLetterAlphabeticCodes (a valid code from https://www.usps.com/)
Patient.maritalStatusextensibleMarital Status Codes
Patient.contact.relationshipextensiblePatientContactRelationship
Patient.contact.genderrequiredAdministrativeGender
Patient.communication.languageextensibleLanguageCodesWithLanguageAndOptionallyARegionModifier
Patient.link.typerequiredLinkType

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
pat-1errorPatient.contactSHALL at least contain a contact's details or a reference to an organization
: name.exists() or telecom.exists() or address.exists() or organization.exists()
us-core-6errorPatient.nameAt least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
: (family.exists() or given.exists()) xor extension.where(url='http://hl7.org/fhir/StructureDefinition/data-absent-reason').exists()

 

Other representations of profile: CSV, Excel, Schematron

Notes:


Quick Start


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.

  • The syntax used to describe the interactions is described here.

  • Servers providing access to patient data can use US Core SMART Scopes for:
  • See the General Requirements section for additional rules and expectations when a server requires status parameters.
  • See the General Guidance section for additional guidance on searching for multiple patients.

Mandatory Search Parameters:

The following search parameters and search parameter combinations SHALL be supported:

  1. 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:

    1. GET [base]/Patient/1032702
    2. GET [base]/Patient?_id=1032702

    Implementation Notes: (how to search by the logical id of the resource)

  2. SHALL support searching a patient by an identifier such as a MPI using the identifier search parameter:

    GET [base]/Patient?identifier={system|}[code]

    Example:

    1. GET [base]/Patient?identifier=http://hospital.smarthealthit.org|1032702

    Implementation Notes: Fetches a bundle containing any Patient resources matching the identifier (how to search by token)

  3. 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:

    1. GET [base]/Patient?name=Shaw

    Implementation Notes: Fetches a bundle of all Patient resources matching the name (how to search by string)

  4. SHALL support searching using the combination of the birthdate and name search parameters:

    GET [base]/Patient?birthdate=[date]&name=[string]

    Example:

    1. GET [base]/Patient?name=Shaw&birthdate=2007-03-20

    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)

  5. SHALL support searching using the combination of the gender and name search parameters:

    GET [base]/Patient?gender={system|}[code]&name=[string]

    Example:

    1. GET [base]/Patient?name=Shaw&gender=female

    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)

Optional Search Parameters:

The following search parameter combinations SHOULD be supported:

  1. SHOULD support searching using the combination of the birthdate and family search parameters:

    GET [base]/Patient?birthdate=[date]&family=[string]

    Example:

    1. GET [base]/Patient?family=Shaw&birthdate=2007-03-20

    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)

  2. SHOULD support searching using the combination of the death-date and family search parameters:

    GET [base]/Patient?death-date=[date]&family=[string]

    Example:

    1. GET [base]/Patient?family=Shaw&death-date=2022-07-22

    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)

  3. SHOULD support searching using the combination of the family and gender search parameters:

    GET [base]/Patient?family=[string]&gender={system|}[code]

    Example:

    1. GET [base]/Patient?family=Shaw&gender=female

    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)