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/ 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 2025-09-23 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
Elements defined in Ancestors:name, birthDate, identifier, certificate, vaccination
DDCC Core Data Set Logical Model - Vaccination Status - Proof of 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

PathConformanceValueSetURI
DDCCCoreDataSet.vaccination.vaccinepreferredWHODDCCVaccinesCOVID19
http://smart.who.int/ddcc/ValueSet/WHODDCCVaccinesCOVID19
From this IG
DDCCCoreDataSet.vaccination.countrypreferredIso3166-1-3
http://hl7.org/fhir/ValueSet/iso3166-1-3
From the FHIR Standard
DDCCCoreDataSet.vaccination.diseasepreferredWHODDCCDiseaseTargetedCOVID19
http://smart.who.int/ddcc/ValueSet/WHODDCCDiseaseTargetedCOVID19
From this IG

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
per-1errorDDCCCoreDataSet.certificate.periodIf present, start SHALL have a lower value than end
: start.hasValue().not() or end.hasValue().not() or (start <= end)
who-ddcc-data-1errorDDCCCoreDataSet.vaccinationManufacturer 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
Elements defined in Ancestors:name, birthDate, identifier, certificate, vaccination
DDCC Core Data Set Logical Model - Vaccination Status - Proof of Vaccination

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DDCCCoreDataSet 0..* DDCCCoreDataSetVS
Elements defined in Ancestors:name, birthDate, identifier, certificate, vaccination
DDCC Core Data Set Logical Model - Vaccination Status - Proof of 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

PathConformanceValueSetURI
DDCCCoreDataSet.vaccination.vaccinepreferredWHODDCCVaccinesCOVID19
http://smart.who.int/ddcc/ValueSet/WHODDCCVaccinesCOVID19
From this IG
DDCCCoreDataSet.vaccination.countrypreferredIso3166-1-3
http://hl7.org/fhir/ValueSet/iso3166-1-3
From the FHIR Standard
DDCCCoreDataSet.vaccination.diseasepreferredWHODDCCDiseaseTargetedCOVID19
http://smart.who.int/ddcc/ValueSet/WHODDCCDiseaseTargetedCOVID19
From this IG

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
per-1errorDDCCCoreDataSet.certificate.periodIf present, start SHALL have a lower value than end
: start.hasValue().not() or end.hasValue().not() or (start <= end)
who-ddcc-data-1errorDDCCCoreDataSet.vaccinationManufacturer 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
Elements defined in Ancestors:name, birthDate, identifier, certificate, vaccination
DDCC Core Data Set Logical Model - Vaccination Status - Proof of 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

PathConformanceValueSetURI
DDCCCoreDataSet.vaccination.vaccinepreferredWHODDCCVaccinesCOVID19
http://smart.who.int/ddcc/ValueSet/WHODDCCVaccinesCOVID19
From this IG
DDCCCoreDataSet.vaccination.countrypreferredIso3166-1-3
http://hl7.org/fhir/ValueSet/iso3166-1-3
From the FHIR Standard
DDCCCoreDataSet.vaccination.diseasepreferredWHODDCCDiseaseTargetedCOVID19
http://smart.who.int/ddcc/ValueSet/WHODDCCDiseaseTargetedCOVID19
From this IG

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
per-1errorDDCCCoreDataSet.certificate.periodIf present, start SHALL have a lower value than end
: start.hasValue().not() or end.hasValue().not() or (start <= end)
who-ddcc-data-1errorDDCCCoreDataSet.vaccinationManufacturer 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
Elements defined in Ancestors:name, birthDate, identifier, certificate, vaccination
DDCC Core Data Set Logical Model - Vaccination Status - Proof of Vaccination

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DDCCCoreDataSet 0..* DDCCCoreDataSetVS
Elements defined in Ancestors:name, birthDate, identifier, certificate, vaccination
DDCC Core Data Set Logical Model - Vaccination Status - Proof of 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

PathConformanceValueSetURI
DDCCCoreDataSet.vaccination.vaccinepreferredWHODDCCVaccinesCOVID19
http://smart.who.int/ddcc/ValueSet/WHODDCCVaccinesCOVID19
From this IG
DDCCCoreDataSet.vaccination.countrypreferredIso3166-1-3
http://hl7.org/fhir/ValueSet/iso3166-1-3
From the FHIR Standard
DDCCCoreDataSet.vaccination.diseasepreferredWHODDCCDiseaseTargetedCOVID19
http://smart.who.int/ddcc/ValueSet/WHODDCCDiseaseTargetedCOVID19
From this IG

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
per-1errorDDCCCoreDataSet.certificate.periodIf present, start SHALL have a lower value than end
: start.hasValue().not() or end.hasValue().not() or (start <= end)
who-ddcc-data-1errorDDCCCoreDataSet.vaccinationManufacturer 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