Release 4 5 Preview #2
This page is part of the FHIR Specification (v4.0.1: R4 - Mixed Normative and STU ). This is the current published version in it's permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

11.7 Resource Immunization - Content

Public Health and Emergency Response Work Group Maturity Level : 3   Trial Use Security Category : Patient 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. While the terms "immunization" and "vaccination" are not clinically identical, for the purposes of the FHIR resources, the terms are used synonymously.

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.

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.

While the Immunization and MedicationAdministration resources are distinct, they are both able to capture specific details of the administered product. Immunization.manufacturer, Immunization.lotNumber and Immunization.expirationDate are all used to capture data about the administered vaccine. Similarly, MedicationAdministration.medication references a Medication resource which is used to identify the administered product. Medication.manufacturer, Medication.batch.lotNumber and Medication.batch.expirationDate are all analogous to the Immunization resource elements and are similarly used to capture details of the administered product.

Immunization.reaction may be an indication of an allergy or intolerance. If this is deemed to be the case, a separate AllergyIntolerance resource instance should be created to indicate it, as most systems will not query against past Immunization.reaction.

This resource is referenced by AdverseEvent , ChargeItem , ImmunizationEvaluation , ImmunizationRecommendation and Observation .

This resource implements the Event pattern.

Structure

reasonCode 0..* CodeableConcept Why immunization occurred Immunization Reason Codes ( Example ) 0)"> seriesDosesPositiveInt <td style="vertical-align: top; text-align : left; background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> <td style="vertical-align: top; text-align : left; background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> <td style="vertical-align: top; text-align : left; background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> <a href=datatypes.html#positiveInt> positiveInt <td style="vertical-align: top; text-align : left; background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> seriesDosesString string
Name Flags Card. Type Description & Constraints doco
. . Immunization TU DomainResource Immunization event information
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . identifier 0..* Identifier Business identifier
. . . instantiatesCanonical Σ 0..* canonical ( Definition ) Instantiates FHIR protocol or definition for the immunization event
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition for the immunization event
... basedOn Σ 0..* Reference ( CarePlan | MedicationRequest | ImmunizationRecommendation ) Authority that the immunization event is based on
... status ?! Σ 1..1 code completed | entered-in-error | not-done
Immunization Status Codes ( Required )
. . . statusReason 0..1 CodeableConcept Reason not done for current status
Immunization Status Reason Codes ( Example )
. . . vaccineCode Σ 1..1 CodeableConcept Vaccine product administered
Vaccine Administered Value Set ( Example )
. . . manufacturer 0..1 Reference ( Organization ) Vaccine manufacturer
... lotNumber 0..1 string Vaccine lot number
... expirationDate 0..1 date Vaccine expiration date
. . . patient Σ 1..1 Reference ( Patient ) Who was immunized
. . . encounter 0..1 Reference ( Encounter ) Encounter immunization was part of
. . . occurrence[x] Σ 1..1 Vaccine administration date
. . . . occurrenceDateTime dateTime
. . . . occurrenceString string
. . . recorded 0..1 dateTime When the immunization was first captured in the subject's record
. . . primarySource Σ 0..1 boolean Indicates context the data was recorded in
. . reportOrigin . informationSource[x] 0..1 CodeableConcept Indicates the source of a secondarily reported record
Immunization Origin Codes ( Example )
. . location . . informationSourceCodeableConcept 0..1 Reference ( Location CodeableConcept ) Where immunization occurred
. manufacturer . . . informationSourceReference 0..1 Reference ( Patient | Practitioner | PractitionerRole | RelatedPerson | Organization ) Vaccine manufacturer
. . lotNumber . location 0..1 string Reference ( Location ) Vaccine lot number Where immunization occurred
. . 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
. . . performer Σ 0..* BackboneElement Who performed event
. . . . function Σ 0..1 CodeableConcept What type of performance was done
Immunization Function Codes ( Extensible )
. . . . actor Σ 1..1 Reference ( Practitioner | PractitionerRole | Organization ) Individual or organization who was performing
. . . note Σ 0..* Annotation Additional immunization notes
. . . reasonReference reason 0..* Reference CodeableReference ( Condition | Observation | DiagnosticReport ) Why immunization occurred
Immunization Reason Codes ( Example )
. . . isSubpotent ?! Σ 0..1 boolean Dose potency
. . . subpotentReason 0..* CodeableConcept Reason for being subpotent
Immunization Subpotent Reason ( Example )
. . . education I 0..* BackboneElement Educational material presented to patient
+ Rule: 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 )
. . . reaction 0..* BackboneElement Details of a reaction that follows immunization
. . . . 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
. . . . 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
Immunization Target Disease Codes ( Example )
. . . doseNumber[x] . doseNumber 1..1 Dose number within series 0)"> doseNumberPositiveInt <td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> <td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> <td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> <a href=datatypes.html#positiveInt> positiveInt <td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> doseNumberString string Dose number within series
. . . seriesDoses[x] . seriesDoses 0..1 string Recommended number of doses for immunity

doco Documentation for this format

UML Diagram ( Legend )

