HRSA 2024 Uniform Data System (UDS) Patient Level Submission (PLS) (UDS+) FHIR IG
2.0.0 - STU2 Release 1 - Standard for Trial-Use International flag

HRSA 2024 Uniform Data System (UDS) Patient Level Submission (PLS) (UDS+) FHIR IG, published by HRSA BPHC. This guide is not an authorized publication; it is the continuous build for version 2.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/drajer-health/uds-plus/ and changes regularly. See the Directory of published versions

Resource Profile: De-Identified UDS Plus Immunization

Official URL: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-immunization Version: 2.0.0
Standards status: Trial-use Maturity Level: 2 Computable Name: UDSPlusImmunization

The UDS+ profile is based on the Immunization resource and establishes the core elements, extensions, vocabularies and value sets for representing immunizations for UDS+ program.

Introduction

This profile is used to represent de-identified Immunization 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, dates should not have a precision of more than the year. This means month and day cannot be included. This includes Immunization.occurenceDateTime.

In FHIR Resources, text elements and reference.display 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 Immunization resource text element may contain information such as the Immunization date, patient information. 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.

Ids and References

The original Immunization resource id should not be included in the De-identified Immunization instance. Instead a new id should be created and provided as part of the FHIR resource. The Data Submitter should be capable of using the generated id to relink the data to the original Immunization. All resource references to the Immunization submitted as part of the UDS+ report should refer to newly generated id.

Resource references cannot contain text element as it may contain PHI/PII. The text element for following references are not allowed

  • patient

Date Truncation

