WHO Digital Documentation of COVID-19 Certificates (DDCC)
1.0.0 - CI Build International flag

WHO Digital Documentation of COVID-19 Certificates (DDCC), published by WHO. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/ddcc/tree/main and changes regularly. See the Directory of published versions

Logical Model: DDCC Core Data Set Logical Model - Vaccination Status - Proof of Vaccination

Official URL: http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSetVSPoV Version: 1.0.0
Draft as of 2026-01-19 Computable Name: DDCCCoreDataSetVSPoV

Data elements for the DDCC Core Data Set - Vaccination Status - Proof of Vaccination.

Usages:

  • This Logical Model is not used by any profiles in this Implementation Guide

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.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DDCCCoreDataSet 0..* DDCCCoreDataSetVS DDCC Core Data Set Logical Model - Vaccination Status - Proof of Vaccination

Elements defined in Ancestors:name, birthDate, identifier, certificate, vaccination
... name Σ 1..1 string Name
... birthDate Σ 0..1 date Date of birth
... identifier Σ 0..1 Identifier Unique identifier
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... issuer Σ 1..1 Reference(DDCC Organization) Certificate issuer
.... kid 0..1 string Key ID used to verify the signature of the certificate
.... hcid Σ 1..1 Identifier Health certificate identifier (HCID)
.... ddccid Σ 0..1 Identifier DDCC Identifier
.... version Σ 1..1 string Certificate schema version
.... period C 0..1 Period Certificate Validity Period
Constraints: per-1
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... start ΣC 0..1 dateTime Certificate valid from
..... end ΣC 0..1 dateTime Certificate valid until
... vaccination ΣC 1..1 BackboneElement Vaccination Event
Constraints: who-ddcc-data-1
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... vaccine Σ 1..1 Coding Vaccine or prophylaxis
Binding: WHO Vaccine List (COVID-19) (preferred)
.... brand Σ 1..1 Coding Vaccine brand
.... manufacturer Σ 0..1 Coding Vaccine manufacturer
.... maholder Σ 0..1 Coding Vaccine market authorization holder
.... lot Σ 1..1 string Vaccine lot number
.... date Σ 1..1 dateTime Date of vaccination
.... validFrom 0..1 date Vaccination valid from
.... dose Σ 1..1 positiveInt Dose number
.... totalDoses 0..1 positiveInt Total doses
.... country Σ 1..1 Coding Country of vaccination
Binding: Iso3166-1-3 (preferred)
.... centre 0..1 string Administering centre
.... signature 0..1 Signature Signature of health worker
.... practitioner 0..1 Identifier Health worker identifier
.... disease 0..1 Coding Disease or agent targeted
Binding: WHO Disease or Agent Targeted (COVID-19) (preferred)
.... nextDose 0..1 date Due date of next dose

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DDCCCoreDataSet.vaccination.​vaccine Base preferred WHO Vaccine List (COVID-19) 📦1.0.0 This IG
DDCCCoreDataSet.vaccination.​country Base preferred Iso 3166 Part 1: 3 Letter Codes 📦4.0.1 FHIR Std.
DDCCCoreDataSet.vaccination.​disease Base preferred WHO Disease or Agent Targeted (COVID-19) 📦1.0.0 This IG

Constraints

Id Grade Path(s) Description Expression
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()
per-1 error DDCCCoreDataSet.certificate.period If present, start SHALL have a lower value than end start.hasValue().not() or end.hasValue().not() or (start <= end)
who-ddcc-data-1 error DDCCCoreDataSet.vaccination Manufacturer or Market Authorization Holder SHALL be present manufacturer.exists() or maholder.exists()

This structure is derived from DDCCCoreDataSetVS

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DDCCCoreDataSet 0..* DDCCCoreDataSetVS DDCC Core Data Set Logical Model - Vaccination Status - Proof of Vaccination

Elements defined in Ancestors:name, birthDate, identifier, certificate, vaccination

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DDCCCoreDataSet 0..* DDCCCoreDataSetVS DDCC Core Data Set Logical Model - Vaccination Status - Proof of Vaccination

