AU Core Implementation Guide
2.0.0-draft - Draft

Publication Build: This will be filled in by the publication tooling

## Resource Profile: AU Core Immunization

Official URL: http://hl7.org.au/fhir/core/StructureDefinition/au-core-immunization | Version: 2.0.0-draft
Standards status: Trial-use | Maturity Level: 2 | Computable Name: AUCoreImmunization
Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License. HL7 Australia© 2022+; Licensed Under Creative Commons No Rights Reserved.

This profile sets minimum expectations for an Immunization resource to record, search, and fetch immunisation history associated with a patient. It is based on the AU Base Immunisation profile and identifies the additional mandatory core elements, extensions, vocabularies and value sets that SHALL be present in the Immunization resource when conforming to this profile. It provides the floor for standards development for specific uses cases in an Australian context.

See Comparison with other national and international IGs for a comparison between AU Core profiles and profiles in other implementation guides.

### Usage scenarios

The following are supported usage scenarios for this profile:

- Query for a patient’s immunisations
- Record or update an immunisation record for a patient

Usages:

- Examples for this Profile: Immunization/covid-1 and Immunization/zoster-notgiven
- CapabilityStatements using this Profile: AU Core Requester CapabilityStatement and AU Core Responder CapabilityStatement

Changes since version 1.0.0:

- The resource metadata has changed (description)
- The data elements list has changed

### Formal Views of Profile Content

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

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

This structure is derived from AUBaseImmunisation

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization |  | 0..* | AUBaseImmunisation | An immunisation statement in an Australian healthcare context
status | SO | 1..1 | code | completed | entered-in-error | not-done
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
vaccineCode | SO | 1..1 | CodeableConcept | Vaccine product administered
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
Slices for coding |  | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:$this
coding:amtVaccineCode | SO | 0..1 | Coding | Code defined by a terminology system Binding: Australian Medicines Terminology Vaccine (required)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
coding:airVaccineCode | SO | 0..1 | Coding | Code defined by a terminology system Binding: Australian Immunisation Register Vaccine (required)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
patient | SO | 1..1 | Reference(AU Core Patient) | Who was immunized
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
occurrence[x] | SO | 1..1 | dateTime, string | Vaccine administration date
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
primarySource | SO | 0..1 | boolean | Indicates context the data was recorded in
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
lotNumber | SO | 0..1 | string | Vaccine lot number
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
note | SO | 0..* | Annotation | Additional immunization notes
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
Documentation for this format

#### Terminology Bindings (Differential)

