Publish-box (todo)
Public Health Work Group | Maturity Level: 1 | Trial Use | Security Category: Patient | Compartments: Patient |
A patient's point-in-time set of recommendations (i.e. forecasting) according to a published schedule with optional supporting justification.
The ImmunizationRecommendation resource is intended to cover the expression of a customized set of immunization recommendations and status for a specific individual. This can include recommending future doses to further the individual along the path to immunity and/or indicating that vaccination is not needed (e.g., an immunity or contraindication negates the need for additional doses, the patient has aged out of a series, a patient has completed a series). Recommendations may be used to initiate clinical activity such as the ordering and administration of a vaccine or may be used for non-clinical purposes such as presentation of vaccination credentials, satisfaction of school enrollment requirements or public health purposes. While not explicitly expressed in the resource itself, the "intent" of an ImmunizationRecommendation resource is always considered to be "proposal".
An ImmunizationRecommendation is a point-in-time representation of an individual's data compared against a set of guidelines designed by healthcare professionals to protect individuals against a wide range of vaccine preventable diseases. These sets of guidelines go by various names in different locales, but for the sake of what follows, they will be referred to as a "schedule". Schedules are often age-based but can also contain recommendations based on other information about the patient including things like allergies, underlying medical conditions, prescribed medications, personal behaviors and other attributes. For example, in the United States, all infants are recommended to receive their first dose of the polio vaccine by 2 months of age while healthcare professionals are recommended to be vaccinated against Hepatitis B if they are routinely exposed to blood products. An individualized immunization recommendation is typically the product of a clinical decision support (CDS) engine which takes the individual's data and a machine computable schedule as inputs to evaluate the patient's current immunization status and forecast future needs. Note that an immunization recommendation may also indicate that further vaccination is not required for a given target disease if the individual has completed their path to immunity. A comparison of the individual's data against different guidelines may result in a different set of recommendations. Also note that schedules themselves may evolve over time potentially resulting in new recommendations for a given individual. As noted in the figure below, a set of individualized immunization recommendations may then be used for a variety of purposes. Perhaps the most obvious usage is as the basis for a healthcare provider to develop and implement a plan to vaccinate the individual. However, other usages are possible including as a basis for vaccine credentialling, meeting school admission requirements, and performing public health activities. Because the recommendations for an individual can change over time, the data contained in an ImmunizationRecommendation resource is expected to be the basis for clinical action for only a short period of time.
An individual recommendation in the ImmunizationRecommendation resource will often relate to the recommendation of a specific dose of vaccine. The base ImmunizationRecommendation is silent on the time frame for the recommended administration date for a recommendation contained in the resource. That is, it is a system decision about how far in advance (1 day, 1 week, 6 weeks, 6 months, etc) of the recommendation administration date a recommendation is made. A recommendation may also be used to indicate that additional doses are not needed for some reason (such as the series is complete, the patient has aged out of the series, the patient is immune through some other mechanism or additional doses are contraindicated). This functionality may be important to convey to end users that they should not take action.
The display of immunization recommendations to end users is the responsibility of the system using the data contained in the ImmunizationRecommendation resource. Use case specific Implementation Guides can define specific display or usage expectations (if any) of systems using the recommendations contained in the resource.
As noted above, the comparison of an individual's data against a schedule includes an evaluation of each prior dose of vaccine against the guidelines set forth in the schedule. The outcome of this evaluation is either the validation of the prior dose (that is, the dose is "valid" and advances the individual on the path to immunity) or the determination that the prior dose was "invalid" for some reason and cannot count towards meeting the guidelines in the schedule. The evaluation outcome for a given dose of vaccine can be expressed in the ImmunizationEvaluation resource.
An ImmunizationRecommendation resource may reference the relevant Immunization and ImmunizationEvaluation resources that underly the recommendation. Additional resources may be referenced where they document other factors (such as underlying medical conditions, behaviors, etc) which impact the recommendation.
The recommendations contained within an ImmunizationRecommendation resource may be used to initiate a set of clinical activities leading to the administration and documentation of one or more doses of vaccine. Where a record of an order to administer a vaccine is required, the MedicationRequest resource is used. The value of MedicationRequest.intent is used to distinguish between a plan to vaccinate and an authorized order. MedicationRequest.basedOn may be used to link the order to the initiating ImmunizationRecommendation. The documentation of the administration of the vaccine should be accomplished through the use of the Immunization resource.
Note that the ImmunizationRecommendation resource allows the inclusion of multiple recommendations in a single instance of the resource. Where the output of the evaluation process results in only a single recommendation, the use of MedicationRequest where .intent is valued "proposal" is allowed as an alternative to the ImmunizationRecommendation resource if it simplifies the subsequent clinical workflow.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ImmunizationRecommendation | TU | DomainResource | Guidance or advice relating to an immunization Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | Business identifier |
patient | Σ | 1..1 | Reference(Patient) | Who this profile is for |
date | Σ | 1..1 | dateTime | Date recommendation(s) created |
authority | 0..1 | Reference(Organization) | Who is responsible for protocol | |
recommendation | ΣC | 1..* | BackboneElement | Vaccine administration recommendations + Rule: One of vaccineCode or targetDisease SHALL be present |
vaccineCode | ΣC | 0..* | CodeableConcept | Vaccine or vaccine group recommendation applies to Binding: Vaccine Administered Value Set (Example) |
targetDisease | ΣC | 0..* | CodeableConcept | Disease to be immunized against Binding: Immunization Target Disease Codes (Example) |
contraindicatedVaccineCode | Σ | 0..* | CodeableConcept | Vaccine which is contraindicated to fulfill the recommendation Binding: Vaccine Administered Value Set (Example) |
forecastStatus | ?!Σ | 1..1 | CodeableConcept | Vaccine recommendation status Binding: Immunization Recommendation Status Codes (Example) |
forecastReason | Σ | 0..* | CodeableConcept | Vaccine administration status reason Binding: Immunization Recommendation Reason Codes (Example) |
dateCriterion | 0..* | BackboneElement | Dates governing proposed immunization | |
code | 1..1 | CodeableConcept | Type of date Binding: Immunization Recommendation Date Criterion Codes (Example) | |
value | 1..1 | dateTime | Recommended date | |
description | 0..1 | markdown | Protocol details | |
series | 0..1 | string | Name of vaccination series | |
doseNumber | Σ | 0..1 | string | Recommended dose number within series |
seriesDoses | 0..1 | string | Recommended number of doses for immunity | |
supportingImmunization | 0..* | Reference(Immunization | ImmunizationEvaluation) | Past immunizations supporting recommendation | |
supportingPatientInformation | 0..* | Reference(Any) | Patient observations supporting recommendation | |
Documentation for this format |
See the Extensions for this resource
UML Diagram (Legend)
XML Template
<ImmunizationRecommendation 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> <patient><!-- 1..1 Reference(Patient) Who this profile is for --></patient> <date value="[dateTime]"/><!-- 1..1 Date recommendation(s) created --> <authority><!-- 0..1 Reference(Organization) Who is responsible for protocol --></authority> <recommendation> <!-- 1..* Vaccine administration recommendations --> <vaccineCode><!-- I 0..* CodeableConcept Vaccine or vaccine group recommendation applies to --></vaccineCode> <targetDisease><!-- I 0..* CodeableConcept Disease to be immunized against --></targetDisease> <contraindicatedVaccineCode><!-- 0..* CodeableConcept Vaccine which is contraindicated to fulfill the recommendation --></contraindicatedVaccineCode> <forecastStatus><!-- 1..1 CodeableConcept Vaccine recommendation status --></forecastStatus> <forecastReason><!-- 0..* CodeableConcept Vaccine administration status reason --></forecastReason> <dateCriterion> <!-- 0..* Dates governing proposed immunization --> <code><!-- 1..1 CodeableConcept Type of date --></code> <value value="[dateTime]"/><!-- 1..1 Recommended date --> </dateCriterion> <description value="[markdown]"/><!-- 0..1 Protocol details --> <series value="[string]"/><!-- 0..1 Name of vaccination series --> <doseNumber value="[string]"/><!-- 0..1 Recommended dose number within series --> <seriesDoses value="[string]"/><!-- 0..1 Recommended number of doses for immunity --> <supportingImmunization><!-- 0..* Reference(Immunization|ImmunizationEvaluation) Past immunizations supporting recommendation --></supportingImmunization> <supportingPatientInformation><!-- 0..* Reference(Any) Patient observations supporting recommendation --></supportingPatientInformation> </recommendation> </ImmunizationRecommendation>
JSON Template
{ "resourceType" : "ImmunizationRecommendation", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Business identifier "patient" : { Reference(Patient) }, // R! Who this profile is for "date" : "<dateTime>", // R! Date recommendation(s) created "authority" : { Reference(Organization) }, // Who is responsible for protocol "recommendation" : [{ // R! Vaccine administration recommendations "vaccineCode" : [{ CodeableConcept }], // I Vaccine or vaccine group recommendation applies to "targetDisease" : [{ CodeableConcept }], // I Disease to be immunized against "contraindicatedVaccineCode" : [{ CodeableConcept }], // Vaccine which is contraindicated to fulfill the recommendation "forecastStatus" : { CodeableConcept }, // R! Vaccine recommendation status "forecastReason" : [{ CodeableConcept }], // Vaccine administration status reason "dateCriterion" : [{ // Dates governing proposed immunization "code" : { CodeableConcept }, // R! Type of date "value" : "<dateTime>" // R! Recommended date }], "description" : "<markdown>", // Protocol details "series" : "<string>", // Name of vaccination series "doseNumber" : "<string>", // Recommended dose number within series "seriesDoses" : "<string>", // Recommended number of doses for immunity "supportingImmunization" : [{ Reference(Immunization|ImmunizationEvaluation) }], // Past immunizations supporting recommendation "supportingPatientInformation" : [{ Reference(Any) }] // Patient observations supporting recommendation }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:ImmunizationRecommendation; 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:identifier ( [ Identifier ] ... ) ; # 0..* Business identifier fhir:patient [ Reference(Patient) ] ; # 1..1 Who this profile is for fhir:date [ dateTime ] ; # 1..1 Date recommendation(s) created fhir:authority [ Reference(Organization) ] ; # 0..1 Who is responsible for protocol fhir:recommendation ( [ # 1..* Vaccine administration recommendations fhir:vaccineCode ( [ CodeableConcept ] ... ) ; # 0..* I Vaccine or vaccine group recommendation applies to fhir:targetDisease ( [ CodeableConcept ] ... ) ; # 0..* I Disease to be immunized against fhir:contraindicatedVaccineCode ( [ CodeableConcept ] ... ) ; # 0..* Vaccine which is contraindicated to fulfill the recommendation fhir:forecastStatus [ CodeableConcept ] ; # 1..1 Vaccine recommendation status fhir:forecastReason ( [ CodeableConcept ] ... ) ; # 0..* Vaccine administration status reason fhir:dateCriterion ( [ # 0..* Dates governing proposed immunization fhir:code [ CodeableConcept ] ; # 1..1 Type of date fhir:value [ dateTime ] ; # 1..1 Recommended date ] ... ) ; fhir:description [ markdown ] ; # 0..1 Protocol details fhir:series [ string ] ; # 0..1 Name of vaccination series fhir:doseNumber [ string ] ; # 0..1 Recommended dose number within series fhir:seriesDoses [ string ] ; # 0..1 Recommended number of doses for immunity fhir:supportingImmunization ( [ Reference(Immunization|ImmunizationEvaluation) ] ... ) ; # 0..* Past immunizations supporting recommendation fhir:supportingPatientInformation ( [ Reference(Any) ] ... ) ; # 0..* Patient observations supporting recommendation ] ... ) ; ]
Changes from both R4 and R4B
ImmunizationRecommendation | |
ImmunizationRecommendation.recommendation.targetDisease |
|
ImmunizationRecommendation.recommendation.description |
|
ImmunizationRecommendation.recommendation.doseNumber |
|
ImmunizationRecommendation.recommendation.seriesDoses |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ImmunizationRecommendation | TU | DomainResource | Guidance or advice relating to an immunization Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | Business identifier |
patient | Σ | 1..1 | Reference(Patient) | Who this profile is for |
date | Σ | 1..1 | dateTime | Date recommendation(s) created |
authority | 0..1 | Reference(Organization) | Who is responsible for protocol | |
recommendation | ΣC | 1..* | BackboneElement | Vaccine administration recommendations + Rule: One of vaccineCode or targetDisease SHALL be present |
vaccineCode | ΣC | 0..* | CodeableConcept | Vaccine or vaccine group recommendation applies to Binding: Vaccine Administered Value Set (Example) |
targetDisease | ΣC | 0..* | CodeableConcept | Disease to be immunized against Binding: Immunization Target Disease Codes (Example) |
contraindicatedVaccineCode | Σ | 0..* | CodeableConcept | Vaccine which is contraindicated to fulfill the recommendation Binding: Vaccine Administered Value Set (Example) |
forecastStatus | ?!Σ | 1..1 | CodeableConcept | Vaccine recommendation status Binding: Immunization Recommendation Status Codes (Example) |
forecastReason | Σ | 0..* | CodeableConcept | Vaccine administration status reason Binding: Immunization Recommendation Reason Codes (Example) |
dateCriterion | 0..* | BackboneElement | Dates governing proposed immunization | |
code | 1..1 | CodeableConcept | Type of date Binding: Immunization Recommendation Date Criterion Codes (Example) | |
value | 1..1 | dateTime | Recommended date | |
description | 0..1 | markdown | Protocol details | |
series | 0..1 | string | Name of vaccination series | |
doseNumber | Σ | 0..1 | string | Recommended dose number within series |
seriesDoses | 0..1 | string | Recommended number of doses for immunity | |
supportingImmunization | 0..* | Reference(Immunization | ImmunizationEvaluation) | Past immunizations supporting recommendation | |
supportingPatientInformation | 0..* | Reference(Any) | Patient observations supporting recommendation | |
Documentation for this format |
See the Extensions for this resource
XML Template
<ImmunizationRecommendation 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> <patient><!-- 1..1 Reference(Patient) Who this profile is for --></patient> <date value="[dateTime]"/><!-- 1..1 Date recommendation(s) created --> <authority><!-- 0..1 Reference(Organization) Who is responsible for protocol --></authority> <recommendation> <!-- 1..* Vaccine administration recommendations --> <vaccineCode><!-- I 0..* CodeableConcept Vaccine or vaccine group recommendation applies to --></vaccineCode> <targetDisease><!-- I 0..* CodeableConcept Disease to be immunized against --></targetDisease> <contraindicatedVaccineCode><!-- 0..* CodeableConcept Vaccine which is contraindicated to fulfill the recommendation --></contraindicatedVaccineCode> <forecastStatus><!-- 1..1 CodeableConcept Vaccine recommendation status --></forecastStatus> <forecastReason><!-- 0..* CodeableConcept Vaccine administration status reason --></forecastReason> <dateCriterion> <!-- 0..* Dates governing proposed immunization --> <code><!-- 1..1 CodeableConcept Type of date --></code> <value value="[dateTime]"/><!-- 1..1 Recommended date --> </dateCriterion> <description value="[markdown]"/><!-- 0..1 Protocol details --> <series value="[string]"/><!-- 0..1 Name of vaccination series --> <doseNumber value="[string]"/><!-- 0..1 Recommended dose number within series --> <seriesDoses value="[string]"/><!-- 0..1 Recommended number of doses for immunity --> <supportingImmunization><!-- 0..* Reference(Immunization|ImmunizationEvaluation) Past immunizations supporting recommendation --></supportingImmunization> <supportingPatientInformation><!-- 0..* Reference(Any) Patient observations supporting recommendation --></supportingPatientInformation> </recommendation> </ImmunizationRecommendation>
JSON Template
{ "resourceType" : "ImmunizationRecommendation", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Business identifier "patient" : { Reference(Patient) }, // R! Who this profile is for "date" : "<dateTime>", // R! Date recommendation(s) created "authority" : { Reference(Organization) }, // Who is responsible for protocol "recommendation" : [{ // R! Vaccine administration recommendations "vaccineCode" : [{ CodeableConcept }], // I Vaccine or vaccine group recommendation applies to "targetDisease" : [{ CodeableConcept }], // I Disease to be immunized against "contraindicatedVaccineCode" : [{ CodeableConcept }], // Vaccine which is contraindicated to fulfill the recommendation "forecastStatus" : { CodeableConcept }, // R! Vaccine recommendation status "forecastReason" : [{ CodeableConcept }], // Vaccine administration status reason "dateCriterion" : [{ // Dates governing proposed immunization "code" : { CodeableConcept }, // R! Type of date "value" : "<dateTime>" // R! Recommended date }], "description" : "<markdown>", // Protocol details "series" : "<string>", // Name of vaccination series "doseNumber" : "<string>", // Recommended dose number within series "seriesDoses" : "<string>", // Recommended number of doses for immunity "supportingImmunization" : [{ Reference(Immunization|ImmunizationEvaluation) }], // Past immunizations supporting recommendation "supportingPatientInformation" : [{ Reference(Any) }] // Patient observations supporting recommendation }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:ImmunizationRecommendation; 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:identifier ( [ Identifier ] ... ) ; # 0..* Business identifier fhir:patient [ Reference(Patient) ] ; # 1..1 Who this profile is for fhir:date [ dateTime ] ; # 1..1 Date recommendation(s) created fhir:authority [ Reference(Organization) ] ; # 0..1 Who is responsible for protocol fhir:recommendation ( [ # 1..* Vaccine administration recommendations fhir:vaccineCode ( [ CodeableConcept ] ... ) ; # 0..* I Vaccine or vaccine group recommendation applies to fhir:targetDisease ( [ CodeableConcept ] ... ) ; # 0..* I Disease to be immunized against fhir:contraindicatedVaccineCode ( [ CodeableConcept ] ... ) ; # 0..* Vaccine which is contraindicated to fulfill the recommendation fhir:forecastStatus [ CodeableConcept ] ; # 1..1 Vaccine recommendation status fhir:forecastReason ( [ CodeableConcept ] ... ) ; # 0..* Vaccine administration status reason fhir:dateCriterion ( [ # 0..* Dates governing proposed immunization fhir:code [ CodeableConcept ] ; # 1..1 Type of date fhir:value [ dateTime ] ; # 1..1 Recommended date ] ... ) ; fhir:description [ markdown ] ; # 0..1 Protocol details fhir:series [ string ] ; # 0..1 Name of vaccination series fhir:doseNumber [ string ] ; # 0..1 Recommended dose number within series fhir:seriesDoses [ string ] ; # 0..1 Recommended number of doses for immunity fhir:supportingImmunization ( [ Reference(Immunization|ImmunizationEvaluation) ] ... ) ; # 0..* Past immunizations supporting recommendation fhir:supportingPatientInformation ( [ Reference(Any) ] ... ) ; # 0..* Patient observations supporting recommendation ] ... ) ; ]
Changes from both R4 and R4B
ImmunizationRecommendation | |
ImmunizationRecommendation.recommendation.targetDisease |
|
ImmunizationRecommendation.recommendation.description |
|
ImmunizationRecommendation.recommendation.doseNumber |
|
ImmunizationRecommendation.recommendation.seriesDoses |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.
Additional definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions, the spreadsheet version & the dependency analysis
Path | ValueSet | Type | Documentation |
---|---|---|---|
ImmunizationRecommendation.recommendation.vaccineCode | VaccineAdministeredValueSet | Example | This identifies the vaccine substance administered - CVX codes. |
ImmunizationRecommendation.recommendation.targetDisease | ImmunizationTargetDiseaseCodes | Example | The value set to instantiate this attribute should be drawn from a terminologically robust code system that consists of or contains concepts to support describing the disease that the dose is being administered against. This value set is provided as a suggestive example and includes SNOMED CT concepts from the 64572001 (Disease) hierarchy. |
ImmunizationRecommendation.recommendation.contraindicatedVaccineCode | VaccineAdministeredValueSet | Example | This identifies the vaccine substance administered - CVX codes. |
ImmunizationRecommendation.recommendation.forecastStatus | ImmunizationRecommendationStatusCodes | Example | The value set to instantiate this attribute should be drawn from a terminologically robust code system that consists of or contains concepts to support describing the status of the patient towards perceived immunity against a vaccine preventable disease. This value set is provided as a suggestive example. |
ImmunizationRecommendation.recommendation.forecastReason | ImmunizationRecommendationReasonCodes | Example | The value set to instantiate this attribute should be drawn from a terminologically robust code system that consists of or contains concepts to support describing the reasons why a given recommendation status is assigned. This value set is provided as a suggestive example and includes SNOMED CT concepts. |
ImmunizationRecommendation.recommendation.dateCriterion.code | ImmunizationRecommendationDateCriterionCodes | Example | The value set to instantiate this attribute should be drawn from a terminologically robust code system that consists of or contains concepts to support the definition of dates relevant to recommendations for future doses of vaccines. This value set is provided as a suggestive example. |
UniqueKey | Level | Location | Description | Expression |
imr-1 | Rule | ImmunizationRecommendation.recommendation | One of vaccineCode or targetDisease SHALL be present | vaccineCode.exists() or targetDisease.exists() |
Search parameters for this resource. See also the full list of search parameters for this resource, and check the Extensions registry for search parameters on extensions related to 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 | Date recommendation(s) created | ImmunizationRecommendation.date | 26 Resources |
identifier | token | Business identifier | ImmunizationRecommendation.identifier | 65 Resources |
information | reference | Patient observations supporting recommendation | ImmunizationRecommendation.recommendation.supportingPatientInformation (Any) |
|
patient | reference | Who this profile is for | ImmunizationRecommendation.patient (Patient) |
65 Resources |
status | token | Vaccine recommendation status | ImmunizationRecommendation.recommendation.forecastStatus | |
support | reference | Past immunizations supporting recommendation | ImmunizationRecommendation.recommendation.supportingImmunization (Immunization, ImmunizationEvaluation) |
|
target-disease | token | Disease to be immunized against | ImmunizationRecommendation.recommendation.targetDisease | |
vaccine-type | token | Vaccine or vaccine group recommendation applies to | ImmunizationRecommendation.recommendation.vaccineCode |