Immunization ( DomainResource ) A unique identifier assigned to this immunization record identifier : Identifier [0..*] The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Immunization instantiatesCanonical : canonical [0..*] « Definition » The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Immunization instantiatesUri : uri [0..*] A plan, order or recommendation fulfilled in whole or in part by this immunization basedOn : Reference [0..*] « CarePlan | MedicationRequest | ImmunizationRecommendation » Indicates the current status of the immunization event (this element modifies the meaning of other elements) status : code [1..1] « A set of codes indicating the current status of an Immunization. (Strength=Required) ImmunizationStatusCodes ! » Indicates the reason the immunization event was not performed statusReason : CodeableConcept [0..1] « The reason why a vaccine was not administered. (Strength=Example) ImmunizationStatusReasonCodes ?? » Vaccine that was administered or was to be administered vaccineCode : CodeableConcept [1..1] « The code for vaccine product administered. (Strength=Example) VaccineAdministeredValueSet ?? » Name of vaccine manufacturer manufacturer : Reference [0..1] « Organization » Lot number of the vaccine product lotNumber : string [0..1] Date vaccine batch expires expirationDate : date [0..1] The patient who either received or did not receive the immunization patient : Reference [1..1] « Patient » The visit or admission or other contact between patient and health care provider the immunization was performed as part of encounter : Reference [0..1] « Encounter » Date vaccine administered or was to be administered occurrence[x] : Type PrimitiveType [1..1] « dateTime | string » The date the occurrence of the immunization was first captured in the record - potentially significantly after the occurrence of the event recorded : dateTime [0..1] An indication that the content of the Indicates if this record is based on information from the person who administered the vaccine. This reflects the context under which the data was originally recorded captured as a secondary 'reported' record rather than as an original primary source-of-truth record primarySource : boolean [0..1] The Typically the source of the data when the report of the immunization event is not based on information from the person who administered the vaccine reportOrigin informationSource[x] : CodeableConcept DataType [0..1] « CodeableConcept | Reference ( Patient | Practitioner | PractitionerRole | RelatedPerson | Organization ); The source of the data for a record which is not from a primary source. (Strength=Example) ImmunizationOriginCodes ?? » The service delivery location where the vaccine administration occurred location : Reference [0..1] « Location » Name of vaccine manufacturer manufacturer : Reference [0..1] « Organization » Lot number of the vaccine product lotNumber : string [0..1] Date vaccine batch expires expirationDate : date [0..1] Body site where vaccine was administered site : CodeableConcept [0..1] « The site at which the vaccine was administered. (Strength=Example) CodesForImmunizationSiteOfAdm... ?? » The path by which the vaccine product is taken into the body route : CodeableConcept [0..1] « The route by which the vaccine was administered. (Strength=Example) ImmunizationRouteCodes ?? » The quantity of vaccine product that was administered doseQuantity : Quantity ( SimpleQuantity ) [0..1] Extra information about the immunization that is not conveyed by the other attributes note : Annotation [0..*] Reasons Describes why the vaccine was administered immunization occurred in coded or textual form, or Indicates another resource (Condition, Observation or DiagnosticReport) whose existence justifies this immunization reasonCode reason : CodeableConcept DataType [0..*] « Condition | Observation | DiagnosticReport ; The reason why a vaccine was administered. (Strength=Example) ImmunizationReasonCodes ?? » Condition, Observation or DiagnosticReport that supports why the immunization was administered reasonReference : Reference [0..*] « Condition | Observation | DiagnosticReport ImmunizationReasonCodes ?? » Indication if a dose is considered to be subpotent. By default, a dose should be considered to be potent (this element modifies the meaning of other elements) isSubpotent : boolean [0..1] Reason why a dose is considered to be subpotent subpotentReason : CodeableConcept [0..*] « The reason why a dose is considered to be subpotent. (Strength=Example) ImmunizationSubpotentReason ?? » Indicates a patient's eligibility for a funding program programEligibility : CodeableConcept [0..*] « The patient's eligibility for a vaccation program. (Strength=Example) ImmunizationProgramEligibility ?? » Indicates the source of the vaccine actually administered. This may be different than the patient eligibility (e.g. the patient may be eligible for a publically purchased vaccine but due to inventory issues, vaccine purchased with private funds was actually administered) fundingSource : CodeableConcept [0..1] « The source of funding used to purchase the vaccine administered. (Strength=Example) ImmunizationFundingSource ?? » Performer Describes the type of performance (e.g. ordering provider, administering provider, etc.) function : CodeableConcept [0..1] « The role a practitioner or organization plays in the immunization event. (Strength=Extensible) ImmunizationFunctionCodes + » The practitioner or organization who performed the action actor : Reference [1..1] « Practitioner | PractitionerRole | Organization » Education Identifier of the material presented to the patient documentType : string [0..1] Reference pointer to the educational material given to the patient if the information was on line reference : uri [0..1] Date the educational material was published publicationDate : dateTime [0..1] Date the educational material was given to the patient presentationDate : dateTime [0..1] Reaction Date of reaction to the immunization date : dateTime [0..1] Details of the reaction detail : Reference [0..1] « Observation » Self-reported indicator reported : boolean [0..1] ProtocolApplied One possible path to achieve presumed immunity against a disease - within the context of an authority series : string [0..1] Indicates the authority who published the protocol (e.g. ACIP) that is being followed authority : Reference [0..1] « Organization » The vaccine preventable disease the dose is being administered against targetDisease : CodeableConcept [0..*] « The vaccine preventable disease the dose is being administered for. (Strength=Example) ImmunizationTargetDiseaseCodes ?? » Nominal position in a series as intended by the practitioner administering the dose doseNumber[x] doseNumber : Type [1..1] « positiveInt | string » [1..1] The recommended number of doses to achieve immunity as intended by the practitioner administering the dose seriesDoses[x] seriesDoses : Type [0..1] « positiveInt | string » [0..1] Indicates who performed the immunization event performer [0..*] Educational material presented to the patient (or guardian) at the time of vaccine administration education [0..*] Categorical data indicating that an adverse event is associated in time to an immunization reaction [0..*] The protocol (set of recommendations) being followed by the provider who administered the dose protocolApplied [0..*]

XML Template

<Immunization xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Business identifier --></identifier>
 <instantiatesCanonical><!-- 0..* canonical(ActivityDefinition|EventDefinition|
   EvidenceVariable|Measure|OperationDefinition|PlanDefinition|Questionnaire|   SubscriptionTopic) Instantiates FHIR protocol or definition for the immunization event --></instantiatesCanonical>
 <instantiatesUri value="[uri]"/><!-- 0..* Instantiates external protocol or definition for the immunization event -->
 <basedOn><!-- 0..* Reference(CarePlan|ImmunizationRecommendation|
   MedicationRequest) Authority that the immunization event is based on --></basedOn>
 <status value="[code]"/><!-- 1..1 completed | entered-in-error | not-done -->
 <</statusReason>

 <statusReason><!-- 0..1 CodeableConcept Reason for current status --></statusReason>

 <vaccineCode><!-- 1..1 CodeableConcept Vaccine product administered --></vaccineCode>
 <manufacturer><!-- 0..1 Reference(Organization) Vaccine manufacturer --></manufacturer>
 <lotNumber value="[string]"/><!-- 0..1 Vaccine lot number -->
 <expirationDate value="[date]"/><!-- 0..1 Vaccine expiration date -->

 <patient><!-- 1..1 Reference(Patient) Who was immunized --></patient>
 <encounter><!-- 0..1 Reference(Encounter) Encounter immunization was part of --></encounter>
 <occurrence[x]><!-- 1..1 dateTime|string Vaccine administration date --></occurrence[x]>
 <recorded value="[dateTime]"/><!-- 0..1 When the immunization was first captured in the subject's record -->
 <
 <</reportOrigin>

 <primarySource value="[boolean]"/><!-- 0..1 Indicates context the data was recorded in -->
 <informationSource[x]><!-- 0..1 CodeableConcept|Reference(Organization|Patient|
   Practitioner|PractitionerRole|RelatedPerson) Indicates the source of a  reported record --></informationSource[x]>
 <location><!-- 0..1 Reference(Location) Where immunization occurred --></location>
 <</manufacturer>
 <
 <

 <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>
 <performer>  <!-- 0..* Who performed event -->
  <function><!-- 0..1 CodeableConcept What type of performance was done --></function>
  <</actor>

  <actor><!-- 1..1 Reference(Organization|Practitioner|PractitionerRole) Individual or organization who was performing --></actor>

 </performer>
 <note><!-- 0..* Annotation Additional immunization notes --></note>
 <</reasonCode>
 <</reasonReference>

 <reason><!-- 0..* CodeableReference(Condition|DiagnosticReport|Observation) Why immunization occurred --></reason>

 <isSubpotent value="[boolean]"/><!-- 0..1 Dose potency -->
 <subpotentReason><!-- 0..* CodeableConcept Reason for being subpotent --></subpotentReason>
 <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>
 <reaction>  <!-- 0..* Details of a reaction that follows immunization -->
  <date value="[dateTime]"/><!-- 0..1 When reaction started -->
  <detail><!-- 0..1 Reference(Observation) Additional information on reaction --></detail>
  <reported value="[boolean]"/><!-- 0..1 Indicates self-reported reaction -->
 </reaction>
 <protocolApplied>  <!-- 0..* Protocol followed by the provider -->
  <series value="[string]"/><!-- 0..1 Name of vaccine series -->
  <authority><!-- 0..1 Reference(Organization) Who is responsible for publishing the recommendations --></authority>
  <targetDisease><!-- 0..* CodeableConcept Vaccine preventatable disease being targetted --></targetDisease>
  <</doseNumber[x]>
  <</seriesDoses[x]>

  <doseNumber value="[string]"/><!-- 1..1 Dose number within series -->
  <seriesDoses value="[string]"/><!-- 0..1 Recommended number of doses for immunity -->

 </protocolApplied>
