This page is part of the FHIR Specification (v3.2.0: R4 Ballot 1). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2
Public Health and Emergency Response Work Group | Maturity Level: 3 | Trial Use | Compartments: Patient, Practitioner |
Describes the event of a patient being administered a vaccine or a record of an immunization as reported by a patient, a clinician or another party.
The Immunization resource is intended to cover the recording of current and historical administration of vaccines to patients across all healthcare disciplines in all care settings and all regions. This includes immunization of both humans and animals, but does not include the administration of non-vaccine agents, even those that may have or claim to have immunological effects.
Additionally, the Immunization resource is expected to cover key concepts related to the creation, revision and querying of a patient's immunization history. This resource - through consultation with the Public Health work group - is believed to meet key use cases and information requirements as defined in the existing HL7 v2 immunization implementation guide, HL7 v3 POIZ domain and Immunization Domain Analysis Model.
This resource references the following resources:
Administration of vaccines is intended to be handled using the Immunization resource. MedicationAdministration is intended for tracking the administration of non-vaccine medications. Some systems treat immunizations in the same way as any other medication administration. Such systems SHOULD use an immunization resource to represent these. If systems need to use a MedicationAdministration resource to capture vaccinations for workflow or other reasons, they SHOULD also expose an equivalent Immunization instance.
This resource is referenced by AdverseEvent, ChargeItem, ImmunizationEvaluation, ImmunizationRecommendation and Observation
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Immunization | TU | DomainResource | Immunization event information Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | 0..* | Identifier | Business identifier | |
status | ?!Σ | 1..1 | code | completed | entered-in-error | not-done Immunization Status Codes (Required) |
vaccineCode | Σ | 1..1 | CodeableConcept | Vaccine product administered Vaccine Administered Value Set (Example) |
patient | Σ | 1..1 | Reference(Patient) | Who was immunized |
encounter | 0..1 | Reference(Encounter) | Encounter immunization was part of | |
date | 0..1 | dateTime | Vaccine administration date | |
primarySource | Σ | 1..1 | boolean | Indicates context the data was recorded in |
reportOrigin | 0..1 | CodeableConcept | Indicates the source of a secondarily reported record Immunization Origin Codes (Example) | |
location | 0..1 | Reference(Location) | Where immunization occurred | |
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 Codes for Immunization Site of Administration (Example) | |
route | 0..1 | CodeableConcept | How vaccine entered body Immunization Route Codes (Example) | |
doseQuantity | 0..1 | SimpleQuantity | Amount of vaccine administered | |
practitioner | Σ | 0..* | BackboneElement | Who performed event |
role | Σ | 0..1 | CodeableConcept | What type of performance was done Immunization Role Codes (Extensible) |
actor | Σ | 1..1 | Reference(Practitioner) | Individual who was performing |
note | Σ | 0..* | Annotation | Additional immunization notes |
reason | 0..* | CodeableConcept | Why immunization did or did not occur Immunization Reason Codes (Example) | |
education | I | 0..* | BackboneElement | Educational material presented to patient + One of documentType or reference SHALL be present |
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 Immunization Program Eligibility (Example) | |
fundingSource | 0..1 | CodeableConcept | Funding source for the vaccine Immunization Funding Source (Example) | |
Documentation for this format |
UML Diagram (Legend)
XML Template
<Immunization xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Business identifier --></identifier> <status value="[code]"/><!-- 1..1 completed | entered-in-error | not-done --> <vaccineCode><!-- 1..1 CodeableConcept Vaccine product administered --></vaccineCode> <patient><!-- 1..1 Reference(Patient) Who was immunized --></patient> <encounter><!-- 0..1 Reference(Encounter) Encounter immunization was part of --></encounter> <date value="[dateTime]"/><!-- 0..1 Vaccine administration date --> <primarySource value="[boolean]"/><!-- 1..1 Indicates context the data was recorded in --> <reportOrigin><!-- 0..1 CodeableConcept Indicates the source of a secondarily reported record --></reportOrigin> <location><!-- 0..1 Reference(Location) Where immunization occurred --></location> <manufacturer><!-- 0..1 Reference(Organization) Vaccine manufacturer --></manufacturer> <lotNumber value="[string]"/><!-- 0..1 Vaccine lot number --> <expirationDate value="[date]"/><!-- 0..1 Vaccine expiration date --> <site><!-- 0..1 CodeableConcept Body site vaccine was administered --></site> <route><!-- 0..1 CodeableConcept How vaccine entered body --></route> <doseQuantity><!-- 0..1 Quantity(SimpleQuantity) Amount of vaccine administered --></doseQuantity> <practitioner> <!-- 0..* Who performed event --> <role><!-- 0..1 CodeableConcept What type of performance was done --></role> <actor><!-- 1..1 Reference(Practitioner) Individual who was performing --></actor> </practitioner> <note><!-- 0..* Annotation Additional immunization notes --></note> <reason><!-- 0..* CodeableConcept Why immunization did or did not occur --></reason> <education> <!-- 0..* Educational material presented to patient --> <documentType value="[string]"/><!-- 0..1 Educational material document identifier --> <reference value="[uri]"/><!-- 0..1 Educational material reference pointer --> <publicationDate value="[dateTime]"/><!-- 0..1 Educational material publication date --> <presentationDate value="[dateTime]"/><!-- 0..1 Educational material presentation date --> </education> <programEligibility><!-- 0..* CodeableConcept Patient eligibility for a vaccination program --></programEligibility> <fundingSource><!-- 0..1 CodeableConcept Funding source for the vaccine --></fundingSource> </Immunization>
JSON Template
{ "resourceType" : "Immunization", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Business identifier "status" : "<code>", // R! completed | entered-in-error | not-done "vaccineCode" : { CodeableConcept }, // R! Vaccine product administered "patient" : { Reference(Patient) }, // R! Who was immunized "encounter" : { Reference(Encounter) }, // Encounter immunization was part of "date" : "<dateTime>", // Vaccine administration date "primarySource" : <boolean>, // R! Indicates context the data was recorded in "reportOrigin" : { CodeableConcept }, // Indicates the source of a secondarily reported record "location" : { Reference(Location) }, // Where immunization occurred "manufacturer" : { Reference(Organization) }, // Vaccine manufacturer "lotNumber" : "<string>", // Vaccine lot number "expirationDate" : "<date>", // Vaccine expiration date "site" : { CodeableConcept }, // Body site vaccine was administered "route" : { CodeableConcept }, // How vaccine entered body "doseQuantity" : { Quantity(SimpleQuantity) }, // Amount of vaccine administered "practitioner" : [{ // Who performed event "role" : { CodeableConcept }, // What type of performance was done "actor" : { Reference(Practitioner) } // R! Individual who was performing }], "note" : [{ Annotation }], // Additional immunization notes "reason" : [{ CodeableConcept }], // Why immunization did or did not occur "education" : [{ // Educational material presented to patient "documentType" : "<string>", // Educational material document identifier "reference" : "<uri>", // Educational material reference pointer "publicationDate" : "<dateTime>", // Educational material publication date "presentationDate" : "<dateTime>" // Educational material presentation date }], "programEligibility" : [{ CodeableConcept }], // Patient eligibility for a vaccination program "fundingSource" : { CodeableConcept } // Funding source for the vaccine }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:Immunization; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:Immunization.identifier [ Identifier ], ... ; # 0..* Business identifier fhir:Immunization.status [ code ]; # 1..1 completed | entered-in-error | not-done fhir:Immunization.vaccineCode [ CodeableConcept ]; # 1..1 Vaccine product administered fhir:Immunization.patient [ Reference(Patient) ]; # 1..1 Who was immunized fhir:Immunization.encounter [ Reference(Encounter) ]; # 0..1 Encounter immunization was part of fhir:Immunization.date [ dateTime ]; # 0..1 Vaccine administration date fhir:Immunization.primarySource [ boolean ]; # 1..1 Indicates context the data was recorded in fhir:Immunization.reportOrigin [ CodeableConcept ]; # 0..1 Indicates the source of a secondarily reported record fhir:Immunization.location [ Reference(Location) ]; # 0..1 Where immunization occurred fhir:Immunization.manufacturer [ Reference(Organization) ]; # 0..1 Vaccine manufacturer fhir:Immunization.lotNumber [ string ]; # 0..1 Vaccine lot number fhir:Immunization.expirationDate [ date ]; # 0..1 Vaccine expiration date fhir:Immunization.site [ CodeableConcept ]; # 0..1 Body site vaccine was administered fhir:Immunization.route [ CodeableConcept ]; # 0..1 How vaccine entered body fhir:Immunization.doseQuantity [ Quantity(SimpleQuantity) ]; # 0..1 Amount of vaccine administered fhir:Immunization.practitioner [ # 0..* Who performed event fhir:Immunization.practitioner.role [ CodeableConcept ]; # 0..1 What type of performance was done fhir:Immunization.practitioner.actor [ Reference(Practitioner) ]; # 1..1 Individual who was performing ], ...; fhir:Immunization.note [ Annotation ], ... ; # 0..* Additional immunization notes fhir:Immunization.reason [ CodeableConcept ], ... ; # 0..* Why immunization did or did not occur fhir:Immunization.education [ # 0..* Educational material presented to patient fhir:Immunization.education.documentType [ string ]; # 0..1 Educational material document identifier fhir:Immunization.education.reference [ uri ]; # 0..1 Educational material reference pointer fhir:Immunization.education.publicationDate [ dateTime ]; # 0..1 Educational material publication date fhir:Immunization.education.presentationDate [ dateTime ]; # 0..1 Educational material presentation date ], ...; fhir:Immunization.programEligibility [ CodeableConcept ], ... ; # 0..* Patient eligibility for a vaccination program fhir:Immunization.fundingSource [ CodeableConcept ]; # 0..1 Funding source for the vaccine ]
Changes since DSTU2
Immunization | |
Immunization.status |
|
Immunization.primarySource |
|
Immunization.reportOrigin |
|
Immunization.practitioner |
|
Immunization.practitioner.role |
|
Immunization.practitioner.actor |
|
Immunization.reason |
|
Immunization.education |
|
Immunization.education.documentType |
|
Immunization.education.reference |
|
Immunization.education.publicationDate |
|
Immunization.education.presentationDate |
|
Immunization.programEligibility |
|
Immunization.fundingSource |
|
Immunization.wasNotGiven |
|
Immunization.reported |
|
Immunization.performer |
|
Immunization.requester |
|
Immunization.explanation |
|
Immunization.reaction |
|
Immunization.vaccinationProtocol |
|
See the Full Difference for further information
This analysis is available as XML or JSON.
See R2 <--> R3 Conversion Maps (status = 2 tests that all execute ok. 2 fail round-trip testing and 2 r3 resources are invalid (2 errors).).
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Immunization | TU | DomainResource | Immunization event information Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | 0..* | Identifier | Business identifier | |
status | ?!Σ | 1..1 | code | completed | entered-in-error | not-done Immunization Status Codes (Required) |
vaccineCode | Σ | 1..1 | CodeableConcept | Vaccine product administered Vaccine Administered Value Set (Example) |
patient | Σ | 1..1 | Reference(Patient) | Who was immunized |
encounter | 0..1 | Reference(Encounter) | Encounter immunization was part of | |
date | 0..1 | dateTime | Vaccine administration date | |
primarySource | Σ | 1..1 | boolean | Indicates context the data was recorded in |
reportOrigin | 0..1 | CodeableConcept | Indicates the source of a secondarily reported record Immunization Origin Codes (Example) | |
location | 0..1 | Reference(Location) | Where immunization occurred | |
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 Codes for Immunization Site of Administration (Example) | |
route | 0..1 | CodeableConcept | How vaccine entered body Immunization Route Codes (Example) | |
doseQuantity | 0..1 | SimpleQuantity | Amount of vaccine administered | |
practitioner | Σ | 0..* | BackboneElement | Who performed event |
role | Σ | 0..1 | CodeableConcept | What type of performance was done Immunization Role Codes (Extensible) |
actor | Σ | 1..1 | Reference(Practitioner) | Individual who was performing |
note | Σ | 0..* | Annotation | Additional immunization notes |
reason | 0..* | CodeableConcept | Why immunization did or did not occur Immunization Reason Codes (Example) | |
education | I | 0..* | BackboneElement | Educational material presented to patient + One of documentType or reference SHALL be present |
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 Immunization Program Eligibility (Example) | |
fundingSource | 0..1 | CodeableConcept | Funding source for the vaccine Immunization Funding Source (Example) | |
Documentation for this format |
XML Template
<Immunization xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Business identifier --></identifier> <status value="[code]"/><!-- 1..1 completed | entered-in-error | not-done --> <vaccineCode><!-- 1..1 CodeableConcept Vaccine product administered --></vaccineCode> <patient><!-- 1..1 Reference(Patient) Who was immunized --></patient> <encounter><!-- 0..1 Reference(Encounter) Encounter immunization was part of --></encounter> <date value="[dateTime]"/><!-- 0..1 Vaccine administration date --> <primarySource value="[boolean]"/><!-- 1..1 Indicates context the data was recorded in --> <reportOrigin><!-- 0..1 CodeableConcept Indicates the source of a secondarily reported record --></reportOrigin> <location><!-- 0..1 Reference(Location) Where immunization occurred --></location> <manufacturer><!-- 0..1 Reference(Organization) Vaccine manufacturer --></manufacturer> <lotNumber value="[string]"/><!-- 0..1 Vaccine lot number --> <expirationDate value="[date]"/><!-- 0..1 Vaccine expiration date --> <site><!-- 0..1 CodeableConcept Body site vaccine was administered --></site> <route><!-- 0..1 CodeableConcept How vaccine entered body --></route> <doseQuantity><!-- 0..1 Quantity(SimpleQuantity) Amount of vaccine administered --></doseQuantity> <practitioner> <!-- 0..* Who performed event --> <role><!-- 0..1 CodeableConcept What type of performance was done --></role> <actor><!-- 1..1 Reference(Practitioner) Individual who was performing --></actor> </practitioner> <note><!-- 0..* Annotation Additional immunization notes --></note> <reason><!-- 0..* CodeableConcept Why immunization did or did not occur --></reason> <education> <!-- 0..* Educational material presented to patient --> <documentType value="[string]"/><!-- 0..1 Educational material document identifier --> <reference value="[uri]"/><!-- 0..1 Educational material reference pointer --> <publicationDate value="[dateTime]"/><!-- 0..1 Educational material publication date --> <presentationDate value="[dateTime]"/><!-- 0..1 Educational material presentation date --> </education> <programEligibility><!-- 0..* CodeableConcept Patient eligibility for a vaccination program --></programEligibility> <fundingSource><!-- 0..1 CodeableConcept Funding source for the vaccine --></fundingSource> </Immunization>
JSON Template
{ "resourceType" : "Immunization", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Business identifier "status" : "<code>", // R! completed | entered-in-error | not-done "vaccineCode" : { CodeableConcept }, // R! Vaccine product administered "patient" : { Reference(Patient) }, // R! Who was immunized "encounter" : { Reference(Encounter) }, // Encounter immunization was part of "date" : "<dateTime>", // Vaccine administration date "primarySource" : <boolean>, // R! Indicates context the data was recorded in "reportOrigin" : { CodeableConcept }, // Indicates the source of a secondarily reported record "location" : { Reference(Location) }, // Where immunization occurred "manufacturer" : { Reference(Organization) }, // Vaccine manufacturer "lotNumber" : "<string>", // Vaccine lot number "expirationDate" : "<date>", // Vaccine expiration date "site" : { CodeableConcept }, // Body site vaccine was administered "route" : { CodeableConcept }, // How vaccine entered body "doseQuantity" : { Quantity(SimpleQuantity) }, // Amount of vaccine administered "practitioner" : [{ // Who performed event "role" : { CodeableConcept }, // What type of performance was done "actor" : { Reference(Practitioner) } // R! Individual who was performing }], "note" : [{ Annotation }], // Additional immunization notes "reason" : [{ CodeableConcept }], // Why immunization did or did not occur "education" : [{ // Educational material presented to patient "documentType" : "<string>", // Educational material document identifier "reference" : "<uri>", // Educational material reference pointer "publicationDate" : "<dateTime>", // Educational material publication date "presentationDate" : "<dateTime>" // Educational material presentation date }], "programEligibility" : [{ CodeableConcept }], // Patient eligibility for a vaccination program "fundingSource" : { CodeableConcept } // Funding source for the vaccine }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:Immunization; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:Immunization.identifier [ Identifier ], ... ; # 0..* Business identifier fhir:Immunization.status [ code ]; # 1..1 completed | entered-in-error | not-done fhir:Immunization.vaccineCode [ CodeableConcept ]; # 1..1 Vaccine product administered fhir:Immunization.patient [ Reference(Patient) ]; # 1..1 Who was immunized fhir:Immunization.encounter [ Reference(Encounter) ]; # 0..1 Encounter immunization was part of fhir:Immunization.date [ dateTime ]; # 0..1 Vaccine administration date fhir:Immunization.primarySource [ boolean ]; # 1..1 Indicates context the data was recorded in fhir:Immunization.reportOrigin [ CodeableConcept ]; # 0..1 Indicates the source of a secondarily reported record fhir:Immunization.location [ Reference(Location) ]; # 0..1 Where immunization occurred fhir:Immunization.manufacturer [ Reference(Organization) ]; # 0..1 Vaccine manufacturer fhir:Immunization.lotNumber [ string ]; # 0..1 Vaccine lot number fhir:Immunization.expirationDate [ date ]; # 0..1 Vaccine expiration date fhir:Immunization.site [ CodeableConcept ]; # 0..1 Body site vaccine was administered fhir:Immunization.route [ CodeableConcept ]; # 0..1 How vaccine entered body fhir:Immunization.doseQuantity [ Quantity(SimpleQuantity) ]; # 0..1 Amount of vaccine administered fhir:Immunization.practitioner [ # 0..* Who performed event fhir:Immunization.practitioner.role [ CodeableConcept ]; # 0..1 What type of performance was done fhir:Immunization.practitioner.actor [ Reference(Practitioner) ]; # 1..1 Individual who was performing ], ...; fhir:Immunization.note [ Annotation ], ... ; # 0..* Additional immunization notes fhir:Immunization.reason [ CodeableConcept ], ... ; # 0..* Why immunization did or did not occur fhir:Immunization.education [ # 0..* Educational material presented to patient fhir:Immunization.education.documentType [ string ]; # 0..1 Educational material document identifier fhir:Immunization.education.reference [ uri ]; # 0..1 Educational material reference pointer fhir:Immunization.education.publicationDate [ dateTime ]; # 0..1 Educational material publication date fhir:Immunization.education.presentationDate [ dateTime ]; # 0..1 Educational material presentation date ], ...; fhir:Immunization.programEligibility [ CodeableConcept ], ... ; # 0..* Patient eligibility for a vaccination program fhir:Immunization.fundingSource [ CodeableConcept ]; # 0..1 Funding source for the vaccine ]
Changes since DSTU2
Immunization | |
Immunization.status |
|
Immunization.primarySource |
|
Immunization.reportOrigin |
|
Immunization.practitioner |
|
Immunization.practitioner.role |
|
Immunization.practitioner.actor |
|
Immunization.reason |
|
Immunization.education |
|
Immunization.education.documentType |
|
Immunization.education.reference |
|
Immunization.education.publicationDate |
|
Immunization.education.presentationDate |
|
Immunization.programEligibility |
|
Immunization.fundingSource |
|
Immunization.wasNotGiven |
|
Immunization.reported |
|
Immunization.performer |
|
Immunization.requester |
|
Immunization.explanation |
|
Immunization.reaction |
|
Immunization.vaccinationProtocol |
|
See the Full Difference for further information
This analysis is available as XML or JSON.
See R2 <--> R3 Conversion Maps (status = 2 tests that all execute ok. 2 fail round-trip testing and 2 r3 resources are invalid (2 errors).).
Alternate definitions: Master Definition (XML, JSON), XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions & the dependency analysis
Path | Definition | Type | Reference |
---|---|---|---|
Immunization.status | A set of codes indicating the current status of an Immunization | Required | Immunization Status Codes |
Immunization.vaccineCode | The code for vaccine product administered | Example | Vaccine Administered Value Set |
Immunization.reportOrigin | The source of the data for a record which is not from a primary source. | Example | Immunization Origin Codes |
Immunization.site | The site at which the vaccine was administered | Example | Codes for Immunization Site of Administration |
Immunization.route | The route by which the vaccine was administered | Example | Immunization Route Codes |
Immunization.practitioner.role | The role a practitioner plays in the immunization event | Extensible | Immunization Role Codes |
Immunization.reason | The reason why a vaccine was administered | Example | Immunization Reason Codes |
Immunization.programEligibility | The patient's eligibility for a vaccation program | Example | Immunization Program Eligibility |
Immunization.fundingSource | The source of funding used to purchase the vaccine administered | Example | Immunization Funding Source |
Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Expression | In Common |
date | date | Vaccination (non)-Administration Date | Immunization.date | 17 Resources |
identifier | token | Business identifier | Immunization.identifier | 26 Resources |
location | reference | The service delivery location or facility in which the vaccine was / was to be administered | Immunization.location (Location) | |
lot-number | string | Vaccine Lot Number | Immunization.lotNumber | |
manufacturer | reference | Vaccine Manufacturer | Immunization.manufacturer (Organization) | |
patient | reference | The patient for the vaccination record | Immunization.patient (Patient) | 29 Resources |
practitioner | reference | The practitioner who played a role in the vaccination | Immunization.practitioner.actor (Practitioner) | |
reason | token | Why immunization did or did not occur | Immunization.reason | |
status | token | Immunization event status | Immunization.status | |
vaccine-code | token | Vaccine Product Administered | Immunization.vaccineCode |