HL7 Europe Base and Core FHIR IG
2.0.0-ballot - ballot 150

HL7 Europe Base and Core FHIR IG - Downloaded Version 2.0.0-ballot See the Directory of published versions

## Resource Profile: Immunization (EU core)

Official URL: http://hl7.eu/fhir/base-r5/StructureDefinition/immunization-eu-core | Version: 2.0.0-ballot
Standards status: Draft | Maturity Level: 1 | Computable Name: ImmunizationEuCore
Copyright/Legal: Copyright HL7 Europe. Licensed under creative commons public domain (CC0 1.0).

This profile sets minimum expectations for the Immunization resource common to most of the use cases.

This profile constrains the Immunization resource for the purpose of this guide.

Usages:

- Examples for this Profile: Immunization/immunization-eu-core-example

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization |  | 0..* | Immunization | Immunization event information
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
contained |  | 0..* | Resource | Contained, inline Resources
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
status | ?!Σ | 1..1 | code | Immunization status. Binding: ImmunizationStatusCodes (required)
statusReason |  | 0..1 | CodeableConcept | Reason for not performing. Binding: ImmunizationStatusReasonCodes (example)
vaccineCode | Σ | 1..1 | CodeableConcept | Vaccine administered Binding: Vaccines - IPS (preferred)
Additional Bindings | Purpose
eHDSI Vaccine | candidate
manufacturer |  | 0..1 | CodeableReference(Organization) | Vaccine manufacturer/MAH
lotNumber |  | 0..1 | string | Batch/lot number
patient | Σ | 1..1 | Reference(Patient (EU core)) | Who was immunized
Slices for occurrence[x] | Σ | 1..1 |  | Date of vaccination Slice: Unordered, Open by type:$this
occurrenceDateTime |  |  | dateTime |
occurrenceString |  |  | string |
occurrence[x]:occurrenceDateTime | Σ | 0..1 | dateTime | Vaccine administration date
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:periodOfLife |  | 0..1 | (Complex) | Many: Periods of Life URL: http://hl7.eu/fhir/extensions/StructureDefinition/periods-of-life
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.eu/fhir/extensions/StructureDefinition/periods-of-life"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: Periods of Life (preferred)
location |  | 0..1 | Reference(Location (EU core)) | Where immunization occurred
Slices for performer | Σ | 0..* | BackboneElement | Who performed event Slice: Unordered, Open by value:$this.function
performer:All Slices |  |  |  | Content/Rules for all slices
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
actor | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson) | Individual or organization who was performing
performer:administeringCentreOrHp | Σ | 0..* | BackboneElement | Administering centre
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 0..1 | CodeableConcept | What type of performance was done Binding: ImmunizationFunctionCodes (extensible) Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0443
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: AP
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
actor | Σ | 1..1 | Reference(Organization (EU core) | PractitionerRole (EU core) | Practitioner (EU core)) | Individual or organization who was performing
isSubpotent | ?!Σ | 0..1 | boolean | Dose potency
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Immunization.status | Base | required | Immunization Status Codes | 📍5.0.0 | FHIR Std.
Immunization.statusReason | Base | example | Immunization Status Reason Codes | 📍5.0.0 | FHIR Std.
Immunization.vaccineCode | Base | preferred | Vaccines - IPS | ⏿2.0.0 | tx.hl7europe.eu
Immunization.occurrence[x]:occurrenceDateTime.​extension:periodOfLife.​value[x] | Base | preferred | Periods of Life | 📦2.0.0-ballot | This IG
Immunization.performer:administeringCentreOrHp.​function | Base | extensible | Immunization Function Codes | 📍5.0.0 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Immunization | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Immunization | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | Immunization | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | Immunization | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Immunization | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from Immunization

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization |  | 0..* | Immunization | Immunization event information
status |  | 1..1 | code | Immunization status.
statusReason |  | 0..1 | CodeableConcept | Reason for not performing.
vaccineCode |  | 1..1 | CodeableConcept | Vaccine administered Binding: Vaccines - IPS (preferred)
Additional Bindings | Purpose
eHDSI Vaccine | candidate
manufacturer |  | 0..1 | CodeableReference(Organization) | Vaccine manufacturer/MAH
lotNumber |  | 0..1 | string | Batch/lot number
patient |  | 1..1 | Reference(Patient (EU core)) | Who was immunized
Slices for occurrence[x] |  | 1..1 | dateTime, string | Date of vaccination Slice: Unordered, Open by type:$this
occurrence[x]:occurrenceDateTime |  | 0..1 | dateTime | Vaccine administration date
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:periodOfLife |  | 0..1 | (Complex) | Many: Periods of Life URL: http://hl7.eu/fhir/extensions/StructureDefinition/periods-of-life
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: Periods of Life (preferred)
location |  | 0..1 | Reference(Location (EU core)) | Where immunization occurred
Slices for performer |  | 0..* | BackboneElement | Who performed event Slice: Unordered, Open by value:$this.function
performer:administeringCentreOrHp |  | 0..* | BackboneElement | Administering centre
function |  | 0..1 | CodeableConcept | What type of performance was done Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0443
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: AP
actor |  | 1..1 | Reference(Organization (EU core) | PractitionerRole (EU core) | Practitioner (EU core)) | Individual or organization who was performing
reason |  |  |  |
concept |  | 0..1 | CodeableConcept | Reasons for the administration.
protocolApplied |  |  |  |
targetDisease |  | 0..* | CodeableConcept | Vaccine preventatable disease being targeted Binding: Vaccine Target Diseases - IPS (preferred)
Additional Bindings | Purpose
eHDSI Illness and Disorder | candidate
doseNumber |  | 1..1 | string | Dose Number
seriesDoses |  | 0..1 | string | Number of doses
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
Immunization.vaccineCode | Base | preferred | Vaccines - IPS | ⏿2.0.0 | tx.hl7europe.eu
Immunization.occurrence[x]:occurrenceDateTime.​extension:periodOfLife.​value[x] | Base | preferred | Periods of Life | 📦2.0.0-ballot | This IG
Immunization.protocolApplied.​targetDisease | Base | preferred | Vaccine Target Diseases - IPS | ⏿2.0.0 | tx.hl7europe.eu

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization |  | 0..* | Immunization | Immunization event information
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: AllLanguages (required): IETF language tag for a human language
Additional Bindings | Purpose
CommonLanguages | Starter
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
identifier |  | 0..* | Identifier | Business identifier
basedOn | Σ | 0..* | Reference(CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation) | Authority that the immunization event is based on
status | ?!Σ | 1..1 | code | Immunization status. Binding: ImmunizationStatusCodes (required)
statusReason |  | 0..1 | CodeableConcept | Reason for not performing. Binding: ImmunizationStatusReasonCodes (example)
vaccineCode | Σ | 1..1 | CodeableConcept | Vaccine administered Binding: Vaccines - IPS (preferred)
Additional Bindings | Purpose
eHDSI Vaccine | candidate
administeredProduct |  | 0..1 | CodeableReference(Medication) | Product that was administered
manufacturer |  | 0..1 | CodeableReference(Organization) | Vaccine manufacturer/MAH
lotNumber |  | 0..1 | string | Batch/lot number
expirationDate |  | 0..1 | date | Vaccine expiration date
patient | Σ | 1..1 | Reference(Patient (EU core)) | Who was immunized
encounter |  | 0..1 | Reference(Encounter) | Encounter immunization was part of
supportingInformation |  | 0..* | Reference(Resource) | Additional information in support of the immunization
Slices for occurrence[x] | Σ | 1..1 |  | Date of vaccination Slice: Unordered, Open by type:$this
occurrenceDateTime |  |  | dateTime |
occurrenceString |  |  | string |
occurrence[x]:occurrenceDateTime | Σ | 0..1 | dateTime | Vaccine administration date
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:periodOfLife |  | 0..1 | (Complex) | Many: Periods of Life URL: http://hl7.eu/fhir/extensions/StructureDefinition/periods-of-life
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.eu/fhir/extensions/StructureDefinition/periods-of-life"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: Periods of Life (preferred)
value |  | 0..1 | dateTime | Primitive value for dateTime
primarySource | Σ | 0..1 | boolean | Indicates context the data was captured in
informationSource |  | 0..1 | CodeableReference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization) | Indicates the source of a reported record Binding: ImmunizationOriginCodes (example)
location |  | 0..1 | Reference(Location (EU core)) | Where immunization occurred
site |  | 0..1 | CodeableConcept | Body site vaccine was administered Binding: CodesForImmunizationSiteOfAdministration (example)
route |  | 0..1 | CodeableConcept | How vaccine entered body Binding: ImmunizationRouteCodes (example)
doseQuantity |  | 0..1 | SimpleQuantity(5.0.0) | Amount of vaccine administered
Slices for performer | Σ | 0..* | BackboneElement | Who performed event Slice: Unordered, Open by value:$this.function
performer:All Slices |  |  |  | Content/Rules for all slices
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 0..1 | CodeableConcept | What type of performance was done Binding: ImmunizationFunctionCodes (extensible)
actor | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson) | Individual or organization who was performing
performer:administeringCentreOrHp | Σ | 0..* | BackboneElement | Administering centre
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 0..1 | CodeableConcept | What type of performance was done Binding: ImmunizationFunctionCodes (extensible) Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0443
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: AP
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
actor | Σ | 1..1 | Reference(Organization (EU core) | PractitionerRole (EU core) | Practitioner (EU core)) | Individual or organization who was performing
note | Σ | 0..* | Annotation | Additional immunization notes
reason |  | 0..* | CodeableReference(Condition | Observation | DiagnosticReport) | Why immunization occurred Binding: ImmunizationReasonCodes (example)
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
concept | Σ | 0..1 | CodeableConcept | Reasons for the administration.
reference | Σ | 0..1 | Reference() | Reference to a resource (by instance)
isSubpotent | ?!Σ | 0..1 | boolean | Dose potency
subpotentReason |  | 0..* | CodeableConcept | Reason for being subpotent Binding: ImmunizationSubpotentReason (example): The reason why a dose is considered to be subpotent.
programEligibility |  | 0..* | BackboneElement | Patient eligibility for a specific vaccination program
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
program |  | 1..1 | CodeableConcept | The program that eligibility is declared for Binding: CodesForVaccineFundingPrograms (example)
programStatus |  | 1..1 | CodeableConcept | The patient's eligibility status for the program Binding: ImmunizationProgramEligibility (example)
fundingSource |  | 0..1 | CodeableConcept | Funding source for the vaccine Binding: ImmunizationFundingSource (example)
reaction |  | 0..* | BackboneElement | Details of a reaction that follows immunization
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
date |  | 0..1 | dateTime | When reaction started
manifestation |  | 0..1 | CodeableReference(Observation) | Additional information on reaction
reported |  | 0..1 | boolean | Indicates self-reported reaction
protocolApplied |  | 0..* | BackboneElement | Protocol followed by the provider
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
series |  | 0..1 | string | Name of vaccine series
authority |  | 0..1 | Reference(Organization) | Who is responsible for publishing the recommendations
targetDisease |  | 0..* | CodeableConcept | Vaccine preventatable disease being targeted Binding: Vaccine Target Diseases - IPS (preferred)
Additional Bindings | Purpose
eHDSI Illness and Disorder | candidate
doseNumber |  | 1..1 | string | Dose Number
seriesDoses |  | 0..1 | string | Number of doses
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Immunization.language | Base | required | All Languages | 📍5.0.0 | FHIR Std.
Immunization.status | Base | required | Immunization Status Codes | 📍5.0.0 | FHIR Std.
Immunization.statusReason | Base | example | Immunization Status Reason Codes | 📍5.0.0 | FHIR Std.
Immunization.vaccineCode | Base | preferred | Vaccines - IPS | ⏿2.0.0 | tx.hl7europe.eu
Immunization.occurrence[x]:occurrenceDateTime.​extension:periodOfLife.​value[x] | Base | preferred | Periods of Life | 📦2.0.0-ballot | This IG
Immunization.informationSource | Base | example | Immunization Origin Codes | 📍5.0.0 | FHIR Std.
Immunization.site | Base | example | Codes for Immunization Site of Administration | 📍5.0.0 | FHIR Std.
Immunization.route | Base | example | Immunization Route Codes | 📍5.0.0 | FHIR Std.
Immunization.performer.​function | Base | extensible | Immunization Function Codes | 📍5.0.0 | FHIR Std.
Immunization.performer:administeringCentreOrHp.​function | Base | extensible | Immunization Function Codes | 📍5.0.0 | FHIR Std.
Immunization.reason | Base | example | Immunization Reason Codes | 📍5.0.0 | FHIR Std.
Immunization.subpotentReason | Base | example | Immunization Subpotent Reason | 📍5.0.0 | FHIR Std.
Immunization.programEligibility.​program | Base | example | Vaccine Funding Programs | 📍5.0.0 | FHIR Std.
Immunization.programEligibility.​programStatus | Base | example | Immunization Program Eligibility | 📍5.0.0 | FHIR Std.
Immunization.fundingSource | Base | example | Immunization Funding Source | 📍5.0.0 | FHIR Std.
Immunization.protocolApplied.​targetDisease | Base | preferred | Vaccine Target Diseases - IPS | ⏿2.0.0 | tx.hl7europe.eu

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Immunization | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Immunization | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | Immunization | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | Immunization | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Immunization | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from Immunization