Elements defined in Ancestors:name, birthDate, identifier, certificate, vaccination
... name Σ 1..1 string Name
... birthDate Σ 0..1 date Date of birth
... identifier Σ 0..1 Identifier Unique identifier
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... issuer Σ 1..1 Reference(DDCC Organization) Certificate issuer
.... kid 0..1 string Key ID used to verify the signature of the certificate
.... hcid Σ 1..1 Identifier Health certificate identifier (HCID)
.... ddccid Σ 0..1 Identifier DDCC Identifier
.... version Σ 1..1 string Certificate schema version
.... period C 0..1 Period Certificate Validity Period
Constraints: per-1
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... start ΣC 0..1 dateTime Certificate valid from
..... end ΣC 0..1 dateTime Certificate valid until
... vaccination ΣC 1..1 BackboneElement Vaccination Event
Constraints: who-ddcc-data-1
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... vaccine Σ 1..1 Coding Vaccine or prophylaxis
Binding: WHO Vaccine List (COVID-19) (preferred)
.... brand Σ 1..1 Coding Vaccine brand
.... manufacturer Σ 0..1 Coding Vaccine manufacturer
.... maholder Σ 0..1 Coding Vaccine market authorization holder
.... lot Σ 1..1 string Vaccine lot number
.... date Σ 1..1 dateTime Date of vaccination
.... validFrom 0..1 date Vaccination valid from
.... dose Σ 1..1 positiveInt Dose number
.... totalDoses 0..1 positiveInt Total doses
.... country Σ 1..1 Coding Country of vaccination
Binding: Iso3166-1-3 (preferred)
.... centre 0..1 string Administering centre
.... signature 0..1 Signature Signature of health worker
.... practitioner 0..1 Identifier Health worker identifier
.... disease 0..1 Coding Disease or agent targeted
Binding: WHO Disease or Agent Targeted (COVID-19) (preferred)
.... nextDose 0..1 date Due date of next dose

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DDCCCoreDataSet.vaccination.​vaccine Base preferred WHO Vaccine List (COVID-19) 📦1.0.0 This IG
DDCCCoreDataSet.vaccination.​country Base preferred Iso 3166 Part 1: 3 Letter Codes 📦4.0.1 FHIR Std.
DDCCCoreDataSet.vaccination.​disease Base preferred WHO Disease or Agent Targeted (COVID-19) 📦1.0.0 This IG

Constraints

Id Grade Path(s) Description Expression
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()
per-1 error DDCCCoreDataSet.certificate.period If present, start SHALL have a lower value than end start.hasValue().not() or end.hasValue().not() or (start <= end)
who-ddcc-data-1 error DDCCCoreDataSet.vaccination Manufacturer or Market Authorization Holder SHALL be present manufacturer.exists() or maholder.exists()

This structure is derived from DDCCCoreDataSetVS

Summary

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DDCCCoreDataSet 0..* DDCCCoreDataSetVS DDCC Core Data Set Logical Model - Vaccination Status - Proof of Vaccination

Elements defined in Ancestors:name, birthDate, identifier, certificate, vaccination
... name Σ 1..1 string Name
... birthDate Σ 0..1 date Date of birth
... identifier Σ 0..1 Identifier Unique identifier
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... issuer Σ 1..1 Reference(DDCC Organization) Certificate issuer
.... kid 0..1 string Key ID used to verify the signature of the certificate
.... hcid Σ 1..1 Identifier Health certificate identifier (HCID)
.... ddccid Σ 0..1 Identifier DDCC Identifier
.... version Σ 1..1 string Certificate schema version
.... period C 0..1 Period Certificate Validity Period
Constraints: per-1
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... start ΣC 0..1 dateTime Certificate valid from
..... end ΣC 0..1 dateTime Certificate valid until
... vaccination ΣC 1..1 BackboneElement Vaccination Event
Constraints: who-ddcc-data-1
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... vaccine Σ 1..1 Coding Vaccine or prophylaxis
Binding: WHO Vaccine List (COVID-19) (preferred)
.... brand Σ 1..1 Coding Vaccine brand
.... manufacturer Σ 0..1 Coding Vaccine manufacturer
.... maholder Σ 0..1 Coding Vaccine market authorization holder
.... lot Σ 1..1 string Vaccine lot number
.... date Σ 1..1 dateTime Date of vaccination
.... validFrom 0..1 date Vaccination valid from
.... dose Σ 1..1 positiveInt Dose number
.... totalDoses 0..1 positiveInt Total doses
.... country Σ 1..1 Coding Country of vaccination
Binding: Iso3166-1-3 (preferred)
.... centre 0..1 string Administering centre
.... signature 0..1 Signature Signature of health worker
.... practitioner 0..1 Identifier Health worker identifier
.... disease 0..1 Coding Disease or agent targeted
Binding: WHO Disease or Agent Targeted (COVID-19) (preferred)
.... nextDose 0..1 date Due date of next dose

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DDCCCoreDataSet.vaccination.​vaccine Base preferred WHO Vaccine List (COVID-19) 📦1.0.0 This IG
DDCCCoreDataSet.vaccination.​country Base preferred Iso 3166 Part 1: 3 Letter Codes 📦4.0.1 FHIR Std.
DDCCCoreDataSet.vaccination.​disease Base preferred WHO Disease or Agent Targeted (COVID-19) 📦1.0.0 This IG