The Data Submitter has to truncate the following dates to only have a precision of year

  • occurence[x]
  • recorded

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Immunization 0..* Immunization De-Identified UDS Plus Immunization
Immunization.id This element must be supported. This element is included in summaries. 0..1 id The de-identified Immunization identifier created by the health center to send data to UDS+ Data Receiver
Immunization.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Immunization.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Immunization.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code completed | entered-in-error | not-done
Binding: ImmunizationStatusCodes (required): A set of codes indicating the current status of an Immunization.
Immunization.statusReason This element must be supported. 0..1 CodeableConcept Reason not done
Binding: ImmunizationStatusReasonCodes (example): The reason why a vaccine was not administered.
Immunization.vaccineCode This element must be supported. This element is included in summaries. 1..1 CodeableConcept Vaccine product administered
Binding: VaccineAdministeredValueSet (example): The code for vaccine product administered.
Immunization.patient This element must be supported. This element is included in summaries. 1..1 Reference(De-Identified UDS Plus Patient) Who was immunized
Immunization.occurrence[x] This element must be supported. This element is included in summaries. C 1..1 dateTime Vaccine administration date
Constraints: uds-plus-imm-1, uds-plus-imm-1a, uds-plus-imm-1b
Immunization.recorded This element must be supported. C 0..1 dateTime When the immunization was first captured in the subject's record
Constraints: uds-plus-imm-2, uds-plus-imm-2a, uds-plus-imm-2b
Immunization.primarySource This element must be supported. This element is included in summaries. 1..1 boolean Indicates context the data was recorded in
Immunization.expirationDate C 0..1 date Vaccine expiration date
Constraints: uds-plus-imm-3, uds-plus-imm-3a, uds-plus-imm-3b
Immunization.isSubpotent This element is a modifier element. This element is included in summaries. 0..1 boolean Dose potency

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Immunization.status Base required Immunization Status Codes 📍4.0.1 FHIR Std.
Immunization.statusReason Base example Immunization Status Reason Codes 📍4.0.1 FHIR Std.
Immunization.vaccineCode Base example Vaccine Administered Value Set 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Immunization If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Immunization 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 Immunization 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 Immunization If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Immunization 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-imm-1 error Immunization.occurrence[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-imm-1a error Immunization.occurrence[x] All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-1b error Immunization.occurrence[x] All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'
uds-plus-imm-2 error Immunization.recorded 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-imm-2a error Immunization.recorded All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-2b error Immunization.recorded All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'
uds-plus-imm-3 error Immunization.expirationDate All date data elements should be truncated to a year only for de-identified resources. $this is date implies $this.toString().length() = 4
uds-plus-imm-3a error Immunization.expirationDate All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-3b error Immunization.expirationDate All dateTime data elements should have valid year < 2050 $this is DateTime implies $this.toString() <= '2050'

This structure is derived from Immunization

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Immunization 0..* Immunization De-Identified UDS Plus Immunization
Immunization.id This element must be supported. 0..1 id The de-identified Immunization identifier created by the health center to send data to UDS+ Data Receiver
Immunization.text 0..0 Cannot include any text in the resource as part of the de-identified data.
Immunization.contained 0..0 Cannot include any contained resources in the resource as part of the de-identified data.
Immunization.statusReason This element must be supported. 0..1 CodeableConcept Reason not done
Immunization.vaccineCode This element must be supported. 1..1 CodeableConcept Vaccine product administered
Immunization.patient This element must be supported. 1..1 Reference(De-Identified UDS Plus Patient) Who was immunized
Immunization.patient.display 0..0 Text alternative for the resource
Immunization.occurrence[x] This element must be supported. C 1..1 dateTime Vaccine administration date
Constraints: uds-plus-imm-1, uds-plus-imm-1a, uds-plus-imm-1b
Immunization.recorded This element must be supported. C 0..1 dateTime When the immunization was first captured in the subject's record
Constraints: uds-plus-imm-2, uds-plus-imm-2a, uds-plus-imm-2b
Immunization.primarySource This element must be supported. 1..1 boolean Indicates context the data was recorded in
Immunization.expirationDate C 0..1 date Vaccine expiration date
Constraints: uds-plus-imm-3, uds-plus-imm-3a, uds-plus-imm-3b
Immunization.note 0..0 Additional immunization notes
Immunization.reaction
Immunization.reaction.date C 0..1 dateTime When reaction started
Constraints: uds-plus-imm-4, uds-plus-imm-4a, uds-plus-imm-4b

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
uds-plus-imm-1 error Immunization.occurrence[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-imm-1a error Immunization.occurrence[x] All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-1b error Immunization.occurrence[x] All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'
uds-plus-imm-2 error Immunization.recorded 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-imm-2a error Immunization.recorded All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-2b error Immunization.recorded All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'
uds-plus-imm-3 error Immunization.expirationDate All date data elements should be truncated to a year only for de-identified resources. $this is date implies $this.toString().length() = 4
uds-plus-imm-3a error Immunization.expirationDate All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-3b error Immunization.expirationDate All dateTime data elements should have valid year < 2050 $this is DateTime implies $this.toString() <= '2050'
uds-plus-imm-4 error Immunization.reaction.date 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-imm-4a error Immunization.reaction.date All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-4b error Immunization.reaction.date All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'
NameFlagsCard.TypeDescription & Constraints    Filter: doco
Immunization 0..* Immunization De-Identified UDS Plus Immunization
Immunization.id This element must be supported. This element is included in summaries. 0..1 id The de-identified Immunization identifier created by the health center to send data to UDS+ Data Receiver
Immunization.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Immunization.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Immunization.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Immunization.extension 0..* Extension Additional content defined by implementations
Immunization.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Immunization.identifier 0..* Identifier Business identifier
Immunization.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code completed | entered-in-error | not-done
Binding: ImmunizationStatusCodes (required): A set of codes indicating the current status of an Immunization.
Immunization.statusReason This element must be supported. 0..1 CodeableConcept Reason not done
Binding: ImmunizationStatusReasonCodes (example): The reason why a vaccine was not administered.
Immunization.vaccineCode This element must be supported. This element is included in summaries. 1..1 CodeableConcept Vaccine product administered
Binding: VaccineAdministeredValueSet (example): The code for vaccine product administered.
Immunization.patient This element must be supported. This element is included in summaries. 1..1 Reference(De-Identified UDS Plus Patient) Who was immunized
Immunization.patient.id 0..1 string Unique id for inter-element referencing
Immunization.patient.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Immunization.patient.reference This element is included in summaries. C 0..1 string Literal reference, Relative, internal or absolute URL
Immunization.patient.type This element is included in summaries. 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
Immunization.patient.identifier This element is included in summaries. 0..1 Identifier Logical reference, when literal reference is not known
Immunization.encounter 0..1 Reference(Encounter) Encounter immunization was part of
Immunization.occurrence[x] This element must be supported. This element is included in summaries. C 1..1 dateTime Vaccine administration date
Constraints: uds-plus-imm-1, uds-plus-imm-1a, uds-plus-imm-1b
Immunization.recorded This element must be supported. C 0..1 dateTime When the immunization was first captured in the subject's record
Constraints: uds-plus-imm-2, uds-plus-imm-2a, uds-plus-imm-2b
Immunization.primarySource This element must be supported. This element is included in summaries. 1..1 boolean Indicates context the data was recorded in
Immunization.reportOrigin 0..1 CodeableConcept Indicates the source of a secondarily reported record
Binding: ImmunizationOriginCodes (example): The source of the data for a record which is not from a primary source.
Immunization.location 0..1 Reference(Location) Where immunization occurred
Immunization.manufacturer 0..1 Reference(Organization) Vaccine manufacturer
Immunization.lotNumber 0..1 string Vaccine lot number
Immunization.expirationDate C 0..1 date Vaccine expiration date
Constraints: uds-plus-imm-3, uds-plus-imm-3a, uds-plus-imm-3b
Immunization.site 0..1 CodeableConcept Body site vaccine was administered
Binding: CodesForImmunizationSiteOfAdministration (example): The site at which the vaccine was administered.
Immunization.route 0..1 CodeableConcept How vaccine entered body
Binding: ImmunizationRouteCodes (example): The route by which the vaccine was administered.
Immunization.doseQuantity C 0..1 SimpleQuantity(4.0.1) Amount of vaccine administered
Constraints: sqty-1
Immunization.performer This element is included in summaries. 0..* BackboneElement Who performed event
Immunization.performer.id 0..1 string Unique id for inter-element referencing
Immunization.performer.extension 0..* Extension Additional content defined by implementations
Immunization.performer.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Immunization.performer.function This element is included in summaries. 0..1 CodeableConcept What type of performance was done
Binding: ImmunizationFunctionCodes (extensible): The role a practitioner or organization plays in the immunization event.
Immunization.performer.actor This element is included in summaries. 1..1 Reference(Practitioner | PractitionerRole | Organization) Individual or organization who was performing
Immunization.reasonCode 0..* CodeableConcept Why immunization occurred
Binding: ImmunizationReasonCodes (example): The reason why a vaccine was administered.
Immunization.reasonReference 0..* Reference(Condition | Observation | DiagnosticReport) Why immunization occurred
Immunization.isSubpotent This element is a modifier element. This element is included in summaries. 0..1 boolean Dose potency
Immunization.subpotentReason 0..* CodeableConcept Reason for being subpotent
Binding: ImmunizationSubpotentReason (example): The reason why a dose is considered to be subpotent.
Immunization.education C 0..* BackboneElement Educational material presented to patient
Constraints: imm-1
Immunization.education.id 0..1 string Unique id for inter-element referencing
Immunization.education.extension 0..* Extension Additional content defined by implementations
Immunization.education.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Immunization.education.documentType 0..1 string Educational material document identifier
Immunization.education.reference 0..1 uri Educational material reference pointer
Immunization.education.publicationDate 0..1 dateTime Educational material publication date
Immunization.education.presentationDate 0..1 dateTime Educational material presentation date
Immunization.programEligibility 0..* CodeableConcept Patient eligibility for a vaccination program
Binding: ImmunizationProgramEligibility (example): The patient's eligibility for a vaccation program.
Immunization.fundingSource 0..1 CodeableConcept Funding source for the vaccine
Binding: ImmunizationFundingSource (example): The source of funding used to purchase the vaccine administered.
Immunization.reaction 0..* BackboneElement Details of a reaction that follows immunization
Immunization.reaction.id 0..1 string Unique id for inter-element referencing
Immunization.reaction.extension 0..* Extension Additional content defined by implementations
Immunization.reaction.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Immunization.reaction.date C 0..1 dateTime When reaction started
Constraints: uds-plus-imm-4, uds-plus-imm-4a, uds-plus-imm-4b
Immunization.reaction.detail 0..1 Reference(Observation) Additional information on reaction
Immunization.reaction.reported 0..1 boolean Indicates self-reported reaction
Immunization.protocolApplied 0..* BackboneElement Protocol followed by the provider
Immunization.protocolApplied.id 0..1 string Unique id for inter-element referencing
Immunization.protocolApplied.extension 0..* Extension Additional content defined by implementations
Immunization.protocolApplied.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Immunization.protocolApplied.series 0..1 string Name of vaccine series
Immunization.protocolApplied.authority 0..1 Reference(Organization) Who is responsible for publishing the recommendations
Immunization.protocolApplied.targetDisease 0..* CodeableConcept Vaccine preventatable disease being targetted
Binding: ImmunizationTargetDiseaseCodes (example): The vaccine preventable disease the dose is being administered for.
Immunization.protocolApplied.doseNumber[x] 1..1 Dose number within series
Immunization.protocolApplied.doseNumber[x].doseNumberPositiveInt positiveInt
Immunization.protocolApplied.doseNumber[x].doseNumberString string
Immunization.protocolApplied.seriesDoses[x] 0..1 Recommended number of doses for immunity
Immunization.protocolApplied.seriesDoses[x].seriesDosesPositiveInt positiveInt
Immunization.protocolApplied.seriesDoses[x].seriesDosesString string

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Immunization.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Immunization.status Base required Immunization Status Codes 📍4.0.1 FHIR Std.
Immunization.statusReason Base example Immunization Status Reason Codes 📍4.0.1 FHIR Std.
Immunization.vaccineCode Base example Vaccine Administered Value Set 📍4.0.1 FHIR Std.
Immunization.patient.​type Base extensible ResourceType 📍4.0.1 FHIR Std.
Immunization.reportOrigin Base example Immunization Origin Codes 📍4.0.1 FHIR Std.
Immunization.site Base example Codes for Immunization Site of Administration 📍4.0.1 FHIR Std.
Immunization.route Base example Immunization Route Codes 📍4.0.1 FHIR Std.
Immunization.performer.​function Base extensible Immunization Function Codes 📍4.0.1 FHIR Std.
Immunization.reasonCode Base example Immunization Reason Codes 📍4.0.1 FHIR Std.
Immunization.subpotentReason Base example Immunization Subpotent Reason 📍4.0.1 FHIR Std.
Immunization.programEligibility Base example Immunization Program Eligibility 📍4.0.1 FHIR Std.
Immunization.fundingSource Base example Immunization Funding Source 📍4.0.1 FHIR Std.
Immunization.protocolApplied.​targetDisease Base example Immunization Target Disease Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Immunization If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Immunization 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 Immunization 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 Immunization If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Immunization 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()
imm-1 error Immunization.education One of documentType or reference SHALL be present documentType.exists() or reference.exists()
sqty-1 error Immunization.doseQuantity The comparator is not used on a SimpleQuantity comparator.empty()
uds-plus-imm-1 error Immunization.occurrence[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-imm-1a error Immunization.occurrence[x] All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-1b error Immunization.occurrence[x] All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'
uds-plus-imm-2 error Immunization.recorded 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-imm-2a error Immunization.recorded All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-2b error Immunization.recorded All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'
uds-plus-imm-3 error Immunization.expirationDate All date data elements should be truncated to a year only for de-identified resources. $this is date implies $this.toString().length() = 4
uds-plus-imm-3a error Immunization.expirationDate All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-3b error Immunization.expirationDate All dateTime data elements should have valid year < 2050 $this is DateTime implies $this.toString() <= '2050'
uds-plus-imm-4 error Immunization.reaction.date 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-imm-4a error Immunization.reaction.date All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-4b error Immunization.reaction.date All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'

This structure is derived from Immunization

Summary

Mandatory: 5 elements
Must-Support: 8 elements
Prohibited: 4 elements

Structures

This structure refers to these other structures:

Maturity: 2

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Immunization 0..* Immunization De-Identified UDS Plus Immunization
Immunization.id This element must be supported. This element is included in summaries. 0..1 id The de-identified Immunization identifier created by the health center to send data to UDS+ Data Receiver
Immunization.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Immunization.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Immunization.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code completed | entered-in-error | not-done
Binding: ImmunizationStatusCodes (required): A set of codes indicating the current status of an Immunization.
Immunization.statusReason This element must be supported. 0..1 CodeableConcept Reason not done
Binding: ImmunizationStatusReasonCodes (example): The reason why a vaccine was not administered.
Immunization.vaccineCode This element must be supported. This element is included in summaries. 1..1 CodeableConcept Vaccine product administered
Binding: VaccineAdministeredValueSet (example): The code for vaccine product administered.
Immunization.patient This element must be supported. This element is included in summaries. 1..1 Reference(De-Identified UDS Plus Patient) Who was immunized
Immunization.occurrence[x] This element must be supported. This element is included in summaries. C 1..1 dateTime Vaccine administration date
Constraints: uds-plus-imm-1, uds-plus-imm-1a, uds-plus-imm-1b
Immunization.recorded This element must be supported. C 0..1 dateTime When the immunization was first captured in the subject's record
Constraints: uds-plus-imm-2, uds-plus-imm-2a, uds-plus-imm-2b
Immunization.primarySource This element must be supported. This element is included in summaries. 1..1 boolean Indicates context the data was recorded in
Immunization.expirationDate C 0..1 date Vaccine expiration date
Constraints: uds-plus-imm-3, uds-plus-imm-3a, uds-plus-imm-3b
Immunization.isSubpotent This element is a modifier element. This element is included in summaries. 0..1 boolean Dose potency

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Immunization.status Base required Immunization Status Codes 📍4.0.1 FHIR Std.
Immunization.statusReason Base example Immunization Status Reason Codes 📍4.0.1 FHIR Std.
Immunization.vaccineCode Base example Vaccine Administered Value Set 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Immunization If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Immunization 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 Immunization 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 Immunization If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Immunization 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-imm-1 error Immunization.occurrence[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-imm-1a error Immunization.occurrence[x] All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-1b error Immunization.occurrence[x] All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'
uds-plus-imm-2 error Immunization.recorded 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-imm-2a error Immunization.recorded All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-2b error Immunization.recorded All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'
uds-plus-imm-3 error Immunization.expirationDate All date data elements should be truncated to a year only for de-identified resources. $this is date implies $this.toString().length() = 4
uds-plus-imm-3a error Immunization.expirationDate All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-3b error Immunization.expirationDate All dateTime data elements should have valid year < 2050 $this is DateTime implies $this.toString() <= '2050'

Differential View

This structure is derived from Immunization

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Immunization 0..* Immunization De-Identified UDS Plus Immunization
Immunization.id This element must be supported. 0..1 id The de-identified Immunization identifier created by the health center to send data to UDS+ Data Receiver
Immunization.text 0..0 Cannot include any text in the resource as part of the de-identified data.
Immunization.contained 0..0 Cannot include any contained resources in the resource as part of the de-identified data.
Immunization.status This element must be supported. 1..1 code completed | entered-in-error | not-done
Immunization.statusReason This element must be supported. 0..1 CodeableConcept Reason not done
Immunization.vaccineCode This element must be supported. 1..1 CodeableConcept Vaccine product administered
Immunization.patient This element must be supported. 1..1 Reference(De-Identified UDS Plus Patient) Who was immunized
Immunization.patient.display 0..0 Text alternative for the resource
Immunization.occurrence[x] This element must be supported. C 1..1 dateTime Vaccine administration date
Constraints: uds-plus-imm-1, uds-plus-imm-1a, uds-plus-imm-1b
Immunization.recorded This element must be supported. C 0..1 dateTime When the immunization was first captured in the subject's record
Constraints: uds-plus-imm-2, uds-plus-imm-2a, uds-plus-imm-2b
Immunization.primarySource This element must be supported. 1..1 boolean Indicates context the data was recorded in
Immunization.expirationDate C 0..1 date Vaccine expiration date
Constraints: uds-plus-imm-3, uds-plus-imm-3a, uds-plus-imm-3b
Immunization.note 0..0 Additional immunization notes
Immunization.reaction
Immunization.reaction.date C 0..1 dateTime When reaction started
Constraints: uds-plus-imm-4, uds-plus-imm-4a, uds-plus-imm-4b

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
uds-plus-imm-1 error Immunization.occurrence[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-imm-1a error Immunization.occurrence[x] All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-1b error Immunization.occurrence[x] All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'
uds-plus-imm-2 error Immunization.recorded 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-imm-2a error Immunization.recorded All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-2b error Immunization.recorded All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'
uds-plus-imm-3 error Immunization.expirationDate All date data elements should be truncated to a year only for de-identified resources. $this is date implies $this.toString().length() = 4
uds-plus-imm-3a error Immunization.expirationDate All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-3b error Immunization.expirationDate All dateTime data elements should have valid year < 2050 $this is DateTime implies $this.toString() <= '2050'
uds-plus-imm-4 error Immunization.reaction.date 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-imm-4a error Immunization.reaction.date All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-4b error Immunization.reaction.date All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Immunization 0..* Immunization De-Identified UDS Plus Immunization
Immunization.id This element must be supported. This element is included in summaries. 0..1 id The de-identified Immunization identifier created by the health center to send data to UDS+ Data Receiver
Immunization.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Immunization.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Immunization.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Immunization.extension 0..* Extension Additional content defined by implementations
Immunization.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Immunization.identifier 0..* Identifier Business identifier
Immunization.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code completed | entered-in-error | not-done
Binding: ImmunizationStatusCodes (required): A set of codes indicating the current status of an Immunization.
Immunization.statusReason This element must be supported. 0..1 CodeableConcept Reason not done
Binding: ImmunizationStatusReasonCodes (example): The reason why a vaccine was not administered.
Immunization.vaccineCode This element must be supported. This element is included in summaries. 1..1 CodeableConcept Vaccine product administered
Binding: VaccineAdministeredValueSet (example): The code for vaccine product administered.
Immunization.patient This element must be supported. This element is included in summaries. 1..1 Reference(De-Identified UDS Plus Patient) Who was immunized
Immunization.patient.id 0..1 string Unique id for inter-element referencing
Immunization.patient.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Immunization.patient.reference This element is included in summaries. C 0..1 string Literal reference, Relative, internal or absolute URL
Immunization.patient.type This element is included in summaries. 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
Immunization.patient.identifier This element is included in summaries. 0..1 Identifier Logical reference, when literal reference is not known
Immunization.encounter 0..1 Reference(Encounter) Encounter immunization was part of
Immunization.occurrence[x] This element must be supported. This element is included in summaries. C 1..1 dateTime Vaccine administration date
Constraints: uds-plus-imm-1, uds-plus-imm-1a, uds-plus-imm-1b
Immunization.recorded This element must be supported. C 0..1 dateTime When the immunization was first captured in the subject's record
Constraints: uds-plus-imm-2, uds-plus-imm-2a, uds-plus-imm-2b
Immunization.primarySource This element must be supported. This element is included in summaries. 1..1 boolean Indicates context the data was recorded in
Immunization.reportOrigin 0..1 CodeableConcept Indicates the source of a secondarily reported record
Binding: ImmunizationOriginCodes (example): The source of the data for a record which is not from a primary source.
Immunization.location 0..1 Reference(Location) Where immunization occurred
Immunization.manufacturer 0..1 Reference(Organization) Vaccine manufacturer
Immunization.lotNumber 0..1 string Vaccine lot number
Immunization.expirationDate C 0..1 date Vaccine expiration date
Constraints: uds-plus-imm-3, uds-plus-imm-3a, uds-plus-imm-3b
Immunization.site 0..1 CodeableConcept Body site vaccine was administered
Binding: CodesForImmunizationSiteOfAdministration (example): The site at which the vaccine was administered.
Immunization.route 0..1 CodeableConcept How vaccine entered body
Binding: ImmunizationRouteCodes (example): The route by which the vaccine was administered.
Immunization.doseQuantity C 0..1 SimpleQuantity(4.0.1) Amount of vaccine administered
Constraints: sqty-1
Immunization.performer This element is included in summaries. 0..* BackboneElement Who performed event
Immunization.performer.id 0..1 string Unique id for inter-element referencing
Immunization.performer.extension 0..* Extension Additional content defined by implementations
Immunization.performer.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Immunization.performer.function This element is included in summaries. 0..1 CodeableConcept What type of performance was done
Binding: ImmunizationFunctionCodes (extensible): The role a practitioner or organization plays in the immunization event.
Immunization.performer.actor This element is included in summaries. 1..1 Reference(Practitioner | PractitionerRole | Organization) Individual or organization who was performing
Immunization.reasonCode 0..* CodeableConcept Why immunization occurred
Binding: ImmunizationReasonCodes (example): The reason why a vaccine was administered.
Immunization.reasonReference 0..* Reference(Condition | Observation | DiagnosticReport) Why immunization occurred
Immunization.isSubpotent This element is a modifier element. This element is included in summaries. 0..1 boolean Dose potency
Immunization.subpotentReason 0..* CodeableConcept Reason for being subpotent
Binding: ImmunizationSubpotentReason (example): The reason why a dose is considered to be subpotent.
Immunization.education C 0..* BackboneElement Educational material presented to patient
Constraints: imm-1
Immunization.education.id 0..1 string Unique id for inter-element referencing
Immunization.education.extension 0..* Extension Additional content defined by implementations
Immunization.education.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Immunization.education.documentType 0..1 string Educational material document identifier
Immunization.education.reference 0..1 uri Educational material reference pointer
Immunization.education.publicationDate 0..1 dateTime Educational material publication date
Immunization.education.presentationDate 0..1 dateTime Educational material presentation date
Immunization.programEligibility 0..* CodeableConcept Patient eligibility for a vaccination program
Binding: ImmunizationProgramEligibility (example): The patient's eligibility for a vaccation program.
Immunization.fundingSource 0..1 CodeableConcept Funding source for the vaccine
Binding: ImmunizationFundingSource (example): The source of funding used to purchase the vaccine administered.
Immunization.reaction 0..* BackboneElement Details of a reaction that follows immunization
Immunization.reaction.id 0..1 string Unique id for inter-element referencing
Immunization.reaction.extension 0..* Extension Additional content defined by implementations
Immunization.reaction.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Immunization.reaction.date C 0..1 dateTime When reaction started
Constraints: uds-plus-imm-4, uds-plus-imm-4a, uds-plus-imm-4b
Immunization.reaction.detail 0..1 Reference(Observation) Additional information on reaction
Immunization.reaction.reported 0..1 boolean Indicates self-reported reaction
Immunization.protocolApplied 0..* BackboneElement Protocol followed by the provider
Immunization.protocolApplied.id 0..1 string Unique id for inter-element referencing
Immunization.protocolApplied.extension 0..* Extension Additional content defined by implementations
Immunization.protocolApplied.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Immunization.protocolApplied.series 0..1 string Name of vaccine series
Immunization.protocolApplied.authority 0..1 Reference(Organization) Who is responsible for publishing the recommendations
Immunization.protocolApplied.targetDisease 0..* CodeableConcept Vaccine preventatable disease being targetted
Binding: ImmunizationTargetDiseaseCodes (example): The vaccine preventable disease the dose is being administered for.
Immunization.protocolApplied.doseNumber[x] 1..1 Dose number within series
Immunization.protocolApplied.doseNumber[x].doseNumberPositiveInt positiveInt
Immunization.protocolApplied.doseNumber[x].doseNumberString string
Immunization.protocolApplied.seriesDoses[x] 0..1 Recommended number of doses for immunity
Immunization.protocolApplied.seriesDoses[x].seriesDosesPositiveInt positiveInt
Immunization.protocolApplied.seriesDoses[x].seriesDosesString string

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Immunization.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Immunization.status Base required Immunization Status Codes 📍4.0.1 FHIR Std.
Immunization.statusReason Base example Immunization Status Reason Codes 📍4.0.1 FHIR Std.
Immunization.vaccineCode Base example Vaccine Administered Value Set 📍4.0.1 FHIR Std.
Immunization.patient.​type Base extensible ResourceType 📍4.0.1 FHIR Std.
Immunization.reportOrigin Base example Immunization Origin Codes 📍4.0.1 FHIR Std.
Immunization.site Base example Codes for Immunization Site of Administration 📍4.0.1 FHIR Std.
Immunization.route Base example Immunization Route Codes 📍4.0.1 FHIR Std.
Immunization.performer.​function Base extensible Immunization Function Codes 📍4.0.1 FHIR Std.
Immunization.reasonCode Base example Immunization Reason Codes 📍4.0.1 FHIR Std.
Immunization.subpotentReason Base example Immunization Subpotent Reason 📍4.0.1 FHIR Std.
Immunization.programEligibility Base example Immunization Program Eligibility 📍4.0.1 FHIR Std.
Immunization.fundingSource Base example Immunization Funding Source 📍4.0.1 FHIR Std.
Immunization.protocolApplied.​targetDisease Base example Immunization Target Disease Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Immunization If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Immunization 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 Immunization 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 Immunization If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Immunization 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()
imm-1 error Immunization.education One of documentType or reference SHALL be present documentType.exists() or reference.exists()
sqty-1 error Immunization.doseQuantity The comparator is not used on a SimpleQuantity comparator.empty()
uds-plus-imm-1 error Immunization.occurrence[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-imm-1a error Immunization.occurrence[x] All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-1b error Immunization.occurrence[x] All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'
uds-plus-imm-2 error Immunization.recorded 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-imm-2a error Immunization.recorded All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-2b error Immunization.recorded All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'
uds-plus-imm-3 error Immunization.expirationDate All date data elements should be truncated to a year only for de-identified resources. $this is date implies $this.toString().length() = 4
uds-plus-imm-3a error Immunization.expirationDate All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-3b error Immunization.expirationDate All dateTime data elements should have valid year < 2050 $this is DateTime implies $this.toString() <= '2050'
uds-plus-imm-4 error Immunization.reaction.date 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-imm-4a error Immunization.reaction.date All dateTime data elements should have valid year > 1900 $this is DateTime implies $this.toString() >= '1900'
uds-plus-imm-4b error Immunization.reaction.date All dateTime data elements should have valid year < 2030 $this is DateTime implies $this.toString() <= '2030'

This structure is derived from Immunization

Summary

Mandatory: 5 elements
Must-Support: 8 elements
Prohibited: 4 elements

Structures

This structure refers to these other structures:

Maturity: 2

 

Other representations of profile: CSV, Excel, Schematron