</Immunization>

JSON Template

{doco
  "resourceType" : "Immunization",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Business identifier
  "instantiatesCanonical" : [{ canonical(ActivityDefinition|EventDefinition|
   EvidenceVariable|Measure|OperationDefinition|PlanDefinition|Questionnaire|   SubscriptionTopic) }], // Instantiates FHIR protocol or definition for the immunization event
  "instantiatesUri" : ["<uri>"], // Instantiates external protocol or definition for the immunization event
  "basedOn" : [{ Reference(CarePlan|ImmunizationRecommendation|
   MedicationRequest) }], // Authority that the immunization event is based on
  "status" : "<code>", // R!  completed | entered-in-error | not-done
  "

  "statusReason" : { CodeableConcept }, // Reason for current status

  "vaccineCode" : { CodeableConcept }, // R!  Vaccine product administered
  "manufacturer" : { Reference(Organization) }, // Vaccine manufacturer
  "lotNumber" : "<string>", // Vaccine lot number
  "expirationDate" : "<date>", // Vaccine expiration date

  "patient" : { Reference(Patient) }, // R!  Who was immunized
  "encounter" : { Reference(Encounter) }, // Encounter immunization was part of
  // occurrence[x]: Vaccine administration date. One of these 2:
  "occurrenceDateTime" : "<dateTime>",
  "occurrenceString" : "<string>",
  "recorded" : "<dateTime>", // When the immunization was first captured in the subject's record
  "
  "

  "primarySource" : <boolean>, // Indicates context the data was recorded in
  // informationSource[x]: Indicates the source of a  reported record. One of these 2:
  "informationSourceCodeableConcept" : { CodeableConcept },
  "informationSourceReference" : { Reference(Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) },
  "location" : { Reference(Location) }, // Where immunization occurred
  "
  "
  "

  "site" : { CodeableConcept }, // Body site vaccine  was administered
  "route" : { CodeableConcept }, // How vaccine entered body
  "doseQuantity" : { Quantity(SimpleQuantity) }, // Amount of vaccine administered
  "performer" : [{ // Who performed event
    "function" : { CodeableConcept }, // What type of performance was done
    "

    "actor" : { Reference(Organization|Practitioner|PractitionerRole) } // R!  Individual or organization who was performing

  }],
  "note" : [{ Annotation }], // Additional immunization notes
  "
  "

  "reason" : [{ CodeableReference(Condition|DiagnosticReport|Observation) }], // Why immunization occurred

  "isSubpotent" : <boolean>, // Dose potency
  "subpotentReason" : [{ CodeableConcept }], // Reason for being subpotent
  "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
  "reaction" : [{ // Details of a reaction that follows immunization
    "date" : "<dateTime>", // When reaction started
    "detail" : { Reference(Observation) }, // Additional information on reaction
    "reported" : <boolean> // Indicates self-reported reaction
  }],
  "protocolApplied" : [{ // Protocol followed by the provider
    "series" : "<string>", // Name of vaccine series
    "authority" : { Reference(Organization) }, // Who is responsible for publishing the recommendations
    "targetDisease" : [{ CodeableConcept }], // Vaccine preventatable disease being targetted
    
    ">",
    ">",
    
    ">"
    ">"

    "doseNumber" : "<string>", // R!  Dose number within series
    "seriesDoses" : "<string>" // Recommended number of doses for immunity

  }]
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco
[ 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.instantiatesCanonical [ canonical(ActivityDefinition|EventDefinition|EvidenceVariable|Measure|OperationDefinition|
  PlanDefinition|Questionnaire|SubscriptionTopic) ], ... ; # 0..* Instantiates FHIR protocol or definition for the immunization event
  fhir:Immunization.instantiatesUri [ uri ], ... ; # 0..* Instantiates external protocol or definition for the immunization event
  fhir:Immunization.basedOn [ Reference(CarePlan|ImmunizationRecommendation|MedicationRequest) ], ... ; # 0..* Authority that the immunization event is based on

  fhir:Immunization.status [ code ]; # 1..1 completed | entered-in-error | not-done
  fhir:

  fhir:Immunization.statusReason [ CodeableConcept ]; # 0..1 Reason for current status

  fhir:Immunization.vaccineCode [ CodeableConcept ]; # 1..1 Vaccine product administered
  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.patient [ Reference(Patient) ]; # 1..1 Who was immunized
  fhir:Immunization.encounter [ Reference(Encounter) ]; # 0..1 Encounter immunization was part of
  # Immunization.occurrence[x] : 1..1 Vaccine administration date. One of these 2
    fhir:Immunization.occurrenceDateTime [ dateTime ]
    fhir:Immunization.occurrenceString [ string ]
  fhir:Immunization.recorded [ dateTime ]; # 0..1 When the immunization was first captured in the subject's record
  fhir:
  fhir:

  fhir:Immunization.primarySource [ boolean ]; # 0..1 Indicates context the data was recorded in
  # Immunization.informationSource[x] : 0..1 Indicates the source of a  reported record. One of these 2
    fhir:Immunization.informationSourceCodeableConcept [ CodeableConcept ]
    fhir:Immunization.informationSourceReference [ Reference(Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ]

  fhir:Immunization.location [ Reference(Location) ]; # 0..1 Where immunization occurred
  fhir:
  fhir:
  fhir:

  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.performer [ # 0..* Who performed event
    fhir:Immunization.performer.function [ CodeableConcept ]; # 0..1 What type of performance was done
    fhir:

    fhir:Immunization.performer.actor [ Reference(Organization|Practitioner|PractitionerRole) ]; # 1..1 Individual or organization who was performing

  ], ...;
  fhir:Immunization.note [ Annotation ], ... ; # 0..* Additional immunization notes
  fhir:
  fhir:

  fhir:Immunization.reason [ CodeableReference(Condition|DiagnosticReport|Observation) ], ... ; # 0..* Why immunization occurred

  fhir:Immunization.isSubpotent [ boolean ]; # 0..1 Dose potency
  fhir:Immunization.subpotentReason [ CodeableConcept ], ... ; # 0..* Reason for being subpotent
  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
  fhir:Immunization.reaction [ # 0..* Details of a reaction that follows immunization
    fhir:Immunization.reaction.date [ dateTime ]; # 0..1 When reaction started
    fhir:Immunization.reaction.detail [ Reference(Observation) ]; # 0..1 Additional information on reaction
    fhir:Immunization.reaction.reported [ boolean ]; # 0..1 Indicates self-reported reaction
  ], ...;
  fhir:Immunization.protocolApplied [ # 0..* Protocol followed by the provider
    fhir:Immunization.protocolApplied.series [ string ]; # 0..1 Name of vaccine series
    fhir:Immunization.protocolApplied.authority [ Reference(Organization) ]; # 0..1 Who is responsible for publishing the recommendations
    fhir:Immunization.protocolApplied.targetDisease [ CodeableConcept ], ... ; # 0..* Vaccine preventatable disease being targetted
    # . One of these 2
      fhir: ]
      fhir: ]
    # . One of these 2
      fhir: ]
      fhir: ]

    fhir:Immunization.protocolApplied.doseNumber [ string ]; # 1..1 Dose number within series
    fhir:Immunization.protocolApplied.seriesDoses [ string ]; # 0..1 Recommended number of doses for immunity

  ], ...;
]

