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
codeAP
(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 |