Search loading...

API Hub

Explore and Make use of Nationally Defined Messaging APIs

 

Immunization

Guidance for populating and consuming the Immunization profile

Introduction

The headings below list the elements of the Immunization profile and describe how to populate and consume them.

Immunization elements

id

Data type: Id Optionality: Mandatory Cardinality: 1..1

The logical identifier of the Immunization profile.

meta.profile

Data type: uri Optionality: Mandatory Cardinality: 1..1

The Immunization profile URL.

Fixed value https://fhir.nhs.uk/STU3/StructureDefinition/CareConnect-GPC-Immunization-1

extension[parentPresent]

Data type: boolean Optionality: Required Cardinality: 0..1

Indicates whether a parent was present at the immunisation.

extension[recordedDate]

Data type: dateTime Optionality: Mandatory Cardinality: 1..1

This is the date the immunisation was entered on the clinical system. This may be an audit trail date or equivalent for the record. If the immunisation has been transferred by GP2GP this SHOULD be the recorded date from the original record entry from the originating system.

extension[vaccinationProcedure]

Data type: CodeableConcept Optionality: Mandatory Cardinality: 1..1

The procedure code describing the vaccine that was administered.

identifier

Data type: Identifier Optionality: Mandatory Cardinality: 1..*

This MUST be populated with a globally unique and persistent identifier (that is, it doesn’t change between requests and therefore stored with the source data). This MUST be scoped by a provider specific namespace for the identifier.

There may be more than one identifier where data has been migrated across practices or provider systems and different provider specific identifiers have been assigned.

Where consuming systems are integrating data from this resource to their local system, they MUST also persist this identifier at the same time.

status

Data type: Code Optionality: Mandatory Cardinality: 1..1

Fixed to the value completed for all CareConnect profiles.

notGiven

Data type: Boolean Optionality: Mandatory Cardinality: 1..1

Fixed value of false.

vaccineCode

Data type: CodeableConcept Optionality: Mandatory Cardinality: 1..1

Vaccine product administered.

Where the vaccine product that was administered is not known then the null flavour value code UNK MUST be populated.

patient

Data type: Reference(Patient) Optionality: Mandatory Cardinality: 1..1

A reference to the patient who had the immunisation specified.

encounter

Data type: Reference(Encounter) Optionality: Required Cardinality: 0..1

The consultation within which the immunisation was recorded. This may be when the vaccination was administered or when the registered practice was informed of an immunisation administered elsewhere.

As per base profile guidance.

date

Data type: dateTime Optionality: Required Cardinality: 0..1

The date (and time if applicable) when the immunization was administered. If the immunisation was administered elsewhere, this may be an estimated or partial date.

primarySource

Data type: Boolean Optionality: Mandatory Cardinality: 1..1

This indicates whether the record is based on information from the person who administered the vaccine.

This MUST be true where the immunisation record was recorded by the person who administered the vaccine or directly on behalf of the administrator of the vaccine (this includes recording the immunisation based on a complete, original, verifiable document from the administration of the vaccine). This MUST be false where it a secondary report of a vaccination for example the recollection of the patient, the patient’s parent, carer or guardian or a secondary document.

As this relates to the context of the original source of the immunisation record, a record from a GP2GP transfer is still a primary record if it was originally recorded as primary.

If it is not known whether the record of the vaccination was made from a primary or secondary source, then return the default value of true.

reportOrigin

Data type: CodeableConcept Optionality: Required Cardinality: 0..1

This indicates the source of a secondary reported record.

This provides additional context to the source of the immunisation record where it is not based on information from the person who administered the vaccine. The reportOrigin element can be absent if the record is NOT from a primary source, but the origin of the record is otherwise not recorded / known.

This MUST NOT be included where primarySource is true.

location

Data type: Reference(Location) Optionality: Required Cardinality: 0..1

The GP practice, branch surgery or other location where the vaccination occurred, if known.