Changes since R3

Immunization.status Change value set from http://hl7.org/fhir/ValueSet/immunization-status to http://hl7.org/fhir/ValueSet/immunization-status|4.0.1 Immunization.statusReason Renamed from notGiven to statusReason Min Cardinality changed from 1 to 0 Type changed from boolean to CodeableConcept No longer marked as Modifier Immunization.occurrence[x] Renamed from date to occurrence[x] Min Cardinality changed from 0 to 1 Add Type string Immunization.recorded Added Element Immunization.primarySource Min Cardinality changed from 1 to 0 Immunization.performer Renamed from practitioner to performer Immunization.performer.function Moved from Immunization.practitioner.role to function Change value set from http://hl7.org/fhir/ValueSet/immunization-role to http://hl7.org/fhir/ValueSet/immunization-function Immunization.performer.actor Moved from Immunization.practitioner to Immunization.performer Type Reference: Added Target Types PractitionerRole, Organization Immunization.reasonCode Moved from Immunization.explanation.reason to reasonCode Immunization.reasonReference Added Element Immunization.isSubpotent Added Element Immunization.protocolApplied Renamed from vaccinationProtocol to protocolApplied Immunization.protocolApplied.series Moved from Immunization.vaccinationProtocol to Immunization.protocolApplied Immunization.protocolApplied.authority Moved from Immunization.vaccinationProtocol to Immunization.protocolApplied Immunization.protocolApplied.targetDisease Moved from Immunization.vaccinationProtocol to Immunization.protocolApplied Min Cardinality changed from 1 to 0 Immunization.protocolApplied.doseNumber[x] Moved from Immunization.vaccinationProtocol.doseSequence to doseNumber[x] Min Cardinality changed from 0 to 1 Add Type string
Immunization
Immunization.subpotentReason Immunization.instantiatesCanonical
  • Added Element
Immunization.education Immunization.instantiatesUri
  • Added Element
Immunization.education.documentType Immunization.basedOn
  • Added Element
Immunization.education.reference Immunization.status
  • Added Element Change value set from http://hl7.org/fhir/ValueSet/immunization-status|4.0.0 to http://hl7.org/fhir/ValueSet/immunization-status|4.4.0
Immunization.education.publicationDate Immunization.informationSource[x]
  • Added Element
Immunization.education.presentationDate Immunization.reason
  • Added Element
Immunization.programEligibility Immunization.protocolApplied.doseNumber
  • Added Mandatory Element
Immunization.fundingSource Immunization.protocolApplied.seriesDoses
  • Added Element
Immunization.protocolApplied.seriesDoses[x] Immunization.reportOrigin
  • Moved from Immunization.vaccinationProtocol.seriesDoses to seriesDoses[x] Add Type string deleted
Immunization.explanation Immunization.reasonCode
  • deleted
Immunization.vaccinationProtocol.description Immunization.reasonReference
  • deleted
Immunization.vaccinationProtocol.doseStatus Immunization.protocolApplied.doseNumber[x]
  • deleted
Immunization.vaccinationProtocol.doseStatusReason Immunization.protocolApplied.seriesDoses[x]
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON .

See R3 <--> R4 Conversion Maps (status = 3 tests that all execute ok. All tests pass round-trip testing and 3 r3 resources are invalid (0 errors). )

Structure