Summary

Structures

This structure refers to these other structures:

- Patient (EU core) (http://hl7.eu/fhir/base-r5/StructureDefinition/patient-eu-core)
- Location (EU core) (http://hl7.eu/fhir/base-r5/StructureDefinition/location-eu-core)
- Organization (EU core) (http://hl7.eu/fhir/base-r5/StructureDefinition/organization-eu-core)
- PractitionerRole (EU core) (http://hl7.eu/fhir/base-r5/StructureDefinition/practitionerRole-eu-core)
- Practitioner (EU core) (http://hl7.eu/fhir/base-r5/StructureDefinition/practitioner-eu-core)

Extensions

This structure refers to these extensions:

- http://hl7.eu/fhir/extensions/StructureDefinition/periods-of-life

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of Immunization.occurrence[x]
- The element 1 is sliced based on the value of Immunization.performer

Maturity: 1

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization |  | 0..* | Immunization | Immunization event information
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
contained |  | 0..* | Resource | Contained, inline Resources
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
status | ?!Σ | 1..1 | code | Immunization status. Binding: ImmunizationStatusCodes (required)
statusReason |  | 0..1 | CodeableConcept | Reason for not performing. Binding: ImmunizationStatusReasonCodes (example)
vaccineCode | Σ | 1..1 | CodeableConcept | Vaccine administered Binding: Vaccines - IPS (preferred)
Additional Bindings | Purpose
eHDSI Vaccine | candidate
manufacturer |  | 0..1 | CodeableReference(Organization) | Vaccine manufacturer/MAH
lotNumber |  | 0..1 | string | Batch/lot number
patient | Σ | 1..1 | Reference(Patient (EU core)) | Who was immunized
Slices for occurrence[x] | Σ | 1..1 |  | Date of vaccination Slice: Unordered, Open by type:$this
occurrenceDateTime |  |  | dateTime |
occurrenceString |  |  | string |
occurrence[x]:occurrenceDateTime | Σ | 0..1 | dateTime | Vaccine administration date
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:periodOfLife |  | 0..1 | (Complex) | Many: Periods of Life URL: http://hl7.eu/fhir/extensions/StructureDefinition/periods-of-life
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.eu/fhir/extensions/StructureDefinition/periods-of-life"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: Periods of Life (preferred)
location |  | 0..1 | Reference(Location (EU core)) | Where immunization occurred
Slices for performer | Σ | 0..* | BackboneElement | Who performed event Slice: Unordered, Open by value:$this.function
performer:All Slices |  |  |  | Content/Rules for all slices
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
actor | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson) | Individual or organization who was performing
performer:administeringCentreOrHp | Σ | 0..* | BackboneElement | Administering centre
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 0..1 | CodeableConcept | What type of performance was done Binding: ImmunizationFunctionCodes (extensible) Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0443
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: AP
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
actor | Σ | 1..1 | Reference(Organization (EU core) | PractitionerRole (EU core) | Practitioner (EU core)) | Individual or organization who was performing
isSubpotent | ?!Σ | 0..1 | boolean | Dose potency
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Immunization.status | Base | required | Immunization Status Codes | 📍5.0.0 | FHIR Std.
Immunization.statusReason | Base | example | Immunization Status Reason Codes | 📍5.0.0 | FHIR Std.
Immunization.vaccineCode | Base | preferred | Vaccines - IPS | ⏿2.0.0 | tx.hl7europe.eu
Immunization.occurrence[x]:occurrenceDateTime.​extension:periodOfLife.​value[x] | Base | preferred | Periods of Life | 📦2.0.0-ballot | This IG
Immunization.performer:administeringCentreOrHp.​function | Base | extensible | Immunization Function Codes | 📍5.0.0 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Immunization | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Immunization | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | Immunization | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | Immunization | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Immunization | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Differential View

This structure is derived from Immunization

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization |  | 0..* | Immunization | Immunization event information
status |  | 1..1 | code | Immunization status.
statusReason |  | 0..1 | CodeableConcept | Reason for not performing.
vaccineCode |  | 1..1 | CodeableConcept | Vaccine administered Binding: Vaccines - IPS (preferred)
Additional Bindings | Purpose
eHDSI Vaccine | candidate
manufacturer |  | 0..1 | CodeableReference(Organization) | Vaccine manufacturer/MAH
lotNumber |  | 0..1 | string | Batch/lot number
patient |  | 1..1 | Reference(Patient (EU core)) | Who was immunized
Slices for occurrence[x] |  | 1..1 | dateTime, string | Date of vaccination Slice: Unordered, Open by type:$this
occurrence[x]:occurrenceDateTime |  | 0..1 | dateTime | Vaccine administration date
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:periodOfLife |  | 0..1 | (Complex) | Many: Periods of Life URL: http://hl7.eu/fhir/extensions/StructureDefinition/periods-of-life
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: Periods of Life (preferred)
location |  | 0..1 | Reference(Location (EU core)) | Where immunization occurred
Slices for performer |  | 0..* | BackboneElement | Who performed event Slice: Unordered, Open by value:$this.function
performer:administeringCentreOrHp |  | 0..* | BackboneElement | Administering centre
function |  | 0..1 | CodeableConcept | What type of performance was done Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0443
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: AP
actor |  | 1..1 | Reference(Organization (EU core) | PractitionerRole (EU core) | Practitioner (EU core)) | Individual or organization who was performing
reason |  |  |  |
concept |  | 0..1 | CodeableConcept | Reasons for the administration.
protocolApplied |  |  |  |
targetDisease |  | 0..* | CodeableConcept | Vaccine preventatable disease being targeted Binding: Vaccine Target Diseases - IPS (preferred)
Additional Bindings | Purpose
eHDSI Illness and Disorder | candidate
doseNumber |  | 1..1 | string | Dose Number
seriesDoses |  | 0..1 | string | Number of doses
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
Immunization.vaccineCode | Base | preferred | Vaccines - IPS | ⏿2.0.0 | tx.hl7europe.eu
Immunization.occurrence[x]:occurrenceDateTime.​extension:periodOfLife.​value[x] | Base | preferred | Periods of Life | 📦2.0.0-ballot | This IG
Immunization.protocolApplied.​targetDisease | Base | preferred | Vaccine Target Diseases - IPS | ⏿2.0.0 | tx.hl7europe.eu

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization |  | 0..* | Immunization | Immunization event information
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: AllLanguages (required): IETF language tag for a human language
Additional Bindings | Purpose
CommonLanguages | Starter
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
identifier |  | 0..* | Identifier | Business identifier
basedOn | Σ | 0..* | Reference(CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation) | Authority that the immunization event is based on
status | ?!Σ | 1..1 | code | Immunization status. Binding: ImmunizationStatusCodes (required)
statusReason |  | 0..1 | CodeableConcept | Reason for not performing. Binding: ImmunizationStatusReasonCodes (example)
vaccineCode | Σ | 1..1 | CodeableConcept | Vaccine administered Binding: Vaccines - IPS (preferred)
Additional Bindings | Purpose
eHDSI Vaccine | candidate
administeredProduct |  | 0..1 | CodeableReference(Medication) | Product that was administered
manufacturer |  | 0..1 | CodeableReference(Organization) | Vaccine manufacturer/MAH
lotNumber |  | 0..1 | string | Batch/lot number
expirationDate |  | 0..1 | date | Vaccine expiration date
patient | Σ | 1..1 | Reference(Patient (EU core)) | Who was immunized
encounter |  | 0..1 | Reference(Encounter) | Encounter immunization was part of
supportingInformation |  | 0..* | Reference(Resource) | Additional information in support of the immunization
Slices for occurrence[x] | Σ | 1..1 |  | Date of vaccination Slice: Unordered, Open by type:$this
occurrenceDateTime |  |  | dateTime |
occurrenceString |  |  | string |
occurrence[x]:occurrenceDateTime | Σ | 0..1 | dateTime | Vaccine administration date
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:periodOfLife |  | 0..1 | (Complex) | Many: Periods of Life URL: http://hl7.eu/fhir/extensions/StructureDefinition/periods-of-life
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.eu/fhir/extensions/StructureDefinition/periods-of-life"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: Periods of Life (preferred)
value |  | 0..1 | dateTime | Primitive value for dateTime
primarySource | Σ | 0..1 | boolean | Indicates context the data was captured in
informationSource |  | 0..1 | CodeableReference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization) | Indicates the source of a reported record Binding: ImmunizationOriginCodes (example)
location |  | 0..1 | Reference(Location (EU core)) | Where immunization occurred
site |  | 0..1 | CodeableConcept | Body site vaccine was administered Binding: CodesForImmunizationSiteOfAdministration (example)
route |  | 0..1 | CodeableConcept | How vaccine entered body Binding: ImmunizationRouteCodes (example)
doseQuantity |  | 0..1 | SimpleQuantity(5.0.0) | Amount of vaccine administered
Slices for performer | Σ | 0..* | BackboneElement | Who performed event Slice: Unordered, Open by value:$this.function
performer:All Slices |  |  |  | Content/Rules for all slices
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 0..1 | CodeableConcept | What type of performance was done Binding: ImmunizationFunctionCodes (extensible)
actor | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson) | Individual or organization who was performing
performer:administeringCentreOrHp | Σ | 0..* | BackboneElement | Administering centre
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 0..1 | CodeableConcept | What type of performance was done Binding: ImmunizationFunctionCodes (extensible) Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0443
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: AP
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
actor | Σ | 1..1 | Reference(Organization (EU core) | PractitionerRole (EU core) | Practitioner (EU core)) | Individual or organization who was performing
note | Σ | 0..* | Annotation | Additional immunization notes
reason |  | 0..* | CodeableReference(Condition | Observation | DiagnosticReport) | Why immunization occurred Binding: ImmunizationReasonCodes (example)
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
concept | Σ | 0..1 | CodeableConcept | Reasons for the administration.
reference | Σ | 0..1 | Reference() | Reference to a resource (by instance)
isSubpotent | ?!Σ | 0..1 | boolean | Dose potency
subpotentReason |  | 0..* | CodeableConcept | Reason for being subpotent Binding: ImmunizationSubpotentReason (example): The reason why a dose is considered to be subpotent.
programEligibility |  | 0..* | BackboneElement | Patient eligibility for a specific vaccination program
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
program |  | 1..1 | CodeableConcept | The program that eligibility is declared for Binding: CodesForVaccineFundingPrograms (example)
programStatus |  | 1..1 | CodeableConcept | The patient's eligibility status for the program Binding: ImmunizationProgramEligibility (example)
fundingSource |  | 0..1 | CodeableConcept | Funding source for the vaccine Binding: ImmunizationFundingSource (example)
reaction |  | 0..* | BackboneElement | Details of a reaction that follows immunization
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
date |  | 0..1 | dateTime | When reaction started
manifestation |  | 0..1 | CodeableReference(Observation) | Additional information on reaction
reported |  | 0..1 | boolean | Indicates self-reported reaction
protocolApplied |  | 0..* | BackboneElement | Protocol followed by the provider
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
series |  | 0..1 | string | Name of vaccine series
authority |  | 0..1 | Reference(Organization) | Who is responsible for publishing the recommendations
targetDisease |  | 0..* | CodeableConcept | Vaccine preventatable disease being targeted Binding: Vaccine Target Diseases - IPS (preferred)
Additional Bindings | Purpose
eHDSI Illness and Disorder | candidate
doseNumber |  | 1..1 | string | Dose Number
seriesDoses |  | 0..1 | string | Number of doses
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Immunization.language | Base | required | All Languages | 📍5.0.0 | FHIR Std.
Immunization.status | Base | required | Immunization Status Codes | 📍5.0.0 | FHIR Std.
Immunization.statusReason | Base | example | Immunization Status Reason Codes | 📍5.0.0 | FHIR Std.
Immunization.vaccineCode | Base | preferred | Vaccines - IPS | ⏿2.0.0 | tx.hl7europe.eu
Immunization.occurrence[x]:occurrenceDateTime.​extension:periodOfLife.​value[x] | Base | preferred | Periods of Life | 📦2.0.0-ballot | This IG
Immunization.informationSource | Base | example | Immunization Origin Codes | 📍5.0.0 | FHIR Std.
Immunization.site | Base | example | Codes for Immunization Site of Administration | 📍5.0.0 | FHIR Std.
Immunization.route | Base | example | Immunization Route Codes | 📍5.0.0 | FHIR Std.
Immunization.performer.​function | Base | extensible | Immunization Function Codes | 📍5.0.0 | FHIR Std.
Immunization.performer:administeringCentreOrHp.​function | Base | extensible | Immunization Function Codes | 📍5.0.0 | FHIR Std.
Immunization.reason | Base | example | Immunization Reason Codes | 📍5.0.0 | FHIR Std.
Immunization.subpotentReason | Base | example | Immunization Subpotent Reason | 📍5.0.0 | FHIR Std.
Immunization.programEligibility.​program | Base | example | Vaccine Funding Programs | 📍5.0.0 | FHIR Std.
Immunization.programEligibility.​programStatus | Base | example | Immunization Program Eligibility | 📍5.0.0 | FHIR Std.
Immunization.fundingSource | Base | example | Immunization Funding Source | 📍5.0.0 | FHIR Std.
Immunization.protocolApplied.​targetDisease | Base | preferred | Vaccine Target Diseases - IPS | ⏿2.0.0 | tx.hl7europe.eu

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Immunization | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Immunization | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | Immunization | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | Immunization | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Immunization | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from Immunization

Summary

Structures

This structure refers to these other structures:

- Patient (EU core) (http://hl7.eu/fhir/base-r5/StructureDefinition/patient-eu-core)
- Location (EU core) (http://hl7.eu/fhir/base-r5/StructureDefinition/location-eu-core)
- Organization (EU core) (http://hl7.eu/fhir/base-r5/StructureDefinition/organization-eu-core)
- PractitionerRole (EU core) (http://hl7.eu/fhir/base-r5/StructureDefinition/practitionerRole-eu-core)
- Practitioner (EU core) (http://hl7.eu/fhir/base-r5/StructureDefinition/practitioner-eu-core)

Extensions

This structure refers to these extensions:

- http://hl7.eu/fhir/extensions/StructureDefinition/periods-of-life

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of Immunization.occurrence[x]
- The element 1 is sliced based on the value of Immunization.performer

Maturity: 1

Other representations of profile: CSV, Excel, Schematron