Constraints

Id Grade Path(s) Description Expression
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()
per-1 error DDCCCoreDataSet.certificate.period If present, start SHALL have a lower value than end start.hasValue().not() or end.hasValue().not() or (start <= end)
who-ddcc-data-1 error DDCCCoreDataSet.vaccination Manufacturer or Market Authorization Holder SHALL be present manufacturer.exists() or maholder.exists()

Differential View

This structure is derived from DDCCCoreDataSetVS

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DDCCCoreDataSet 0..* DDCCCoreDataSetVS DDCC Core Data Set Logical Model - Vaccination Status - Proof of Vaccination

Elements defined in Ancestors:name, birthDate, identifier, certificate, vaccination

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DDCCCoreDataSet 0..* DDCCCoreDataSetVS DDCC Core Data Set Logical Model - Vaccination Status - Proof of Vaccination

Elements defined in Ancestors:name, birthDate, identifier, certificate, vaccination
... name Σ 1..1 string Name
... birthDate Σ 0..1 date Date of birth
... identifier Σ 0..1 Identifier Unique identifier
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... issuer Σ 1..1 Reference(DDCC Organization) Certificate issuer
.... kid 0..1 string Key ID used to verify the signature of the certificate
.... hcid Σ 1..1 Identifier Health certificate identifier (HCID)
.... ddccid Σ 0..1 Identifier DDCC Identifier
.... version Σ 1..1 string Certificate schema version
.... period C 0..1 Period Certificate Validity Period
Constraints: per-1
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... start ΣC 0..1 dateTime Certificate valid from
..... end ΣC 0..1 dateTime Certificate valid until
... vaccination ΣC 1..1 BackboneElement Vaccination Event
Constraints: who-ddcc-data-1
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... vaccine Σ 1..1 Coding Vaccine or prophylaxis
Binding: WHO Vaccine List (COVID-19) (preferred)
.... brand Σ 1..1 Coding Vaccine brand
.... manufacturer Σ 0..1 Coding Vaccine manufacturer
.... maholder Σ 0..1 Coding Vaccine market authorization holder
.... lot Σ 1..1 string Vaccine lot number
.... date Σ 1..1 dateTime Date of vaccination
.... validFrom 0..1 date Vaccination valid from
.... dose Σ 1..1 positiveInt Dose number
.... totalDoses 0..1 positiveInt Total doses
.... country Σ 1..1 Coding Country of vaccination
Binding: Iso3166-1-3 (preferred)
.... centre 0..1 string Administering centre
.... signature 0..1 Signature Signature of health worker
.... practitioner 0..1 Identifier Health worker identifier
.... disease 0..1 Coding Disease or agent targeted
Binding: WHO Disease or Agent Targeted (COVID-19) (preferred)
.... nextDose 0..1 date Due date of next dose

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DDCCCoreDataSet.vaccination.​vaccine Base preferred WHO Vaccine List (COVID-19) 📦1.0.0 This IG
DDCCCoreDataSet.vaccination.​country Base preferred Iso 3166 Part 1: 3 Letter Codes 📦4.0.1 FHIR Std.
DDCCCoreDataSet.vaccination.​disease Base preferred WHO Disease or Agent Targeted (COVID-19) 📦1.0.0 This IG

Constraints

Id Grade Path(s) Description Expression
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()
per-1 error DDCCCoreDataSet.certificate.period If present, start SHALL have a lower value than end start.hasValue().not() or end.hasValue().not() or (start <= end)
who-ddcc-data-1 error DDCCCoreDataSet.vaccination Manufacturer or Market Authorization Holder SHALL be present manufacturer.exists() or maholder.exists()

This structure is derived from DDCCCoreDataSetVS

Summary

 

Other representations of profile: CSV, Excel