From f5c8cecc22dc70d1a1bdeb15414a04905951ded0 Mon Sep 17 00:00:00 2001 From: Jakob Schlyter Date: Tue, 27 Apr 2021 08:11:08 +0200 Subject: [PATCH 1/8] add negative tests --- Makefile | 4 +++- test/invalid/empty.json | 11 +++++++++++ test/invalid/invalid_vac.json | 23 +++++++++++++++++++++++ test/invalid/missing_dob.json | 23 +++++++++++++++++++++++ test/invalid/missing_fnt.json | 22 ++++++++++++++++++++++ 5 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 test/invalid/empty.json create mode 100644 test/invalid/invalid_vac.json create mode 100644 test/invalid/missing_dob.json create mode 100644 test/invalid/missing_fnt.json diff --git a/Makefile b/Makefile index c9f0548..5876d05 100644 --- a/Makefile +++ b/Makefile @@ -8,7 +8,9 @@ MERGED= DGC-all-schemas-combined.json AJV= ./node_modules/.bin/ajv -c ajv-formats --spec=draft2020 -test:: compile validate-examples check-formatting +test:: compile validate-examples check-formatting $(MERGED) + $(AJV) test -s $(MERGED) -d "examples/*.json" --valid + $(AJV) test -s $(MERGED) -d "test/invalid/*.json" --invalid merge: $(MERGED) diff --git a/test/invalid/empty.json b/test/invalid/empty.json new file mode 100644 index 0000000..70e2e5a --- /dev/null +++ b/test/invalid/empty.json @@ -0,0 +1,11 @@ +{ + "ver": "1.0.0", + "nam": { + "fn": "d'Arsøns - van Halen", + "gn": "François-Joan", + "fnt": "DARSONS Date: Fri, 23 Apr 2021 16:10:45 +0200 Subject: [PATCH 2/8] decouple the value sets from the schema --- DGC-all-schemas-combined.json | 76 +------- DGC.ValueSets.schema.json | 76 +------- Makefile | 3 +- valuesets/disease-agent-targeted.json | 10 ++ valuesets/test-manf.json | 210 +++++++++++++++++++++++ valuesets/test-result.json | 18 ++ valuesets/vaccine-mah-manf.json | 114 ++++++++++++ valuesets/vaccine-medicinal-product.json | 98 +++++++++++ valuesets/vaccine-prophylaxis.json | 26 +++ 9 files changed, 489 insertions(+), 142 deletions(-) create mode 100644 valuesets/disease-agent-targeted.json create mode 100644 valuesets/test-manf.json create mode 100644 valuesets/test-result.json create mode 100644 valuesets/vaccine-mah-manf.json create mode 100644 valuesets/vaccine-medicinal-product.json create mode 100644 valuesets/vaccine-prophylaxis.json diff --git a/DGC-all-schemas-combined.json b/DGC-all-schemas-combined.json index 64a1693..26739ae 100644 --- a/DGC-all-schemas-combined.json +++ b/DGC-all-schemas-combined.json @@ -298,96 +298,32 @@ "disease-agent-targeted": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.1", "type": "string", - "enum": [ - "840539006" - ] + "$comment": "valuesets/disease-agent-targeted.json" }, "vaccine-prophylaxis": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.2", "type": "string", - "enum": [ - "1119305005", - "1119349007", - "J07BX03" - ] + "$comment": "valuesets/vaccine-prophylaxis.json" }, "vaccine-medicinal-product": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.3", "type": "string", - "enum": [ - "EU/1/20/1528", - "EU/1/20/1507", - "EU/1/21/1529", - "EU/1/20/1525", - "CVnCoV", - "NVX-CoV2373", - "Sputnik-V", - "Convidecia", - "EpiVacCorona", - "BBIBP-CorV", - "Inactivated-SARS-CoV-2-Vero-Cell", - "CoronaVac", - "Covaxin" - ] + "$comment": "valuesets/vaccine-medicinal-product.json" }, "vaccine-mah-manf": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.4", "type": "string", - "enum": [ - "ORG-100001699", - "ORG-100030215", - "ORG-100001417", - "ORG-100031184", - "ORG-100006270", - "ORG-100013793", - "ORG-100020693", - "ORG-100020693", - "ORG-100010771", - "ORG-100024420", - "ORG-100032020", - "Gamaleya-Research-Institute", - "Vector-Institute", - "Sinovac-Biotech", - "Bharat-Biotech" - ] + "$comment": "valuesets/vaccine-mah-manf.json" }, "test-manf": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.8", "type": "string", - "enum": [ - "1232", - "1304", - "1065", - "1331", - "1484", - "1242", - "1223", - "1173", - "1244", - "1360", - "1363", - "1767", - "1333", - "1268", - "1180", - "1481", - "1162", - "1271", - "1097", - "1489", - "344", - "345", - "1218", - "1343" - ] + "$comment": "valuesets/test-manf.json" }, "test-result": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.9", "type": "string", - "enum": [ - "260415000", - "260373001" - ] + "$comment": "valuesets/test-results.json" } } } diff --git a/DGC.ValueSets.schema.json b/DGC.ValueSets.schema.json index cf77d47..79d7964 100644 --- a/DGC.ValueSets.schema.json +++ b/DGC.ValueSets.schema.json @@ -7,96 +7,32 @@ "disease-agent-targeted": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.1", "type": "string", - "enum": [ - "840539006" - ] + "$comment": "valuesets/disease-agent-targeted.json" }, "vaccine-prophylaxis": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.2", "type": "string", - "enum": [ - "1119305005", - "1119349007", - "J07BX03" - ] + "$comment": "valuesets/vaccine-prophylaxis.json" }, "vaccine-medicinal-product": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.3", "type": "string", - "enum": [ - "EU/1/20/1528", - "EU/1/20/1507", - "EU/1/21/1529", - "EU/1/20/1525", - "CVnCoV", - "NVX-CoV2373", - "Sputnik-V", - "Convidecia", - "EpiVacCorona", - "BBIBP-CorV", - "Inactivated-SARS-CoV-2-Vero-Cell", - "CoronaVac", - "Covaxin" - ] + "$comment": "valuesets/vaccine-medicinal-product.json" }, "vaccine-mah-manf": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.4", "type": "string", - "enum": [ - "ORG-100001699", - "ORG-100030215", - "ORG-100001417", - "ORG-100031184", - "ORG-100006270", - "ORG-100013793", - "ORG-100020693", - "ORG-100020693", - "ORG-100010771", - "ORG-100024420", - "ORG-100032020", - "Gamaleya-Research-Institute", - "Vector-Institute", - "Sinovac-Biotech", - "Bharat-Biotech" - ] + "$comment": "valuesets/vaccine-mah-manf.json" }, "test-manf": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.8", "type": "string", - "enum": [ - "1232", - "1304", - "1065", - "1331", - "1484", - "1242", - "1223", - "1173", - "1244", - "1360", - "1363", - "1767", - "1333", - "1268", - "1180", - "1481", - "1162", - "1271", - "1097", - "1489", - "344", - "345", - "1218", - "1343" - ] + "$comment": "valuesets/test-manf.json" }, "test-result": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.9", "type": "string", - "enum": [ - "260415000", - "260373001" - ] + "$comment": "valuesets/test-results.json" } } } diff --git a/Makefile b/Makefile index 5876d05..49dcf15 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,6 @@ SCHEMATA= DGC.schema.json \ DGC.Core.Types.schema.json \ DGC.Types.schema.json \ DGC.ValueSets.schema.json - MERGED= DGC-all-schemas-combined.json AJV= ./node_modules/.bin/ajv -c ajv-formats --spec=draft2020 @@ -37,7 +36,7 @@ $(MERGED): $(SCHEMATA) -$(AJV) validate -s $@ -d "examples/*.json" reformat:: - for file in *.json Lookup-tables/*.json; do jq . <$$file >$$file.tmp && mv $$file.tmp $$file; done + for file in *.json Lookup-tables/*.json valuesets/*.json; do jq . <$$file >$$file.tmp && mv $$file.tmp $$file; done install-ajv: npm install ajv ajv-cli ajv-formats diff --git a/valuesets/disease-agent-targeted.json b/valuesets/disease-agent-targeted.json new file mode 100644 index 0000000..a2b2bc0 --- /dev/null +++ b/valuesets/disease-agent-targeted.json @@ -0,0 +1,10 @@ +{ + "840539006": { + "display": "COVID-19", + "lang": "en", + "active": true, + "system": "http://snomed.info/sct", + "version": "http://snomed.info/sct/900000000000207008/version/20210131", + "valueSetId": "disease-agent-targeted" + } +} diff --git a/valuesets/test-manf.json b/valuesets/test-manf.json new file mode 100644 index 0000000..4d5fc34 --- /dev/null +++ b/valuesets/test-manf.json @@ -0,0 +1,210 @@ +{ + "1232": { + "display": "Abbott Rapid Diagnostics, Panbio COVID-19 Ag Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1304": { + "display": "AMEDA Labordiagnostik GmbH, AMP Rapid Test SARS-CoV-2 Ag", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1065": { + "display": "Becton Dickinson, Veritor System Rapid Detection of SARS-CoV-2", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1331": { + "display": "Beijing Lepu Medical Technology Co., Ltd, SARS-CoV-2 Antigen Rapid Test Kit", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1484": { + "display": "Beijing Wantai Biological Pharmacy Enterprise Co., Ltd, Wantai SARS-CoV-2 Ag Rapid Test (FIA)", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1242": { + "display": "Bionote, Inc, NowCheck COVID-19 Ag Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1223": { + "display": "BIOSYNEX SWISS SA, BIOSYNEX COVID-19 Ag BSS", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1173": { + "display": "CerTest Biotec, S.L., CerTest SARS-CoV-2 Card test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1244": { + "display": "GenBody, Inc, Genbody COVID-19 Ag Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1360": { + "display": "Guangdong Wesail Biotech Co., Ltd, COVID-19 Ag Test Kit", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1363": { + "display": "Hangzhou Clongene Biotech Co., Ltd, Covid-19 Antigen Rapid Test Kit", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1767": { + "display": "Healgen Scientific Limited Liability Company, Coronavirus Ag Rapid Test Cassette", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1333": { + "display": "Joinstar Biomedical Technology Co., Ltd, COVID-19 Rapid Antigen Test (Colloidal Gold)", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1268": { + "display": "LumiraDX UK Ltd, LumiraDx SARS-CoV-2 Ag Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1180": { + "display": "MEDsan GmbH, MEDsan SARS-CoV-2 Antigen Rapid Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1481": { + "display": "MP Biomedicals Germany GmbH, Rapid SARS-CoV-2 Antigen Test Card", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1162": { + "display": "Nal von minden GmbH, NADAL COVID-19 Ag Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1271": { + "display": "Precision Biosensor, Inc, Exdia COVID-19 Ag", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1341": { + "display": "Qingdao Hightop Biotech Co., Ltd, SARS-CoV-2 Antigen Rapid Test (Immunochromatography)", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1097": { + "display": "Quidel Corporation, Sofia SARS Antigen FIA", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1489": { + "display": "Safecare Biotech (Hangzhou) Co. Ltd, COVID-19 Antigen Rapid Test Kit (Swab)", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "344": { + "display": "SD BIOSENSOR Inc, STANDARD F COVID-19 Ag FIA", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "345": { + "display": "SD BIOSENSOR Inc, STANDARD Q COVID-19 Ag Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1218": { + "display": "Siemens Healthineers, CLINITEST Rapid Covid-19 Antigen Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1278": { + "display": "Xiamen Boson Biotech Co. Ltd, Rapid SARS-CoV-2 Antigen Test Card", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + }, + "1343": { + "display": "Zhejiang Orient Gene Biotech, Coronavirus Ag Rapid Test Cassette (Swab)", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET", + "valueSetId": "covid-19-lab-test-manufacturer-and-name" + } +} diff --git a/valuesets/test-result.json b/valuesets/test-result.json new file mode 100644 index 0000000..ee0a85e --- /dev/null +++ b/valuesets/test-result.json @@ -0,0 +1,18 @@ +{ + "260415000": { + "display": "Not detected", + "lang": "en", + "active": true, + "system": "http://snomed.info/sct", + "version": "http://snomed.info/sct/900000000000207008/version/20210131", + "valueSetId": "covid-19-lab-result" + }, + "260373001": { + "display": "Detected", + "lang": "en", + "active": true, + "system": "http://snomed.info/sct", + "version": "http://snomed.info/sct/900000000000207008/version/20210131", + "valueSetId": "covid-19-lab-result" + } +} diff --git a/valuesets/vaccine-mah-manf.json b/valuesets/vaccine-mah-manf.json new file mode 100644 index 0000000..dde49c2 --- /dev/null +++ b/valuesets/vaccine-mah-manf.json @@ -0,0 +1,114 @@ +{ + "ORG-100001699": { + "display": "AstraZeneca AB", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100030215": { + "display": "Biontech Manufacturing GmbH", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100001417": { + "display": "Janssen-Cilag International", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100031184": { + "display": "Moderna Biotech Spain S.L.", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100006270": { + "display": "Curevac AG", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100013793": { + "display": "CanSino Biologics", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100020693": { + "display": "China Sinopharm International Corp. - Beijing location", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100010771": { + "display": "Sinopharm Weiqida Europe Pharmaceutical s.r.o. - Prague location", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100024420": { + "display": "Sinopharm Zhijun (Shenzhen) Pharmaceutical Co. Ltd. - Shenzhen location", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100032020": { + "display": "Novavax CZ AS", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "Gamaleya-Research-Institute": { + "display": "Gamaleya Research Institute", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccinemanufacturer", + "version": "1.0", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "Vector-Institute": { + "display": "Vector Institute", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccinemanufacturer", + "version": "1.0", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "Sinovac-Biotech": { + "display": "Sinovac Biotech", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccinemanufacturer", + "version": "1.0", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "Bharat-Biotech": { + "display": "Bharat Biotech", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccinemanufacturer", + "version": "1.0", + "valueSetId": "vaccines-covid-19-auth-holders" + } +} diff --git a/valuesets/vaccine-medicinal-product.json b/valuesets/vaccine-medicinal-product.json new file mode 100644 index 0000000..1101faf --- /dev/null +++ b/valuesets/vaccine-medicinal-product.json @@ -0,0 +1,98 @@ +{ + "EU/1/20/1528": { + "display": "Comirnaty", + "lang": "en", + "active": true, + "system": "https://ec.europa.eu/health/documents/community-register/html/", + "version": "", + "valueSetId": "vaccines-covid-19-names" + }, + "EU/1/20/1507": { + "display": "COVID-19 Vaccine Moderna", + "lang": "en", + "active": true, + "system": "https://ec.europa.eu/health/documents/community-register/html/", + "version": "", + "valueSetId": "vaccines-covid-19-names" + }, + "EU/1/21/1529": { + "display": "Vaxzevria", + "lang": "en", + "active": true, + "system": "https://ec.europa.eu/health/documents/community-register/html/", + "version": "", + "valueSetId": "vaccines-covid-19-names" + }, + "EU/1/20/1525": { + "display": "COVID-19 Vaccine Janssen", + "lang": "en", + "active": true, + "system": "https://ec.europa.eu/health/documents/community-register/html/", + "version": "", + "valueSetId": "vaccines-covid-19-names" + }, + "CVnCoV": { + "display": "CVnCoV", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0", + "valueSetId": "vaccines-covid-19-names" + }, + "Sputnik-V": { + "display": "Sputnik-V", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0", + "valueSetId": "vaccines-covid-19-names" + }, + "Convidecia": { + "display": "Convidecia", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0", + "valueSetId": "vaccines-covid-19-names" + }, + "EpiVacCorona": { + "display": "EpiVacCorona", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0", + "valueSetId": "vaccines-covid-19-names" + }, + "BBIBP-CorV": { + "display": "BBIBP-CorV", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0", + "valueSetId": "vaccines-covid-19-names" + }, + "Inactivated-SARS-CoV-2-Vero-Cell": { + "display": "Inactivated SARS-CoV-2 (Vero Cell)", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0", + "valueSetId": "vaccines-covid-19-names" + }, + "CoronaVac": { + "display": "CoronaVac", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0", + "valueSetId": "vaccines-covid-19-names" + }, + "Covaxin": { + "display": "Covaxin (also known as BBV152 A, B, C)", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0", + "valueSetId": "vaccines-covid-19-names" + } +} diff --git a/valuesets/vaccine-prophylaxis.json b/valuesets/vaccine-prophylaxis.json new file mode 100644 index 0000000..70a77b3 --- /dev/null +++ b/valuesets/vaccine-prophylaxis.json @@ -0,0 +1,26 @@ +{ + "1119349007": { + "display": "SARS-CoV-2 mRNA vaccine", + "lang": "en", + "active": true, + "system": "http://snomed.info/sct", + "version": "http://snomed.info/sct/900000000000207008/version/20210131", + "valueSetId": "sct-vaccines-covid-19" + }, + "1119305005": { + "display": "SARS-CoV-2 antigen vaccine", + "lang": "en", + "active": true, + "system": "http://snomed.info/sct", + "version": "http://snomed.info/sct/900000000000207008/version/20210131", + "valueSetId": "sct-vaccines-covid-19" + }, + "J07BX03": { + "display": "covid-19 vaccines", + "lang": "en", + "active": true, + "system": "http://www.whocc.no/atc", + "version": "2021-01", + "valueSetId": "sct-vaccines-covid-19" + } +} From 66fb82d58589f1fd3784e8810e36d64a9d0815cb Mon Sep 17 00:00:00 2001 From: Jakob Schlyter Date: Tue, 27 Apr 2021 09:13:21 +0200 Subject: [PATCH 3/8] drop lookup tables, replaced by valuesets --- Lookup-tables/DGC-RAT-lookup.json | 210 --- Lookup-tables/DGC-country-lookup.json | 1745 ------------------------ Lookup-tables/DGC-valueset-lookup.json | 274 ---- Makefile | 4 +- 4 files changed, 2 insertions(+), 2231 deletions(-) delete mode 100644 Lookup-tables/DGC-RAT-lookup.json delete mode 100644 Lookup-tables/DGC-country-lookup.json delete mode 100644 Lookup-tables/DGC-valueset-lookup.json diff --git a/Lookup-tables/DGC-RAT-lookup.json b/Lookup-tables/DGC-RAT-lookup.json deleted file mode 100644 index 4d5fc34..0000000 --- a/Lookup-tables/DGC-RAT-lookup.json +++ /dev/null @@ -1,210 +0,0 @@ -{ - "1232": { - "display": "Abbott Rapid Diagnostics, Panbio COVID-19 Ag Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1304": { - "display": "AMEDA Labordiagnostik GmbH, AMP Rapid Test SARS-CoV-2 Ag", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1065": { - "display": "Becton Dickinson, Veritor System Rapid Detection of SARS-CoV-2", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1331": { - "display": "Beijing Lepu Medical Technology Co., Ltd, SARS-CoV-2 Antigen Rapid Test Kit", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1484": { - "display": "Beijing Wantai Biological Pharmacy Enterprise Co., Ltd, Wantai SARS-CoV-2 Ag Rapid Test (FIA)", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1242": { - "display": "Bionote, Inc, NowCheck COVID-19 Ag Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1223": { - "display": "BIOSYNEX SWISS SA, BIOSYNEX COVID-19 Ag BSS", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1173": { - "display": "CerTest Biotec, S.L., CerTest SARS-CoV-2 Card test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1244": { - "display": "GenBody, Inc, Genbody COVID-19 Ag Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1360": { - "display": "Guangdong Wesail Biotech Co., Ltd, COVID-19 Ag Test Kit", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1363": { - "display": "Hangzhou Clongene Biotech Co., Ltd, Covid-19 Antigen Rapid Test Kit", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1767": { - "display": "Healgen Scientific Limited Liability Company, Coronavirus Ag Rapid Test Cassette", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1333": { - "display": "Joinstar Biomedical Technology Co., Ltd, COVID-19 Rapid Antigen Test (Colloidal Gold)", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1268": { - "display": "LumiraDX UK Ltd, LumiraDx SARS-CoV-2 Ag Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1180": { - "display": "MEDsan GmbH, MEDsan SARS-CoV-2 Antigen Rapid Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1481": { - "display": "MP Biomedicals Germany GmbH, Rapid SARS-CoV-2 Antigen Test Card", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1162": { - "display": "Nal von minden GmbH, NADAL COVID-19 Ag Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1271": { - "display": "Precision Biosensor, Inc, Exdia COVID-19 Ag", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1341": { - "display": "Qingdao Hightop Biotech Co., Ltd, SARS-CoV-2 Antigen Rapid Test (Immunochromatography)", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1097": { - "display": "Quidel Corporation, Sofia SARS Antigen FIA", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1489": { - "display": "Safecare Biotech (Hangzhou) Co. Ltd, COVID-19 Antigen Rapid Test Kit (Swab)", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "344": { - "display": "SD BIOSENSOR Inc, STANDARD F COVID-19 Ag FIA", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "345": { - "display": "SD BIOSENSOR Inc, STANDARD Q COVID-19 Ag Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1218": { - "display": "Siemens Healthineers, CLINITEST Rapid Covid-19 Antigen Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1278": { - "display": "Xiamen Boson Biotech Co. Ltd, Rapid SARS-CoV-2 Antigen Test Card", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1343": { - "display": "Zhejiang Orient Gene Biotech, Coronavirus Ag Rapid Test Cassette (Swab)", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - } -} diff --git a/Lookup-tables/DGC-country-lookup.json b/Lookup-tables/DGC-country-lookup.json deleted file mode 100644 index 9315712..0000000 --- a/Lookup-tables/DGC-country-lookup.json +++ /dev/null @@ -1,1745 +0,0 @@ -{ - "AD": { - "display": "Andorra", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AE": { - "display": "United Arab Emirates", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AF": { - "display": "Afghanistan", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AG": { - "display": "Antigua and Barbuda", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AI": { - "display": "Anguilla", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AL": { - "display": "Albania", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AM": { - "display": "Armenia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AO": { - "display": "Angola", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AQ": { - "display": "Antarctica", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AR": { - "display": "Argentina", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AS": { - "display": "American Samoa", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AT": { - "display": "Austria", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AU": { - "display": "Australia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AW": { - "display": "Aruba", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AX": { - "display": "Ã…land Islands", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "AZ": { - "display": "Azerbaijan", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BA": { - "display": "Bosnia and Herzegovina", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BB": { - "display": "Barbados", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BD": { - "display": "Bangladesh", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BE": { - "display": "Belgium", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BF": { - "display": "Burkina Faso", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BG": { - "display": "Bulgaria", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BH": { - "display": "Bahrain", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BI": { - "display": "Burundi", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BJ": { - "display": "Benin", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BL": { - "display": "Saint Barthélemy", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BM": { - "display": "Bermuda", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BN": { - "display": "Brunei Darussalam", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BO": { - "display": "Bolivia, Plurinational State of", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BQ": { - "display": "Bonaire, Sint Eustatius and Saba", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BR": { - "display": "Brazil", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BS": { - "display": "Bahamas", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BT": { - "display": "Bhutan", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BV": { - "display": "Bouvet Island", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BW": { - "display": "Botswana", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BY": { - "display": "Belarus", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "BZ": { - "display": "Belize", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CA": { - "display": "Canada", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CC": { - "display": "Cocos (Keeling) Islands", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CD": { - "display": "Congo, the Democratic Republic of the", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CF": { - "display": "Central African Republic", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CG": { - "display": "Congo", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CH": { - "display": "Switzerland", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CI": { - "display": "Côte d''Ivoire", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CK": { - "display": "Cook Islands", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CL": { - "display": "Chile", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CM": { - "display": "Cameroon", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CN": { - "display": "China", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CO": { - "display": "Colombia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CR": { - "display": "Costa Rica", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CU": { - "display": "Cuba", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CV": { - "display": "Cabo Verde", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CW": { - "display": "Curaçao", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CX": { - "display": "Christmas Island", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CY": { - "display": "Cyprus", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "CZ": { - "display": "Czechia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "DE": { - "display": "Germany", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "DJ": { - "display": "Djibouti", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "DK": { - "display": "Denmark", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "DM": { - "display": "Dominica", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "DO": { - "display": "Dominican Republic", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "DZ": { - "display": "Algeria", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "EC": { - "display": "Ecuador", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "EE": { - "display": "Estonia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "EG": { - "display": "Egypt", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "EH": { - "display": "Western Sahara", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "ER": { - "display": "Eritrea", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "ES": { - "display": "Spain", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "ET": { - "display": "Ethiopia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "FI": { - "display": "Finland", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "FJ": { - "display": "Fiji", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "FK": { - "display": "Falkland Islands (Malvinas)", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "FM": { - "display": "Micronesia, Federated States of", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "FO": { - "display": "Faroe Islands", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "FR": { - "display": "France", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GA": { - "display": "Gabon", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GB": { - "display": "United Kingdom of Great Britain and Northern Ireland", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GD": { - "display": "Grenada", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GE": { - "display": "Georgia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GF": { - "display": "French Guiana", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GG": { - "display": "Guernsey", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GH": { - "display": "Ghana", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GI": { - "display": "Gibraltar", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GL": { - "display": "Greenland", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GM": { - "display": "Gambia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GN": { - "display": "Guinea", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GP": { - "display": "Guadeloupe", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GQ": { - "display": "Equatorial Guinea", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GR": { - "display": "Greece", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GS": { - "display": "South Georgia and the South Sandwich Islands", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GT": { - "display": "Guatemala", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GU": { - "display": "Guam", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GW": { - "display": "Guinea-Bissau", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "GY": { - "display": "Guyana", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "HK": { - "display": "Hong Kong", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "HM": { - "display": "Heard Island and McDonald Islands", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "HN": { - "display": "Honduras", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "HR": { - "display": "Croatia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "HT": { - "display": "Haiti", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "HU": { - "display": "Hungary", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "ID": { - "display": "Indonesia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "IE": { - "display": "Ireland", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "IL": { - "display": "Israel", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "IM": { - "display": "Isle of Man", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "IN": { - "display": "India", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "IO": { - "display": "British Indian Ocean Territory", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "IQ": { - "display": "Iraq", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "IR": { - "display": "Iran, Islamic Republic of", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "IS": { - "display": "Iceland", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "IT": { - "display": "Italy", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "JE": { - "display": "Jersey", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "JM": { - "display": "Jamaica", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "JO": { - "display": "Jordan", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "JP": { - "display": "Japan", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "KE": { - "display": "Kenya", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "KG": { - "display": "Kyrgyzstan", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "KH": { - "display": "Cambodia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "KI": { - "display": "Kiribati", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "KM": { - "display": "Comoros", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "KN": { - "display": "Saint Kitts and Nevis", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "KP": { - "display": "Korea, Democratic People''s Republic of", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "KR": { - "display": "Korea, Republic of", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "KW": { - "display": "Kuwait", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "KY": { - "display": "Cayman Islands", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "KZ": { - "display": "Kazakhstan", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "LA": { - "display": "Lao People''s Democratic Republic", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "LB": { - "display": "Lebanon", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "LC": { - "display": "Saint Lucia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "LI": { - "display": "Liechtenstein", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "LK": { - "display": "Sri Lanka", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "LR": { - "display": "Liberia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "LS": { - "display": "Lesotho", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "LT": { - "display": "Lithuania", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "LU": { - "display": "Luxembourg", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "LV": { - "display": "Latvia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "LY": { - "display": "Libya", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MA": { - "display": "Morocco", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MC": { - "display": "Monaco", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MD": { - "display": "Moldova, Republic of", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "ME": { - "display": "Montenegro", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MF": { - "display": "Saint Martin (French part)", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MG": { - "display": "Madagascar", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MH": { - "display": "Marshall Islands", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MK": { - "display": "Macedonia, the former Yugoslav Republic of", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "ML": { - "display": "Mali", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MM": { - "display": "Myanmar", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MN": { - "display": "Mongolia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MO": { - "display": "Macao", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MP": { - "display": "Northern Mariana Islands", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MQ": { - "display": "Martinique", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MR": { - "display": "Mauritania", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MS": { - "display": "Montserrat", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MT": { - "display": "Malta", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MU": { - "display": "Mauritius", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MV": { - "display": "Maldives", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MW": { - "display": "Malawi", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MX": { - "display": "Mexico", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MY": { - "display": "Malaysia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "MZ": { - "display": "Mozambique", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "NA": { - "display": "Namibia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "NC": { - "display": "New Caledonia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "NE": { - "display": "Niger", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "NF": { - "display": "Norfolk Island", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "NG": { - "display": "Nigeria", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "NI": { - "display": "Nicaragua", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "NL": { - "display": "Netherlands", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "NO": { - "display": "Norway", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "NP": { - "display": "Nepal", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "NR": { - "display": "Nauru", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "NU": { - "display": "Niue", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "NZ": { - "display": "New Zealand", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "OM": { - "display": "Oman", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PA": { - "display": "Panama", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PE": { - "display": "Peru", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PF": { - "display": "French Polynesia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PG": { - "display": "Papua New Guinea", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PH": { - "display": "Philippines", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PK": { - "display": "Pakistan", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PL": { - "display": "Poland", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PM": { - "display": "Saint Pierre and Miquelon", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PN": { - "display": "Pitcairn", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PR": { - "display": "Puerto Rico", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PS": { - "display": "Palestine, State of", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PT": { - "display": "Portugal", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PW": { - "display": "Palau", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "PY": { - "display": "Paraguay", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "QA": { - "display": "Qatar", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "RE": { - "display": "Réunion", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "RO": { - "display": "Romania", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "RS": { - "display": "Serbia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "RU": { - "display": "Russian Federation", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "RW": { - "display": "Rwanda", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SA": { - "display": "Saudi Arabia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SB": { - "display": "Solomon Islands", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SC": { - "display": "Seychelles", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SD": { - "display": "Sudan", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SE": { - "display": "Sweden", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SG": { - "display": "Singapore", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SH": { - "display": "Saint Helena, Ascension and Tristan da Cunha", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SI": { - "display": "Slovenia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SJ": { - "display": "Svalbard and Jan Mayen", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SK": { - "display": "Slovakia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SL": { - "display": "Sierra Leone", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SM": { - "display": "San Marino", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SN": { - "display": "Senegal", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SO": { - "display": "Somalia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SR": { - "display": "Suriname", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SS": { - "display": "South Sudan", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "ST": { - "display": "Sao Tome and Principe", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SV": { - "display": "El Salvador", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SX": { - "display": "Sint Maarten (Dutch part)", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SY": { - "display": "Syrian Arab Republic", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "SZ": { - "display": "Swaziland", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TC": { - "display": "Turks and Caicos Islands", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TD": { - "display": "Chad", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TF": { - "display": "French Southern Territories", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TG": { - "display": "Togo", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TH": { - "display": "Thailand", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TJ": { - "display": "Tajikistan", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TK": { - "display": "Tokelau", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TL": { - "display": "Timor-Leste", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TM": { - "display": "Turkmenistan", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TN": { - "display": "Tunisia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TO": { - "display": "Tonga", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TR": { - "display": "Turkey", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TT": { - "display": "Trinidad and Tobago", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TV": { - "display": "Tuvalu", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TW": { - "display": "Taiwan, Province of China", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "TZ": { - "display": "Tanzania, United Republic of", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "UA": { - "display": "Ukraine", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "UG": { - "display": "Uganda", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "UM": { - "display": "United States Minor Outlying Islands", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "US": { - "display": "United States of America", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "UY": { - "display": "Uruguay", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "UZ": { - "display": "Uzbekistan", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "VA": { - "display": "Holy See", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "VC": { - "display": "Saint Vincent and the Grenadines", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "VE": { - "display": "Venezuela, Bolivarian Republic of", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "VG": { - "display": "Virgin Islands, British", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "VI": { - "display": "Virgin Islands,", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "VN": { - "display": "Viet Nam", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "VU": { - "display": "Vanuatu", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "WF": { - "display": "Wallis and Futuna", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "WS": { - "display": "Samoa", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "YE": { - "display": "Yemen", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "YT": { - "display": "Mayotte", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "ZA": { - "display": "South Africa", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "ZM": { - "display": "Zambia", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - }, - "ZW": { - "display": "Zimbabwe", - "lang": "en", - "active": true, - "system": "urn:iso:std:iso:3166", - "valueSetId": "iso3166-1-2" - } -} diff --git a/Lookup-tables/DGC-valueset-lookup.json b/Lookup-tables/DGC-valueset-lookup.json deleted file mode 100644 index 2d41ec2..0000000 --- a/Lookup-tables/DGC-valueset-lookup.json +++ /dev/null @@ -1,274 +0,0 @@ -{ - "840539006": { - "display": "COVID-19", - "lang": "en", - "active": true, - "system": "http://snomed.info/sct", - "version": "http://snomed.info/sct/900000000000207008/version/20210131", - "valueSetId": "covid-19-diseases" - }, - "1119349007": { - "display": "SARS-CoV-2 mRNA vaccine", - "lang": "en", - "active": true, - "system": "http://snomed.info/sct", - "version": "http://snomed.info/sct/900000000000207008/version/20210131", - "valueSetId": "sct-vaccines-covid-19" - }, - "1119305005": { - "display": "SARS-CoV-2 antigen vaccine", - "lang": "en", - "active": true, - "system": "http://snomed.info/sct", - "version": "http://snomed.info/sct/900000000000207008/version/20210131", - "valueSetId": "sct-vaccines-covid-19" - }, - "J07BX03": { - "display": "covid-19 vaccines", - "lang": "en", - "active": true, - "system": "http://www.whocc.no/atc", - "version": "2021-01", - "valueSetId": "sct-vaccines-covid-19" - }, - "EU/1/20/1528": { - "display": "Comirnaty", - "lang": "en", - "active": true, - "system": "https://ec.europa.eu/health/documents/community-register/html/", - "version": "", - "valueSetId": "vaccines-covid-19-names" - }, - "EU/1/20/1507": { - "display": "COVID-19 Vaccine Moderna", - "lang": "en", - "active": true, - "system": "https://ec.europa.eu/health/documents/community-register/html/", - "version": "", - "valueSetId": "vaccines-covid-19-names" - }, - "EU/1/21/1529": { - "display": "Vaxzevria", - "lang": "en", - "active": true, - "system": "https://ec.europa.eu/health/documents/community-register/html/", - "version": "", - "valueSetId": "vaccines-covid-19-names" - }, - "EU/1/20/1525": { - "display": "COVID-19 Vaccine Janssen", - "lang": "en", - "active": true, - "system": "https://ec.europa.eu/health/documents/community-register/html/", - "version": "", - "valueSetId": "vaccines-covid-19-names" - }, - "CVnCoV": { - "display": "CVnCoV", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "Sputnik-V": { - "display": "Sputnik-V", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "Convidecia": { - "display": "Convidecia", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "EpiVacCorona": { - "display": "EpiVacCorona", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "BBIBP-CorV": { - "display": "BBIBP-CorV", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "Inactivated-SARS-CoV-2-Vero-Cell": { - "display": "Inactivated SARS-CoV-2 (Vero Cell)", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "CoronaVac": { - "display": "CoronaVac", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "Covaxin": { - "display": "Covaxin (also known as BBV152 A, B, C)", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "ORG-100001699": { - "display": "AstraZeneca AB", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100030215": { - "display": "Biontech Manufacturing GmbH", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100001417": { - "display": "Janssen-Cilag International", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100031184": { - "display": "Moderna Biotech Spain S.L.", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100006270": { - "display": "Curevac AG", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100013793": { - "display": "CanSino Biologics", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100020693": { - "display": "China Sinopharm International Corp. - Beijing location", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100010771": { - "display": "Sinopharm Weiqida Europe Pharmaceutical s.r.o. - Prague location", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100024420": { - "display": "Sinopharm Zhijun (Shenzhen) Pharmaceutical Co. Ltd. - Shenzhen location", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100032020": { - "display": "Novavax CZ AS", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "Gamaleya-Research-Institute": { - "display": "Gamaleya Research Institute", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccinemanufacturer", - "version": "1.0", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "Vector-Institute": { - "display": "Vector Institute", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccinemanufacturer", - "version": "1.0", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "Sinovac-Biotech": { - "display": "Sinovac Biotech", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccinemanufacturer", - "version": "1.0", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "Bharat-Biotech": { - "display": "Bharat Biotech", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccinemanufacturer", - "version": "1.0", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "LP6464-4": { - "display": "Nucleic acid amplification with probe detection", - "lang": "en", - "active": true, - "system": "http://loinc.org", - "version": "2.69", - "valueSetId": "covid-19-lab-methods" - }, - "LP217198-3": { - "display": "Rapid immunoassay", - "lang": "en", - "active": true, - "system": "http://loinc.org", - "version": "2.69", - "valueSetId": "covid-19-lab-methods" - }, - "260415000": { - "display": "Not detected", - "lang": "en", - "active": true, - "system": "http://snomed.info/sct", - "version": "http://snomed.info/sct/900000000000207008/version/20210131", - "valueSetId": "covid-19-lab-result" - }, - "260373001": { - "display": "Detected", - "lang": "en", - "active": true, - "system": "http://snomed.info/sct", - "version": "http://snomed.info/sct/900000000000207008/version/20210131", - "valueSetId": "covid-19-lab-result" - } -} diff --git a/Makefile b/Makefile index 49dcf15..29709bd 100644 --- a/Makefile +++ b/Makefile @@ -19,7 +19,7 @@ compile:: check-formatting:: @echo "Checking JSON formatting..." - @for file in $(SCHEMATA) Lookup-tables/*.json examples/*.json; do \ + @for file in $(SCHEMATA) examples/*.json; do \ jq . <$$file >$$file.tmp; \ if ! cmp $$file $$file.tmp; then \ echo "Please reformat $$file"; \ @@ -36,7 +36,7 @@ $(MERGED): $(SCHEMATA) -$(AJV) validate -s $@ -d "examples/*.json" reformat:: - for file in *.json Lookup-tables/*.json valuesets/*.json; do jq . <$$file >$$file.tmp && mv $$file.tmp $$file; done + for file in *.json valuesets/*.json; do jq . <$$file >$$file.tmp && mv $$file.tmp $$file; done install-ajv: npm install ajv ajv-cli ajv-formats From 20b786dc109323bfad58e4110e69c4927c6b0818 Mon Sep 17 00:00:00 2001 From: Jakob Schlyter Date: Tue, 27 Apr 2021 09:56:17 +0200 Subject: [PATCH 4/8] annotate value sets --- Makefile | 5 +- valueset.json | 25 ++ valuesets/disease-agent-targeted.json | 17 +- valuesets/test-manf.json | 392 +++++++++++------------ valuesets/test-result.json | 32 +- valuesets/vaccine-mah-manf.json | 225 ++++++------- valuesets/vaccine-medicinal-product.json | 182 +++++------ valuesets/vaccine-prophylaxis.json | 47 +-- 8 files changed, 466 insertions(+), 459 deletions(-) create mode 100644 valueset.json diff --git a/Makefile b/Makefile index 29709bd..985021e 100644 --- a/Makefile +++ b/Makefile @@ -7,7 +7,7 @@ MERGED= DGC-all-schemas-combined.json AJV= ./node_modules/.bin/ajv -c ajv-formats --spec=draft2020 -test:: compile validate-examples check-formatting $(MERGED) +test:: compile validate-valuesets validate-examples check-formatting $(MERGED) $(AJV) test -s $(MERGED) -d "examples/*.json" --valid $(AJV) test -s $(MERGED) -d "test/invalid/*.json" --invalid @@ -30,6 +30,9 @@ check-formatting:: validate-examples:: -$(AJV) validate -r "DGC.*.schema.json" -s "DGC.schema.json" -d "examples/*.json" +validate-valuesets:: + -$(AJV) validate -s "valueset.json" -d "valuesets/*.json" + $(MERGED): $(SCHEMATA) python3 merge.py $(SCHEMATA) | jq . > $@ -$(AJV) compile -s $@ diff --git a/valueset.json b/valueset.json new file mode 100644 index 0000000..32c2299 --- /dev/null +++ b/valueset.json @@ -0,0 +1,25 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "title": "EU DGC Value Sets", + "required": [ + "valueSetId", + "valueSetDate", + "valueSetValues" + ], + "type": "object", + "properties": { + "valueSetId": { + "title": "Value Set Identifier", + "type": "string" + }, + "valueSetDate": { + "title": "Value Set Version", + "type": "string", + "format": "date" + }, + "valueSetValues": { + "title": "Allowed values in Value Set", + "type": "object" + } + } +} diff --git a/valuesets/disease-agent-targeted.json b/valuesets/disease-agent-targeted.json index a2b2bc0..ace734d 100644 --- a/valuesets/disease-agent-targeted.json +++ b/valuesets/disease-agent-targeted.json @@ -1,10 +1,13 @@ { - "840539006": { - "display": "COVID-19", - "lang": "en", - "active": true, - "system": "http://snomed.info/sct", - "version": "http://snomed.info/sct/900000000000207008/version/20210131", - "valueSetId": "disease-agent-targeted" + "valueSetId": "disease-agent-targeted", + "valueSetDate": "2021-04-27", + "valueSetValues": { + "840539006": { + "display": "COVID-19", + "lang": "en", + "active": true, + "version": "http://snomed.info/sct/900000000000207008/version/20210131", + "system": "http://snomed.info/sct" + } } } diff --git a/valuesets/test-manf.json b/valuesets/test-manf.json index 4d5fc34..44dfb4e 100644 --- a/valuesets/test-manf.json +++ b/valuesets/test-manf.json @@ -1,210 +1,188 @@ { - "1232": { - "display": "Abbott Rapid Diagnostics, Panbio COVID-19 Ag Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1304": { - "display": "AMEDA Labordiagnostik GmbH, AMP Rapid Test SARS-CoV-2 Ag", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1065": { - "display": "Becton Dickinson, Veritor System Rapid Detection of SARS-CoV-2", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1331": { - "display": "Beijing Lepu Medical Technology Co., Ltd, SARS-CoV-2 Antigen Rapid Test Kit", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1484": { - "display": "Beijing Wantai Biological Pharmacy Enterprise Co., Ltd, Wantai SARS-CoV-2 Ag Rapid Test (FIA)", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1242": { - "display": "Bionote, Inc, NowCheck COVID-19 Ag Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1223": { - "display": "BIOSYNEX SWISS SA, BIOSYNEX COVID-19 Ag BSS", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1173": { - "display": "CerTest Biotec, S.L., CerTest SARS-CoV-2 Card test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1244": { - "display": "GenBody, Inc, Genbody COVID-19 Ag Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1360": { - "display": "Guangdong Wesail Biotech Co., Ltd, COVID-19 Ag Test Kit", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1363": { - "display": "Hangzhou Clongene Biotech Co., Ltd, Covid-19 Antigen Rapid Test Kit", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1767": { - "display": "Healgen Scientific Limited Liability Company, Coronavirus Ag Rapid Test Cassette", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1333": { - "display": "Joinstar Biomedical Technology Co., Ltd, COVID-19 Rapid Antigen Test (Colloidal Gold)", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1268": { - "display": "LumiraDX UK Ltd, LumiraDx SARS-CoV-2 Ag Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1180": { - "display": "MEDsan GmbH, MEDsan SARS-CoV-2 Antigen Rapid Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1481": { - "display": "MP Biomedicals Germany GmbH, Rapid SARS-CoV-2 Antigen Test Card", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1162": { - "display": "Nal von minden GmbH, NADAL COVID-19 Ag Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1271": { - "display": "Precision Biosensor, Inc, Exdia COVID-19 Ag", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1341": { - "display": "Qingdao Hightop Biotech Co., Ltd, SARS-CoV-2 Antigen Rapid Test (Immunochromatography)", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1097": { - "display": "Quidel Corporation, Sofia SARS Antigen FIA", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1489": { - "display": "Safecare Biotech (Hangzhou) Co. Ltd, COVID-19 Antigen Rapid Test Kit (Swab)", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "344": { - "display": "SD BIOSENSOR Inc, STANDARD F COVID-19 Ag FIA", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "345": { - "display": "SD BIOSENSOR Inc, STANDARD Q COVID-19 Ag Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1218": { - "display": "Siemens Healthineers, CLINITEST Rapid Covid-19 Antigen Test", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1278": { - "display": "Xiamen Boson Biotech Co. Ltd, Rapid SARS-CoV-2 Antigen Test Card", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" - }, - "1343": { - "display": "Zhejiang Orient Gene Biotech, Coronavirus Ag Rapid Test Cassette (Swab)", - "lang": "en", - "active": true, - "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", - "version": "2021-04-22 02:23:55 CET", - "valueSetId": "covid-19-lab-test-manufacturer-and-name" + "valueSetId": "covid-19-lab-test-manufacturer-and-name", + "valueSetDate": "2021-04-27", + "valueSetValues": { + "1232": { + "display": "Abbott Rapid Diagnostics, Panbio COVID-19 Ag Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1304": { + "display": "AMEDA Labordiagnostik GmbH, AMP Rapid Test SARS-CoV-2 Ag", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1065": { + "display": "Becton Dickinson, Veritor System Rapid Detection of SARS-CoV-2", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1331": { + "display": "Beijing Lepu Medical Technology Co., Ltd, SARS-CoV-2 Antigen Rapid Test Kit", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1484": { + "display": "Beijing Wantai Biological Pharmacy Enterprise Co., Ltd, Wantai SARS-CoV-2 Ag Rapid Test (FIA)", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1242": { + "display": "Bionote, Inc, NowCheck COVID-19 Ag Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1223": { + "display": "BIOSYNEX SWISS SA, BIOSYNEX COVID-19 Ag BSS", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1173": { + "display": "CerTest Biotec, S.L., CerTest SARS-CoV-2 Card test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1244": { + "display": "GenBody, Inc, Genbody COVID-19 Ag Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1360": { + "display": "Guangdong Wesail Biotech Co., Ltd, COVID-19 Ag Test Kit", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1363": { + "display": "Hangzhou Clongene Biotech Co., Ltd, Covid-19 Antigen Rapid Test Kit", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1767": { + "display": "Healgen Scientific Limited Liability Company, Coronavirus Ag Rapid Test Cassette", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1333": { + "display": "Joinstar Biomedical Technology Co., Ltd, COVID-19 Rapid Antigen Test (Colloidal Gold)", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1268": { + "display": "LumiraDX UK Ltd, LumiraDx SARS-CoV-2 Ag Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1180": { + "display": "MEDsan GmbH, MEDsan SARS-CoV-2 Antigen Rapid Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1481": { + "display": "MP Biomedicals Germany GmbH, Rapid SARS-CoV-2 Antigen Test Card", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1162": { + "display": "Nal von minden GmbH, NADAL COVID-19 Ag Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1271": { + "display": "Precision Biosensor, Inc, Exdia COVID-19 Ag", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1341": { + "display": "Qingdao Hightop Biotech Co., Ltd, SARS-CoV-2 Antigen Rapid Test (Immunochromatography)", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1097": { + "display": "Quidel Corporation, Sofia SARS Antigen FIA", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1489": { + "display": "Safecare Biotech (Hangzhou) Co. Ltd, COVID-19 Antigen Rapid Test Kit (Swab)", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "344": { + "display": "SD BIOSENSOR Inc, STANDARD F COVID-19 Ag FIA", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "345": { + "display": "SD BIOSENSOR Inc, STANDARD Q COVID-19 Ag Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1218": { + "display": "Siemens Healthineers, CLINITEST Rapid Covid-19 Antigen Test", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1278": { + "display": "Xiamen Boson Biotech Co. Ltd, Rapid SARS-CoV-2 Antigen Test Card", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + }, + "1343": { + "display": "Zhejiang Orient Gene Biotech, Coronavirus Ag Rapid Test Cassette (Swab)", + "lang": "en", + "active": true, + "system": "https://covid-19-diagnostics.jrc.ec.europa.eu/devices", + "version": "2021-04-22 02:23:55 CET" + } } } diff --git a/valuesets/test-result.json b/valuesets/test-result.json index ee0a85e..9462613 100644 --- a/valuesets/test-result.json +++ b/valuesets/test-result.json @@ -1,18 +1,20 @@ { - "260415000": { - "display": "Not detected", - "lang": "en", - "active": true, - "system": "http://snomed.info/sct", - "version": "http://snomed.info/sct/900000000000207008/version/20210131", - "valueSetId": "covid-19-lab-result" - }, - "260373001": { - "display": "Detected", - "lang": "en", - "active": true, - "system": "http://snomed.info/sct", - "version": "http://snomed.info/sct/900000000000207008/version/20210131", - "valueSetId": "covid-19-lab-result" + "valueSetId": "covid-19-lab-result", + "valueSetDate": "2021-04-27", + "valueSetValues": { + "260415000": { + "display": "Not detected", + "lang": "en", + "active": true, + "version": "http://snomed.info/sct/900000000000207008/version/20210131", + "system": "http://snomed.info/sct" + }, + "260373001": { + "display": "Detected", + "lang": "en", + "active": true, + "version": "http://snomed.info/sct/900000000000207008/version/20210131", + "system": "http://snomed.info/sct" + } } } diff --git a/valuesets/vaccine-mah-manf.json b/valuesets/vaccine-mah-manf.json index dde49c2..2ae2fb7 100644 --- a/valuesets/vaccine-mah-manf.json +++ b/valuesets/vaccine-mah-manf.json @@ -1,114 +1,117 @@ { - "ORG-100001699": { - "display": "AstraZeneca AB", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100030215": { - "display": "Biontech Manufacturing GmbH", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100001417": { - "display": "Janssen-Cilag International", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100031184": { - "display": "Moderna Biotech Spain S.L.", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100006270": { - "display": "Curevac AG", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100013793": { - "display": "CanSino Biologics", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100020693": { - "display": "China Sinopharm International Corp. - Beijing location", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100010771": { - "display": "Sinopharm Weiqida Europe Pharmaceutical s.r.o. - Prague location", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100024420": { - "display": "Sinopharm Zhijun (Shenzhen) Pharmaceutical Co. Ltd. - Shenzhen location", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "ORG-100032020": { - "display": "Novavax CZ AS", - "lang": "en", - "active": true, - "system": "https://spor.ema.europa.eu/v1/organisations", - "version": "", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "Gamaleya-Research-Institute": { - "display": "Gamaleya Research Institute", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccinemanufacturer", - "version": "1.0", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "Vector-Institute": { - "display": "Vector Institute", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccinemanufacturer", - "version": "1.0", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "Sinovac-Biotech": { - "display": "Sinovac Biotech", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccinemanufacturer", - "version": "1.0", - "valueSetId": "vaccines-covid-19-auth-holders" - }, - "Bharat-Biotech": { - "display": "Bharat Biotech", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccinemanufacturer", - "version": "1.0", - "valueSetId": "vaccines-covid-19-auth-holders" + "valueSetId": "vaccines-covid-19-auth-holders", + "valueSetDate": "2021-04-27", + "valueSetValues": { + "ORG-100001699": { + "display": "AstraZeneca AB", + "lang": "en", + "active": true, + "version": "", + "system": "https://spor.ema.europa.eu/v1/organisations" + }, + "ORG-100030215": { + "display": "Biontech Manufacturing GmbH", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100001417": { + "display": "Janssen-Cilag International", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100031184": { + "display": "Moderna Biotech Spain S.L.", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100006270": { + "display": "Curevac AG", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100013793": { + "display": "CanSino Biologics", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100020693": { + "display": "China Sinopharm International Corp. - Beijing location", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100010771": { + "display": "Sinopharm Weiqida Europe Pharmaceutical s.r.o. - Prague location", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100024420": { + "display": "Sinopharm Zhijun (Shenzhen) Pharmaceutical Co. Ltd. - Shenzhen location", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "ORG-100032020": { + "display": "Novavax CZ AS", + "lang": "en", + "active": true, + "system": "https://spor.ema.europa.eu/v1/organisations", + "version": "", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "Gamaleya-Research-Institute": { + "display": "Gamaleya Research Institute", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccinemanufacturer", + "version": "1.0", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "Vector-Institute": { + "display": "Vector Institute", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccinemanufacturer", + "version": "1.0", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "Sinovac-Biotech": { + "display": "Sinovac Biotech", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccinemanufacturer", + "version": "1.0", + "valueSetId": "vaccines-covid-19-auth-holders" + }, + "Bharat-Biotech": { + "display": "Bharat Biotech", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccinemanufacturer", + "version": "1.0", + "valueSetId": "vaccines-covid-19-auth-holders" + } } } diff --git a/valuesets/vaccine-medicinal-product.json b/valuesets/vaccine-medicinal-product.json index 1101faf..cf2be8d 100644 --- a/valuesets/vaccine-medicinal-product.json +++ b/valuesets/vaccine-medicinal-product.json @@ -1,98 +1,90 @@ { - "EU/1/20/1528": { - "display": "Comirnaty", - "lang": "en", - "active": true, - "system": "https://ec.europa.eu/health/documents/community-register/html/", - "version": "", - "valueSetId": "vaccines-covid-19-names" - }, - "EU/1/20/1507": { - "display": "COVID-19 Vaccine Moderna", - "lang": "en", - "active": true, - "system": "https://ec.europa.eu/health/documents/community-register/html/", - "version": "", - "valueSetId": "vaccines-covid-19-names" - }, - "EU/1/21/1529": { - "display": "Vaxzevria", - "lang": "en", - "active": true, - "system": "https://ec.europa.eu/health/documents/community-register/html/", - "version": "", - "valueSetId": "vaccines-covid-19-names" - }, - "EU/1/20/1525": { - "display": "COVID-19 Vaccine Janssen", - "lang": "en", - "active": true, - "system": "https://ec.europa.eu/health/documents/community-register/html/", - "version": "", - "valueSetId": "vaccines-covid-19-names" - }, - "CVnCoV": { - "display": "CVnCoV", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "Sputnik-V": { - "display": "Sputnik-V", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "Convidecia": { - "display": "Convidecia", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "EpiVacCorona": { - "display": "EpiVacCorona", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "BBIBP-CorV": { - "display": "BBIBP-CorV", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "Inactivated-SARS-CoV-2-Vero-Cell": { - "display": "Inactivated SARS-CoV-2 (Vero Cell)", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "CoronaVac": { - "display": "CoronaVac", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" - }, - "Covaxin": { - "display": "Covaxin (also known as BBV152 A, B, C)", - "lang": "en", - "active": true, - "system": "http://ec.europa.eu/temp/vaccineproductname", - "version": "1.0", - "valueSetId": "vaccines-covid-19-names" + "valueSetId": "vaccines-covid-19-names", + "valueSetDate": "2021-04-27", + "valueSetValues": { + "EU/1/20/1528": { + "display": "Comirnaty", + "lang": "en", + "active": true, + "system": "https://ec.europa.eu/health/documents/community-register/html/", + "version": "" + }, + "EU/1/20/1507": { + "display": "COVID-19 Vaccine Moderna", + "lang": "en", + "active": true, + "system": "https://ec.europa.eu/health/documents/community-register/html/", + "version": "" + }, + "EU/1/21/1529": { + "display": "Vaxzevria", + "lang": "en", + "active": true, + "system": "https://ec.europa.eu/health/documents/community-register/html/", + "version": "" + }, + "EU/1/20/1525": { + "display": "COVID-19 Vaccine Janssen", + "lang": "en", + "active": true, + "system": "https://ec.europa.eu/health/documents/community-register/html/", + "version": "" + }, + "CVnCoV": { + "display": "CVnCoV", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0" + }, + "Sputnik-V": { + "display": "Sputnik-V", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0" + }, + "Convidecia": { + "display": "Convidecia", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0" + }, + "EpiVacCorona": { + "display": "EpiVacCorona", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0" + }, + "BBIBP-CorV": { + "display": "BBIBP-CorV", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0" + }, + "Inactivated-SARS-CoV-2-Vero-Cell": { + "display": "Inactivated SARS-CoV-2 (Vero Cell)", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0" + }, + "CoronaVac": { + "display": "CoronaVac", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0" + }, + "Covaxin": { + "display": "Covaxin (also known as BBV152 A, B, C)", + "lang": "en", + "active": true, + "system": "http://ec.europa.eu/temp/vaccineproductname", + "version": "1.0" + } } } diff --git a/valuesets/vaccine-prophylaxis.json b/valuesets/vaccine-prophylaxis.json index 70a77b3..6d76114 100644 --- a/valuesets/vaccine-prophylaxis.json +++ b/valuesets/vaccine-prophylaxis.json @@ -1,26 +1,27 @@ { - "1119349007": { - "display": "SARS-CoV-2 mRNA vaccine", - "lang": "en", - "active": true, - "system": "http://snomed.info/sct", - "version": "http://snomed.info/sct/900000000000207008/version/20210131", - "valueSetId": "sct-vaccines-covid-19" - }, - "1119305005": { - "display": "SARS-CoV-2 antigen vaccine", - "lang": "en", - "active": true, - "system": "http://snomed.info/sct", - "version": "http://snomed.info/sct/900000000000207008/version/20210131", - "valueSetId": "sct-vaccines-covid-19" - }, - "J07BX03": { - "display": "covid-19 vaccines", - "lang": "en", - "active": true, - "system": "http://www.whocc.no/atc", - "version": "2021-01", - "valueSetId": "sct-vaccines-covid-19" + "valueSetId": "sct-vaccines-covid-19", + "valueSetDate": "2021-04-27", + "valueSetValues": { + "1119349007": { + "display": "SARS-CoV-2 mRNA vaccine", + "lang": "en", + "active": true, + "version": "http://snomed.info/sct/900000000000207008/version/20210131", + "system": "http://snomed.info/sct" + }, + "1119305005": { + "display": "SARS-CoV-2 antigen vaccine", + "lang": "en", + "active": true, + "version": "http://snomed.info/sct/900000000000207008/version/20210131", + "system": "http://snomed.info/sct" + }, + "J07BX03": { + "display": "covid-19 vaccines", + "lang": "en", + "active": true, + "version": "http://snomed.info/sct/900000000000207008/version/20210131", + "system": "http://snomed.info/sct" + } } } From 5cd1e1b78d94b204cb0b8f48f75b45e72d6a5bc7 Mon Sep 17 00:00:00 2001 From: Jakob Schlyter Date: Tue, 27 Apr 2021 10:00:55 +0200 Subject: [PATCH 5/8] relax --- DGC-all-schemas-combined.json | 12 ++++++------ DGC.ValueSets.schema.json | 12 ++++++------ Makefile | 2 +- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/DGC-all-schemas-combined.json b/DGC-all-schemas-combined.json index 26739ae..4ca89bd 100644 --- a/DGC-all-schemas-combined.json +++ b/DGC-all-schemas-combined.json @@ -298,32 +298,32 @@ "disease-agent-targeted": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.1", "type": "string", - "$comment": "valuesets/disease-agent-targeted.json" + "valueset-uri": "valuesets/disease-agent-targeted.json" }, "vaccine-prophylaxis": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.2", "type": "string", - "$comment": "valuesets/vaccine-prophylaxis.json" + "valueset-uri": "valuesets/vaccine-prophylaxis.json" }, "vaccine-medicinal-product": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.3", "type": "string", - "$comment": "valuesets/vaccine-medicinal-product.json" + "valueset-uri": "valuesets/vaccine-medicinal-product.json" }, "vaccine-mah-manf": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.4", "type": "string", - "$comment": "valuesets/vaccine-mah-manf.json" + "valueset-uri": "valuesets/vaccine-mah-manf.json" }, "test-manf": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.8", "type": "string", - "$comment": "valuesets/test-manf.json" + "valueset-uri": "valuesets/test-manf.json" }, "test-result": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.9", "type": "string", - "$comment": "valuesets/test-results.json" + "valueset-uri": "valuesets/test-results.json" } } } diff --git a/DGC.ValueSets.schema.json b/DGC.ValueSets.schema.json index 79d7964..4d0e09a 100644 --- a/DGC.ValueSets.schema.json +++ b/DGC.ValueSets.schema.json @@ -7,32 +7,32 @@ "disease-agent-targeted": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.1", "type": "string", - "$comment": "valuesets/disease-agent-targeted.json" + "valueset-uri": "valuesets/disease-agent-targeted.json" }, "vaccine-prophylaxis": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.2", "type": "string", - "$comment": "valuesets/vaccine-prophylaxis.json" + "valueset-uri": "valuesets/vaccine-prophylaxis.json" }, "vaccine-medicinal-product": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.3", "type": "string", - "$comment": "valuesets/vaccine-medicinal-product.json" + "valueset-uri": "valuesets/vaccine-medicinal-product.json" }, "vaccine-mah-manf": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.4", "type": "string", - "$comment": "valuesets/vaccine-mah-manf.json" + "valueset-uri": "valuesets/vaccine-mah-manf.json" }, "test-manf": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.8", "type": "string", - "$comment": "valuesets/test-manf.json" + "valueset-uri": "valuesets/test-manf.json" }, "test-result": { "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.9", "type": "string", - "$comment": "valuesets/test-results.json" + "valueset-uri": "valuesets/test-results.json" } } } diff --git a/Makefile b/Makefile index 985021e..f683241 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ SCHEMATA= DGC.schema.json \ DGC.ValueSets.schema.json MERGED= DGC-all-schemas-combined.json -AJV= ./node_modules/.bin/ajv -c ajv-formats --spec=draft2020 +AJV= ./node_modules/.bin/ajv -c ajv-formats --spec=draft2020 --strict=false test:: compile validate-valuesets validate-examples check-formatting $(MERGED) From a622dc39784e0425076e6b8dfd519bec3ac2e7cf Mon Sep 17 00:00:00 2001 From: Jakob Schlyter Date: Tue, 27 Apr 2021 10:40:54 +0200 Subject: [PATCH 6/8] no need to validate twice --- Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/Makefile b/Makefile index f683241..429107a 100644 --- a/Makefile +++ b/Makefile @@ -36,7 +36,6 @@ validate-valuesets:: $(MERGED): $(SCHEMATA) python3 merge.py $(SCHEMATA) | jq . > $@ -$(AJV) compile -s $@ - -$(AJV) validate -s $@ -d "examples/*.json" reformat:: for file in *.json valuesets/*.json; do jq . <$$file >$$file.tmp && mv $$file.tmp $$file; done From 9b6db8edc876abb9e90fc95601c2e9112456f34a Mon Sep 17 00:00:00 2001 From: Jakob Schlyter Date: Tue, 27 Apr 2021 10:42:14 +0200 Subject: [PATCH 7/8] clean up validation --- Makefile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 429107a..7361439 100644 --- a/Makefile +++ b/Makefile @@ -4,6 +4,8 @@ SCHEMATA= DGC.schema.json \ DGC.ValueSets.schema.json MERGED= DGC-all-schemas-combined.json +JSON_FILES= *.json examples/*.json valuesets/*.json + AJV= ./node_modules/.bin/ajv -c ajv-formats --spec=draft2020 --strict=false @@ -19,7 +21,7 @@ compile:: check-formatting:: @echo "Checking JSON formatting..." - @for file in $(SCHEMATA) examples/*.json; do \ + @for file in $(JSON_FILES); do \ jq . <$$file >$$file.tmp; \ if ! cmp $$file $$file.tmp; then \ echo "Please reformat $$file"; \ @@ -38,7 +40,7 @@ $(MERGED): $(SCHEMATA) -$(AJV) compile -s $@ reformat:: - for file in *.json valuesets/*.json; do jq . <$$file >$$file.tmp && mv $$file.tmp $$file; done + for file in $(JSON_FILES); do jq . <$$file >$$file.tmp && mv $$file.tmp $$file; done install-ajv: npm install ajv ajv-cli ajv-formats From 2a73725b7c4b021d5ccfe00793d12409ed0219da Mon Sep 17 00:00:00 2001 From: Jakob Schlyter Date: Tue, 27 Apr 2021 13:43:09 +0200 Subject: [PATCH 8/8] update to draft URL updates #25 --- DGC.Core.Types.schema.json | 2 +- DGC.Types.schema.json | 40 +-- DGC.ValueSets.schema.json | 2 +- ...-combined.json => DGC.combined-schema.json | 2 +- DGC.schema-combined.json | 274 ++++++++++++++++++ DGC.schema.json | 10 +- Makefile | 29 +- merge.py | 24 +- 8 files changed, 340 insertions(+), 43 deletions(-) rename DGC-all-schemas-combined.json => DGC.combined-schema.json (99%) create mode 100644 DGC.schema-combined.json diff --git a/DGC.Core.Types.schema.json b/DGC.Core.Types.schema.json index e49e3d6..1f75889 100644 --- a/DGC.Core.Types.schema.json +++ b/DGC.Core.Types.schema.json @@ -1,6 +1,6 @@ { "$schema": "https://json-schema.org/draft/2020-12/schema", - "$id": "https://ec.europa.eu/dgc/DGC.Core.Types.schema.json", + "$id": "https://id.uvci.eu/DGC.Core.Types.schema.json", "title": "EU DGC", "description": "EU Digital Green Certificate Core Data Types", "$defs": { diff --git a/DGC.Types.schema.json b/DGC.Types.schema.json index 20338ef..c0bd930 100644 --- a/DGC.Types.schema.json +++ b/DGC.Types.schema.json @@ -1,6 +1,6 @@ { "$schema": "https://json-schema.org/draft/2020-12/schema", - "$id": "https://ec.europa.eu/dgc/DGC.Types.schema.json", + "$id": "https://id.uvci.eu/DGC.Types.schema.json", "title": "EU DGC", "description": "EU Digital Green Certificate Composite Data Types", "$defs": { @@ -22,27 +22,27 @@ "properties": { "tg": { "description": "disease or agent targeted", - "$ref": "https://ec.europa.eu/dgc/DGC.ValueSets.schema.json#/$defs/disease-agent-targeted" + "$ref": "https://id.uvci.eu/DGC.ValueSets.schema.json#/$defs/disease-agent-targeted" }, "vp": { "description": "vaccine or prophylaxis", - "$ref": "https://ec.europa.eu/dgc/DGC.ValueSets.schema.json#/$defs/vaccine-prophylaxis" + "$ref": "https://id.uvci.eu/DGC.ValueSets.schema.json#/$defs/vaccine-prophylaxis" }, "mp": { "description": "vaccine medicinal product", - "$ref": "https://ec.europa.eu/dgc/DGC.ValueSets.schema.json#/$defs/vaccine-medicinal-product" + "$ref": "https://id.uvci.eu/DGC.ValueSets.schema.json#/$defs/vaccine-medicinal-product" }, "ma": { "description": "Marketing Authorization Holder - if no MAH present, then manufacturer", - "$ref": "https://ec.europa.eu/dgc/DGC.ValueSets.schema.json#/$defs/vaccine-mah-manf" + "$ref": "https://id.uvci.eu/DGC.ValueSets.schema.json#/$defs/vaccine-mah-manf" }, "dn": { "description": "Dose Number", - "$ref": "https://ec.europa.eu/dgc/DGC.Core.Types.schema.json#/$defs/dose_posint" + "$ref": "https://id.uvci.eu/DGC.Core.Types.schema.json#/$defs/dose_posint" }, "sd": { "description": "Total Series of Doses", - "$ref": "https://ec.europa.eu/dgc/DGC.Core.Types.schema.json#/$defs/dose_posint" + "$ref": "https://id.uvci.eu/DGC.Core.Types.schema.json#/$defs/dose_posint" }, "dt": { "description": "Date of Vaccination", @@ -52,15 +52,15 @@ }, "co": { "description": "Country of Vaccination", - "$ref": "https://ec.europa.eu/dgc/DGC.Core.Types.schema.json#/$defs/country_vt" + "$ref": "https://id.uvci.eu/DGC.Core.Types.schema.json#/$defs/country_vt" }, "is": { "description": "Certificate Issuer", - "$ref": "https://ec.europa.eu/dgc/DGC.Core.Types.schema.json#/$defs/issuer" + "$ref": "https://id.uvci.eu/DGC.Core.Types.schema.json#/$defs/issuer" }, "ci": { "description": "Unique Certificate Identifier: UVCI", - "$ref": "https://ec.europa.eu/dgc/DGC.Core.Types.schema.json#/$defs/certificate_id" + "$ref": "https://id.uvci.eu/DGC.Core.Types.schema.json#/$defs/certificate_id" } } }, @@ -79,7 +79,7 @@ "type": "object", "properties": { "tg": { - "$ref": "https://ec.europa.eu/dgc/DGC.ValueSets.schema.json#/$defs/disease-agent-targeted" + "$ref": "https://id.uvci.eu/DGC.ValueSets.schema.json#/$defs/disease-agent-targeted" }, "tt": { "description": "Type of Test", @@ -91,7 +91,7 @@ }, "ma": { "description": "RAT Test name and manufacturer", - "$ref": "https://ec.europa.eu/dgc/DGC.ValueSets.schema.json#/$defs/test-manf" + "$ref": "https://id.uvci.eu/DGC.ValueSets.schema.json#/$defs/test-manf" }, "sc": { "description": "Date/Time of Sample Collection", @@ -105,7 +105,7 @@ }, "tr": { "description": "Test Result", - "$ref": "https://ec.europa.eu/dgc/DGC.ValueSets.schema.json#/$defs/test-result" + "$ref": "https://id.uvci.eu/DGC.ValueSets.schema.json#/$defs/test-result" }, "tc": { "description": "Testing Centre", @@ -114,15 +114,15 @@ }, "co": { "description": "Country of Test", - "$ref": "https://ec.europa.eu/dgc/DGC.Core.Types.schema.json#/$defs/country_vt" + "$ref": "https://id.uvci.eu/DGC.Core.Types.schema.json#/$defs/country_vt" }, "is": { "description": "Certificate Issuer", - "$ref": "https://ec.europa.eu/dgc/DGC.Core.Types.schema.json#/$defs/issuer" + "$ref": "https://id.uvci.eu/DGC.Core.Types.schema.json#/$defs/issuer" }, "ci": { "description": "Unique Certificate Identifier, UVCI", - "$ref": "https://ec.europa.eu/dgc/DGC.Core.Types.schema.json#/$defs/certificate_id" + "$ref": "https://id.uvci.eu/DGC.Core.Types.schema.json#/$defs/certificate_id" } } }, @@ -140,7 +140,7 @@ "type": "object", "properties": { "tg": { - "$ref": "https://ec.europa.eu/dgc/DGC.ValueSets.schema.json#/$defs/disease-agent-targeted" + "$ref": "https://id.uvci.eu/DGC.ValueSets.schema.json#/$defs/disease-agent-targeted" }, "fr": { "description": "ISO 8601 Date of First Positive Test Result", @@ -149,11 +149,11 @@ }, "co": { "description": "Country of Test", - "$ref": "https://ec.europa.eu/dgc/DGC.Core.Types.schema.json#/$defs/country_vt" + "$ref": "https://id.uvci.eu/DGC.Core.Types.schema.json#/$defs/country_vt" }, "is": { "description": "Certificate Issuer", - "$ref": "https://ec.europa.eu/dgc/DGC.Core.Types.schema.json#/$defs/issuer" + "$ref": "https://id.uvci.eu/DGC.Core.Types.schema.json#/$defs/issuer" }, "df": { "description": "ISO 8601 Date: Certificate Valid From", @@ -167,7 +167,7 @@ }, "ci": { "description": "Unique Certificate Identifier, UVCI", - "$ref": "https://ec.europa.eu/dgc/DGC.Core.Types.schema.json#/$defs/certificate_id" + "$ref": "https://id.uvci.eu/DGC.Core.Types.schema.json#/$defs/certificate_id" } } } diff --git a/DGC.ValueSets.schema.json b/DGC.ValueSets.schema.json index 4d0e09a..d63b423 100644 --- a/DGC.ValueSets.schema.json +++ b/DGC.ValueSets.schema.json @@ -1,6 +1,6 @@ { "$schema": "https://json-schema.org/draft/2020-12/schema", - "$id": "https://ec.europa.eu/dgc/DGC.ValueSets.schema.json", + "$id": "https://id.uvci.eu/DGC.ValueSets.schema.json", "title": "EU DGC", "description": "EU Digital Green Certificate Value Set Data Types", "$defs": { diff --git a/DGC-all-schemas-combined.json b/DGC.combined-schema.json similarity index 99% rename from DGC-all-schemas-combined.json rename to DGC.combined-schema.json index 4ca89bd..0d3809d 100644 --- a/DGC-all-schemas-combined.json +++ b/DGC.combined-schema.json @@ -1,6 +1,6 @@ { "$schema": "https://json-schema.org/draft/2020-12/schema", - "$id": "https://ec.europa.eu/dgc/DGC.schema.json", + "$id": "https://id.uvci.eu/DGC.combined-schema.json", "title": "EU DGC", "description": "EU Digital Green Certificate", "required": [ diff --git a/DGC.schema-combined.json b/DGC.schema-combined.json new file mode 100644 index 0000000..71aa0f9 --- /dev/null +++ b/DGC.schema-combined.json @@ -0,0 +1,274 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "https://id.uvci.eu/DGC.schema-combined.json", + "title": "EU DGC", + "description": "EU Digital Green Certificate Value Set Data Types", + "$defs": { + "disease-agent-targeted": { + "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.1", + "type": "string", + "valueset-uri": "valuesets/disease-agent-targeted.json" + }, + "vaccine-prophylaxis": { + "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.2", + "type": "string", + "valueset-uri": "valuesets/vaccine-prophylaxis.json" + }, + "vaccine-medicinal-product": { + "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.3", + "type": "string", + "valueset-uri": "valuesets/vaccine-medicinal-product.json" + }, + "vaccine-mah-manf": { + "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.4", + "type": "string", + "valueset-uri": "valuesets/vaccine-mah-manf.json" + }, + "test-manf": { + "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.8", + "type": "string", + "valueset-uri": "valuesets/test-manf.json" + }, + "test-result": { + "description": "EU eHealthNetwork: Value Sets for Digital Green Certificates. version 1.0, 2021-04-16, section 2.9", + "type": "string", + "valueset-uri": "valuesets/test-results.json" + }, + "dose_posint": { + "description": "Dose Number / Total doses in Series: positive integer, range: [1,9]", + "type": "integer", + "minimum": 1, + "maximum": 9 + }, + "country_vt": { + "description": "Country of Vaccination / Test, ISO 3166 where possible", + "type": "string", + "pattern": "[A-Z]{1,10}" + }, + "issuer": { + "description": "Certificate Issuer", + "type": "string", + "maxLength": 50 + }, + "person_name": { + "description": "Person name: Surname(s), given name(s) - in that order", + "required": [ + "fnt" + ], + "type": "object", + "properties": { + "fn": { + "title": "Family name", + "description": "The family or primary name(s) of the person addressed in the certificate", + "type": "string", + "maxLength": 50, + "examples": [ + "d'Červenková Panklová" + ] + }, + "fnt": { + "title": "Standardised family name", + "description": "The family name(s) of the person transliterated", + "type": "string", + "pattern": "^[A-Z<]*$", + "maxLength": 50, + "examples": [ + "DCERVENKOVA $@ - -$(AJV) compile -s $@ +$(MERGED_SCHEMA): $(SCHEMATA) + python3 merge.py --id $(MERGED_ID) $(SCHEMATA) | jq . > $@ + $(AJV) compile -s $@ reformat:: for file in $(JSON_FILES); do jq . <$$file >$$file.tmp && mv $$file.tmp $$file; done @@ -46,4 +51,4 @@ install-ajv: npm install ajv ajv-cli ajv-formats clean: - rm -f $(MERGED) + rm -f $(MERGED_SCHEMA) diff --git a/merge.py b/merge.py index af1ddd5..f809041 100644 --- a/merge.py +++ b/merge.py @@ -1,8 +1,9 @@ +import argparse import json import re import sys -PATTERNS = [re.compile(r"^https://ec\.europa\.eu/dgc/DGC\..+\.schema\.json(.*)")] +PATTERNS = [re.compile(r"^https://id\.uvci\.eu/.+\.schema\.json(.+)")] def load_json(filename: str): @@ -29,7 +30,22 @@ def rewrite_refs(data): def main(): """Main function""" - main_fn = sys.argv[1] + parser = argparse.ArgumentParser() + parser.add_argument( + "--id", + metavar="URL", + help="Merged schema ID", + required=True, + ) + parser.add_argument( + "sources", + nargs="*", + metavar="URL", + help="Schema source", + ) + args = parser.parse_args() + + main_fn = args.sources.pop(0) schema = load_json(main_fn) schema = rewrite_refs(schema) @@ -37,10 +53,12 @@ def main(): if "$defs" not in schema: schema["$defs"] = {} - for fn in sys.argv[1:]: + for fn in args.sources: extra = rewrite_refs(load_json(fn)) schema["$defs"].update(extra.get("$defs", {})) + schema["$id"] = args.id + print(json.dumps(schema, indent=4))