reasonCode 0..* CodeableConcept Why immunization occurred Immunization Reason Codes ( Example ) 0)"> seriesDosesPositiveInt <td style="vertical-align: top; text-align : left; background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> <td style="vertical-align: top; text-align : left; background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> <td style="vertical-align: top; text-align : left; background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> <a href=datatypes.html#positiveInt> positiveInt <td style="vertical-align: top; text-align : left; background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> seriesDosesString string
Name Flags Card. Type Description & Constraints doco
. . Immunization TU DomainResource Immunization event information
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . identifier 0..* Identifier Business identifier
. . . instantiatesCanonical Σ 0..* canonical ( Definition ) Instantiates FHIR protocol or definition for the immunization event
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition for the immunization event
... basedOn Σ 0..* Reference ( CarePlan | MedicationRequest | ImmunizationRecommendation ) Authority that the immunization event is based on
... status ?! Σ 1..1 code completed | entered-in-error | not-done
Immunization Status Codes ( Required )
. . . statusReason 0..1 CodeableConcept Reason not done for current status
Immunization Status Reason Codes ( Example )
. . . vaccineCode Σ 1..1 CodeableConcept Vaccine product administered
Vaccine Administered Value Set ( Example )
. . . manufacturer 0..1 Reference ( Organization ) Vaccine manufacturer
... lotNumber 0..1 string Vaccine lot number
... expirationDate 0..1 date Vaccine expiration date
. . . patient Σ 1..1 Reference ( Patient ) Who was immunized
. . . encounter 0..1 Reference ( Encounter ) Encounter immunization was part of
. . . occurrence[x] Σ 1..1 Vaccine administration date
. . . . occurrenceDateTime dateTime
. . . . occurrenceString string
. . . recorded 0..1 dateTime When the immunization was first captured in the subject's record
. . . primarySource Σ 0..1 boolean Indicates context the data was recorded in
. . reportOrigin . informationSource[x] 0..1 CodeableConcept Indicates the source of a secondarily reported record
Immunization Origin Codes ( Example )
. . location . . informationSourceCodeableConcept 0..1 Reference ( Location CodeableConcept ) Where immunization occurred
. manufacturer . . . informationSourceReference 0..1 Reference ( Patient | Practitioner | PractitionerRole | RelatedPerson | Organization ) Vaccine manufacturer
. . lotNumber . location 0..1 string Reference ( Location ) Vaccine lot number Where immunization occurred
. . 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
. . . performer Σ 0..* BackboneElement Who performed event
. . . . function Σ 0..1 CodeableConcept What type of performance was done
Immunization Function Codes ( Extensible )
. . . . actor Σ 1..1 Reference ( Practitioner | PractitionerRole | Organization ) Individual or organization who was performing
. . . note Σ 0..* Annotation Additional immunization notes
. . . reasonReference reason 0..* Reference CodeableReference ( Condition | Observation | DiagnosticReport ) Why immunization occurred
Immunization Reason Codes ( Example )
. . . isSubpotent ?! Σ 0..1 boolean Dose potency
. . . subpotentReason 0..* CodeableConcept Reason for being subpotent
Immunization Subpotent Reason ( Example )
. . . education I 0..* BackboneElement Educational material presented to patient
+ Rule: 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 )
. . . reaction 0..* BackboneElement Details of a reaction that follows immunization
. . . . 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
. . . . 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
Immunization Target Disease Codes ( Example )
. . . doseNumber[x] . doseNumber 1..1 Dose number within series 0)"> doseNumberPositiveInt <td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> <td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> <td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> <a href=datatypes.html#positiveInt> positiveInt <td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class=hierarchy> doseNumberString string Dose number within series
. . . seriesDoses[x] . seriesDoses 0..1 string Recommended number of doses for immunity

doco Documentation for this format

UML Diagram ( Legend )

Immunization ( DomainResource ) A unique identifier assigned to this immunization record identifier : Identifier [0..*] The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Immunization instantiatesCanonical : canonical [0..*] « Definition » The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Immunization instantiatesUri : uri [0..*] A plan, order or recommendation fulfilled in whole or in part by this immunization basedOn : Reference [0..*] « CarePlan | MedicationRequest | ImmunizationRecommendation » Indicates the current status of the immunization event (this element modifies the meaning of other elements) status : code [1..1] « A set of codes indicating the current status of an Immunization. (Strength=Required) ImmunizationStatusCodes ! » Indicates the reason the immunization event was not performed statusReason : CodeableConcept [0..1] « The reason why a vaccine was not administered. (Strength=Example) ImmunizationStatusReasonCodes ?? » Vaccine that was administered or was to be administered vaccineCode : CodeableConcept [1..1] « The code for vaccine product administered. (Strength=Example) VaccineAdministeredValueSet ?? » Name of vaccine manufacturer manufacturer : Reference [0..1] « Organization » Lot number of the vaccine product lotNumber : string [0..1] Date vaccine batch expires expirationDate : date [0..1] The patient who either received or did not receive the immunization patient : Reference [1..1] « Patient » The visit or admission or other contact between patient and health care provider the immunization was performed as part of encounter : Reference [0..1] « Encounter » Date vaccine administered or was to be administered occurrence[x] : Type PrimitiveType [1..1] « dateTime | string » The date the occurrence of the immunization was first captured in the record - potentially significantly after the occurrence of the event recorded : dateTime [0..1] An indication that the content of the Indicates if this record is based on information from the person who administered the vaccine. This reflects the context under which the data was originally recorded captured as a secondary 'reported' record rather than as an original primary source-of-truth record primarySource : boolean [0..1] The Typically the source of the data when the report of the immunization event is not based on information from the person who administered the vaccine reportOrigin informationSource[x] : CodeableConcept DataType [0..1] « CodeableConcept | Reference ( Patient | Practitioner | PractitionerRole | RelatedPerson | Organization ); The source of the data for a record which is not from a primary source. (Strength=Example) ImmunizationOriginCodes ?? » The service delivery location where the vaccine administration occurred location : Reference [0..1] « Location » Name of vaccine manufacturer manufacturer : Reference [0..1] « Organization » Lot number of the vaccine product lotNumber : string [0..1] Date vaccine batch expires expirationDate : date [0..1] Body site where vaccine was administered site : CodeableConcept [0..1] « The site at which the vaccine was administered. (Strength=Example) CodesForImmunizationSiteOfAdm... ?? » The path by which the vaccine product is taken into the body route : CodeableConcept [0..1] « The route by which the vaccine was administered. (Strength=Example) ImmunizationRouteCodes ?? » The quantity of vaccine product that was administered doseQuantity : Quantity ( SimpleQuantity ) [0..1] Extra information about the immunization that is not conveyed by the other attributes note : Annotation [0..*] Reasons Describes why the vaccine was administered immunization occurred in coded or textual form, or Indicates another resource (Condition, Observation or DiagnosticReport) whose existence justifies this immunization reasonCode reason : CodeableConcept DataType [0..*] « Condition | Observation | DiagnosticReport ; The reason why a vaccine was administered. (Strength=Example) ImmunizationReasonCodes ?? » Condition, Observation or DiagnosticReport that supports why the immunization was administered reasonReference : Reference [0..*] « Condition | Observation | DiagnosticReport ImmunizationReasonCodes ?? » Indication if a dose is considered to be subpotent. By default, a dose should be considered to be potent (this element modifies the meaning of other elements) isSubpotent : boolean [0..1] Reason why a dose is considered to be subpotent subpotentReason : CodeableConcept [0..*] « The reason why a dose is considered to be subpotent. (Strength=Example) ImmunizationSubpotentReason ?? » Indicates a patient's eligibility for a funding program programEligibility : CodeableConcept [0..*] « The patient's eligibility for a vaccation program. (Strength=Example) ImmunizationProgramEligibility ?? » Indicates the source of the vaccine actually administered. This may be different than the patient eligibility (e.g. the patient may be eligible for a publically purchased vaccine but due to inventory issues, vaccine purchased with private funds was actually administered) fundingSource : CodeableConcept [0..1] « The source of funding used to purchase the vaccine administered. (Strength=Example) ImmunizationFundingSource ?? » Performer Describes the type of performance (e.g. ordering provider, administering provider, etc.) function : CodeableConcept [0..1] « The role a practitioner or organization plays in the immunization event. (Strength=Extensible) ImmunizationFunctionCodes + » The practitioner or organization who performed the action actor : Reference [1..1] « Practitioner | PractitionerRole | Organization » Education Identifier of the material presented to the patient documentType : string [0..1] Reference pointer to the educational material given to the patient if the information was on line reference : uri [0..1] Date the educational material was published publicationDate : dateTime [0..1] Date the educational material was given to the patient presentationDate : dateTime [0..1] Reaction Date of reaction to the immunization date : dateTime [0..1] Details of the reaction detail : Reference [0..1] « Observation » Self-reported indicator reported : boolean [0..1] ProtocolApplied One possible path to achieve presumed immunity against a disease - within the context of an authority series : string [0..1] Indicates the authority who published the protocol (e.g. ACIP) that is being followed authority : Reference [0..1] « Organization » The vaccine preventable disease the dose is being administered against targetDisease : CodeableConcept [0..*] « The vaccine preventable disease the dose is being administered for. (Strength=Example) ImmunizationTargetDiseaseCodes ?? » Nominal position in a series as intended by the practitioner administering the dose doseNumber[x] doseNumber : Type [1..1] « positiveInt | string » [1..1] The recommended number of doses to achieve immunity as intended by the practitioner administering the dose seriesDoses[x] seriesDoses : Type [0..1] « positiveInt | string » [0..1] Indicates who performed the immunization event performer [0..*] Educational material presented to the patient (or guardian) at the time of vaccine administration education [0..*] Categorical data indicating that an adverse event is associated in time to an immunization reaction [0..*] The protocol (set of recommendations) being followed by the provider who administered the dose protocolApplied [0..*]

