This page is part of the US Core (v7.0.0-ballot: STU7 Ballot 1) based on FHIR (HL7® FHIR® Standard) R4. The current version which supersedes this version is 6.1.0. For a full list of available versions, see the Directory of published versions
Official URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-immunization | Version: 7.0.0-ballot | |||
Standards status: Trial-use | Maturity Level: 3 | Computable Name: USCoreImmunizationProfile | ||
Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License |
This profile sets minimum expectations for the Immunization resource to record, search, and fetch immunization history associated with a patient to promote interoperability and adoption through common implementation. It identifies which core elements, extensions, vocabularies, and value sets SHALL be present in the resource and constrains the way the elements are used when using this profile. It provides the floor for standards development for specific use cases.
Example Usage Scenarios:
The following are example usage scenarios for the US Core-Core Immunization profile:
The following data-elements must always be present (Mandatory definition) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Views below provides the formal summary, definitions, and terminology requirements.
Each Immunization Must Have:
Each Immunization Must Support:
Profile Specific Implementation Guidance:
not-done
to represent that an immunization was not given.http://hl7.org/fhir/sid/cvx
for CVX and http://hl7.org/fhir/sid/ndc
for NDC vaccine codes. Note that the vaccineCode
binding link in the formal definition and the CDC links below use the associated OID as the code system identifiers.Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Immunization
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Immunization | C | 0..* | Immunization | Immunization event information us-core-5: SHOULD have a translation to the NDC value set |
status | S | 1..1 | code | completed | entered-in-error | not-done Binding: ImmunizationStatusCodes (required) |
statusReason | S | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (example) |
vaccineCode | SC | 1..1 | CodeableConcept | Vaccine Product Type (bind to CVX) Binding: CVX Vaccines Administered Vaccine Set (extensible) |
patient | S | 1..1 | Reference(US Core Patient Profile) | Who was immunized |
encounter | S | 0..1 | Reference(US Core Encounter Profile) | Encounter the immunization was part of |
occurrence[x] | S | 1..1 | Vaccine administration date | |
occurrenceDateTime | dateTime S | |||
occurrenceString | string | |||
primarySource | S | 0..1 | boolean | Indicates context the data was recorded in |
location | S | 0..1 | Reference(US Core Location Profile) | Where the vaccine was administered |
Documentation for this format |
Path | Conformance | ValueSet |
Immunization.status | required | ImmunizationStatusCodes |
Immunization.statusReason | example | ImmunizationStatusReasonCodes |
Immunization.vaccineCode | extensible | CVXVaccinesAdministeredVaccineSet |
Id | Grade | Path(s) | Details | Requirements |
us-core-5 | best practice | Immunization | SHOULD have a translation to the NDC value set : vaccineCode.coding.where(system='http://hl7.org/fhir/sid/cvx').exists() implies vaccineCode.coding.where(system='http://hl7.org/fhir/sid/ndc').exists() |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Immunization | C | 0..* | Immunization | Immunization event information us-core-5: SHOULD have a translation to the NDC value set |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!SΣ | 1..1 | code | completed | entered-in-error | not-done Binding: ImmunizationStatusCodes (required) |
statusReason | S | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (example) |
vaccineCode | SΣC | 1..1 | CodeableConcept | Vaccine Product Type (bind to CVX) Binding: CVX Vaccines Administered Vaccine Set (extensible) |
patient | SΣ | 1..1 | Reference(US Core Patient Profile) | Who was immunized |
encounter | S | 0..1 | Reference(US Core Encounter Profile) | Encounter the immunization was part of |
occurrence[x] | SΣ | 1..1 | Vaccine administration date | |
occurrenceDateTime | dateTime | |||
primarySource | SΣ | 0..1 | boolean | Indicates context the data was recorded in |
location | S | 0..1 | Reference(US Core Location Profile) | Where the vaccine was administered |
isSubpotent | ?!Σ | 0..1 | boolean | Dose potency |
Documentation for this format |
Path | Conformance | ValueSet |
Immunization.status | required | ImmunizationStatusCodes |
Immunization.statusReason | example | ImmunizationStatusReasonCodes |
Immunization.vaccineCode | extensible | CVXVaccinesAdministeredVaccineSet |
Id | Grade | Path(s) | Details | Requirements |
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() | |
us-core-5 | best practice | Immunization | SHOULD have a translation to the NDC value set : vaccineCode.coding.where(system='http://hl7.org/fhir/sid/cvx').exists() implies vaccineCode.coding.where(system='http://hl7.org/fhir/sid/ndc').exists() |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Immunization | C | 0..* | Immunization | Immunization event information us-core-5: SHOULD have a translation to the NDC value set | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
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.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | 0..* | Identifier | Business identifier | |||||
status | ?!SΣ | 1..1 | code | completed | entered-in-error | not-done Binding: ImmunizationStatusCodes (required) | ||||
statusReason | S | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (example) | ||||
vaccineCode | SΣC | 1..1 | CodeableConcept | Vaccine Product Type (bind to CVX) Binding: CVX Vaccines Administered Vaccine Set (extensible) | ||||
patient | SΣ | 1..1 | Reference(US Core Patient Profile) | Who was immunized | ||||
encounter | S | 0..1 | Reference(US Core Encounter Profile) | Encounter the immunization was part of | ||||
occurrence[x] | SΣ | 1..1 | Vaccine administration date | |||||
occurrenceDateTime | dateTime S | |||||||
occurrenceString | string | |||||||
recorded | 0..1 | dateTime | When the immunization was first captured in the subject's record | |||||
primarySource | SΣ | 0..1 | boolean | Indicates context the data was recorded in | ||||
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. | |||||
location | S | 0..1 | Reference(US Core Location Profile) | Where the vaccine was administered | ||||
manufacturer | 0..1 | Reference(Organization) | Vaccine manufacturer | |||||
lotNumber | 0..1 | string | Vaccine lot number | |||||
expirationDate | 0..1 | date | Vaccine expiration date | |||||
site | 0..1 | CodeableConcept | Body site vaccine was administered Binding: CodesForImmunizationSiteOfAdministration (example): The site at which the vaccine was administered. | |||||
route | 0..1 | CodeableConcept | How vaccine entered body Binding: ImmunizationRouteCodes (example): The route by which the vaccine was administered. | |||||
doseQuantity | 0..1 | SimpleQuantity | Amount of vaccine administered | |||||
performer | Σ | 0..* | BackboneElement | Who performed event | ||||
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 | ||||
function | Σ | 0..1 | CodeableConcept | What type of performance was done Binding: ImmunizationFunctionCodes (extensible): The role a practitioner or organization plays in the immunization event. | ||||
actor | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing | ||||
note | Σ | 0..* | Annotation | Additional immunization notes | ||||
reasonCode | 0..* | CodeableConcept | Why immunization occurred Binding: ImmunizationReasonCodes (example): The reason why a vaccine was administered. | |||||
reasonReference | 0..* | Reference(Condition | Observation | DiagnosticReport) | Why immunization occurred | |||||
isSubpotent | ?!Σ | 0..1 | boolean | Dose potency | ||||
subpotentReason | 0..* | CodeableConcept | Reason for being subpotent Binding: ImmunizationSubpotentReason (example): The reason why a dose is considered to be subpotent. | |||||
education | C | 0..* | BackboneElement | Educational material presented to patient | ||||
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 | ||||
documentType | 0..1 | string | Educational material document identifier | |||||
reference | 0..1 | uri | Educational material reference pointer | |||||
publicationDate | 0..1 | dateTime | Educational material publication date | |||||
presentationDate | 0..1 | dateTime | Educational material presentation date | |||||
programEligibility | 0..* | CodeableConcept | Patient eligibility for a vaccination program Binding: ImmunizationProgramEligibility (example): The patient's eligibility for a vaccation program. | |||||
fundingSource | 0..1 | CodeableConcept | Funding source for the vaccine Binding: ImmunizationFundingSource (example): The source of funding used to purchase the vaccine administered. | |||||
reaction | 0..* | BackboneElement | Details of a reaction that follows immunization | |||||
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 | ||||
date | 0..1 | dateTime | When reaction started | |||||
detail | 0..1 | Reference(Observation) | Additional information on reaction | |||||
reported | 0..1 | boolean | Indicates self-reported reaction | |||||
protocolApplied | 0..* | BackboneElement | Protocol followed by the provider | |||||
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 | ||||
series | 0..1 | string | Name of vaccine series | |||||
authority | 0..1 | Reference(Organization) | Who is responsible for publishing the recommendations | |||||
targetDisease | 0..* | CodeableConcept | Vaccine preventatable disease being targetted Binding: ImmunizationTargetDiseaseCodes (example): The vaccine preventable disease the dose is being administered for. | |||||
doseNumber[x] | 1..1 | Dose number within series | ||||||
doseNumberPositiveInt | positiveInt | |||||||
doseNumberString | string | |||||||
seriesDoses[x] | 0..1 | Recommended number of doses for immunity | ||||||
seriesDosesPositiveInt | positiveInt | |||||||
seriesDosesString | string | |||||||
Documentation for this format |
Path | Conformance | ValueSet | ||||
Immunization.language | preferred | CommonLanguages
| ||||
Immunization.status | required | ImmunizationStatusCodes | ||||
Immunization.statusReason | example | ImmunizationStatusReasonCodes | ||||
Immunization.vaccineCode | extensible | CVXVaccinesAdministeredVaccineSet | ||||
Immunization.reportOrigin | example | ImmunizationOriginCodes | ||||
Immunization.site | example | CodesForImmunizationSiteOfAdministration | ||||
Immunization.route | example | ImmunizationRouteCodes | ||||
Immunization.performer.function | extensible | ImmunizationFunctionCodes | ||||
Immunization.reasonCode | example | ImmunizationReasonCodes | ||||
Immunization.subpotentReason | example | ImmunizationSubpotentReason | ||||
Immunization.programEligibility | example | ImmunizationProgramEligibility | ||||
Immunization.fundingSource | example | ImmunizationFundingSource | ||||
Immunization.protocolApplied.targetDisease | example | ImmunizationTargetDiseaseCodes |
Id | Grade | Path(s) | Details | Requirements |
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() | |
us-core-5 | best practice | Immunization | SHOULD have a translation to the NDC value set : vaccineCode.coding.where(system='http://hl7.org/fhir/sid/cvx').exists() implies vaccineCode.coding.where(system='http://hl7.org/fhir/sid/ndc').exists() |
This structure is derived from Immunization
Summary
Must-Support: 8 elements
Structures
This structure refers to these other structures:
Maturity: 3
Differential View
This structure is derived from Immunization
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Immunization | C | 0..* | Immunization | Immunization event information us-core-5: SHOULD have a translation to the NDC value set |
status | S | 1..1 | code | completed | entered-in-error | not-done Binding: ImmunizationStatusCodes (required) |
statusReason | S | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (example) |
vaccineCode | SC | 1..1 | CodeableConcept | Vaccine Product Type (bind to CVX) Binding: CVX Vaccines Administered Vaccine Set (extensible) |
patient | S | 1..1 | Reference(US Core Patient Profile) | Who was immunized |
encounter | S | 0..1 | Reference(US Core Encounter Profile) | Encounter the immunization was part of |
occurrence[x] | S | 1..1 | Vaccine administration date | |
occurrenceDateTime | dateTime S | |||
occurrenceString | string | |||
primarySource | S | 0..1 | boolean | Indicates context the data was recorded in |
location | S | 0..1 | Reference(US Core Location Profile) | Where the vaccine was administered |
Documentation for this format |
Path | Conformance | ValueSet |
Immunization.status | required | ImmunizationStatusCodes |
Immunization.statusReason | example | ImmunizationStatusReasonCodes |
Immunization.vaccineCode | extensible | CVXVaccinesAdministeredVaccineSet |
Id | Grade | Path(s) | Details | Requirements |
us-core-5 | best practice | Immunization | SHOULD have a translation to the NDC value set : vaccineCode.coding.where(system='http://hl7.org/fhir/sid/cvx').exists() implies vaccineCode.coding.where(system='http://hl7.org/fhir/sid/ndc').exists() |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Immunization | C | 0..* | Immunization | Immunization event information us-core-5: SHOULD have a translation to the NDC value set |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!SΣ | 1..1 | code | completed | entered-in-error | not-done Binding: ImmunizationStatusCodes (required) |
statusReason | S | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (example) |
vaccineCode | SΣC | 1..1 | CodeableConcept | Vaccine Product Type (bind to CVX) Binding: CVX Vaccines Administered Vaccine Set (extensible) |
patient | SΣ | 1..1 | Reference(US Core Patient Profile) | Who was immunized |
encounter | S | 0..1 | Reference(US Core Encounter Profile) | Encounter the immunization was part of |
occurrence[x] | SΣ | 1..1 | Vaccine administration date | |
occurrenceDateTime | dateTime | |||
primarySource | SΣ | 0..1 | boolean | Indicates context the data was recorded in |
location | S | 0..1 | Reference(US Core Location Profile) | Where the vaccine was administered |
isSubpotent | ?!Σ | 0..1 | boolean | Dose potency |
Documentation for this format |
Path | Conformance | ValueSet |
Immunization.status | required | ImmunizationStatusCodes |
Immunization.statusReason | example | ImmunizationStatusReasonCodes |
Immunization.vaccineCode | extensible | CVXVaccinesAdministeredVaccineSet |
Id | Grade | Path(s) | Details | Requirements |
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() | |
us-core-5 | best practice | Immunization | SHOULD have a translation to the NDC value set : vaccineCode.coding.where(system='http://hl7.org/fhir/sid/cvx').exists() implies vaccineCode.coding.where(system='http://hl7.org/fhir/sid/ndc').exists() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Immunization | C | 0..* | Immunization | Immunization event information us-core-5: SHOULD have a translation to the NDC value set | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
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.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | 0..* | Identifier | Business identifier | |||||
status | ?!SΣ | 1..1 | code | completed | entered-in-error | not-done Binding: ImmunizationStatusCodes (required) | ||||
statusReason | S | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (example) | ||||
vaccineCode | SΣC | 1..1 | CodeableConcept | Vaccine Product Type (bind to CVX) Binding: CVX Vaccines Administered Vaccine Set (extensible) | ||||
patient | SΣ | 1..1 | Reference(US Core Patient Profile) | Who was immunized | ||||
encounter | S | 0..1 | Reference(US Core Encounter Profile) | Encounter the immunization was part of | ||||
occurrence[x] | SΣ | 1..1 | Vaccine administration date | |||||
occurrenceDateTime | dateTime S | |||||||
occurrenceString | string | |||||||
recorded | 0..1 | dateTime | When the immunization was first captured in the subject's record | |||||
primarySource | SΣ | 0..1 | boolean | Indicates context the data was recorded in | ||||
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. | |||||
location | S | 0..1 | Reference(US Core Location Profile) | Where the vaccine was administered | ||||
manufacturer | 0..1 | Reference(Organization) | Vaccine manufacturer | |||||
lotNumber | 0..1 | string | Vaccine lot number | |||||
expirationDate | 0..1 | date | Vaccine expiration date | |||||
site | 0..1 | CodeableConcept | Body site vaccine was administered Binding: CodesForImmunizationSiteOfAdministration (example): The site at which the vaccine was administered. | |||||
route | 0..1 | CodeableConcept | How vaccine entered body Binding: ImmunizationRouteCodes (example): The route by which the vaccine was administered. | |||||
doseQuantity | 0..1 | SimpleQuantity | Amount of vaccine administered | |||||
performer | Σ | 0..* | BackboneElement | Who performed event | ||||
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 | ||||
function | Σ | 0..1 | CodeableConcept | What type of performance was done Binding: ImmunizationFunctionCodes (extensible): The role a practitioner or organization plays in the immunization event. | ||||
actor | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing | ||||
note | Σ | 0..* | Annotation | Additional immunization notes | ||||
reasonCode | 0..* | CodeableConcept | Why immunization occurred Binding: ImmunizationReasonCodes (example): The reason why a vaccine was administered. | |||||
reasonReference | 0..* | Reference(Condition | Observation | DiagnosticReport) | Why immunization occurred | |||||
isSubpotent | ?!Σ | 0..1 | boolean | Dose potency | ||||
subpotentReason | 0..* | CodeableConcept | Reason for being subpotent Binding: ImmunizationSubpotentReason (example): The reason why a dose is considered to be subpotent. | |||||
education | C | 0..* | BackboneElement | Educational material presented to patient | ||||
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 | ||||
documentType | 0..1 | string | Educational material document identifier | |||||
reference | 0..1 | uri | Educational material reference pointer | |||||
publicationDate | 0..1 | dateTime | Educational material publication date | |||||
presentationDate | 0..1 | dateTime | Educational material presentation date | |||||
programEligibility | 0..* | CodeableConcept | Patient eligibility for a vaccination program Binding: ImmunizationProgramEligibility (example): The patient's eligibility for a vaccation program. | |||||
fundingSource | 0..1 | CodeableConcept | Funding source for the vaccine Binding: ImmunizationFundingSource (example): The source of funding used to purchase the vaccine administered. | |||||
reaction | 0..* | BackboneElement | Details of a reaction that follows immunization | |||||
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 | ||||
date | 0..1 | dateTime | When reaction started | |||||
detail | 0..1 | Reference(Observation) | Additional information on reaction | |||||
reported | 0..1 | boolean | Indicates self-reported reaction | |||||
protocolApplied | 0..* | BackboneElement | Protocol followed by the provider | |||||
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 | ||||
series | 0..1 | string | Name of vaccine series | |||||
authority | 0..1 | Reference(Organization) | Who is responsible for publishing the recommendations | |||||
targetDisease | 0..* | CodeableConcept | Vaccine preventatable disease being targetted Binding: ImmunizationTargetDiseaseCodes (example): The vaccine preventable disease the dose is being administered for. | |||||
doseNumber[x] | 1..1 | Dose number within series | ||||||
doseNumberPositiveInt | positiveInt | |||||||
doseNumberString | string | |||||||
seriesDoses[x] | 0..1 | Recommended number of doses for immunity | ||||||
seriesDosesPositiveInt | positiveInt | |||||||
seriesDosesString | string | |||||||
Documentation for this format |
Path | Conformance | ValueSet | ||||
Immunization.language | preferred | CommonLanguages
| ||||
Immunization.status | required | ImmunizationStatusCodes | ||||
Immunization.statusReason | example | ImmunizationStatusReasonCodes | ||||
Immunization.vaccineCode | extensible | CVXVaccinesAdministeredVaccineSet | ||||
Immunization.reportOrigin | example | ImmunizationOriginCodes | ||||
Immunization.site | example | CodesForImmunizationSiteOfAdministration | ||||
Immunization.route | example | ImmunizationRouteCodes | ||||
Immunization.performer.function | extensible | ImmunizationFunctionCodes | ||||
Immunization.reasonCode | example | ImmunizationReasonCodes | ||||
Immunization.subpotentReason | example | ImmunizationSubpotentReason | ||||
Immunization.programEligibility | example | ImmunizationProgramEligibility | ||||
Immunization.fundingSource | example | ImmunizationFundingSource | ||||
Immunization.protocolApplied.targetDisease | example | ImmunizationTargetDiseaseCodes |
Id | Grade | Path(s) | Details | Requirements |
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() | |
us-core-5 | best practice | Immunization | SHOULD have a translation to the NDC value set : vaccineCode.coding.where(system='http://hl7.org/fhir/sid/cvx').exists() implies vaccineCode.coding.where(system='http://hl7.org/fhir/sid/ndc').exists() |
This structure is derived from Immunization
Summary
Must-Support: 8 elements
Structures
This structure refers to these other structures:
Maturity: 3
Other representations of profile: CSV, Excel, Schematron
Below is an overview of the required Server RESTful FHIR interactions for this profile - for example, search and read operations - when supporting the US Core interactions to access this profile’s information (Profile Support + Interaction Support). Note that systems that support only US Core Profiles (Profile Only Support) are not required to support these interactions. See the US Core Server CapabilityStatement for a complete list of supported RESTful interactions for this IG.
Servers providing access to immunization data SHALL support these US Core SMART Scopes:
patient/Immunization.rs
.The following search parameters and search parameter combinations SHALL be supported:
SHALL support searching for all immunizations for a patient using the patient
search parameter:
GET [base]/Immunization?patient={Type/}[id]
Example:
Implementation Notes: Fetches a bundle of all Immunization resources for the specified patient (how to search by reference)
The following search parameter combinations SHOULD be supported:
patient
and date
search parameters:
date
comparators: gt,lt,ge,le
date
(e.g.date=[date]&date=[date]]&...
)GET [base]/Immunization?patient={Type/}[id]&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}
Example:
Implementation Notes: Fetches a bundle of all Immunization resources for the specified patient and date (how to search by date and how to search by reference)
SHOULD support searching using the combination of the patient
and status
search parameters:
GET [base]/Immunization?patient={Type/}[id]&status={system|}[code]
Example:
Implementation Notes: Fetches a bundle of all Immunization resources for the specified patient and status (how to search by reference and how to search by date)
1 Although the CVX code system contains some concepts that are procedures, medications, or substances rather than immunizations, the value set defined in VSAC has removed those and retained only the vaccine codes (see the exclusion definition in VSAC for more detail)