As of July 1st 2023 the EU DCC project has been handed over to the WHO. The project has therefore been frozen. This repository will be placed into archival mode and will remain available for the foreseeable future, however it will no longer be actively maintained.
Welcome to the EU-DCC valuesets repository. This repository contains a snapshot of the valuesets referenced by the EU Digital COVID Certificate (DCC) JSON Schema. The most up-to-date version of the valuesets are distributed on the EU DGC Gateway.
All of the file found in this repository should be considered for reference usage only. The current official release is published on the EU DGC Gateway. As access to this gateway is only available to Member States please refer to your own Member State to for access to those files.
Release: 2.12.0
Here is an overview of the files available in this repository. The column "managed on" describes the place where the value-set is managed. In most cases that is in this GitHub repository. Those valuesets will usually be very close to the versions provided on the EU DGC Gateway. As they are managed in the GitHub they will always be the newest version, just bear in mind that the version provided by the EU DGC Gateway is always considered the current version.
Reminder: the valuesets on the EU DGC Gateway are leading, the valuesets here are provided for purposes of development and as part of our release process.
File name | Description | Managed on |
---|---|---|
country-2-codes.json | List of ISO-3166-2 country codes used for issuers | Github |
disease-targeted-agent.json | List of diseases/targeted agent (i.e. covid) | Github |
test-manf-example.json | Example of the test manufacturers value-set | DGC Gateway |
test-result.json | List of supported test results (i.e. detected, not detected..) | Github |
test-type.json | List of supported test types (i.e. PCR, rapid-antigen..) | Github |
vaccine-encoding-instructions.json | List of valid encodings (manufacturer + medical product) | Github |
vaccine-mah-manf.json | List of vaccine manufacturers | Github |
vaccine-medical-product.json | List of the vaccines | Github |
vaccine-prophylaxis.json | List of the vaccine/prophylaxis types | Github |
The JSON Schema definition for the structure used for all of the above valuesets can be found in DCC.ValueSets.schema.json
Finally, we have changelog, license and versioning files and, of course, this readme.
The scripts we used are bash-based, if you're a Windows users you will either need to use the amazing Windows Subsystem for Linux or use another Cygwin.
Although the maintainers are primarily Windows developers the internet - and the git eco-system - are POSIX focused. With the fantastic support for POSIX on modern Windows we have decided to focus on a POSIX-based workflow.
Node.js 18.14.2 or above NPM 9.5.0 (included with Node.js)
This repository makes use of the pre-commit
git hook. This executes the schema validation scripts (which are described below).
To enable git hooks you need to tell git to use them, you can do that by running this command from the terminal in the root directory of this project:
git config core.hooksPath hooks
First lets ask node to install the dependencies:
npm install
Then to run the schema validator simply:
npm test
If there are any validation errors they will be shown on the screen.
We use JSON Schema 2020-12 to define the schema of the valuesets. For most of the valuesets there is a shared schema.
For files which have a different schema - such as vaccine-encoding-instructions
- the validator supports the definition of a custom schema. By convention these schema files are named <valueset-file-name>.schema.json
and are stored in ./schema
. So for vaccine-encoding-instructions.json
the schema vaccine-encoding-instructions.schema.json
is used.
The validator also checks whether the set of actual valuesets coincides with the set expected by the EU DCC Schema standard.
The exact GitHub reference - being a (release) tag, or branch - is configured through the EU_DCC_SCHEMA_REF
constant defined in this config file.
This constant needs to be updated when a new release of the EU DCC Schema is released, or while being worked on.
The validator code has been written in an imperative style for ease of understanding and can be found in the schema directory.
The valuesets are owned by the eHealth Network Subgroup on Semantics (SSG). Any requests for additions or changes must be directed to that group. If you or your country are not members of that subgroup then you can raise an issue on this GitHub repository and, if appropriate, we will raise it with the SSG on your behalf.
This repository, as with all of the eHN GitHub repositories, is maintained by a number of volunteers from the eHealth Network Technical IOP Subgroup.