Medtech ALEX® AU Implementation Guide
1.0.0 - Trial Use

Medtech ALEX® AU Implementation Guide - Local Development build (v1.0.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

## Resource Profile: Immunisation

Official URL: https://alexapi.medtechglobal.com.au/fhir/StructureDefinition/alex-immunisation | Version: 1.0.0
Active as of 2026-01-12 | Computable Name: AlexImmunisation

The Immunisation exposed by ALEX

Usages:

- Derived from this Profile: Immunisation IPS Profile
- Use this Profile: Immunisation Bundle
- Examples for this Profile: Immunization/immunisation-full-example and Immunization/immunisation-min-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 | C | 0..* | AUBaseImmunisation | An immunisation statement in an Australian healthcare context Constraints: status-reason-validation, note-validation
meta | Σ | 0..1 | Meta | Metadata about the resource
lastUpdated | S Σ | 0..1 | instant | When the resource version last changed
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:vaccineSerialNumber | S | 0..1 | string | Vaccine vial serial number URL: http://ns.electronichealth.net.au/ci/fhir/StructureDefinition/vaccine-serial-number-1
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!Σ | 1..1 | code | completed | entered-in-error | not-done Binding: Status for Immunisation (required)
statusReason |  | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (required)
vaccineCode | S Σ | 1..1 | CodeableConcept | Vaccine product administered Binding: VaccineAdministeredValueSet (example): The code for vaccine product administered.
Slices for coding | Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:system
coding:mtVaccineCode | Σ | 0..1 | Coding | Code defined by a terminology system Binding: Immunisation Vaccine Value Set (preferred)
system | S Σ | 1..1 | uri | Identity of the terminology system Required Pattern: https://alexapi.medtechglobal.com.au/fhir/CodeSystem/vaccine-code
code | S Σ | 1..1 | code | Symbol in syntax defined by the system
display | S Σ | 0..1 | string | Representation defined by the system
patient | S Σ | 1..1 | Reference(Patient) | Who was immunized
reference | S Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
display | Σ | 0..1 | string | External Name of Patient
Slices for occurrence[x] | Σ | 1..1 | dateTime | Vaccine administration date Slice: Unordered, Closed by type:$this
occurrence[x]:occurrenceDateTime | S Σ | 1..1 | dateTime | Vaccine administration date
recorded | S | 0..1 | dateTime | When the immunization was first captured in the subject's record
lotNumber | S | 0..1 | string | Vaccine lot number
expirationDate | S | 0..1 | date | Vaccine expiration date
site |  | 0..1 | CodeableConcept | Body site vaccine was administered Binding: Codes for Immunization Site of Administration (required)
route |  | 0..1 | CodeableConcept | How vaccine entered body Binding: Immunisation Route of Administration (required)
Slices for performer | S Σ | 2..2 | BackboneElement | Who performed event Slice: Unordered, Open by pattern:function
performer:All Slices |  |  |  | Content/Rules for all slices
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
actor | S Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing
performer:administeredBy | Σ | 1..1 | BackboneElement | Immunisation Administered By
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 1..1 | CodeableConcept | Administering role Binding: ImmunizationFunctionCodes (extensible): The role a practitioner or organization plays in the immunization event. 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 | S Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Administering performer
performer:approvedBy | Σ | 1..1 | BackboneElement | Immunisation Approved By
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 1..1 | CodeableConcept | Approver role Binding: ImmunizationFunctionCodes (extensible): The role a practitioner or organization plays in the immunization event. 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: OP
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 | S Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Approver
note | S Σ | 0..* | Annotation | Additional immunization notes
protocolApplied |  | 0..* | BackboneElement | Protocol followed by the provider
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
Slices for doseNumber[x] |  | 1..1 |  | Dose number within series Slice: Unordered, Open by type:$this
doseNumberPositiveInt |  |  | positiveInt |
doseNumberString |  |  | string |
doseNumber[x]:doseNumberPositiveInt | S | 0..1 | positiveInt | Dose number within series
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Immunization.status | Base | required | Status for Immunisation | 📦1.0.0 | This IG
Immunization.statusReason | Base | required | Immunization Status Reason Codes | 📦4.0.1 | FHIR Std.
Immunization.vaccineCode | Base | example | Vaccine Administered Value Set | 📦4.0.1 | FHIR Std.
Immunization.vaccineCode.​coding:mtVaccineCode | Base | preferred | Immunisation Vaccine Value Set | 📦1.0.0 | This IG
Immunization.site | Base | required | Codes for Immunization Site of Administration | 📦1.0.0 | This IG
Immunization.route | Base | required | Immunisation Route of Administration | 📦1.0.0 | This IG
Immunization.performer:administeredBy.​function | Base | extensible | Immunization Function Codes | 📦4.0.1 | FHIR Std.
Immunization.performer:approvedBy.​function | Base | extensible | Immunization Function Codes | 📦4.0.1 | 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(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()`
note-validation | error | Immunization | Note must not exceed 4096 characters | `note.text.empty() or note.text.length() <= 4096`
status-reason-validation | error | Immunization | Status reason must be provided if status is 'not-done' | `status.empty() or status = 'completed' or (status = 'not-done' and statusReason.empty().not())`

This structure is derived from AUBaseImmunisation

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization | C | 0..* | AUBaseImmunisation | An immunisation statement in an Australian healthcare context Constraints: status-reason-validation, note-validation
meta |  |  |  |
lastUpdated | S | 0..1 | instant | When the resource version last changed
implicitRules |  | 0..0 |  | A set of rules under which this content was created
language |  | 0..0 |  | Language of the resource content
contained |  | 0..0 |  | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:vaccineSerialNumber | S | 0..1 | string | Vaccine vial serial number URL: http://ns.electronichealth.net.au/ci/fhir/StructureDefinition/vaccine-serial-number-1
identifier |  | 0..0 |  | Business identifier
status |  | 1..1 | code | completed | entered-in-error | not-done Binding: Status for Immunisation (required)
statusReason |  | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (required)
vaccineCode | S | 1..1 | CodeableConcept | Vaccine product administered
Slices for coding |  |  |  | Content/Rules for all slices
coding:amtVaccineCode |  | 0..0 |  | AMT Vaccine
coding:airVaccineCode |  | 0..0 |  | AIR Vaccine
coding:mtVaccineCode |  | 0..1 | Coding | Code defined by a terminology system Binding: Immunisation Vaccine Value Set (preferred)
system | S | 1..1 | uri | Identity of the terminology system Required Pattern: https://alexapi.medtechglobal.com.au/fhir/CodeSystem/vaccine-code
code | S | 1..1 | code | Symbol in syntax defined by the system
display | S | 0..1 | string | Representation defined by the system
patient | S | 1..1 | Reference(Patient) | Who was immunized
reference | S | 0..1 | string | Literal reference, Relative, internal or absolute URL
display |  | 0..1 | string | External Name of Patient
Slices for occurrence[x] |  | 1..1 | dateTime | Vaccine administration date Slice: Unordered, Open by type:$this
occurrence[x]:occurrenceDateTime | S | 1..1 | dateTime | Vaccine administration date
recorded | S | 0..1 | dateTime | When the immunization was first captured in the subject's record
lotNumber | S | 0..1 | string | Vaccine lot number
expirationDate | S | 0..1 | date | Vaccine expiration date
site |  | 0..1 | CodeableConcept | Body site vaccine was administered Binding: Codes for Immunization Site of Administration (required)
route |  | 0..1 | CodeableConcept | How vaccine entered body Binding: Immunisation Route of Administration (required)
doseQuantity |  | 0..0 |  | Amount of vaccine administered
performer | S | 2..2 | BackboneElement | Who performed event
actor | S | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing
Slices for performer |  |  |  | Content/Rules for all slices
performer:administeredBy |  | 1..1 | BackboneElement | Immunisation Administered By
actor | S | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Administering performer
performer:approvedBy |  | 1..1 | BackboneElement | Immunisation Approved By
actor | S | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Approver
note | S | 0..* | Annotation | Additional immunization notes
reasonCode |  | 0..0 |  | Why immunization occurred
reasonReference |  | 0..0 |  | Why immunization occurred
isSubpotent |  | 0..0 |  | Dose potency
subpotentReason |  | 0..0 |  | Reason for being subpotent
education |  | 0..0 |  | Educational material presented to patient
programEligibility |  | 0..0 |  | Patient eligibility for a vaccination program
reaction |  | 0..0 |  | Details of a reaction that follows immunization
protocolApplied |  |  |  |
Slices for doseNumber[x] |  | 1..1 | positiveInt, string | Dose number within series Slice: Unordered, Open by type:$this
doseNumber[x]:doseNumberPositiveInt | S | 0..1 | positiveInt | Dose number within series
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
Immunization.status | Base | required | Status for Immunisation | 📦1.0.0 | This IG
Immunization.statusReason | Base | required | Immunization Status Reason Codes | 📦4.0.1 | FHIR Std.
Immunization.vaccineCode.​coding:mtVaccineCode | Base | preferred | Immunisation Vaccine Value Set | 📦1.0.0 | This IG
Immunization.site | Base | required | Codes for Immunization Site of Administration | 📦1.0.0 | This IG
Immunization.route | Base | required | Immunisation Route of Administration | 📦1.0.0 | This IG

#### Constraints

Id | Grade | Path(s) | Description | Expression
note-validation | error | Immunization | Note must not exceed 4096 characters | `note.text.empty() or note.text.length() <= 4096`
status-reason-validation | error | Immunization | Status reason must be provided if status is 'not-done' | `status.empty() or status = 'completed' or (status = 'not-done' and statusReason.empty().not())`

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization | C | 0..* | AUBaseImmunisation | An immunisation statement in an Australian healthcare context Constraints: status-reason-validation, note-validation
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
versionId | Σ | 0..1 | id | Version specific identifier
lastUpdated | S Σ | 0..1 | instant | When the resource version last changed
source | Σ | 0..1 | uri | Identifies where the resource comes from
profile | Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to
security | Σ | 0..* | Coding | Security Labels applied to this resource Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
tag | Σ | 0..* | Coding | Tags applied to this resource Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
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
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:vaccineSerialNumber | S | 0..1 | string | Vaccine vial serial number URL: http://ns.electronichealth.net.au/ci/fhir/StructureDefinition/vaccine-serial-number-1
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!Σ | 1..1 | code | completed | entered-in-error | not-done Binding: Status for Immunisation (required)
statusReason |  | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (required)
vaccineCode | S Σ | 1..1 | CodeableConcept | Vaccine product administered Binding: VaccineAdministeredValueSet (example): The code for vaccine product administered.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
Slices for coding | Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:system
coding:mtVaccineCode | Σ | 0..1 | Coding | Code defined by a terminology system Binding: Immunisation Vaccine Value Set (preferred)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
system | S Σ | 1..1 | uri | Identity of the terminology system Required Pattern: https://alexapi.medtechglobal.com.au/fhir/CodeSystem/vaccine-code
version | Σ | 0..1 | string | Version of the system - if relevant
code | S Σ | 1..1 | code | Symbol in syntax defined by the system
display | S Σ | 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
patient | S Σ | 1..1 | Reference(Patient) | Who was immunized
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
reference | S Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | External Name of Patient
encounter |  | 0..1 | Reference(Encounter) | Encounter immunization was part of
Slices for occurrence[x] | Σ | 1..1 | dateTime | Vaccine administration date Slice: Unordered, Closed by type:$this
occurrence[x]:occurrenceDateTime | S Σ | 1..1 | dateTime | Vaccine administration date
recorded | S | 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 |  | 0..1 | CodeableConcept | Indicates the source of a secondarily reported record Binding: ImmunizationOriginCodes (example): The source of the data for a record which is not from a primary source.
location |  | 0..1 | Reference(Location) | Where immunization occurred
manufacturer |  | 0..1 | Reference(Organization) | Vaccine manufacturer
lotNumber | S | 0..1 | string | Vaccine lot number
expirationDate | S | 0..1 | date | Vaccine expiration date
site |  | 0..1 | CodeableConcept | Body site vaccine was administered Binding: Codes for Immunization Site of Administration (required)
route |  | 0..1 | CodeableConcept | How vaccine entered body Binding: Immunisation Route of Administration (required)
Slices for performer | S Σ | 2..2 | BackboneElement | Who performed event Slice: Unordered, Open by pattern: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: hl7VS-providerRole - AU Extended (extensible)
actor | S Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing
performer:administeredBy | Σ | 1..1 | BackboneElement | Immunisation Administered By
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 | Σ | 1..1 | CodeableConcept | Administering role Binding: ImmunizationFunctionCodes (extensible): The role a practitioner or organization plays in the immunization event. 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 | S Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Administering performer
performer:approvedBy | Σ | 1..1 | BackboneElement | Immunisation Approved By
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 | Σ | 1..1 | CodeableConcept | Approver role Binding: ImmunizationFunctionCodes (extensible): The role a practitioner or organization plays in the immunization event. 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: OP
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 | S Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Approver
note | S Σ | 0..* | Annotation | Additional immunization notes
fundingSource |  | 0..1 | CodeableConcept | Funding source for the vaccine Binding: ImmunizationFundingSource (example): The source of funding used to purchase the vaccine administered.
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 targetted Binding: Vaccination Target Disease (preferred)
Slices for doseNumber[x] |  | 1..1 |  | Dose number within series Slice: Unordered, Open by type:$this
doseNumberPositiveInt |  |  | positiveInt |
doseNumberString |  |  | string |
doseNumber[x]:doseNumberPositiveInt | S | 0..1 | positiveInt | Dose number within series
seriesDoses[x] |  | 0..1 |  | Recommended number of doses for immunity
seriesDosesPositiveInt |  |  | positiveInt |
seriesDosesString |  |  | string |
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Immunization.meta.security | Base | extensible | SecurityLabels | 📍4.0.1 | FHIR Std.
Immunization.meta.tag | Base | example | Common Tags | 📍4.0.1 | FHIR Std.
Immunization.status | Base | required | Status for Immunisation | 📦1.0.0 | This IG
Immunization.statusReason | Base | required | Immunization Status Reason Codes | 📦4.0.1 | FHIR Std.
Immunization.vaccineCode | Base | example | Vaccine Administered Value Set | 📦4.0.1 | FHIR Std.
Immunization.vaccineCode.​coding:mtVaccineCode | Base | preferred | Immunisation Vaccine Value Set | 📦1.0.0 | This IG
Immunization.patient.​type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std.
Immunization.reportOrigin | Base | example | Immunization Origin Codes | 📦4.0.1 | FHIR Std.
Immunization.site | Base | required | Codes for Immunization Site of Administration | 📦1.0.0 | This IG
Immunization.route | Base | required | Immunisation Route of Administration | 📦1.0.0 | This IG
Immunization.performer.​function | Base | extensible | hl7VS-providerRole - AU Extended | 📦4.1.0 | AU Base Implementation Guide v4.1
Immunization.performer:administeredBy.​function | Base | extensible | Immunization Function Codes | 📦4.0.1 | FHIR Std.
Immunization.performer:approvedBy.​function | Base | extensible | Immunization Function Codes | 📦4.0.1 | FHIR Std.
Immunization.fundingSource | Base | example | Immunization Funding Source | 📦4.0.1 | FHIR Std.
Immunization.protocolApplied.​targetDisease | Base | preferred | Vaccination Target Disease | ⏿1.0.2 | tx.hl7.org.au

#### 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(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()`
note-validation | error | Immunization | Note must not exceed 4096 characters | `note.text.empty() or note.text.length() <= 4096`
status-reason-validation | error | Immunization | Status reason must be provided if status is 'not-done' | `status.empty() or status = 'completed' or (status = 'not-done' and statusReason.empty().not())`

This structure is derived from AUBaseImmunisation

Summary

Mandatory: 3 elements(2 nested mandatory elements)
Must-Support: 18 elements
Prohibited: 14 elements

Extensions

This structure refers to these extensions:

- http://ns.electronichealth.net.au/ci/fhir/StructureDefinition/vaccine-serial-number-1

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.protocolApplied.doseNumber[x]

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization | C | 0..* | AUBaseImmunisation | An immunisation statement in an Australian healthcare context Constraints: status-reason-validation, note-validation
meta | Σ | 0..1 | Meta | Metadata about the resource
lastUpdated | S Σ | 0..1 | instant | When the resource version last changed
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:vaccineSerialNumber | S | 0..1 | string | Vaccine vial serial number URL: http://ns.electronichealth.net.au/ci/fhir/StructureDefinition/vaccine-serial-number-1
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!Σ | 1..1 | code | completed | entered-in-error | not-done Binding: Status for Immunisation (required)
statusReason |  | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (required)
vaccineCode | S Σ | 1..1 | CodeableConcept | Vaccine product administered Binding: VaccineAdministeredValueSet (example): The code for vaccine product administered.
Slices for coding | Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:system
coding:mtVaccineCode | Σ | 0..1 | Coding | Code defined by a terminology system Binding: Immunisation Vaccine Value Set (preferred)
system | S Σ | 1..1 | uri | Identity of the terminology system Required Pattern: https://alexapi.medtechglobal.com.au/fhir/CodeSystem/vaccine-code
code | S Σ | 1..1 | code | Symbol in syntax defined by the system
display | S Σ | 0..1 | string | Representation defined by the system
patient | S Σ | 1..1 | Reference(Patient) | Who was immunized
reference | S Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
display | Σ | 0..1 | string | External Name of Patient
Slices for occurrence[x] | Σ | 1..1 | dateTime | Vaccine administration date Slice: Unordered, Closed by type:$this
occurrence[x]:occurrenceDateTime | S Σ | 1..1 | dateTime | Vaccine administration date
recorded | S | 0..1 | dateTime | When the immunization was first captured in the subject's record
lotNumber | S | 0..1 | string | Vaccine lot number
expirationDate | S | 0..1 | date | Vaccine expiration date
site |  | 0..1 | CodeableConcept | Body site vaccine was administered Binding: Codes for Immunization Site of Administration (required)
route |  | 0..1 | CodeableConcept | How vaccine entered body Binding: Immunisation Route of Administration (required)
Slices for performer | S Σ | 2..2 | BackboneElement | Who performed event Slice: Unordered, Open by pattern:function
performer:All Slices |  |  |  | Content/Rules for all slices
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
actor | S Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing
performer:administeredBy | Σ | 1..1 | BackboneElement | Immunisation Administered By
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 1..1 | CodeableConcept | Administering role Binding: ImmunizationFunctionCodes (extensible): The role a practitioner or organization plays in the immunization event. 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 | S Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Administering performer
performer:approvedBy | Σ | 1..1 | BackboneElement | Immunisation Approved By
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 1..1 | CodeableConcept | Approver role Binding: ImmunizationFunctionCodes (extensible): The role a practitioner or organization plays in the immunization event. 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: OP
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 | S Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Approver
note | S Σ | 0..* | Annotation | Additional immunization notes
protocolApplied |  | 0..* | BackboneElement | Protocol followed by the provider
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
Slices for doseNumber[x] |  | 1..1 |  | Dose number within series Slice: Unordered, Open by type:$this
doseNumberPositiveInt |  |  | positiveInt |
doseNumberString |  |  | string |
doseNumber[x]:doseNumberPositiveInt | S | 0..1 | positiveInt | Dose number within series
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Immunization.status | Base | required | Status for Immunisation | 📦1.0.0 | This IG
Immunization.statusReason | Base | required | Immunization Status Reason Codes | 📦4.0.1 | FHIR Std.
Immunization.vaccineCode | Base | example | Vaccine Administered Value Set | 📦4.0.1 | FHIR Std.
Immunization.vaccineCode.​coding:mtVaccineCode | Base | preferred | Immunisation Vaccine Value Set | 📦1.0.0 | This IG
Immunization.site | Base | required | Codes for Immunization Site of Administration | 📦1.0.0 | This IG
Immunization.route | Base | required | Immunisation Route of Administration | 📦1.0.0 | This IG
Immunization.performer:administeredBy.​function | Base | extensible | Immunization Function Codes | 📦4.0.1 | FHIR Std.
Immunization.performer:approvedBy.​function | Base | extensible | Immunization Function Codes | 📦4.0.1 | 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(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()`
note-validation | error | Immunization | Note must not exceed 4096 characters | `note.text.empty() or note.text.length() <= 4096`
status-reason-validation | error | Immunization | Status reason must be provided if status is 'not-done' | `status.empty() or status = 'completed' or (status = 'not-done' and statusReason.empty().not())`

Differential View

This structure is derived from AUBaseImmunisation

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization | C | 0..* | AUBaseImmunisation | An immunisation statement in an Australian healthcare context Constraints: status-reason-validation, note-validation
meta |  |  |  |
lastUpdated | S | 0..1 | instant | When the resource version last changed
implicitRules |  | 0..0 |  | A set of rules under which this content was created
language |  | 0..0 |  | Language of the resource content
contained |  | 0..0 |  | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:vaccineSerialNumber | S | 0..1 | string | Vaccine vial serial number URL: http://ns.electronichealth.net.au/ci/fhir/StructureDefinition/vaccine-serial-number-1
identifier |  | 0..0 |  | Business identifier
status |  | 1..1 | code | completed | entered-in-error | not-done Binding: Status for Immunisation (required)
statusReason |  | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (required)
vaccineCode | S | 1..1 | CodeableConcept | Vaccine product administered
Slices for coding |  |  |  | Content/Rules for all slices
coding:amtVaccineCode |  | 0..0 |  | AMT Vaccine
coding:airVaccineCode |  | 0..0 |  | AIR Vaccine
coding:mtVaccineCode |  | 0..1 | Coding | Code defined by a terminology system Binding: Immunisation Vaccine Value Set (preferred)
system | S | 1..1 | uri | Identity of the terminology system Required Pattern: https://alexapi.medtechglobal.com.au/fhir/CodeSystem/vaccine-code
code | S | 1..1 | code | Symbol in syntax defined by the system
display | S | 0..1 | string | Representation defined by the system
patient | S | 1..1 | Reference(Patient) | Who was immunized
reference | S | 0..1 | string | Literal reference, Relative, internal or absolute URL
display |  | 0..1 | string | External Name of Patient
Slices for occurrence[x] |  | 1..1 | dateTime | Vaccine administration date Slice: Unordered, Open by type:$this
occurrence[x]:occurrenceDateTime | S | 1..1 | dateTime | Vaccine administration date
recorded | S | 0..1 | dateTime | When the immunization was first captured in the subject's record
lotNumber | S | 0..1 | string | Vaccine lot number
expirationDate | S | 0..1 | date | Vaccine expiration date
site |  | 0..1 | CodeableConcept | Body site vaccine was administered Binding: Codes for Immunization Site of Administration (required)
route |  | 0..1 | CodeableConcept | How vaccine entered body Binding: Immunisation Route of Administration (required)
doseQuantity |  | 0..0 |  | Amount of vaccine administered
performer | S | 2..2 | BackboneElement | Who performed event
actor | S | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing
Slices for performer |  |  |  | Content/Rules for all slices
performer:administeredBy |  | 1..1 | BackboneElement | Immunisation Administered By
actor | S | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Administering performer
performer:approvedBy |  | 1..1 | BackboneElement | Immunisation Approved By
actor | S | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Approver
note | S | 0..* | Annotation | Additional immunization notes
reasonCode |  | 0..0 |  | Why immunization occurred
reasonReference |  | 0..0 |  | Why immunization occurred
isSubpotent |  | 0..0 |  | Dose potency
subpotentReason |  | 0..0 |  | Reason for being subpotent
education |  | 0..0 |  | Educational material presented to patient
programEligibility |  | 0..0 |  | Patient eligibility for a vaccination program
reaction |  | 0..0 |  | Details of a reaction that follows immunization
protocolApplied |  |  |  |
Slices for doseNumber[x] |  | 1..1 | positiveInt, string | Dose number within series Slice: Unordered, Open by type:$this
doseNumber[x]:doseNumberPositiveInt | S | 0..1 | positiveInt | Dose number within series
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
Immunization.status | Base | required | Status for Immunisation | 📦1.0.0 | This IG
Immunization.statusReason | Base | required | Immunization Status Reason Codes | 📦4.0.1 | FHIR Std.
Immunization.vaccineCode.​coding:mtVaccineCode | Base | preferred | Immunisation Vaccine Value Set | 📦1.0.0 | This IG
Immunization.site | Base | required | Codes for Immunization Site of Administration | 📦1.0.0 | This IG
Immunization.route | Base | required | Immunisation Route of Administration | 📦1.0.0 | This IG

#### Constraints

Id | Grade | Path(s) | Description | Expression
note-validation | error | Immunization | Note must not exceed 4096 characters | `note.text.empty() or note.text.length() <= 4096`
status-reason-validation | error | Immunization | Status reason must be provided if status is 'not-done' | `status.empty() or status = 'completed' or (status = 'not-done' and statusReason.empty().not())`

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization | C | 0..* | AUBaseImmunisation | An immunisation statement in an Australian healthcare context Constraints: status-reason-validation, note-validation
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
versionId | Σ | 0..1 | id | Version specific identifier
lastUpdated | S Σ | 0..1 | instant | When the resource version last changed
source | Σ | 0..1 | uri | Identifies where the resource comes from
profile | Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to
security | Σ | 0..* | Coding | Security Labels applied to this resource Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
tag | Σ | 0..* | Coding | Tags applied to this resource Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
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
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:vaccineSerialNumber | S | 0..1 | string | Vaccine vial serial number URL: http://ns.electronichealth.net.au/ci/fhir/StructureDefinition/vaccine-serial-number-1
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!Σ | 1..1 | code | completed | entered-in-error | not-done Binding: Status for Immunisation (required)
statusReason |  | 0..1 | CodeableConcept | Reason not done Binding: ImmunizationStatusReasonCodes (required)
vaccineCode | S Σ | 1..1 | CodeableConcept | Vaccine product administered Binding: VaccineAdministeredValueSet (example): The code for vaccine product administered.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
Slices for coding | Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:system
coding:mtVaccineCode | Σ | 0..1 | Coding | Code defined by a terminology system Binding: Immunisation Vaccine Value Set (preferred)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
system | S Σ | 1..1 | uri | Identity of the terminology system Required Pattern: https://alexapi.medtechglobal.com.au/fhir/CodeSystem/vaccine-code
version | Σ | 0..1 | string | Version of the system - if relevant
code | S Σ | 1..1 | code | Symbol in syntax defined by the system
display | S Σ | 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
patient | S Σ | 1..1 | Reference(Patient) | Who was immunized
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
reference | S Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | External Name of Patient
encounter |  | 0..1 | Reference(Encounter) | Encounter immunization was part of
Slices for occurrence[x] | Σ | 1..1 | dateTime | Vaccine administration date Slice: Unordered, Closed by type:$this
occurrence[x]:occurrenceDateTime | S Σ | 1..1 | dateTime | Vaccine administration date
recorded | S | 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 |  | 0..1 | CodeableConcept | Indicates the source of a secondarily reported record Binding: ImmunizationOriginCodes (example): The source of the data for a record which is not from a primary source.
location |  | 0..1 | Reference(Location) | Where immunization occurred
manufacturer |  | 0..1 | Reference(Organization) | Vaccine manufacturer
lotNumber | S | 0..1 | string | Vaccine lot number
expirationDate | S | 0..1 | date | Vaccine expiration date
site |  | 0..1 | CodeableConcept | Body site vaccine was administered Binding: Codes for Immunization Site of Administration (required)
route |  | 0..1 | CodeableConcept | How vaccine entered body Binding: Immunisation Route of Administration (required)
Slices for performer | S Σ | 2..2 | BackboneElement | Who performed event Slice: Unordered, Open by pattern: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: hl7VS-providerRole - AU Extended (extensible)
actor | S Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing
performer:administeredBy | Σ | 1..1 | BackboneElement | Immunisation Administered By
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 | Σ | 1..1 | CodeableConcept | Administering role Binding: ImmunizationFunctionCodes (extensible): The role a practitioner or organization plays in the immunization event. 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 | S Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Administering performer
performer:approvedBy | Σ | 1..1 | BackboneElement | Immunisation Approved By
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 | Σ | 1..1 | CodeableConcept | Approver role Binding: ImmunizationFunctionCodes (extensible): The role a practitioner or organization plays in the immunization event. 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: OP
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 | S Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Approver
note | S Σ | 0..* | Annotation | Additional immunization notes
fundingSource |  | 0..1 | CodeableConcept | Funding source for the vaccine Binding: ImmunizationFundingSource (example): The source of funding used to purchase the vaccine administered.
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 targetted Binding: Vaccination Target Disease (preferred)
Slices for doseNumber[x] |  | 1..1 |  | Dose number within series Slice: Unordered, Open by type:$this
doseNumberPositiveInt |  |  | positiveInt |
doseNumberString |  |  | string |
doseNumber[x]:doseNumberPositiveInt | S | 0..1 | positiveInt | Dose number within series
seriesDoses[x] |  | 0..1 |  | Recommended number of doses for immunity
seriesDosesPositiveInt |  |  | positiveInt |
seriesDosesString |  |  | string |
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Immunization.meta.security | Base | extensible | SecurityLabels | 📍4.0.1 | FHIR Std.
Immunization.meta.tag | Base | example | Common Tags | 📍4.0.1 | FHIR Std.
Immunization.status | Base | required | Status for Immunisation | 📦1.0.0 | This IG
Immunization.statusReason | Base | required | Immunization Status Reason Codes | 📦4.0.1 | FHIR Std.
Immunization.vaccineCode | Base | example | Vaccine Administered Value Set | 📦4.0.1 | FHIR Std.
Immunization.vaccineCode.​coding:mtVaccineCode | Base | preferred | Immunisation Vaccine Value Set | 📦1.0.0 | This IG
Immunization.patient.​type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std.
Immunization.reportOrigin | Base | example | Immunization Origin Codes | 📦4.0.1 | FHIR Std.
Immunization.site | Base | required | Codes for Immunization Site of Administration | 📦1.0.0 | This IG
Immunization.route | Base | required | Immunisation Route of Administration | 📦1.0.0 | This IG
Immunization.performer.​function | Base | extensible | hl7VS-providerRole - AU Extended | 📦4.1.0 | AU Base Implementation Guide v4.1
Immunization.performer:administeredBy.​function | Base | extensible | Immunization Function Codes | 📦4.0.1 | FHIR Std.
Immunization.performer:approvedBy.​function | Base | extensible | Immunization Function Codes | 📦4.0.1 | FHIR Std.
Immunization.fundingSource | Base | example | Immunization Funding Source | 📦4.0.1 | FHIR Std.
Immunization.protocolApplied.​targetDisease | Base | preferred | Vaccination Target Disease | ⏿1.0.2 | tx.hl7.org.au

#### 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(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()`
note-validation | error | Immunization | Note must not exceed 4096 characters | `note.text.empty() or note.text.length() <= 4096`
status-reason-validation | error | Immunization | Status reason must be provided if status is 'not-done' | `status.empty() or status = 'completed' or (status = 'not-done' and statusReason.empty().not())`

This structure is derived from AUBaseImmunisation

Summary

Mandatory: 3 elements(2 nested mandatory elements)
Must-Support: 18 elements
Prohibited: 14 elements

Extensions

This structure refers to these extensions:

- http://ns.electronichealth.net.au/ci/fhir/StructureDefinition/vaccine-serial-number-1

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.protocolApplied.doseNumber[x]

Other representations of profile: CSV, Excel, Schematron