XML Template

<Immunization xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Business identifier --></identifier>
 <instantiatesCanonical><!-- 0..* canonical(ActivityDefinition|EventDefinition|
   EvidenceVariable|Measure|OperationDefinition|PlanDefinition|Questionnaire|   SubscriptionTopic) Instantiates FHIR protocol or definition for the immunization event --></instantiatesCanonical>
 <instantiatesUri value="[uri]"/><!-- 0..* Instantiates external protocol or definition for the immunization event -->
 <basedOn><!-- 0..* Reference(CarePlan|ImmunizationRecommendation|
   MedicationRequest) Authority that the immunization event is based on --></basedOn>
 <status value="[code]"/><!-- 1..1 completed | entered-in-error | not-done -->
 <</statusReason>

 <statusReason><!-- 0..1 CodeableConcept Reason for current status --></statusReason>

 <vaccineCode><!-- 1..1 CodeableConcept Vaccine product administered --></vaccineCode>
 <manufacturer><!-- 0..1 Reference(Organization) Vaccine manufacturer --></manufacturer>
 <lotNumber value="[string]"/><!-- 0..1 Vaccine lot number -->
 <expirationDate value="[date]"/><!-- 0..1 Vaccine expiration date -->

 <patient><!-- 1..1 Reference(Patient) Who was immunized --></patient>
 <encounter><!-- 0..1 Reference(Encounter) Encounter immunization was part of --></encounter>
 <occurrence[x]><!-- 1..1 dateTime|string Vaccine administration date --></occurrence[x]>
 <recorded value="[dateTime]"/><!-- 0..1 When the immunization was first captured in the subject's record -->
 <
 <</reportOrigin>

 <primarySource value="[boolean]"/><!-- 0..1 Indicates context the data was recorded in -->
 <informationSource[x]><!-- 0..1 CodeableConcept|Reference(Organization|Patient|
   Practitioner|PractitionerRole|RelatedPerson) Indicates the source of a  reported record --></informationSource[x]>
 <location><!-- 0..1 Reference(Location) Where immunization occurred --></location>
 <</manufacturer>
 <
 <

 <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>
 <performer>  <!-- 0..* Who performed event -->
  <function><!-- 0..1 CodeableConcept What type of performance was done --></function>
  <</actor>

  <actor><!-- 1..1 Reference(Organization|Practitioner|PractitionerRole) Individual or organization who was performing --></actor>

 </performer>
 <note><!-- 0..* Annotation Additional immunization notes --></note>
 <</reasonCode>
 <</reasonReference>

 <reason><!-- 0..* CodeableReference(Condition|DiagnosticReport|Observation) Why immunization occurred --></reason>

 <isSubpotent value="[boolean]"/><!-- 0..1 Dose potency -->
 <subpotentReason><!-- 0..* CodeableConcept Reason for being subpotent --></subpotentReason>
 <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>
 <reaction>  <!-- 0..* Details of a reaction that follows immunization -->
  <date value="[dateTime]"/><!-- 0..1 When reaction started -->
  <detail><!-- 0..1 Reference(Observation) Additional information on reaction --></detail>
  <reported value="[boolean]"/><!-- 0..1 Indicates self-reported reaction -->
 </reaction>
 <protocolApplied>  <!-- 0..* Protocol followed by the provider -->
  <series value="[string]"/><!-- 0..1 Name of vaccine series -->
  <authority><!-- 0..1 Reference(Organization) Who is responsible for publishing the recommendations --></authority>
  <targetDisease><!-- 0..* CodeableConcept Vaccine preventatable disease being targetted --></targetDisease>
  <</doseNumber[x]>
  <</seriesDoses[x]>

  <doseNumber value="[string]"/><!-- 1..1 Dose number within series -->
  <seriesDoses value="[string]"/><!-- 0..1 Recommended number of doses for immunity -->

 </protocolApplied>
</Immunization>

JSON Template