Path | Conformance | ValueSet | URI
Immunization.vaccineCode.coding:amtVaccineCode | required | AustralianMedicinesTerminologyVaccine `https://healthterminologies.gov.au/fhir/ValueSet/amt-vaccine-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.vaccineCode.coding:airVaccineCode | required | AustralianImmunisationRegisterVaccine `https://healthterminologies.gov.au/fhir/ValueSet/australian-immunisation-register-vaccine-1` From https://tx.ontoserver.csiro.au/fhir

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization |  | 0..* | AUBaseImmunisation | An immunisation statement in an Australian healthcare context
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  |  |  | Content/Rules for all slices
extension:vaccineVialSerialNumber |  | 0..1 | string | Vaccine vial serial number URL: http://hl7.org.au/fhir/StructureDefinition/vaccine-serial-number
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!SO Σ | 1..1 | code | completed | entered-in-error | not-done Binding: ImmunizationStatusCodes (required): A set of codes indicating the current status of an Immunization.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
vaccineCode | SO Σ | 1..1 | CodeableConcept | Vaccine product administered Binding: VaccineAdministeredValueSet (example)
Additional Bindings | Purpose
Australian Medicines Terminology Vaccine | Preferred
Australian Immunisation Register Vaccine | Preferred
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
Slices for coding | Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:$this
coding:amtVaccineCode | SO Σ | 0..1 | Coding | Code defined by a terminology system Binding: Australian Medicines Terminology Vaccine (required)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
coding:airVaccineCode | SO Σ | 0..1 | Coding | Code defined by a terminology system Binding: Australian Immunisation Register Vaccine (required)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
patient | SO Σ | 1..1 | Reference(AU Core Patient) | Who was immunized
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
occurrence[x] | SO Σ | 1..1 |  | Vaccine administration date
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
occurrenceDateTime |  |  | dateTime |
occurrenceString |  |  | string |
primarySource | SO Σ | 0..1 | boolean | Indicates context the data was recorded in
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
lotNumber | SO | 0..1 | string | Vaccine lot number
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
Slices for performer | Σ | 0..* | 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 | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing
performer:administeredBy | Σ | 0..1 | BackboneElement | Immunisation Administered By
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 1..1 | CodeableConcept | Administering role Binding: hl7VS-providerRole - AU Extended (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(Practitioner | PractitionerRole | Organization) | Administering performer
performer:approvedBy | Σ | 0..1 | BackboneElement | Immunisation Approved By
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 1..1 | CodeableConcept | Approver role Binding: hl7VS-providerRole - AU Extended (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: 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 | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Approver
note | SO Σ | 0..* | Annotation | Additional immunization notes
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
isSubpotent | ?!Σ | 0..1 | boolean | Dose potency
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet / Code | URI
Immunization.status | required | ImmunizationStatusCodes `http://hl7.org/fhir/ValueSet/immunization-status|4.0.1` From the FHIR Standard
Immunization.vaccineCode | example | VaccineAdministeredValueSet `http://hl7.org/fhir/ValueSet/vaccine-code` From the FHIR Standard
Immunization.vaccineCode.coding:amtVaccineCode | required | AustralianMedicinesTerminologyVaccine `https://healthterminologies.gov.au/fhir/ValueSet/amt-vaccine-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.vaccineCode.coding:airVaccineCode | required | AustralianImmunisationRegisterVaccine `https://healthterminologies.gov.au/fhir/ValueSet/australian-immunisation-register-vaccine-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.performer:administeredBy.function | extensible | Pattern Value: AP `http://terminology.hl7.org.au/ValueSet/v2-0443-extended`
Immunization.performer:approvedBy.function | extensible | Pattern Value: OP `http://terminology.hl7.org.au/ValueSet/v2-0443-extended`

#### Constraints

Id | Grade | Path(s) | Details | Requirements
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() |

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization |  | 0..* | AUBaseImmunisation | An immunisation statement in an Australian healthcare context
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: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
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
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:vaccineVialSerialNumber |  | 0..1 | string | Vaccine vial serial number URL: http://hl7.org.au/fhir/StructureDefinition/vaccine-serial-number
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier |  | 0..* | Identifier | Business identifier
status | ?!SO Σ | 1..1 | code | completed | entered-in-error | not-done Binding: ImmunizationStatusCodes (required): A set of codes indicating the current status of an Immunization.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
statusReason |  | 0..1 | CodeableConcept | Reason not done Binding: Reason Vaccine Not Administered (preferred)
vaccineCode | SO Σ | 1..1 | CodeableConcept | Vaccine product administered Binding: VaccineAdministeredValueSet (example)
Additional Bindings | Purpose
Australian Medicines Terminology Vaccine | Preferred
Australian Immunisation Register Vaccine | Preferred
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
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 pattern:$this
coding:amtVaccineCode | SO Σ | 0..1 | Coding | Code defined by a terminology system Binding: Australian Medicines Terminology Vaccine (required)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
coding:airVaccineCode | SO Σ | 0..1 | Coding | Code defined by a terminology system Binding: Australian Immunisation Register Vaccine (required)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
text | Σ | 0..1 | string | Plain text representation of the concept
patient | SO Σ | 1..1 | Reference(AU Core Patient) | Who was immunized
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
encounter |  | 0..1 | Reference(Encounter) | Encounter immunization was part of
occurrence[x] | SO Σ | 1..1 |  | Vaccine administration date
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
occurrenceDateTime |  |  | dateTime |
occurrenceString |  |  | string |
recorded |  | 0..1 | dateTime | When the immunization was first captured in the subject's record
primarySource | SO Σ | 0..1 | boolean | Indicates context the data was recorded in
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
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 | SO | 0..1 | string | Vaccine lot number
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
expirationDate |  | 0..1 | date | Vaccine expiration date
site |  | 0..1 | CodeableConcept | Body site vaccine was administered Binding: Immunisation Anatomical Site (preferred)
route |  | 0..1 | CodeableConcept | How vaccine entered body Binding: Immunisation Route of Administration (preferred)
doseQuantity |  | 0..1 | SimpleQuantity | Amount of vaccine administered
Slices for performer | Σ | 0..* | 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 | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing
performer:administeredBy | Σ | 0..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: hl7VS-providerRole - AU Extended (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(Practitioner | PractitionerRole | Organization) | Administering performer
performer:approvedBy | Σ | 0..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: hl7VS-providerRole - AU Extended (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: 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 | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Approver
note | SO Σ | 0..* | Annotation | Additional immunization notes
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
reasonCode |  | 0..* | CodeableConcept | Why immunization occurred Binding: Reason Vaccine Administered (preferred)
reasonReference |  | 0..* | Reference(Condition | Observation | DiagnosticReport) | Why immunization occurred
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.
education | C | 0..* | BackboneElement | Educational material presented to patient Constraints: imm-1
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
documentType |  | 0..1 | string | Educational material document identifier
reference |  | 0..1 | uri | Educational material reference pointer
publicationDate |  | 0..1 | dateTime | Educational material publication date
presentationDate |  | 0..1 | dateTime | Educational material presentation date
programEligibility |  | 0..* | CodeableConcept | Patient eligibility for a vaccination program Binding: ImmunizationProgramEligibility (example): The patient's eligibility for a vaccation program.
fundingSource |  | 0..1 | CodeableConcept | Funding source for the vaccine Binding: ImmunizationFundingSource (example): The source of funding used to purchase the vaccine administered.
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
detail |  | 0..1 | Reference(Observation) | Additional information on reaction
reported |  | 0..1 | boolean | Indicates self-reported reaction
protocolApplied |  | 0..* | BackboneElement | Protocol followed by the provider
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)
doseNumber[x] |  | 1..1 |  | Dose number within series
doseNumberPositiveInt |  |  | positiveInt |
doseNumberString |  |  | string |
seriesDoses[x] |  | 0..1 |  | Recommended number of doses for immunity
seriesDosesPositiveInt |  |  | positiveInt |
seriesDosesString |  |  | string |
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet / Code | URI
Immunization.language | preferred | CommonLanguages `http://hl7.org/fhir/ValueSet/languages` From the FHIR Standard
Additional Bindings | Purpose
AllLanguages | Max Binding
Immunization.status | required | ImmunizationStatusCodes `http://hl7.org/fhir/ValueSet/immunization-status|4.0.1` From the FHIR Standard
Immunization.statusReason | preferred | ReasonVaccineNotAdministered `https://healthterminologies.gov.au/fhir/ValueSet/reason-vaccine-not-administered-3` From https://tx.ontoserver.csiro.au/fhir
Immunization.vaccineCode | example | VaccineAdministeredValueSet `http://hl7.org/fhir/ValueSet/vaccine-code` From the FHIR Standard
Immunization.vaccineCode.coding:amtVaccineCode | required | AustralianMedicinesTerminologyVaccine `https://healthterminologies.gov.au/fhir/ValueSet/amt-vaccine-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.vaccineCode.coding:airVaccineCode | required | AustralianImmunisationRegisterVaccine `https://healthterminologies.gov.au/fhir/ValueSet/australian-immunisation-register-vaccine-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.reportOrigin | example | ImmunizationOriginCodes `http://hl7.org/fhir/ValueSet/immunization-origin` From the FHIR Standard
Immunization.site | preferred | ImmunisationAnatomicalSite `https://healthterminologies.gov.au/fhir/ValueSet/immunisation-anatomical-site-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.route | preferred | ImmunisationRouteOfAdministration `https://healthterminologies.gov.au/fhir/ValueSet/immunisation-route-of-administration-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.performer.function | extensible | Hl7VSProviderRoleAUExtended `http://terminology.hl7.org.au/ValueSet/v2-0443-extended`
Immunization.performer:administeredBy.function | extensible | Pattern Value: AP `http://terminology.hl7.org.au/ValueSet/v2-0443-extended`
Immunization.performer:approvedBy.function | extensible | Pattern Value: OP `http://terminology.hl7.org.au/ValueSet/v2-0443-extended`
Immunization.reasonCode | preferred | ReasonVaccineAdministered `https://healthterminologies.gov.au/fhir/ValueSet/reason-vaccine-administered-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.subpotentReason | example | ImmunizationSubpotentReason `http://hl7.org/fhir/ValueSet/immunization-subpotent-reason` From the FHIR Standard
Immunization.programEligibility | example | ImmunizationProgramEligibility `http://hl7.org/fhir/ValueSet/immunization-program-eligibility` From the FHIR Standard
Immunization.fundingSource | example | ImmunizationFundingSource `http://hl7.org/fhir/ValueSet/immunization-funding-source` From the FHIR Standard
Immunization.protocolApplied.targetDisease | preferred | VaccinationTargetDisease `https://healthterminologies.gov.au/fhir/ValueSet/vaccination-target-disease-1` From https://tx.ontoserver.csiro.au/fhir

#### Constraints

Id | Grade | Path(s) | Details | Requirements
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() |
imm-1 | error | Immunization.education | One of documentType or reference SHALL be present : documentType.exists() or reference.exists() |

This structure is derived from AUBaseImmunisation

Summary

Must-Support: 9 elements

Structures

This structure refers to these other structures:

- AU Core Patient (http://hl7.org.au/fhir/core/StructureDefinition/au-core-patient)

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of Immunization.vaccineCode.coding

Maturity: 2

Differential View

This structure is derived from AUBaseImmunisation

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization |  | 0..* | AUBaseImmunisation | An immunisation statement in an Australian healthcare context
status | SO | 1..1 | code | completed | entered-in-error | not-done
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
vaccineCode | SO | 1..1 | CodeableConcept | Vaccine product administered
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
Slices for coding |  | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:$this
coding:amtVaccineCode | SO | 0..1 | Coding | Code defined by a terminology system Binding: Australian Medicines Terminology Vaccine (required)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
coding:airVaccineCode | SO | 0..1 | Coding | Code defined by a terminology system Binding: Australian Immunisation Register Vaccine (required)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
patient | SO | 1..1 | Reference(AU Core Patient) | Who was immunized
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
occurrence[x] | SO | 1..1 | dateTime, string | Vaccine administration date
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
primarySource | SO | 0..1 | boolean | Indicates context the data was recorded in
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
lotNumber | SO | 0..1 | string | Vaccine lot number
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
note | SO | 0..* | Annotation | Additional immunization notes
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
Documentation for this format

#### Terminology Bindings (Differential)

Path | Conformance | ValueSet | URI
Immunization.vaccineCode.coding:amtVaccineCode | required | AustralianMedicinesTerminologyVaccine `https://healthterminologies.gov.au/fhir/ValueSet/amt-vaccine-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.vaccineCode.coding:airVaccineCode | required | AustralianImmunisationRegisterVaccine `https://healthterminologies.gov.au/fhir/ValueSet/australian-immunisation-register-vaccine-1` From https://tx.ontoserver.csiro.au/fhir

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization |  | 0..* | AUBaseImmunisation | An immunisation statement in an Australian healthcare context
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  |  |  | Content/Rules for all slices
extension:vaccineVialSerialNumber |  | 0..1 | string | Vaccine vial serial number URL: http://hl7.org.au/fhir/StructureDefinition/vaccine-serial-number
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!SO Σ | 1..1 | code | completed | entered-in-error | not-done Binding: ImmunizationStatusCodes (required): A set of codes indicating the current status of an Immunization.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
vaccineCode | SO Σ | 1..1 | CodeableConcept | Vaccine product administered Binding: VaccineAdministeredValueSet (example)
Additional Bindings | Purpose
Australian Medicines Terminology Vaccine | Preferred
Australian Immunisation Register Vaccine | Preferred
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
Slices for coding | Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:$this
coding:amtVaccineCode | SO Σ | 0..1 | Coding | Code defined by a terminology system Binding: Australian Medicines Terminology Vaccine (required)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
coding:airVaccineCode | SO Σ | 0..1 | Coding | Code defined by a terminology system Binding: Australian Immunisation Register Vaccine (required)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
patient | SO Σ | 1..1 | Reference(AU Core Patient) | Who was immunized
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
occurrence[x] | SO Σ | 1..1 |  | Vaccine administration date
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
occurrenceDateTime |  |  | dateTime |
occurrenceString |  |  | string |
primarySource | SO Σ | 0..1 | boolean | Indicates context the data was recorded in
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
lotNumber | SO | 0..1 | string | Vaccine lot number
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
Slices for performer | Σ | 0..* | 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 | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing
performer:administeredBy | Σ | 0..1 | BackboneElement | Immunisation Administered By
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 1..1 | CodeableConcept | Administering role Binding: hl7VS-providerRole - AU Extended (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(Practitioner | PractitionerRole | Organization) | Administering performer
performer:approvedBy | Σ | 0..1 | BackboneElement | Immunisation Approved By
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
function | Σ | 1..1 | CodeableConcept | Approver role Binding: hl7VS-providerRole - AU Extended (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: 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 | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Approver
note | SO Σ | 0..* | Annotation | Additional immunization notes
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
isSubpotent | ?!Σ | 0..1 | boolean | Dose potency
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet / Code | URI
Immunization.status | required | ImmunizationStatusCodes `http://hl7.org/fhir/ValueSet/immunization-status|4.0.1` From the FHIR Standard
Immunization.vaccineCode | example | VaccineAdministeredValueSet `http://hl7.org/fhir/ValueSet/vaccine-code` From the FHIR Standard
Immunization.vaccineCode.coding:amtVaccineCode | required | AustralianMedicinesTerminologyVaccine `https://healthterminologies.gov.au/fhir/ValueSet/amt-vaccine-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.vaccineCode.coding:airVaccineCode | required | AustralianImmunisationRegisterVaccine `https://healthterminologies.gov.au/fhir/ValueSet/australian-immunisation-register-vaccine-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.performer:administeredBy.function | extensible | Pattern Value: AP `http://terminology.hl7.org.au/ValueSet/v2-0443-extended`
Immunization.performer:approvedBy.function | extensible | Pattern Value: OP `http://terminology.hl7.org.au/ValueSet/v2-0443-extended`

#### Constraints

Id | Grade | Path(s) | Details | Requirements
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() |

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Immunization |  | 0..* | AUBaseImmunisation | An immunisation statement in an Australian healthcare context
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: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
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
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:vaccineVialSerialNumber |  | 0..1 | string | Vaccine vial serial number URL: http://hl7.org.au/fhir/StructureDefinition/vaccine-serial-number
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier |  | 0..* | Identifier | Business identifier
status | ?!SO Σ | 1..1 | code | completed | entered-in-error | not-done Binding: ImmunizationStatusCodes (required): A set of codes indicating the current status of an Immunization.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
statusReason |  | 0..1 | CodeableConcept | Reason not done Binding: Reason Vaccine Not Administered (preferred)
vaccineCode | SO Σ | 1..1 | CodeableConcept | Vaccine product administered Binding: VaccineAdministeredValueSet (example)
Additional Bindings | Purpose
Australian Medicines Terminology Vaccine | Preferred
Australian Immunisation Register Vaccine | Preferred
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
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 pattern:$this
coding:amtVaccineCode | SO Σ | 0..1 | Coding | Code defined by a terminology system Binding: Australian Medicines Terminology Vaccine (required)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
coding:airVaccineCode | SO Σ | 0..1 | Coding | Code defined by a terminology system Binding: Australian Immunisation Register Vaccine (required)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
text | Σ | 0..1 | string | Plain text representation of the concept
patient | SO Σ | 1..1 | Reference(AU Core Patient) | Who was immunized
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
encounter |  | 0..1 | Reference(Encounter) | Encounter immunization was part of
occurrence[x] | SO Σ | 1..1 |  | Vaccine administration date
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
occurrenceDateTime |  |  | dateTime |
occurrenceString |  |  | string |
recorded |  | 0..1 | dateTime | When the immunization was first captured in the subject's record
primarySource | SO Σ | 0..1 | boolean | Indicates context the data was recorded in
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
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 | SO | 0..1 | string | Vaccine lot number
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
expirationDate |  | 0..1 | date | Vaccine expiration date
site |  | 0..1 | CodeableConcept | Body site vaccine was administered Binding: Immunisation Anatomical Site (preferred)
route |  | 0..1 | CodeableConcept | How vaccine entered body Binding: Immunisation Route of Administration (preferred)
doseQuantity |  | 0..1 | SimpleQuantity | Amount of vaccine administered
Slices for performer | Σ | 0..* | 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 | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Individual or organization who was performing
performer:administeredBy | Σ | 0..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: hl7VS-providerRole - AU Extended (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(Practitioner | PractitionerRole | Organization) | Administering performer
performer:approvedBy | Σ | 0..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: hl7VS-providerRole - AU Extended (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: 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 | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization) | Approver
note | SO Σ | 0..* | Annotation | Additional immunization notes
Obligations | Actor
SHALL:populate-if-known | AU Core Responder |
SHALL:no-error | AU Core Requester |
reasonCode |  | 0..* | CodeableConcept | Why immunization occurred Binding: Reason Vaccine Administered (preferred)
reasonReference |  | 0..* | Reference(Condition | Observation | DiagnosticReport) | Why immunization occurred
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.
education | C | 0..* | BackboneElement | Educational material presented to patient Constraints: imm-1
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
documentType |  | 0..1 | string | Educational material document identifier
reference |  | 0..1 | uri | Educational material reference pointer
publicationDate |  | 0..1 | dateTime | Educational material publication date
presentationDate |  | 0..1 | dateTime | Educational material presentation date
programEligibility |  | 0..* | CodeableConcept | Patient eligibility for a vaccination program Binding: ImmunizationProgramEligibility (example): The patient's eligibility for a vaccation program.
fundingSource |  | 0..1 | CodeableConcept | Funding source for the vaccine Binding: ImmunizationFundingSource (example): The source of funding used to purchase the vaccine administered.
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
detail |  | 0..1 | Reference(Observation) | Additional information on reaction
reported |  | 0..1 | boolean | Indicates self-reported reaction
protocolApplied |  | 0..* | BackboneElement | Protocol followed by the provider
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)
doseNumber[x] |  | 1..1 |  | Dose number within series
doseNumberPositiveInt |  |  | positiveInt |
doseNumberString |  |  | string |
seriesDoses[x] |  | 0..1 |  | Recommended number of doses for immunity
seriesDosesPositiveInt |  |  | positiveInt |
seriesDosesString |  |  | string |
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet / Code | URI
Immunization.language | preferred | CommonLanguages `http://hl7.org/fhir/ValueSet/languages` From the FHIR Standard
Additional Bindings | Purpose
AllLanguages | Max Binding
Immunization.status | required | ImmunizationStatusCodes `http://hl7.org/fhir/ValueSet/immunization-status|4.0.1` From the FHIR Standard
Immunization.statusReason | preferred | ReasonVaccineNotAdministered `https://healthterminologies.gov.au/fhir/ValueSet/reason-vaccine-not-administered-3` From https://tx.ontoserver.csiro.au/fhir
Immunization.vaccineCode | example | VaccineAdministeredValueSet `http://hl7.org/fhir/ValueSet/vaccine-code` From the FHIR Standard
Immunization.vaccineCode.coding:amtVaccineCode | required | AustralianMedicinesTerminologyVaccine `https://healthterminologies.gov.au/fhir/ValueSet/amt-vaccine-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.vaccineCode.coding:airVaccineCode | required | AustralianImmunisationRegisterVaccine `https://healthterminologies.gov.au/fhir/ValueSet/australian-immunisation-register-vaccine-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.reportOrigin | example | ImmunizationOriginCodes `http://hl7.org/fhir/ValueSet/immunization-origin` From the FHIR Standard
Immunization.site | preferred | ImmunisationAnatomicalSite `https://healthterminologies.gov.au/fhir/ValueSet/immunisation-anatomical-site-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.route | preferred | ImmunisationRouteOfAdministration `https://healthterminologies.gov.au/fhir/ValueSet/immunisation-route-of-administration-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.performer.function | extensible | Hl7VSProviderRoleAUExtended `http://terminology.hl7.org.au/ValueSet/v2-0443-extended`
Immunization.performer:administeredBy.function | extensible | Pattern Value: AP `http://terminology.hl7.org.au/ValueSet/v2-0443-extended`
Immunization.performer:approvedBy.function | extensible | Pattern Value: OP `http://terminology.hl7.org.au/ValueSet/v2-0443-extended`
Immunization.reasonCode | preferred | ReasonVaccineAdministered `https://healthterminologies.gov.au/fhir/ValueSet/reason-vaccine-administered-1` From https://tx.ontoserver.csiro.au/fhir
Immunization.subpotentReason | example | ImmunizationSubpotentReason `http://hl7.org/fhir/ValueSet/immunization-subpotent-reason` From the FHIR Standard
Immunization.programEligibility | example | ImmunizationProgramEligibility `http://hl7.org/fhir/ValueSet/immunization-program-eligibility` From the FHIR Standard
Immunization.fundingSource | example | ImmunizationFundingSource `http://hl7.org/fhir/ValueSet/immunization-funding-source` From the FHIR Standard
Immunization.protocolApplied.targetDisease | preferred | VaccinationTargetDisease `https://healthterminologies.gov.au/fhir/ValueSet/vaccination-target-disease-1` From https://tx.ontoserver.csiro.au/fhir

#### Constraints

Id | Grade | Path(s) | Details | Requirements
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() |
imm-1 | error | Immunization.education | One of documentType or reference SHALL be present : documentType.exists() or reference.exists() |

This structure is derived from AUBaseImmunisation

Summary

Must-Support: 9 elements

Structures

This structure refers to these other structures:

- AU Core Patient (http://hl7.org.au/fhir/core/StructureDefinition/au-core-patient)

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of Immunization.vaccineCode.coding

Maturity: 2

Other representations of profile: CSV, Excel, Schematron

### Notes:

Below is an overview of the mandatory and optional search parameters and combined search parameters. See the AU Core CapabilityStatements for a complete list of supported RESTful interactions for this IG.

FHIR search operations are described here and the syntax used to describe AU Core interactions is defined here.

Any search parameter defined in FHIR may be ‘allowed’ by the system unless explicitly marked as “SHALL NOT”. A few items are marked as MAY in this implementation guide to highlight their potential relevance.

Parameter(s) | Conformance | Type(s) | Requirements (when used alone or in combination)
--- | --- | --- | ---
patient | SHALL | `reference` | The requester SHALL provide at least an id value and MAY provide both the Type and id values. The responder SHALL support both. The requester SHOULD support chained search patient.identifier using IHI, Medicare Number, and DVA Number identifiers as defined in the AU Core Patient profile. The responder SHOULD support chained search patient.identifier using IHI, Medicare Number, and DVA Number identifiers as defined in the AU Core Patient profile.
patient+status | SHALL | `reference`+`token` |
patient+date | SHOULD | `reference`+`date` |
date | MAY | `date` | A requester SHALL provide a value precise to the second + time offset. A responder SHALL support a value precise to the second + time offset. The requester SHALL support these search comparators `gt`, `lt`, `ge`, `le`. The responder SHALL support these search comparators `gt`, `lt`, `ge`, `le`. The requester SHOULD support `multipleAnd`, and if `multipleAnd` is supported, SHALL support the search comparators `gt`, `lt`, `ge`, `le`. The responder SHOULD support `multipleAnd`, and if `multipleAnd` is supported, SHALL support the search comparators `gt`, `lt`, `ge`, `le`.
patient+vaccine-code | MAY | `reference`+`token` |
status | MAY | `token` | The requester SHALL provide at least a code value and MAY provide both the system and code values. The responder SHALL support both.
vaccine-code | MAY | `token` | The requester SHALL provide at least a code value and MAY provide both the system and code values. The responder SHALL support both.

#### Mandatory Search Parameters:

The following search parameters and search parameter combinations SHALL be supported:

1. SHALL support searching using the `patient` search parameter:
   - SHOULD support chained searching of patient canonical identifier `patient.identifier` (e.g. `patient.identifier=[system|][code]`)

   `GET [base]/Immunization?patient={Type/}[id]` or optionally`GET [base]/Immunization?patient.identifier=[system|][code]`

   Example:

   1. GET [base]/Immunization?patient=5678
   2. GET [base]/Immunization?patient.identifier=http://ns.electronichealth.net.au/id/medicare-number|32788511952
   3. GET [base]/Immunization?patient.identifier=http://ns.electronichealth.net.au/id/hi/ihi/1.0|8003608833357361

   Implementation Notes: Fetches a bundle of all Immunization resources for the specified patient (how to search by reference and how to search by token)

2. SHALL support searching using the combination of the `patient` and `status` search parameters:
   - SHOULD support chained searching of patient canonical identifier `patient.identifier` (e.g. `patient.identifier=[system|][code]`)

   `GET [base]/Immunization?patient={Type/}[id]&status={system|}[code]{,{system|}[code],...}`

   Example:

   1. GET [base]/Immunization?patient=5678&status=not-done

   Implementation Notes: Fetches a bundle of all Immunization resources for the specified patient and status (how to search by reference and how to search by token)

#### Optional Search Parameters:

The following search parameters and search parameter combinations SHOULD be supported:

1. SHOULD support searching using the combination of the `patient` and `date` search parameters:
   - SHOULD support chained searching of patient canonical identifier `patient.identifier` (e.g. `patient.identifier=[system|][code]`)
   - SHALL support these `date` comparators: `gt,lt,ge,le`
   - SHOULD support multipleAnd search on `date` (e.g.`date=[date]&date=[date]]&...`), and if multipleAnd is supported, SHALL support the search comparators `gt,lt,ge,le`

   `GET [base]/Immunization?patient={Type/}[id]&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}`

   Example:

   1. GET [base]/Immunization?patient=5678&date=ge2020-01-01T00:00:00Z
   2. GET [base]/Immunization?patient.identifier=http://example.org/fhir/mrn|12345&date=ge2020-01-01T00:00:00Z

   Implementation Notes: Fetches a bundle of all Immunization resources for the specified patient and date (how to search by reference and how to search by date)