If the immunisation record in the GP Clinical System does not record a location for the vaccination, but is linked to a consultation then

  • if the vaccine was administered during the consultation the location MUST be populated with the location of the consultation
  • if the vaccine was NOT administered during the consultation and the location of the vaccination is therefore unknown, then a location MUST NOT be returned

manufacturer

Data type: Reference(Organization) Optionality: Required Cardinality: 0..1

The manufacturer of the vaccine.

lotNumber

Data type: string Optionality: Required Cardinality: 0..1

The batch number of the vaccine.

expirationDate

Data type: date Optionality: Required Cardinality: 0..1

The expiry date of the batch the vaccine is from.

site

Data type: CodeableConcept Optionality: Required Cardinality: 0..1

The site on the body where the vaccine was administered.

route

Data type: CodeableConcept Optionality: Required Cardinality: 0..1

The route through which the vaccine entered the body.

doseQuantity

Data type: SimpleQuantity Optionality: Required Cardinality: 0..1

The amount of the vaccine administered.

practitioner

Data type: BackboneElement Optionality: Required Cardinality: 0..*

The person who recorded the vaccine as having been administered MUST be included. This MUST also include the practitioner who administered the vaccine if different to who recorded the vaccination.

practitioner.role

Data type: Code Optionality:Required Cardinality: 0..1

The role of the referenced practitioner, if known. Where the role is unknown this MUST be absent.

The code EP (Entering Provider) MUST be used to designate the practitioner as having recorded the vaccination.

The code AP (Administering Provider) MUST be used to designate the practitioner as having administered the vaccination.

practitioner.actor

Data type: Reference(Practitioner) Optionality: Mandatory Cardinality: 1..1

A reference to the practitioner profile for who administered and / or recorded the vaccine.

Where there is only a single practitioner recorded against the immunisation record

  • If the practitioner recording the vaccination also administered it, then associate a practitioner.role code AP (Administering Provider) with practitioner profile.
  • If the GP Clinical System cannot determine whether the practitioner administered the vaccine or recorded the vaccination event or both, then do not return a practitioner.role.

This is mandatory where the practitioner.role is populated.

note

Data type: Annotation Optionality: Required Cardinality: 0..*

Notes about the immunization.

explanation.reason

Data type: CodeableConcept Optionality: Required Cardinality: 0..*

The reason why the immunization was given, for example, travel, occupation, and so on.

vaccinationProtocol

Data type: BackboneElement Optionality: Required Cardinality: 0..*

The protocol for the vaccination.

vaccinationProtocol.doseSequence

Data type: positiveInt Optionality: Mandatory Cardinality: 1..1

If the immunisation is achieved via a series of vaccinations, this is the position of the vaccine procedure in the series.

vaccinationProtocol.description

Data type: string Optionality: Required Cardinality: 0..1

A description for the vaccination protocol this vaccination is administered under.

vaccinationProtocol.seriesDoses

Data type: positiveInt Optionality: Required Cardinality: 0..1

The number of doses in the series which are required for vaccination given (at the time it was given).

vaccinationProtocol.targetDisease

Data type: CodeableConcept Optionality: Mandatory Cardinality: 1..*

The disease or diseases the patient is being immunised against.

vaccinationProtocol.doseStatus

Data type: CodeableConcept Optionality Mandatory Cardinality 1..1

Fixed value count

Immunization elements not in use

The following elements MUST NOT be populated:

explanation.reasonNotGiven

Data type: CodeableConcept

Only Immunizations where notGiven is set to false are to be sent using the Immunization profile. This means that there will never be cause to use reasonNotGiven.

reaction

Data type: BackboneElement

Any reaction to an immunization MUST be sent separately in an AllergyIntolerance profile.

vaccinationProtocol.authority

Data type: Reference(Organization)

vaccinationProtocol.series

Data type: string

vaccinationProtocol.doseStatusReason

Data type: CodeableConcept



All content is available under the Open Government Licence v3.0, except where otherwise stated