{doco
  "resourceType" : "Immunization",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Business identifier
  "instantiatesCanonical" : [{ canonical(ActivityDefinition|EventDefinition|
   EvidenceVariable|Measure|OperationDefinition|PlanDefinition|Questionnaire|   SubscriptionTopic) }], // Instantiates FHIR protocol or definition for the immunization event
  "instantiatesUri" : ["<uri>"], // Instantiates external protocol or definition for the immunization event
  "basedOn" : [{ Reference(CarePlan|ImmunizationRecommendation|
   MedicationRequest) }], // Authority that the immunization event is based on
  "status" : "<code>", // R!  completed | entered-in-error | not-done
  "

  "statusReason" : { CodeableConcept }, // Reason for current status

  "vaccineCode" : { CodeableConcept }, // R!  Vaccine product administered
  "manufacturer" : { Reference(Organization) }, // Vaccine manufacturer
  "lotNumber" : "<string>", // Vaccine lot number
  "expirationDate" : "<date>", // Vaccine expiration date

  "patient" : { Reference(Patient) }, // R!  Who was immunized
  "encounter" : { Reference(Encounter) }, // Encounter immunization was part of
  // occurrence[x]: Vaccine administration date. One of these 2:
  "occurrenceDateTime" : "<dateTime>",
  "occurrenceString" : "<string>",
  "recorded" : "<dateTime>", // When the immunization was first captured in the subject's record
  "
  "

  "primarySource" : <boolean>, // Indicates context the data was recorded in
  // informationSource[x]: Indicates the source of a  reported record. One of these 2:
  "informationSourceCodeableConcept" : { CodeableConcept },
  "informationSourceReference" : { Reference(Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) },
  "location" : { Reference(Location) }, // Where immunization occurred
  "
  "
  "

  "site" : { CodeableConcept }, // Body site vaccine  was administered
  "route" : { CodeableConcept }, // How vaccine entered body
  "doseQuantity" : { Quantity(SimpleQuantity) }, // Amount of vaccine administered
  "performer" : [{ // Who performed event
    "function" : { CodeableConcept }, // What type of performance was done
    "

    "actor" : { Reference(Organization|Practitioner|PractitionerRole) } // R!  Individual or organization who was performing

  }],
  "note" : [{ Annotation }], // Additional immunization notes
  "
  "

  "reason" : [{ CodeableReference(Condition|DiagnosticReport|Observation) }], // Why immunization occurred

  "isSubpotent" : <boolean>, // Dose potency
  "subpotentReason" : [{ CodeableConcept }], // Reason for being subpotent
  "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
  "reaction" : [{ // Details of a reaction that follows immunization
    "date" : "<dateTime>", // When reaction started
    "detail" : { Reference(Observation) }, // Additional information on reaction
    "reported" : <boolean> // Indicates self-reported reaction
  }],
  "protocolApplied" : [{ // Protocol followed by the provider
    "series" : "<string>", // Name of vaccine series
    "authority" : { Reference(Organization) }, // Who is responsible for publishing the recommendations
    "targetDisease" : [{ CodeableConcept }], // Vaccine preventatable disease being targetted
    
    ">",
    ">",
    
    ">"
    ">"

    "doseNumber" : "<string>", // R!  Dose number within series
    "seriesDoses" : "<string>" // Recommended number of doses for immunity

  }]
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco
[ 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.instantiatesCanonical [ canonical(ActivityDefinition|EventDefinition|EvidenceVariable|Measure|OperationDefinition|
  PlanDefinition|Questionnaire|SubscriptionTopic) ], ... ; # 0..* Instantiates FHIR protocol or definition for the immunization event
  fhir:Immunization.instantiatesUri [ uri ], ... ; # 0..* Instantiates external protocol or definition for the immunization event
  fhir:Immunization.basedOn [ Reference(CarePlan|ImmunizationRecommendation|MedicationRequest) ], ... ; # 0..* Authority that the immunization event is based on

  fhir:Immunization.status [ code ]; # 1..1 completed | entered-in-error | not-done
  fhir:

  fhir:Immunization.statusReason [ CodeableConcept ]; # 0..1 Reason for current status

  fhir:Immunization.vaccineCode [ CodeableConcept ]; # 1..1 Vaccine product administered
  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.patient [ Reference(Patient) ]; # 1..1 Who was immunized
  fhir:Immunization.encounter [ Reference(Encounter) ]; # 0..1 Encounter immunization was part of
  # Immunization.occurrence[x] : 1..1 Vaccine administration date. One of these 2
    fhir:Immunization.occurrenceDateTime [ dateTime ]
    fhir:Immunization.occurrenceString [ string ]
  fhir:Immunization.recorded [ dateTime ]; # 0..1 When the immunization was first captured in the subject's record
  fhir:
  fhir:

  fhir:Immunization.primarySource [ boolean ]; # 0..1 Indicates context the data was recorded in
  # Immunization.informationSource[x] : 0..1 Indicates the source of a  reported record. One of these 2
    fhir:Immunization.informationSourceCodeableConcept [ CodeableConcept ]
    fhir:Immunization.informationSourceReference [ Reference(Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ]

  fhir:Immunization.location [ Reference(Location) ]; # 0..1 Where immunization occurred
  fhir:
  fhir:
  fhir:

  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.performer [ # 0..* Who performed event
    fhir:Immunization.performer.function [ CodeableConcept ]; # 0..1 What type of performance was done
    fhir:

    fhir:Immunization.performer.actor [ Reference(Organization|Practitioner|PractitionerRole) ]; # 1..1 Individual or organization who was performing

  ], ...;
  fhir:Immunization.note [ Annotation ], ... ; # 0..* Additional immunization notes
  fhir:
  fhir:

  fhir:Immunization.reason [ CodeableReference(Condition|DiagnosticReport|Observation) ], ... ; # 0..* Why immunization occurred

  fhir:Immunization.isSubpotent [ boolean ]; # 0..1 Dose potency
  fhir:Immunization.subpotentReason [ CodeableConcept ], ... ; # 0..* Reason for being subpotent
  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
  fhir:Immunization.reaction [ # 0..* Details of a reaction that follows immunization
    fhir:Immunization.reaction.date [ dateTime ]; # 0..1 When reaction started
    fhir:Immunization.reaction.detail [ Reference(Observation) ]; # 0..1 Additional information on reaction
    fhir:Immunization.reaction.reported [ boolean ]; # 0..1 Indicates self-reported reaction
  ], ...;
  fhir:Immunization.protocolApplied [ # 0..* Protocol followed by the provider
    fhir:Immunization.protocolApplied.series [ string ]; # 0..1 Name of vaccine series
    fhir:Immunization.protocolApplied.authority [ Reference(Organization) ]; # 0..1 Who is responsible for publishing the recommendations
    fhir:Immunization.protocolApplied.targetDisease [ CodeableConcept ], ... ; # 0..* Vaccine preventatable disease being targetted
    # . One of these 2
      fhir: ]
      fhir: ]
    # . One of these 2
      fhir: ]
      fhir: ]

    fhir:Immunization.protocolApplied.doseNumber [ string ]; # 1..1 Dose number within series
    fhir:Immunization.protocolApplied.seriesDoses [ string ]; # 0..1 Recommended number of doses for immunity

  ], ...;
]

