HRSA 2023 Uniform Data System (UDS) Patient Level Submission (PLS) (UDS+) FHIR IG
1.1.0 - STU1 Release 1.1 - Standard for Trial-Use
This page is part of the HRSA Uniform Data System (UDS) Patient Level Submission (PLS) (UDS+ or uds-plus) FHIR IG (v1.1.0: STU1) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
Official URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/de-identified-uds-plus-patient | Version: 1.1.0 | |||
Standards status: Trial-use | Maturity Level: 2 | Computable Name: DeIdentifiedUDSPlusPatient |
This Patient profile represents a Patient availing HRSA services.
This profile is used to represent de-identified patient information. The de-identification process has to remove all data elements not explicitly identified as "SUPPORTED" in the profile.
The HHS De-identification Guidance is to be followed to ensure appropriate level of de-identification is performed.
According to the HHS guidance the following data elements have to be removed or de-identified
Address that is more specific than a state
In FHIR Resources, text elements which provide human readable information to the providers may be generated using programs and tools from the data present within the resource. For e.g a Patient resource text element may contain information such as the full name, Gender and Date of Birth. This type of information will enable identification of the individuals. In order to avoid inadvertent revealing of PII/PHI, text elements cannot be included in the De-identified FHIR resource and the submission will be rejected when text elements are present by the validation process.
Age Computation
The Data Submitter has to compute the age based as of December 31st of the previous year for inclusion in the UDS+ report.
Id Generation
The original patient resource id should not be included in the De-identified patient instance. Instead a new id should be created and provided as part of the FHIR resource. This Data Submitter should be capable of using the generated id to relink the data to the original patient. All resource references to the Patient submitted as part of the UDS+ report should refer to newly generated de-identified id.
The following is new content for 1.1.0
Date Truncation
The Data Submitter has to truncate the following dates to only have a precision of year
Usage of Data Absent Reason Extension
For the UDS+ reporting, the patient data is de-identified and in the process zip codes may be masked to a value of "00000". In these cases the dataAbsentReason extension must be added to identify that the data is "masked". If the zip code is not known, a value of "00000" must be sent with a dataAbsentReason of "unknown". If the zip code is outside the country, a value of "00000" must be sent with a dataAbsentReason of "unsupported".
Birth Sex Additional Constraints
NullFlavors are not allowed for BirthSex reporting for UDS+ even though they are allowed in US Core.
Race and Ethnicity Additional Constraints
US Core allows Race and Ethnicity to be described as only text or rolled up to the OMB categories, however for UDS+ reporting detailed race and ethnicity have to be captured and reported as part of the profile. If the reported race and ethncity values are not null flavors then detailed values are mandatory.
Sexual Orientation Additional Constraints
Health Centers which have not implemented the methods to capture Sexual Orientation, should use the null flavor coded value of "NASK" specifically.
Gender Identity Additional Constraints
Health Centers which have not implemented the methods to capture Gender Identity, should use the null flavor coded value of "NASK" specifically.
Examples Examples of identifiable data and its corresponding de-identifiable data is present in Reporting Guidance.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Patient
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Patient | 0..* | Patient | De-Identified UDS Plus Patient | |
id | S | 0..1 | id | The de-identified patient identifier created by the health center to send data to HRSA. |
text | 0..0 | |||
contained | 0..0 | |||
Slices for extension | Content/Rules for all slices | |||
uds-plus-race | S | 1..1 | (Complex) | Indicates the race of the Patient. URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-race profiled by http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-race-extension |
uds-plus-ethnicty | S | 1..1 | (Complex) | Indicates the ethnicity of the Patient. URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity profiled by http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-ethnicity-extension |
uds-plus-birthsex | S | 1..1 | code | Indicates the birth sex of the Patient. URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-birthsex-extension Binding: Uds Plus Birth Sex Codes (required): The set of codes to be used for UDS+ reporting. |
uds-plus-age-extension | S | 1..1 | Quantity | Age of the Patient computed using birthDate and the reporting period reference URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-age-extension |
uds-plus-gender-identity-extension | S | 0..1 | CodeableConcept | Gender Identity of the pateient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-gender-identity-extension Binding: Uds Plus Gender Identity Codes (extensible): The set of codes to be used for UDS+ reporting. |
uds-plus-agriculture-worker-status | S | 0..1 | code | Agriculture Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/udsplus-agriculture-worker-status Binding: Uds Plus Agriculture Worker Status Codes (extensible) |
uds-plus-housing-status | S | 0..1 | code | Housing Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-housing-status-extension Binding: Uds Plus Housing Status Codes (extensible) |
uds-plus-veteran-status | S | 0..1 | boolean | Veteran Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-veteran-status-extension |
identifier | 0..0 | |||
name | 0..0 | |||
telecom | 0..0 | |||
birthDate | 0..0 | |||
deceased[x] | SC | 0..1 | Indicates if the Patient is deceased, it can be either a Boolean or a Date with a precision of year only. uds-plus-pat-1: All dateTime data elements should be truncated to a year only for de-identified resources. | |
deceasedDateTime | dateTime S | |||
deceasedBoolean | boolean S | |||
address | S | 1..1 | Address | Included only to support zip code |
text | 0..0 | |||
line | 0..0 | |||
postalCode | SC | 1..1 | string | ZipCode must be included in the profile uds-plus-patient-1: De-identified Zipcodes can contain first 3 digits followed by 00 in the last two digits or have to be masked with 00000. |
Slices for extension | Content/Rules for all slices | |||
dataAbsentReason | S | 0..1 | (Complex) | Reason why the data is not present URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason |
value[x] | S | 1..1 | code | Value of extension |
maritalStatus | 0..0 | |||
multipleBirth[x] | 0..0 | |||
photo | 0..0 | |||
contact | 0..0 | |||
communication | ||||
language | S | 1..1 | CodeableConcept | Language must be included in the profile Binding: Language codes with language and optionally a region modifier (extensible): The set of languages that the patient uses |
generalPractitioner | 0..0 | |||
managingOrganization | 0..0 | |||
link | 0..0 | |||
Documentation for this format |
Path | Conformance | ValueSet | URI |
Patient.communication.language | extensible | LanguageCodesWithLanguageAndOptionallyARegionModifierhttp://hl7.org/fhir/us/core/ValueSet/simple-language |
Id | Grade | Path(s) | Details | Requirements |
uds-plus-pat-1 | error | Patient.deceased[x] | All dateTime data elements should be truncated to a year only for de-identified resources. : $this is dateTime implies $this.toString().length() = 4 | |
uds-plus-patient-1 | error | Patient.address.postalCode | De-identified Zipcodes can contain first 3 digits followed by 00 in the last two digits or have to be masked with 00000. : $this.matches('[0-9]{3}00|00000') |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Patient | 0..* | Patient | De-Identified UDS Plus Patient | |
id | SΣ | 0..1 | id | The de-identified patient identifier created by the health center to send data to HRSA. |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | 4..* | Extension | Extension Slice: Unordered, Open by value:url | |
uds-plus-race | S | 1..1 | (Complex) | Indicates the race of the Patient. URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-race profiled by http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-race-extension |
uds-plus-ethnicty | S | 1..1 | (Complex) | Indicates the ethnicity of the Patient. URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity profiled by http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-ethnicity-extension |
uds-plus-birthsex | S | 1..1 | code | Indicates the birth sex of the Patient. URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-birthsex-extension Binding: Uds Plus Birth Sex Codes (required): The set of codes to be used for UDS+ reporting. |
uds-plus-age-extension | S | 1..1 | Quantity | Age of the Patient computed using birthDate and the reporting period reference URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-age-extension |
uds-plus-gender-identity-extension | S | 0..1 | CodeableConcept | Gender Identity of the pateient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-gender-identity-extension Binding: Uds Plus Gender Identity Codes (extensible): The set of codes to be used for UDS+ reporting. |
uds-plus-agriculture-worker-status | S | 0..1 | code | Agriculture Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/udsplus-agriculture-worker-status Binding: Uds Plus Agriculture Worker Status Codes (extensible) |
uds-plus-housing-status | S | 0..1 | code | Housing Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-housing-status-extension Binding: Uds Plus Housing Status Codes (extensible) |
uds-plus-veteran-status | S | 0..1 | boolean | Veteran Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-veteran-status-extension |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
active | ?!Σ | 0..1 | boolean | Whether this patient's record is in active use |
deceased[x] | ?!SΣC | 0..1 | Indicates if the Patient is deceased, it can be either a Boolean or a Date with a precision of year only. uds-plus-pat-1: All dateTime data elements should be truncated to a year only for de-identified resources. | |
deceasedDateTime | dateTime | |||
deceasedBoolean | boolean | |||
address | SΣ | 1..1 | Address | Included only to support zip code |
use | ?!Σ | 0..1 | code | home | work | temp | old | billing - purpose of this address Binding: AddressUse (required): The use of an address. Example General: home |
postalCode | SΣC | 1..1 | string | ZipCode must be included in the profile uds-plus-patient-1: De-identified Zipcodes can contain first 3 digits followed by 00 in the last two digits or have to be masked with 00000. Example General: 9132 |
Slices for extension | Content/Rules for all slices | |||
dataAbsentReason | S | 0..1 | (Complex) | Reason why the data is not present URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason |
extension | 0..0 | |||
url | 1..1 | uri | "http://hl7.org/fhir/StructureDefinition/data-absent-reason" | |
value[x] | S | 1..1 | code | Value of extension Binding: DataAbsentReason (required) |
communication | 0..* | BackboneElement | A language which may be used to communicate with the patient about his or her health | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
language | S | 1..1 | CodeableConcept | Language must be included in the profile Binding: Language codes with language and optionally a region modifier (extensible): The set of languages that the patient uses |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Patient.address.use | required | AddressUsehttp://hl7.org/fhir/ValueSet/address-use|4.0.1 from the FHIR Standard | |
Patient.address.postalCode.extension:dataAbsentReason.value[x] | required | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reason from the FHIR Standard | |
Patient.communication.language | extensible | LanguageCodesWithLanguageAndOptionallyARegionModifierhttp://hl7.org/fhir/us/core/ValueSet/simple-language | |
Patient.link.type | required | LinkTypehttp://hl7.org/fhir/ValueSet/link-type|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Patient | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Patient | If 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-4 | error | Patient | If 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-5 | error | Patient | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Patient | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
uds-plus-pat-1 | error | Patient.deceased[x] | All dateTime data elements should be truncated to a year only for de-identified resources. : $this is dateTime implies $this.toString().length() = 4 | |
uds-plus-patient-1 | error | Patient.address.postalCode | De-identified Zipcodes can contain first 3 digits followed by 00 in the last two digits or have to be masked with 00000. : $this.matches('[0-9]{3}00|00000') |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Patient | 0..* | Patient | De-Identified UDS Plus Patient | |||||
id | SΣ | 0..1 | id | The de-identified patient identifier created by the health center to send data to HRSA. | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
Slices for extension | 4..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
uds-plus-race | S | 1..1 | (Complex) | Indicates the race of the Patient. URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-race profiled by http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-race-extension | ||||
uds-plus-ethnicty | S | 1..1 | (Complex) | Indicates the ethnicity of the Patient. URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity profiled by http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-ethnicity-extension | ||||
uds-plus-birthsex | S | 1..1 | code | Indicates the birth sex of the Patient. URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-birthsex-extension Binding: Uds Plus Birth Sex Codes (required): The set of codes to be used for UDS+ reporting. | ||||
uds-plus-age-extension | S | 1..1 | Quantity | Age of the Patient computed using birthDate and the reporting period reference URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-age-extension | ||||
uds-plus-gender-identity-extension | S | 0..1 | CodeableConcept | Gender Identity of the pateient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-gender-identity-extension Binding: Uds Plus Gender Identity Codes (extensible): The set of codes to be used for UDS+ reporting. | ||||
uds-plus-agriculture-worker-status | S | 0..1 | code | Agriculture Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/udsplus-agriculture-worker-status Binding: Uds Plus Agriculture Worker Status Codes (extensible) | ||||
uds-plus-housing-status | S | 0..1 | code | Housing Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-housing-status-extension Binding: Uds Plus Housing Status Codes (extensible) | ||||
uds-plus-veteran-status | S | 0..1 | boolean | Veteran Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-veteran-status-extension | ||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
active | ?!Σ | 0..1 | boolean | Whether this patient's record is in active use | ||||
gender | Σ | 0..1 | code | male | female | other | unknown Binding: AdministrativeGender (required): The gender of a person used for administrative purposes. | ||||
deceased[x] | ?!SΣC | 0..1 | Indicates if the Patient is deceased, it can be either a Boolean or a Date with a precision of year only. uds-plus-pat-1: All dateTime data elements should be truncated to a year only for de-identified resources. | |||||
deceasedDateTime | dateTime S | |||||||
deceasedBoolean | boolean S | |||||||
address | SΣ | 1..1 | Address | Included only to support zip code | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | home | work | temp | old | billing - purpose of this address Binding: AddressUse (required): The use of an address. Example General: home | ||||
type | Σ | 0..1 | code | postal | physical | both Binding: AddressType (required): The type of an address (physical / postal). Example General: both | ||||
city | Σ | 0..1 | string | Name of city, town etc. Example General: Erewhon | ||||
district | Σ | 0..1 | string | District name (aka county) Example General: Madison | ||||
state | Σ | 0..1 | string | Sub-unit of country (abbreviations ok) | ||||
postalCode | SΣC | 1..1 | string | ZipCode must be included in the profile uds-plus-patient-1: De-identified Zipcodes can contain first 3 digits followed by 00 in the last two digits or have to be masked with 00000. Example General: 9132 | ||||
id | 0..1 | string | xml:id (or equivalent in JSON) | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
dataAbsentReason | S | 0..1 | (Complex) | Reason why the data is not present URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason | ||||
id | 0..1 | id | Unique id for inter-element referencing | |||||
extension | 0..0 | |||||||
url | 1..1 | uri | "http://hl7.org/fhir/StructureDefinition/data-absent-reason" | |||||
value[x] | S | 1..1 | code | Value of extension Binding: DataAbsentReason (required) | ||||
value | 0..1 | string | Primitive value for string Max Length: 1048576 | |||||
country | Σ | 0..1 | string | Country (e.g. can be ISO 3166 2 or 3 letter code) | ||||
period | Σ | 0..1 | Period | Time period when address was/is in use Example General: {"start":"2010-03-23","end":"2010-07-01"} | ||||
communication | 0..* | BackboneElement | A language which may be used to communicate with the patient about his or her health | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
language | S | 1..1 | CodeableConcept | Language must be included in the profile Binding: Language codes with language and optionally a region modifier (extensible): The set of languages that the patient uses | ||||
preferred | 0..1 | boolean | Language preference indicator | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
Patient.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Patient.gender | required | AdministrativeGenderhttp://hl7.org/fhir/ValueSet/administrative-gender|4.0.1 from the FHIR Standard | ||||
Patient.address.use | required | AddressUsehttp://hl7.org/fhir/ValueSet/address-use|4.0.1 from the FHIR Standard | ||||
Patient.address.type | required | AddressTypehttp://hl7.org/fhir/ValueSet/address-type|4.0.1 from the FHIR Standard | ||||
Patient.address.postalCode.extension:dataAbsentReason.value[x] | required | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reason from the FHIR Standard | ||||
Patient.contact.relationship | extensible | PatientContactRelationshiphttp://hl7.org/fhir/ValueSet/patient-contactrelationship from the FHIR Standard | ||||
Patient.contact.gender | required | AdministrativeGenderhttp://hl7.org/fhir/ValueSet/administrative-gender|4.0.1 from the FHIR Standard | ||||
Patient.communication.language | extensible | LanguageCodesWithLanguageAndOptionallyARegionModifierhttp://hl7.org/fhir/us/core/ValueSet/simple-language | ||||
Patient.link.type | required | LinkTypehttp://hl7.org/fhir/ValueSet/link-type|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Patient | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Patient | If 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-4 | error | Patient | If 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-5 | error | Patient | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Patient | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
uds-plus-pat-1 | error | Patient.deceased[x] | All dateTime data elements should be truncated to a year only for de-identified resources. : $this is dateTime implies $this.toString().length() = 4 | |
uds-plus-patient-1 | error | Patient.address.postalCode | De-identified Zipcodes can contain first 3 digits followed by 00 in the last two digits or have to be masked with 00000. : $this.matches('[0-9]{3}00|00000') |
This structure is derived from Patient
Summary
Mandatory: 6 elements(2 nested mandatory elements)
Must-Support: 15 elements
Prohibited: 15 elements
Extensions
This structure refers to these extensions:
Maturity: 2
Differential View
This structure is derived from Patient
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Patient | 0..* | Patient | De-Identified UDS Plus Patient | |
id | S | 0..1 | id | The de-identified patient identifier created by the health center to send data to HRSA. |
text | 0..0 | |||
contained | 0..0 | |||
Slices for extension | Content/Rules for all slices | |||
uds-plus-race | S | 1..1 | (Complex) | Indicates the race of the Patient. URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-race profiled by http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-race-extension |
uds-plus-ethnicty | S | 1..1 | (Complex) | Indicates the ethnicity of the Patient. URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity profiled by http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-ethnicity-extension |
uds-plus-birthsex | S | 1..1 | code | Indicates the birth sex of the Patient. URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-birthsex-extension Binding: Uds Plus Birth Sex Codes (required): The set of codes to be used for UDS+ reporting. |
uds-plus-age-extension | S | 1..1 | Quantity | Age of the Patient computed using birthDate and the reporting period reference URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-age-extension |
uds-plus-gender-identity-extension | S | 0..1 | CodeableConcept | Gender Identity of the pateient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-gender-identity-extension Binding: Uds Plus Gender Identity Codes (extensible): The set of codes to be used for UDS+ reporting. |
uds-plus-agriculture-worker-status | S | 0..1 | code | Agriculture Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/udsplus-agriculture-worker-status Binding: Uds Plus Agriculture Worker Status Codes (extensible) |
uds-plus-housing-status | S | 0..1 | code | Housing Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-housing-status-extension Binding: Uds Plus Housing Status Codes (extensible) |
uds-plus-veteran-status | S | 0..1 | boolean | Veteran Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-veteran-status-extension |
identifier | 0..0 | |||
name | 0..0 | |||
telecom | 0..0 | |||
birthDate | 0..0 | |||
deceased[x] | SC | 0..1 | Indicates if the Patient is deceased, it can be either a Boolean or a Date with a precision of year only. uds-plus-pat-1: All dateTime data elements should be truncated to a year only for de-identified resources. | |
deceasedDateTime | dateTime S | |||
deceasedBoolean | boolean S | |||
address | S | 1..1 | Address | Included only to support zip code |
text | 0..0 | |||
line | 0..0 | |||
postalCode | SC | 1..1 | string | ZipCode must be included in the profile uds-plus-patient-1: De-identified Zipcodes can contain first 3 digits followed by 00 in the last two digits or have to be masked with 00000. |
Slices for extension | Content/Rules for all slices | |||
dataAbsentReason | S | 0..1 | (Complex) | Reason why the data is not present URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason |
value[x] | S | 1..1 | code | Value of extension |
maritalStatus | 0..0 | |||
multipleBirth[x] | 0..0 | |||
photo | 0..0 | |||
contact | 0..0 | |||
communication | ||||
language | S | 1..1 | CodeableConcept | Language must be included in the profile Binding: Language codes with language and optionally a region modifier (extensible): The set of languages that the patient uses |
generalPractitioner | 0..0 | |||
managingOrganization | 0..0 | |||
link | 0..0 | |||
Documentation for this format |
Path | Conformance | ValueSet | URI |
Patient.communication.language | extensible | LanguageCodesWithLanguageAndOptionallyARegionModifierhttp://hl7.org/fhir/us/core/ValueSet/simple-language |
Id | Grade | Path(s) | Details | Requirements |
uds-plus-pat-1 | error | Patient.deceased[x] | All dateTime data elements should be truncated to a year only for de-identified resources. : $this is dateTime implies $this.toString().length() = 4 | |
uds-plus-patient-1 | error | Patient.address.postalCode | De-identified Zipcodes can contain first 3 digits followed by 00 in the last two digits or have to be masked with 00000. : $this.matches('[0-9]{3}00|00000') |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Patient | 0..* | Patient | De-Identified UDS Plus Patient | |
id | SΣ | 0..1 | id | The de-identified patient identifier created by the health center to send data to HRSA. |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | 4..* | Extension | Extension Slice: Unordered, Open by value:url | |
uds-plus-race | S | 1..1 | (Complex) | Indicates the race of the Patient. URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-race profiled by http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-race-extension |
uds-plus-ethnicty | S | 1..1 | (Complex) | Indicates the ethnicity of the Patient. URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity profiled by http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-ethnicity-extension |
uds-plus-birthsex | S | 1..1 | code | Indicates the birth sex of the Patient. URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-birthsex-extension Binding: Uds Plus Birth Sex Codes (required): The set of codes to be used for UDS+ reporting. |
uds-plus-age-extension | S | 1..1 | Quantity | Age of the Patient computed using birthDate and the reporting period reference URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-age-extension |
uds-plus-gender-identity-extension | S | 0..1 | CodeableConcept | Gender Identity of the pateient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-gender-identity-extension Binding: Uds Plus Gender Identity Codes (extensible): The set of codes to be used for UDS+ reporting. |
uds-plus-agriculture-worker-status | S | 0..1 | code | Agriculture Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/udsplus-agriculture-worker-status Binding: Uds Plus Agriculture Worker Status Codes (extensible) |
uds-plus-housing-status | S | 0..1 | code | Housing Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-housing-status-extension Binding: Uds Plus Housing Status Codes (extensible) |
uds-plus-veteran-status | S | 0..1 | boolean | Veteran Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-veteran-status-extension |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
active | ?!Σ | 0..1 | boolean | Whether this patient's record is in active use |
deceased[x] | ?!SΣC | 0..1 | Indicates if the Patient is deceased, it can be either a Boolean or a Date with a precision of year only. uds-plus-pat-1: All dateTime data elements should be truncated to a year only for de-identified resources. | |
deceasedDateTime | dateTime | |||
deceasedBoolean | boolean | |||
address | SΣ | 1..1 | Address | Included only to support zip code |
use | ?!Σ | 0..1 | code | home | work | temp | old | billing - purpose of this address Binding: AddressUse (required): The use of an address. Example General: home |
postalCode | SΣC | 1..1 | string | ZipCode must be included in the profile uds-plus-patient-1: De-identified Zipcodes can contain first 3 digits followed by 00 in the last two digits or have to be masked with 00000. Example General: 9132 |
Slices for extension | Content/Rules for all slices | |||
dataAbsentReason | S | 0..1 | (Complex) | Reason why the data is not present URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason |
extension | 0..0 | |||
url | 1..1 | uri | "http://hl7.org/fhir/StructureDefinition/data-absent-reason" | |
value[x] | S | 1..1 | code | Value of extension Binding: DataAbsentReason (required) |
communication | 0..* | BackboneElement | A language which may be used to communicate with the patient about his or her health | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
language | S | 1..1 | CodeableConcept | Language must be included in the profile Binding: Language codes with language and optionally a region modifier (extensible): The set of languages that the patient uses |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Patient.address.use | required | AddressUsehttp://hl7.org/fhir/ValueSet/address-use|4.0.1 from the FHIR Standard | |
Patient.address.postalCode.extension:dataAbsentReason.value[x] | required | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reason from the FHIR Standard | |
Patient.communication.language | extensible | LanguageCodesWithLanguageAndOptionallyARegionModifierhttp://hl7.org/fhir/us/core/ValueSet/simple-language | |
Patient.link.type | required | LinkTypehttp://hl7.org/fhir/ValueSet/link-type|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Patient | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Patient | If 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-4 | error | Patient | If 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-5 | error | Patient | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Patient | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
uds-plus-pat-1 | error | Patient.deceased[x] | All dateTime data elements should be truncated to a year only for de-identified resources. : $this is dateTime implies $this.toString().length() = 4 | |
uds-plus-patient-1 | error | Patient.address.postalCode | De-identified Zipcodes can contain first 3 digits followed by 00 in the last two digits or have to be masked with 00000. : $this.matches('[0-9]{3}00|00000') |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Patient | 0..* | Patient | De-Identified UDS Plus Patient | |||||
id | SΣ | 0..1 | id | The de-identified patient identifier created by the health center to send data to HRSA. | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
Slices for extension | 4..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
uds-plus-race | S | 1..1 | (Complex) | Indicates the race of the Patient. URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-race profiled by http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-race-extension | ||||
uds-plus-ethnicty | S | 1..1 | (Complex) | Indicates the ethnicity of the Patient. URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity profiled by http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-ethnicity-extension | ||||
uds-plus-birthsex | S | 1..1 | code | Indicates the birth sex of the Patient. URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-birthsex-extension Binding: Uds Plus Birth Sex Codes (required): The set of codes to be used for UDS+ reporting. | ||||
uds-plus-age-extension | S | 1..1 | Quantity | Age of the Patient computed using birthDate and the reporting period reference URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-age-extension | ||||
uds-plus-gender-identity-extension | S | 0..1 | CodeableConcept | Gender Identity of the pateient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-gender-identity-extension Binding: Uds Plus Gender Identity Codes (extensible): The set of codes to be used for UDS+ reporting. | ||||
uds-plus-agriculture-worker-status | S | 0..1 | code | Agriculture Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/udsplus-agriculture-worker-status Binding: Uds Plus Agriculture Worker Status Codes (extensible) | ||||
uds-plus-housing-status | S | 0..1 | code | Housing Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-housing-status-extension Binding: Uds Plus Housing Status Codes (extensible) | ||||
uds-plus-veteran-status | S | 0..1 | boolean | Veteran Status of the patient URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-veteran-status-extension | ||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
active | ?!Σ | 0..1 | boolean | Whether this patient's record is in active use | ||||
gender | Σ | 0..1 | code | male | female | other | unknown Binding: AdministrativeGender (required): The gender of a person used for administrative purposes. | ||||
deceased[x] | ?!SΣC | 0..1 | Indicates if the Patient is deceased, it can be either a Boolean or a Date with a precision of year only. uds-plus-pat-1: All dateTime data elements should be truncated to a year only for de-identified resources. | |||||
deceasedDateTime | dateTime S | |||||||
deceasedBoolean | boolean S | |||||||
address | SΣ | 1..1 | Address | Included only to support zip code | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | home | work | temp | old | billing - purpose of this address Binding: AddressUse (required): The use of an address. Example General: home | ||||
type | Σ | 0..1 | code | postal | physical | both Binding: AddressType (required): The type of an address (physical / postal). Example General: both | ||||
city | Σ | 0..1 | string | Name of city, town etc. Example General: Erewhon | ||||
district | Σ | 0..1 | string | District name (aka county) Example General: Madison | ||||
state | Σ | 0..1 | string | Sub-unit of country (abbreviations ok) | ||||
postalCode | SΣC | 1..1 | string | ZipCode must be included in the profile uds-plus-patient-1: De-identified Zipcodes can contain first 3 digits followed by 00 in the last two digits or have to be masked with 00000. Example General: 9132 | ||||
id | 0..1 | string | xml:id (or equivalent in JSON) | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
dataAbsentReason | S | 0..1 | (Complex) | Reason why the data is not present URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason | ||||
id | 0..1 | id | Unique id for inter-element referencing | |||||
extension | 0..0 | |||||||
url | 1..1 | uri | "http://hl7.org/fhir/StructureDefinition/data-absent-reason" | |||||
value[x] | S | 1..1 | code | Value of extension Binding: DataAbsentReason (required) | ||||
value | 0..1 | string | Primitive value for string Max Length: 1048576 | |||||
country | Σ | 0..1 | string | Country (e.g. can be ISO 3166 2 or 3 letter code) | ||||
period | Σ | 0..1 | Period | Time period when address was/is in use Example General: {"start":"2010-03-23","end":"2010-07-01"} | ||||
communication | 0..* | BackboneElement | A language which may be used to communicate with the patient about his or her health | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
language | S | 1..1 | CodeableConcept | Language must be included in the profile Binding: Language codes with language and optionally a region modifier (extensible): The set of languages that the patient uses | ||||
preferred | 0..1 | boolean | Language preference indicator | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
Patient.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Patient.gender | required | AdministrativeGenderhttp://hl7.org/fhir/ValueSet/administrative-gender|4.0.1 from the FHIR Standard | ||||
Patient.address.use | required | AddressUsehttp://hl7.org/fhir/ValueSet/address-use|4.0.1 from the FHIR Standard | ||||
Patient.address.type | required | AddressTypehttp://hl7.org/fhir/ValueSet/address-type|4.0.1 from the FHIR Standard | ||||
Patient.address.postalCode.extension:dataAbsentReason.value[x] | required | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reason from the FHIR Standard | ||||
Patient.contact.relationship | extensible | PatientContactRelationshiphttp://hl7.org/fhir/ValueSet/patient-contactrelationship from the FHIR Standard | ||||
Patient.contact.gender | required | AdministrativeGenderhttp://hl7.org/fhir/ValueSet/administrative-gender|4.0.1 from the FHIR Standard | ||||
Patient.communication.language | extensible | LanguageCodesWithLanguageAndOptionallyARegionModifierhttp://hl7.org/fhir/us/core/ValueSet/simple-language | ||||
Patient.link.type | required | LinkTypehttp://hl7.org/fhir/ValueSet/link-type|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Patient | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Patient | If 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-4 | error | Patient | If 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-5 | error | Patient | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Patient | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
uds-plus-pat-1 | error | Patient.deceased[x] | All dateTime data elements should be truncated to a year only for de-identified resources. : $this is dateTime implies $this.toString().length() = 4 | |
uds-plus-patient-1 | error | Patient.address.postalCode | De-identified Zipcodes can contain first 3 digits followed by 00 in the last two digits or have to be masked with 00000. : $this.matches('[0-9]{3}00|00000') |
This structure is derived from Patient
Summary
Mandatory: 6 elements(2 nested mandatory elements)
Must-Support: 15 elements
Prohibited: 15 elements
Extensions
This structure refers to these extensions:
Maturity: 2
Other representations of profile: CSV, Excel, Schematron