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 record (given or not given) 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 or the situation code for a vaccination that was intended to be administered but was not done. See the profile for the valid codes.
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.
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 Care Connect profiles.
notGiven
Data type: Boolean |
Optionality: Mandatory | Cardinality: 1..1 |
Value of false
for vaccinations which have been given (or reported as given).
Value of true
for vaccinations which were intended but not given.
vaccineCode
Data type: CodeableConcept |
Optionality: Mandatory | Cardinality: 1..1 |
Vaccine product administered or intended to be 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 due to be immunised.
encounter
Data type: Reference(Encounter) |
Optionality: Required | Cardinality: 0..1 |
The consultation within which this immunisation record was captured. This may represent when the vaccination was administered, intended to be administered or when the registered practice was informed of an immunisation administered elsewhere.
date
Data type: dateTime |
Optionality: Required | Cardinality: 0..1 |
The date (and time if applicable) when the immunization was administered or intended to be 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 or intended to administer 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 is 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 be absent 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 or was intended to occur, 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 or was intended to be administered during the consultation the
location
MUST be populated with the location of the consultation - if the vaccine was NOT administered or intended to be administered during the consultation and the location for the vaccination is therefore unknown, then a
location
MUST be absent
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. This MUST be absent for an intended vaccination which was not given.
route
Data type: CodeableConcept |
Optionality: Required | Cardinality: 0..1 |
The route through which the vaccine entered the body. This MUST be absent for an intended vaccination which was not given.
doseQuantity
Data type: SimpleQuantity |
Optionality: Required | Cardinality: 0..1 |
The amount of the vaccine administered. This MUST be absent for an intended vaccination which was not given.
practitioner
Data type: BackboneElement |
Optionality: Required | Cardinality: 0..* |
The person who recorded the vaccine as having been administered (or reason for not administering an intended vaccination) MUST be included. This MUST also include the practitioner who administered the vaccine if different to who recorded the vaccination.
practitioner.role
Data type: CodeableConcept |
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 (or reason not given).
The code AP
(Administering Provider) MUST be used to designate the practitioner as having administered the vaccination or intending to if the vaccine was not given.
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 (or intended to), 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 just 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.
This MUST be absent if notGiven
is true
.
explanation.reasonNotGiven
Data type: CodeableConcept |
Optionality: Required | Cardinality: 0..* |
The reason why the immunization was not given, such as declined, contra-indicated, unfit or did not attend.
This MUST be absent if notGiven
is false
.
vaccinationProtocol
Data type: BackboneElement |
Optionality: Required | Cardinality: 0..* |
The protocol for the vaccination.
This MUST be absent if notGiven
is true
.
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 / not 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:
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 |