Changes since Release 3

Immunization.status Change value set from http://hl7.org/fhir/ValueSet/immunization-status to http://hl7.org/fhir/ValueSet/immunization-status|4.0.1 Immunization.statusReason Renamed from notGiven to statusReason Min Cardinality changed from 1 to 0 Type changed from boolean to CodeableConcept No longer marked as Modifier Immunization.occurrence[x] Renamed from date to occurrence[x] Min Cardinality changed from 0 to 1 Add Type string Immunization.protocolApplied Renamed from vaccinationProtocol to protocolApplied Immunization.protocolApplied.series Moved from Immunization.vaccinationProtocol to Immunization.protocolApplied Immunization.protocolApplied.authority Moved from Immunization.vaccinationProtocol to Immunization.protocolApplied Immunization.protocolApplied.targetDisease Moved from Immunization.vaccinationProtocol to Immunization.protocolApplied Min Cardinality changed from 1 to 0 Immunization.protocolApplied.doseNumber[x] Moved from Immunization.vaccinationProtocol.doseSequence to doseNumber[x] Min Cardinality changed from 0 to 1 Add Type string
Immunization
Immunization.recorded Added Element Immunization.primarySource Min Cardinality changed from 1 to 0 Immunization.performer Renamed from practitioner to performer Immunization.performer.function Moved from Immunization.practitioner.role to function Change value set from http://hl7.org/fhir/ValueSet/immunization-role to http://hl7.org/fhir/ValueSet/immunization-function Immunization.performer.actor Moved from Immunization.practitioner to Immunization.performer Type Reference: Added Target Types PractitionerRole, Organization Immunization.reasonCode Moved from Immunization.explanation.reason to reasonCode Immunization.reasonReference Added Element Immunization.isSubpotent Added Element Immunization.subpotentReason Immunization.instantiatesCanonical
  • Added Element
Immunization.education Immunization.instantiatesUri
  • Added Element
Immunization.education.documentType Immunization.basedOn
  • Added Element
Immunization.education.reference Immunization.status
  • Added Element Change value set from http://hl7.org/fhir/ValueSet/immunization-status|4.0.0 to http://hl7.org/fhir/ValueSet/immunization-status|4.4.0
Immunization.education.publicationDate Immunization.informationSource[x]
  • Added Element
Immunization.education.presentationDate Immunization.reason
  • Added Element
Immunization.programEligibility Immunization.protocolApplied.doseNumber
  • Added Mandatory Element
Immunization.fundingSource Immunization.protocolApplied.seriesDoses
  • Added Element
Immunization.protocolApplied.seriesDoses[x] Immunization.reportOrigin
  • Moved from Immunization.vaccinationProtocol.seriesDoses to seriesDoses[x] Add Type string deleted
Immunization.explanation Immunization.reasonCode
  • deleted
Immunization.vaccinationProtocol.description Immunization.reasonReference
  • deleted
Immunization.vaccinationProtocol.doseStatus Immunization.protocolApplied.doseNumber[x]
  • deleted
Immunization.vaccinationProtocol.doseStatusReason Immunization.protocolApplied.seriesDoses[x]
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON .

See R3 <--> R4 Conversion Maps (status = 3 tests that all execute ok. All tests pass round-trip testing and 3 r3 resources are invalid (0 errors). )

 

See the Profiles & Extensions and the alternate definitions: Master Definition XML + JSON , XML Schema / Schematron + JSON Schema , ShEx (for Turtle ) + see the extensions , the spreadsheet version & the dependency analysis a

Path Definition Type Reference
Immunization.status A set of codes indicating the current status of an Immunization. Required ImmunizationStatusCodes
Immunization.statusReason The reason why a vaccine was not administered. Example ImmunizationStatusReasonCodes
Immunization.vaccineCode The code for vaccine product administered. Example VaccineAdministeredValueSet
Immunization.reportOrigin Immunization.informationSource[x] The source of the data for a record which is not from a primary source. Example ImmunizationOriginCodes
Immunization.site The site at which the vaccine was administered. Example CodesForImmunizationSiteOfAdministration
Immunization.route The route by which the vaccine was administered. Example ImmunizationRouteCodes
Immunization.performer.function The role a practitioner or organization plays in the immunization event. Extensible ImmunizationFunctionCodes
Immunization.reasonCode Immunization.reason The reason why a vaccine was administered. Example ImmunizationReasonCodes
Immunization.subpotentReason The reason why a dose is considered to be subpotent. Example ImmunizationSubpotentReason
Immunization.programEligibility The patient's eligibility for a vaccation program. Example ImmunizationProgramEligibility
Immunization.fundingSource The source of funding used to purchase the vaccine administered. Example ImmunizationFundingSource
Immunization.protocolApplied.targetDisease The vaccine preventable disease the dose is being administered for. Example ImmunizationTargetDiseaseCodes

id Level Location Description Expression
imm-1 Rule Immunization.education One of documentType or reference SHALL be present documentType.exists() or reference.exists()

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.occurrence (Immunization.occurrence as dateTime) 17 Resources
identifier token Business identifier Immunization.identifier 30 Resources
location reference The service delivery location or facility in which the vaccine was / was to be administered Immunization.location
( Location )
lot-number N string Vaccine Lot Number Immunization.lotNumber
manufacturer reference Vaccine Manufacturer Immunization.manufacturer
( Organization )
patient reference The patient for the vaccination record Immunization.patient
( Patient )
33 Resources
performer reference The practitioner or organization who played a role in the vaccination Immunization.performer.actor
( Practitioner , Organization , PractitionerRole )
reaction reference Additional information on reaction Immunization.reaction.detail
( Observation )
reaction-date N date When reaction started Immunization.reaction.date
reason-code D token Reason why the vaccine was administered Immunization.reasonCode Immunization.reason.concept
reason-reference D reference Why immunization occurred Reference to a resource (by instance) Immunization.reasonReference ( Condition , Observation , DiagnosticReport ) Immunization.reason.reference
series N string The series being followed by the provider Immunization.protocolApplied.series
status N token Immunization event status Immunization.status
status-reason token Reason why the vaccine was not administered Immunization.statusReason
target-disease token The target disease the dose is being administered against Immunization.protocolApplied.targetDisease
vaccine-code token Vaccine Product Administered Immunization.vaccineCode