This page is part of the US Core (v3.1.0: STU3) based on FHIR R4. The current version which supercedes this version is 5.0.1. For a full list of available versions, see the Directory of published versions
StructureDefinition-us-core-immunization
This profile sets minimum expectations for the Immunization resource to record, fetch and search immunization history associated with a patient. It identifies which core elements, extensions, vocabularies and value sets SHALL be present in the resource when using this profile.
Example Usage Scenarios:
The following are example usage scenarios for the US Core-Core Immunization profile:
- Query for immunizations belonging to a Patient
- Record or update immunizations belonging to a Patient
Mandatory and Must Support Data Elements
The following data-elements are mandatory (i.e data MUST be present) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.
Each Immunization must have:
- a status*
- a vaccine code that identifies the kind of vaccine administered
- a date the vaccine was administered
- a patient
Each Immunization must support:
- a statusReason if the vaccine wasn’t given
Profile specific implementation guidance:
- *Use the status code:
not-done
to represent that an immunization was not given. - NDC codes as a translational data element: Based upon the 2015 Edition Certification Requirements, CVX vaccine codes are required and the NDC vaccine codes SHOULD be supported as translations to them. A NDC to CVX ConceptMap is provided and is based upon the CDC’s CVX crosswalk table. A translation is illustrated in the example below.
Examples
Formal Views of Profile Content
Description of Profiles, Differentials, and Snapshots.
The official URL for this profile is:
http://hl7.org/fhir/us/core/StructureDefinition/us-core-immunization
Published on Mon Aug 26 00:00:00 AEST 2019 as active by the HL7 US Realm Steering Committee.
This profile builds on Immunization
Immunization
Summary of the Mandatory Requirements
- A code in
Immunization.status
with a required binding to Immunization Status Codes - A CodeableConcept in
Immunization.vaccineCode
with an extensible binding to US Core Vaccine Administered Value Set (CVX) with the following constraints: SHOULD have a translation to the NDC value set - A Patient Reference in
Immunization.patient
- A dateTime in
Immunization.occurrence[x]
- A boolean in
Immunization.primarySource
Summary of the Must Support Requirements
- A CodeableConcept in
Immunization.statusReason
with an example binding to Immunization Status Reason Codes
Summary of Constraints
- SHOULD have a translation to the NDC value set
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | |||
![]() ![]() ![]() | S | 1..1 | code | Binding: ImmunizationStatusCodes (required) |
![]() ![]() ![]() | S | 0..1 | CodeableConcept | Binding: ImmunizationStatusReasonCodes (example) |
![]() ![]() ![]() | SI | 1..1 | CodeableConcept | Vaccine Product Type (bind to CVX) Binding: US Core Vaccine Administered Value Set (CVX) (extensible) us-core-1: SHOULD have a translation to the NDC value set |
![]() ![]() ![]() | S | 1..1 | Reference(US Core Patient Profile) | |
![]() ![]() ![]() | S | 1..1 | ||
![]() ![]() ![]() ![]() | dateTime | |||
![]() ![]() ![]() ![]() | string | |||
![]() ![]() ![]() | S | 1..1 | boolean | |
![]() |
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | I | 0..* | Immunization event information | |
![]() ![]() ![]() | Σ | 0..1 | string | Logical id of this artifact |
![]() ![]() ![]() | ΣI | 0..1 | Meta | Metadata about the resource |
![]() ![]() ![]() | ?!ΣI | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() ![]() | I | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages |
![]() ![]() ![]() | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
![]() ![]() ![]() | 0..* | Resource | Contained, inline Resources | |
![]() ![]() ![]() | I | 0..* | Extension | Additional content defined by implementations |
![]() ![]() ![]() | ?!I | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() ![]() | I | 0..* | Identifier | Business identifier |
![]() ![]() ![]() | ?!SΣI | 1..1 | code | completed | entered-in-error | not-done Binding: ImmunizationStatusCodes (required) |
![]() ![]() ![]() | SI | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (example) |
![]() ![]() ![]() | SΣI | 1..1 | CodeableConcept | Vaccine Product Type (bind to CVX) Binding: US Core Vaccine Administered Value Set (CVX) (extensible) us-core-1: SHOULD have a translation to the NDC value set |
![]() ![]() ![]() | SΣI | 1..1 | Reference(US Core Patient Profile) | Who was immunized |
![]() ![]() ![]() | I | 0..1 | Reference(Encounter) | Encounter immunization was part of |
![]() ![]() ![]() | SΣI | 1..1 | Vaccine administration date | |
![]() ![]() ![]() ![]() | dateTime | |||
![]() ![]() ![]() ![]() | string | |||
![]() ![]() ![]() | I | 0..1 | dateTime | When the immunization was first captured in the subject's record |
![]() ![]() ![]() | SΣI | 1..1 | boolean | Indicates context the data was recorded in |
![]() ![]() ![]() | I | 0..1 | CodeableConcept | Indicates the source of a secondarily reported record Binding: ImmunizationOriginCodes (example) |
![]() ![]() ![]() | I | 0..1 | Reference(Location) | Where immunization occurred |
![]() ![]() ![]() | I | 0..1 | Reference(Organization) | Vaccine manufacturer |
![]() ![]() ![]() | I | 0..1 | string | Vaccine lot number |
![]() ![]() ![]() | I | 0..1 | date | Vaccine expiration date |
![]() ![]() ![]() | I | 0..1 | CodeableConcept | Body site vaccine was administered Binding: CodesForImmunizationSiteOfAdministration (example) |
![]() ![]() ![]() | I | 0..1 | CodeableConcept | How vaccine entered body Binding: ImmunizationRouteCodes (example) |
![]() ![]() ![]() | I | 0..1 | SimpleQuantity | Amount of vaccine administered |
![]() ![]() ![]() | ΣI | 0..* | BackboneElement | Who performed event |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | I | 0..* | Extension | Additional content defined by implementations |
![]() ![]() ![]() ![]() | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | ΣI | 0..1 | CodeableConcept | What type of performance was done Binding: ImmunizationFunctionCodes (extensible) |
![]() ![]() ![]() ![]() | ΣI | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing |
![]() ![]() ![]() | ΣI | 0..* | Annotation | Additional immunization notes |
![]() ![]() ![]() | I | 0..* | CodeableConcept | Why immunization occurred Binding: ImmunizationReasonCodes (example) |
![]() ![]() ![]() | I | 0..* | Reference(Condition | Observation | DiagnosticReport) | Why immunization occurred |
![]() ![]() ![]() | ?!ΣI | 0..1 | boolean | Dose potency |
![]() ![]() ![]() | I | 0..* | CodeableConcept | Reason for being subpotent Binding: ImmunizationSubpotentReason (example) |
![]() ![]() ![]() | I | 0..* | BackboneElement | Educational material presented to patient imm-1: One of documentType or reference SHALL be present |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | I | 0..* | Extension | Additional content defined by implementations |
![]() ![]() ![]() ![]() | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | I | 0..1 | string | Educational material document identifier |
![]() ![]() ![]() ![]() | I | 0..1 | uri | Educational material reference pointer |
![]() ![]() ![]() ![]() | I | 0..1 | dateTime | Educational material publication date |
![]() ![]() ![]() ![]() | I | 0..1 | dateTime | Educational material presentation date |
![]() ![]() ![]() | I | 0..* | CodeableConcept | Patient eligibility for a vaccination program Binding: ImmunizationProgramEligibility (example) |
![]() ![]() ![]() | I | 0..1 | CodeableConcept | Funding source for the vaccine Binding: ImmunizationFundingSource (example) |
![]() ![]() ![]() | I | 0..* | BackboneElement | Details of a reaction that follows immunization |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | I | 0..* | Extension | Additional content defined by implementations |
![]() ![]() ![]() ![]() | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | I | 0..1 | dateTime | When reaction started |
![]() ![]() ![]() ![]() | I | 0..1 | Reference(Observation) | Additional information on reaction |
![]() ![]() ![]() ![]() | I | 0..1 | boolean | Indicates self-reported reaction |
![]() ![]() ![]() | I | 0..* | BackboneElement | Protocol followed by the provider |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | I | 0..* | Extension | Additional content defined by implementations |
![]() ![]() ![]() ![]() | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | I | 0..1 | string | Name of vaccine series |
![]() ![]() ![]() ![]() | I | 0..1 | Reference(Organization) | Who is responsible for publishing the recommendations |
![]() ![]() ![]() ![]() | I | 0..* | CodeableConcept | Vaccine preventatable disease being targetted Binding: ImmunizationTargetDiseaseCodes (example) |
![]() ![]() ![]() ![]() | I | 1..1 | Dose number within series | |
![]() ![]() ![]() ![]() ![]() | positiveInt | |||
![]() ![]() ![]() ![]() ![]() | string | |||
![]() ![]() ![]() ![]() | I | 0..1 | Recommended number of doses for immunity | |
![]() ![]() ![]() ![]() ![]() | positiveInt | |||
![]() ![]() ![]() ![]() ![]() | string | |||
![]() |
Immunization
Summary of the Mandatory Requirements
- A code in
Immunization.status
with a required binding to Immunization Status Codes - A CodeableConcept in
Immunization.vaccineCode
with an extensible binding to US Core Vaccine Administered Value Set (CVX) with the following constraints: SHOULD have a translation to the NDC value set - A Patient Reference in
Immunization.patient
- A dateTime in
Immunization.occurrence[x]
- A boolean in
Immunization.primarySource
Summary of the Must Support Requirements
- A CodeableConcept in
Immunization.statusReason
with an example binding to Immunization Status Reason Codes
Summary of Constraints
- SHOULD have a translation to the NDC value set
Differential View
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | |||
![]() ![]() ![]() | S | 1..1 | code | Binding: ImmunizationStatusCodes (required) |
![]() ![]() ![]() | S | 0..1 | CodeableConcept | Binding: ImmunizationStatusReasonCodes (example) |
![]() ![]() ![]() | SI | 1..1 | CodeableConcept | Vaccine Product Type (bind to CVX) Binding: US Core Vaccine Administered Value Set (CVX) (extensible) us-core-1: SHOULD have a translation to the NDC value set |
![]() ![]() ![]() | S | 1..1 | Reference(US Core Patient Profile) | |
![]() ![]() ![]() | S | 1..1 | ||
![]() ![]() ![]() ![]() | dateTime | |||
![]() ![]() ![]() ![]() | string | |||
![]() ![]() ![]() | S | 1..1 | boolean | |
![]() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | I | 0..* | Immunization event information | |
![]() ![]() ![]() | Σ | 0..1 | string | Logical id of this artifact |
![]() ![]() ![]() | ΣI | 0..1 | Meta | Metadata about the resource |
![]() ![]() ![]() | ?!ΣI | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() ![]() | I | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages |
![]() ![]() ![]() | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
![]() ![]() ![]() | 0..* | Resource | Contained, inline Resources | |
![]() ![]() ![]() | I | 0..* | Extension | Additional content defined by implementations |
![]() ![]() ![]() | ?!I | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() ![]() | I | 0..* | Identifier | Business identifier |
![]() ![]() ![]() | ?!SΣI | 1..1 | code | completed | entered-in-error | not-done Binding: ImmunizationStatusCodes (required) |
![]() ![]() ![]() | SI | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (example) |
![]() ![]() ![]() | SΣI | 1..1 | CodeableConcept | Vaccine Product Type (bind to CVX) Binding: US Core Vaccine Administered Value Set (CVX) (extensible) us-core-1: SHOULD have a translation to the NDC value set |
![]() ![]() ![]() | SΣI | 1..1 | Reference(US Core Patient Profile) | Who was immunized |
![]() ![]() ![]() | I | 0..1 | Reference(Encounter) | Encounter immunization was part of |
![]() ![]() ![]() | SΣI | 1..1 | Vaccine administration date | |
![]() ![]() ![]() ![]() | dateTime | |||
![]() ![]() ![]() ![]() | string | |||
![]() ![]() ![]() | I | 0..1 | dateTime | When the immunization was first captured in the subject's record |
![]() ![]() ![]() | SΣI | 1..1 | boolean | Indicates context the data was recorded in |
![]() ![]() ![]() | I | 0..1 | CodeableConcept | Indicates the source of a secondarily reported record Binding: ImmunizationOriginCodes (example) |
![]() ![]() ![]() | I | 0..1 | Reference(Location) | Where immunization occurred |
![]() ![]() ![]() | I | 0..1 | Reference(Organization) | Vaccine manufacturer |
![]() ![]() ![]() | I | 0..1 | string | Vaccine lot number |
![]() ![]() ![]() | I | 0..1 | date | Vaccine expiration date |
![]() ![]() ![]() | I | 0..1 | CodeableConcept | Body site vaccine was administered Binding: CodesForImmunizationSiteOfAdministration (example) |
![]() ![]() ![]() | I | 0..1 | CodeableConcept | How vaccine entered body Binding: ImmunizationRouteCodes (example) |
![]() ![]() ![]() | I | 0..1 | SimpleQuantity | Amount of vaccine administered |
![]() ![]() ![]() | ΣI | 0..* | BackboneElement | Who performed event |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | I | 0..* | Extension | Additional content defined by implementations |
![]() ![]() ![]() ![]() | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | ΣI | 0..1 | CodeableConcept | What type of performance was done Binding: ImmunizationFunctionCodes (extensible) |
![]() ![]() ![]() ![]() | ΣI | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing |
![]() ![]() ![]() | ΣI | 0..* | Annotation | Additional immunization notes |
![]() ![]() ![]() | I | 0..* | CodeableConcept | Why immunization occurred Binding: ImmunizationReasonCodes (example) |
![]() ![]() ![]() | I | 0..* | Reference(Condition | Observation | DiagnosticReport) | Why immunization occurred |
![]() ![]() ![]() | ?!ΣI | 0..1 | boolean | Dose potency |
![]() ![]() ![]() | I | 0..* | CodeableConcept | Reason for being subpotent Binding: ImmunizationSubpotentReason (example) |
![]() ![]() ![]() | I | 0..* | BackboneElement | Educational material presented to patient imm-1: One of documentType or reference SHALL be present |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | I | 0..* | Extension | Additional content defined by implementations |
![]() ![]() ![]() ![]() | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | I | 0..1 | string | Educational material document identifier |
![]() ![]() ![]() ![]() | I | 0..1 | uri | Educational material reference pointer |
![]() ![]() ![]() ![]() | I | 0..1 | dateTime | Educational material publication date |
![]() ![]() ![]() ![]() | I | 0..1 | dateTime | Educational material presentation date |
![]() ![]() ![]() | I | 0..* | CodeableConcept | Patient eligibility for a vaccination program Binding: ImmunizationProgramEligibility (example) |
![]() ![]() ![]() | I | 0..1 | CodeableConcept | Funding source for the vaccine Binding: ImmunizationFundingSource (example) |
![]() ![]() ![]() | I | 0..* | BackboneElement | Details of a reaction that follows immunization |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | I | 0..* | Extension | Additional content defined by implementations |
![]() ![]() ![]() ![]() | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | I | 0..1 | dateTime | When reaction started |
![]() ![]() ![]() ![]() | I | 0..1 | Reference(Observation) | Additional information on reaction |
![]() ![]() ![]() ![]() | I | 0..1 | boolean | Indicates self-reported reaction |
![]() ![]() ![]() | I | 0..* | BackboneElement | Protocol followed by the provider |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | I | 0..* | Extension | Additional content defined by implementations |
![]() ![]() ![]() ![]() | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | I | 0..1 | string | Name of vaccine series |
![]() ![]() ![]() ![]() | I | 0..1 | Reference(Organization) | Who is responsible for publishing the recommendations |
![]() ![]() ![]() ![]() | I | 0..* | CodeableConcept | Vaccine preventatable disease being targetted Binding: ImmunizationTargetDiseaseCodes (example) |
![]() ![]() ![]() ![]() | I | 1..1 | Dose number within series | |
![]() ![]() ![]() ![]() ![]() | positiveInt | |||
![]() ![]() ![]() ![]() ![]() | string | |||
![]() ![]() ![]() ![]() | I | 0..1 | Recommended number of doses for immunity | |
![]() ![]() ![]() ![]() ![]() | positiveInt | |||
![]() ![]() ![]() ![]() ![]() | string | |||
![]() |
Downloads: StructureDefinition: (XML, JSON), Schema: XML Schematron
Quick Start
Below is an overview of the required set of RESTful FHIR interactions - for example, search and read operations - for this profile. See the Conformance requirements for a complete list of supported RESTful interactions for this IG.
- See the General Guidance section for additional rules and expectations when a server requires status parameters.
- See the General Guidance section for additional guidance on searching for multiple patients.
Mandatory Search Parameters:
The following search parameters and search parameter combinations SHALL be supported.:
-
SHALL support searching for all immunizations for a patient using the
patient
search parameter:GET [base]/Immunization?patient=[reference]
Example:
- GET [base]/Immunization?patient=1137192
Implementation Notes: Fetches a bundle of all Immunization resources for the specified patient (how to search by reference)
Optional Search Parameters:
The following search parameter combinations SHOULD be supported.:
- SHOULD support searching using the combination of the
patient
anddate
search parameters:- including support for these
date
comparators:gt,lt,ge,le
- including optional support for composite AND search on
date
(e.g.date=[date]&date=[date]]&...
)
GET [base]/Immunization?patient=[reference]&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}
Example:
- GET [base]/Immunization?patient=1137192&date=ge2019-01-14
Implementation Notes: Fetches a bundle of all Immunization resources for the specified patient and date (how to search by date and how to search by reference)
- including support for these
-
SHOULD support searching using the combination of the
patient
andstatus
search parameters:GET [base]/Immunization?patient=[reference]&status={[system]}|[code]
Example:
- GET [base]/Immunization?patient=1137192&status=completed
Implementation Notes: Fetches a bundle of all Immunization resources for the specified patient and status (how to search by reference and how to search by date)