aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--data/sql/esri.sql36
-rw-r--r--data/sql/ignf.sql74
-rw-r--r--data/sql/proj_db_table_defs.sql1
-rw-r--r--data/sql/vertical_datum.sql440
-rwxr-xr-xscripts/build_db.py6
-rwxr-xr-xscripts/build_db_create_ignf_from_xml.py2
-rwxr-xr-xscripts/build_db_from_esri.py2
-rw-r--r--src/iso19111/factory.cpp19
-rw-r--r--test/cli/testprojinfo_out.dist2
-rw-r--r--test/unit/test_factory.cpp14
10 files changed, 312 insertions, 284 deletions
diff --git a/data/sql/esri.sql b/data/sql/esri.sql
index da23f6a5..a1f89405 100644
--- a/data/sql/esri.sql
+++ b/data/sql/esri.sql
@@ -15478,40 +15478,40 @@ INSERT INTO alias_name VALUES('vertical_crs','EPSG','8841','MVGC_height','ESRI')
INSERT INTO alias_name VALUES('vertical_crs','EPSG','8904','TWVD_2001_height','ESRI');
INSERT INTO alias_name VALUES('vertical_crs','EPSG','8911','DACR52_height','ESRI');
INSERT INTO alias_name VALUES('vertical_crs','EPSG','9130','IGN_2008_LD_height','ESRI');
-INSERT INTO "vertical_datum" VALUES('ESRI','1256','Canadian_Geodetic_Vertical_Datum_of_2013_CGG2013a',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('ESRI','1256','Canadian_Geodetic_Vertical_Datum_of_2013_CGG2013a',NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', '1256_USAGE','vertical_datum','ESRI','1256','EPSG','1061','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','9245','CGVD2013_CGG2013a_height',NULL,'EPSG','6499','ESRI','1256',0);
INSERT INTO "usage" VALUES('ESRI', '9245_USAGE','vertical_crs','ESRI','9245','EPSG','1061','EPSG','1024');
-INSERT INTO "vertical_datum" VALUES('ESRI','1260','Sistema_de_Referencia_Vertical_Nacional_2016',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('ESRI','1260','Sistema_de_Referencia_Vertical_Nacional_2016',NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', '1260_USAGE','vertical_datum','ESRI','1260','EPSG','4573','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','9255','SRVN16_height',NULL,'EPSG','6499','ESRI','1260',0);
INSERT INTO "usage" VALUES('ESRI', '9255_USAGE','vertical_crs','ESRI','9255','EPSG','4573','EPSG','1024');
-INSERT INTO "vertical_datum" VALUES('ESRI','1261','European_Vertical_Reference_Frame_2000_Austria',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('ESRI','1261','European_Vertical_Reference_Frame_2000_Austria',NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', '1261_USAGE','vertical_datum','ESRI','1261','EPSG','1037','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','9274','EVRF2000_Austria_height',NULL,'EPSG','6499','ESRI','1261',0);
INSERT INTO "usage" VALUES('ESRI', '9274_USAGE','vertical_crs','ESRI','9274','EPSG','1037','EPSG','1024');
-INSERT INTO "vertical_datum" VALUES('ESRI','1262','South_Africa_Land_Levelling_Datum',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('ESRI','1262','South_Africa_Land_Levelling_Datum',NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', '1262_USAGE','vertical_datum','ESRI','1262','EPSG','3309','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','9279','SA_LLD_height',NULL,'EPSG','6499','ESRI','1262',0);
INSERT INTO "usage" VALUES('ESRI', '9279_USAGE','vertical_crs','ESRI','9279','EPSG','3309','EPSG','1024');
-INSERT INTO "vertical_datum" VALUES('ESRI','1269','Kingdom_of_Saudi_Arabia_Vertical_Reference_Frame_Jeddah_2014',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('ESRI','1269','Kingdom_of_Saudi_Arabia_Vertical_Reference_Frame_Jeddah_2014',NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', '1269_USAGE','vertical_datum','ESRI','1269','EPSG','3303','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','9335','KSA-VRF14_height',NULL,'EPSG','6499','ESRI','1269',0);
INSERT INTO "usage" VALUES('ESRI', '9335_USAGE','vertical_crs','ESRI','9335','EPSG','3303','EPSG','1024');
-INSERT INTO "vertical_datum" VALUES('ESRI','105103','Red_Espanola_de_Nivelacion_de_Alta_Precision',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('ESRI','105103','Red_Espanola_de_Nivelacion_de_Alta_Precision',NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', '105103_USAGE','vertical_datum','ESRI','105103','EPSG','3429','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','105603','REDNAP_height',NULL,'EPSG','6499','ESRI','105103',0);
INSERT INTO "usage" VALUES('ESRI', '105603_USAGE','vertical_crs','ESRI','105603','EPSG','3429','EPSG','1024');
-INSERT INTO "vertical_datum" VALUES('ESRI','105100','WGS_1984_Geoid',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('ESRI','105100','WGS_1984_Geoid',NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', '105100_USAGE','vertical_datum','ESRI','105100','EPSG','1262','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','105700','WGS_1984_Geoid',NULL,'EPSG','6499','ESRI','105100',0);
INSERT INTO "usage" VALUES('ESRI', '105700_USAGE','vertical_crs','ESRI','105700','EPSG','1262','EPSG','1024');
-INSERT INTO "vertical_datum" VALUES('ESRI','105101','Dansk_Vertikal_Reference_1990',NULL,NULL,NULL,1);
+INSERT INTO "vertical_datum" VALUES('ESRI','105101','Dansk_Vertikal_Reference_1990',NULL,NULL,NULL,NULL,1);
INSERT INTO "usage" VALUES('ESRI', '105101_USAGE','vertical_datum','ESRI','105101','EPSG','3237','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','105701','DVR90',NULL,'EPSG','6499','ESRI','105101',1);
INSERT INTO "usage" VALUES('ESRI', '105701_USAGE','vertical_crs','ESRI','105701','EPSG','3237','EPSG','1024');
INSERT INTO "supersession" VALUES('vertical_crs','ESRI','105701','vertical_crs','EPSG','5799','ESRI',1);
-INSERT INTO "vertical_datum" VALUES('ESRI','105102','Rikets_Hojdsystem_2000',NULL,NULL,NULL,1);
+INSERT INTO "vertical_datum" VALUES('ESRI','105102','Rikets_Hojdsystem_2000',NULL,NULL,NULL,NULL,1);
INSERT INTO "usage" VALUES('ESRI', '105102_USAGE','vertical_datum','ESRI','105102','EPSG','3313','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','105702','RH2000',NULL,'EPSG','6499','ESRI','105102',1);
INSERT INTO "usage" VALUES('ESRI', '105702_USAGE','vertical_crs','ESRI','105702','EPSG','3313','EPSG','1024');
@@ -15519,31 +15519,31 @@ INSERT INTO "supersession" VALUES('vertical_crs','ESRI','105702','vertical_crs',
INSERT INTO "vertical_crs" VALUES('ESRI','105703','NAVD88_height_(ftUS)',NULL,'EPSG','6497','EPSG','5103',1);
INSERT INTO "usage" VALUES('ESRI', '105703_USAGE','vertical_crs','ESRI','105703','EPSG','3664','EPSG','1024');
INSERT INTO "supersession" VALUES('vertical_crs','ESRI','105703','vertical_crs','EPSG','6360','ESRI',1);
-INSERT INTO "vertical_datum" VALUES('ESRI','105104','LAS07',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('ESRI','105104','LAS07',NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', '105104_USAGE','vertical_datum','ESRI','105104','EPSG','3272','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','105704','LAS07_height',NULL,'EPSG','6499','ESRI','105104',0);
INSERT INTO "usage" VALUES('ESRI', '105704_USAGE','vertical_crs','ESRI','105704','EPSG','3272','EPSG','1024');
-INSERT INTO "vertical_datum" VALUES('ESRI','105290','EGM2008_Geoid',NULL,NULL,NULL,1);
+INSERT INTO "vertical_datum" VALUES('ESRI','105290','EGM2008_Geoid',NULL,NULL,NULL,NULL,1);
INSERT INTO "usage" VALUES('ESRI', '105290_USAGE','vertical_datum','ESRI','105290','EPSG','1262','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','105790','EGM2008_Geoid',NULL,'EPSG','6499','ESRI','105290',1);
INSERT INTO "usage" VALUES('ESRI', '105790_USAGE','vertical_crs','ESRI','105790','EPSG','1262','EPSG','1024');
INSERT INTO "supersession" VALUES('vertical_crs','ESRI','105790','vertical_crs','EPSG','3855','ESRI',1);
-INSERT INTO "vertical_datum" VALUES('ESRI','105291','Fao_1979',NULL,NULL,NULL,1);
+INSERT INTO "vertical_datum" VALUES('ESRI','105291','Fao_1979',NULL,NULL,NULL,NULL,1);
INSERT INTO "usage" VALUES('ESRI', '105291_USAGE','vertical_datum','ESRI','105291','EPSG','3625','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','105791','Fao_1979',NULL,'EPSG','6499','ESRI','105291',1);
INSERT INTO "usage" VALUES('ESRI', '105791_USAGE','vertical_crs','ESRI','105791','EPSG','3625','EPSG','1024');
INSERT INTO "supersession" VALUES('vertical_crs','ESRI','105791','vertical_crs','EPSG','3886','ESRI',1);
-INSERT INTO "vertical_datum" VALUES('ESRI','105292','New_Zealand_Vertical_Datum_2009',NULL,NULL,NULL,1);
+INSERT INTO "vertical_datum" VALUES('ESRI','105292','New_Zealand_Vertical_Datum_2009',NULL,NULL,NULL,NULL,1);
INSERT INTO "usage" VALUES('ESRI', '105292_USAGE','vertical_datum','ESRI','105292','EPSG','1175','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','105792','NZVD2009_height',NULL,'EPSG','6499','ESRI','105292',1);
INSERT INTO "usage" VALUES('ESRI', '105792_USAGE','vertical_crs','ESRI','105792','EPSG','1175','EPSG','1024');
INSERT INTO "supersession" VALUES('vertical_crs','ESRI','105792','vertical_crs','EPSG','4440','ESRI',1);
-INSERT INTO "vertical_datum" VALUES('ESRI','105293','N2000',NULL,NULL,NULL,1);
+INSERT INTO "vertical_datum" VALUES('ESRI','105293','N2000',NULL,NULL,NULL,NULL,1);
INSERT INTO "usage" VALUES('ESRI', '105293_USAGE','vertical_datum','ESRI','105293','EPSG','3333','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','105793','N2000_height',NULL,'EPSG','6499','ESRI','105293',1);
INSERT INTO "usage" VALUES('ESRI', '105793_USAGE','vertical_crs','ESRI','105793','EPSG','3333','EPSG','1024');
INSERT INTO "supersession" VALUES('vertical_crs','ESRI','105793','vertical_crs','EPSG','3900','ESRI',1);
-INSERT INTO "vertical_datum" VALUES('ESRI','105294','Dunedin_Bluff_1960',NULL,NULL,NULL,1);
+INSERT INTO "vertical_datum" VALUES('ESRI','105294','Dunedin_Bluff_1960',NULL,NULL,NULL,NULL,1);
INSERT INTO "usage" VALUES('ESRI', '105294_USAGE','vertical_datum','ESRI','105294','EPSG','3806','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','105794','Dunedin_Bluff_1960_height',NULL,'EPSG','6499','ESRI','105294',1);
INSERT INTO "usage" VALUES('ESRI', '105794_USAGE','vertical_crs','ESRI','105794','EPSG','3806','EPSG','1024');
@@ -15655,15 +15655,15 @@ INSERT INTO "supersession" VALUES('vertical_crs','ESRI','105794','vertical_crs',
-- Skipping TUREF. Should be a CompoundCRS
-- Skipping GDA2020. Should be a CompoundCRS
-- Skipping BGS2005. Should be a CompoundCRS
-INSERT INTO "vertical_datum" VALUES('ESRI','105110','Unknown_height_system_(meters)',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('ESRI','105110','Unknown_height_system_(meters)',NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', '105110_USAGE','vertical_datum','ESRI','105110','EPSG','1262','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','115807','Unknown_height_system_(meters)',NULL,'EPSG','6499','ESRI','105110',0);
INSERT INTO "usage" VALUES('ESRI', '115807_USAGE','vertical_crs','ESRI','115807','EPSG','1262','EPSG','1024');
-INSERT INTO "vertical_datum" VALUES('ESRI','105111','Unknown_height_system_(US_survey_feet)',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('ESRI','105111','Unknown_height_system_(US_survey_feet)',NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', '105111_USAGE','vertical_datum','ESRI','105111','EPSG','1262','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','115808','Unknown_height_system_(US_survey_feet)',NULL,'EPSG','6497','ESRI','105111',0);
INSERT INTO "usage" VALUES('ESRI', '115808_USAGE','vertical_crs','ESRI','115808','EPSG','1262','EPSG','1024');
-INSERT INTO "vertical_datum" VALUES('ESRI','105112','Unknown_height_system_(Intl_feet)',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('ESRI','105112','Unknown_height_system_(Intl_feet)',NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', '105112_USAGE','vertical_datum','ESRI','105112','EPSG','1262','EPSG','1024');
INSERT INTO "vertical_crs" VALUES('ESRI','115809','Unknown_height_system_(Intl_Feet)',NULL,'EPSG','1030','ESRI','105112',0);
INSERT INTO "usage" VALUES('ESRI', '115809_USAGE','vertical_crs','ESRI','115809','EPSG','1262','EPSG','1024');
diff --git a/data/sql/ignf.sql b/data/sql/ignf.sql
index cb5b6e19..defc743f 100644
--- a/data/sql/ignf.sql
+++ b/data/sql/ignf.sql
@@ -4,7 +4,7 @@ INSERT INTO "metadata" VALUES('IGNF.SOURCE', 'https://geodesie.ign.fr/contenu/fi
INSERT INTO "metadata" VALUES('IGNF.VERSION', '3.1.0');
INSERT INTO "metadata" VALUES('IGNF.DATE', '2019-05-24');
INSERT INTO "ellipsoid" VALUES('IGNF','ELG032','SPHERE PICARD',NULL,'PROJ', 'EARTH', 6371598,'EPSG','9001',0,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA052','BORA_SAU 2001',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA052','BORA_SAU 2001',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5530001','CADASTRE 1953-1954 (ATOLL RAIVAVAE)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5680001','CADASTRE 1980 (ATOLL APATAKI)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG7010001','CADASTRE 1997',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
@@ -13,30 +13,30 @@ INSERT INTO "geodetic_datum" VALUES('IGNF','REG0110001','CAP JULES - PERROUD 195
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5060001','CLIPPERTON (MARINE 1967)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG0130001','CROZET-POSSESSION 1963',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG4070101','CSG 1967 (IGN 1995)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA018','DANGER 1950 (SAINT-PIERRE-ET-MIQUELON)',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA018','DANGER 1950 (SAINT-PIERRE-ET-MIQUELON)',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5050001','EFATE-IGN 1957',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA034','EPF 1952 (ILE DES PETRELS)',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA034','EPF 1952 (ILE DES PETRELS)',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG3790001','EUROPA (MHM 1954)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA122','EVRF2000 (UELN-95/98)(EUROPEAN VERTICAL REFERENCE FRAME)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA125','EVRF2007 (EUROPEAN VERTICAL REFERENCE FRAME 2007)',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA122','EVRF2000 (UELN-95/98)(EUROPEAN VERTICAL REFERENCE FRAME)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA125','EVRF2007 (EUROPEAN VERTICAL REFERENCE FRAME 2007)',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5690001','FG 1949 (ATOLL APATAKI)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG3800001','GLORIEUSES (MHG 1977)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG4260001','GUADELOUPE - FORT MARIGOT',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA051','HUAHINE_SAU 2001',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA026','IGN 1962 (KERGUELEN)',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA051','HUAHINE_SAU 2001',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA026','IGN 1962 (KERGUELEN)',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5630001','IGN 1963 (HIVA OA - TAHUATA - MOHOTANI)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA028','IGN 1966 (TAHITI)',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA028','IGN 1966 (TAHITI)',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5870001','IGN 1978 (ATOLL MURUROA) TUAMOTU',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA027','IGN 1984 (ILE UVEA OU WALLIS)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA014','IGN 1987 (MARTINIQUE)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA006','IGN 1988 (GUADELOUPE)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA008','IGN 1988 LS (GUADELOUPE / LES SAINTES)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA007','IGN 1988 MG (GUADELOUPE / MARIE-GALANTE)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA012','IGN 1988 SB (GUADELOUPE / SAINT-BARTHELEMY)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA009','IGN 1988 SM (GUADELOUPE / SAINT-MARTIN)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA033','IGN 1989 (REUNION)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA037','IGN 1992 LD (GUADELOUPE / LA DESIRADE)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA053','IGN 2008 LD (GUADELOUPE / LA DESIRADE)',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA027','IGN 1984 (ILE UVEA OU WALLIS)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA014','IGN 1987 (MARTINIQUE)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA006','IGN 1988 (GUADELOUPE)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA008','IGN 1988 LS (GUADELOUPE / LES SAINTES)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA007','IGN 1988 MG (GUADELOUPE / MARIE-GALANTE)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA012','IGN 1988 SB (GUADELOUPE / SAINT-BARTHELEMY)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA009','IGN 1988 SM (GUADELOUPE / SAINT-MARTIN)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA033','IGN 1989 (REUNION)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA037','IGN 1992 LD (GUADELOUPE / LA DESIRADE)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA053','IGN 2008 LD (GUADELOUPE / LA DESIRADE)',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG0300001','IGN53 (IGN RAIATEA-TAHAA) RAIATEA-TAHAA-BORA BORA-HUAHINE',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5970001','IGN72 (EIAO - HIVA OA - MOHOTANI) MARQUISES',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG0140001','ILE AMSTERDAM 1963',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
@@ -44,7 +44,7 @@ INSERT INTO "geodetic_datum" VALUES('IGNF','REG0150001','ILE SAINT-PAUL 1969',NU
INSERT INTO "geodetic_datum" VALUES('IGNF','REG3810001','JUAN DE NOVA (MHM 1953)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG0060001','KERGUELEN - K0 (IGN 1962)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5590001','MANGAREVA 1951',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA047','MAUPITI_SAU 2001',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA047','MAUPITI_SAU 2001',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5880001','MGT 1947 (ATOLL RANGIROA OU RAIROA)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5700001','MGT 1948 (ATOLL APATAKI)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5780001','MGT 1949 (ATOLL HAO)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
@@ -73,30 +73,30 @@ INSERT INTO "geodetic_datum" VALUES('IGNF','REG0270001','MHPF 1967 (MANGAREVA -
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5910001','MHPF 1969 (ATOLLS TAKAROA ET TAKAPOTO)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5580001','MHPF 1969 (TUBUAI) ILES AUSTRALES',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG0290001','MHPF70 (KAUEHI) TUAMOTU',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA029','MOOREA 1981 (MOOREA_SAU 2001)',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA029','MOOREA 1981 (MOOREA_SAU 2001)',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG0340001','MOP 1983 (MAUPITI)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5720001','MOP84 (FANGATAUFA 1984)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5960001','MOP86 (APATAKI - RAPA - HAO) TUAMOTU',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG0870001','MOP88 (TIKEHAU) TUAMOTU',NULL,'EPSG','7043','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG0280001','MOP90 (TETIAROA) ILES DE LA SOCIETE',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5980001','MOP92 (ANAA) TUAMOTU',NULL,'EPSG','7030','EPSG','8901',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA001','NGF-BOURDALOUE',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA003','NGF-IGN 1969',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA011','NGF-IGN 1978',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA002','NGF-LALLEMAND',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA001','NGF-BOURDALOUE',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA003','NGF-IGN 1969',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA011','NGF-IGN 1978',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA002','NGF-LALLEMAND',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5650001','NGT 1949 (ATOLL AMANU)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA054','NGWF FUTUNA',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA041','NGWF WALLIS (MOP 1996)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA016','NIVELLEMENT GENERAL DE GUYANE (NGG) 1977',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA010','NIVELLEMENT GENERAL DE LA CORSE (NGC)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA036','NIVELLEMENT GENERAL DE LIFOU (IGN 1991 LF)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA035','NIVELLEMENT GENERAL DE MARE (IGN 1991 MR)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA019','NIVELLEMENT GENERAL DE NOUVELLE-CALEDONIE (NGNC)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA109','NORMAL NULL (NIVELLEMENT GENERAL DU LUXEMBOURG NG-L)',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA054','NGWF FUTUNA',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA041','NGWF WALLIS (MOP 1996)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA016','NIVELLEMENT GENERAL DE GUYANE (NGG) 1977',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA010','NIVELLEMENT GENERAL DE LA CORSE (NGC)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA036','NIVELLEMENT GENERAL DE LIFOU (IGN 1991 LF)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA035','NIVELLEMENT GENERAL DE MARE (IGN 1991 MR)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA019','NIVELLEMENT GENERAL DE NOUVELLE-CALEDONIE (NGNC)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA109','NORMAL NULL (NIVELLEMENT GENERAL DU LUXEMBOURG NG-L)',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG7080001','NOUMEA 74 (TRIANGULATION DE NOUMEA)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5040001','NOUVELLE CALEDONIE - GOMEN TERME NORD',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG0120001','PORT-MARTIN - PERROUD 1955',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA049','RAIATEA_SAU 2001',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA049','RAIATEA_SAU 2001',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG3170201','REUNION - PITON DES NEIGES (IGN 1992)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG3170301','REUNION - PITON DES NEIGES (IGN 2008)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG0310001','SAT84 (RURUTU) ILES AUSTRALES',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
@@ -108,12 +108,12 @@ INSERT INTO "geodetic_datum" VALUES('IGNF','REG5930001','SHM 1947-1950 (ATOLL TI
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5670001','SHM 1947 (ATOLL ANAA)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5810001','SHM 1949 (ATOLL HARAIKI)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5940001','SHM 1969 (ATOLL TUREIA)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA038','SHOM 1953 (MAYOTTE)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA042','SHOM 1977 (ILES GLORIEUSES - CANAL DE MOZAMBIQUE)',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA020','SHOM 1978 (ILE DES PINS)',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA038','SHOM 1953 (MAYOTTE)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA042','SHOM 1977 (ILES GLORIEUSES - CANAL DE MOZAMBIQUE)',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA020','SHOM 1978 (ILE DES PINS)',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG7100001','ST 84 ILE DES PINS',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG7090001','ST 87 OUVEA',NULL,'EPSG','7030','EPSG','8901',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('IGNF','REA050','TAHAA_SAU 2001',NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('IGNF','REA050','TAHAA_SAU 2001',NULL,NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG5250001','TANNA BLOC SUD',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG3820001','TROMELIN (SGM 1956)',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('IGNF','REG0160001','WALLIS-UVEA MOP1976',NULL,'EPSG','7022','EPSG','8901',NULL,NULL,NULL,0);
diff --git a/data/sql/proj_db_table_defs.sql b/data/sql/proj_db_table_defs.sql
index 1862429a..60a12209 100644
--- a/data/sql/proj_db_table_defs.sql
+++ b/data/sql/proj_db_table_defs.sql
@@ -181,6 +181,7 @@ CREATE TABLE vertical_datum (
name TEXT NOT NULL CHECK (length(name) >= 2),
description TEXT,
publication_date TEXT CHECK (NULL OR length(publication_date) = 10), --- YYYY-MM-DD format
+ frame_reference_epoch FLOAT, --- only set for dynamic datum, and should be set when it is a dynamic datum
ensemble_accuracy FLOAT CHECK (ensemble_accuracy IS NULL OR ensemble_accuracy > 0), --- only for a datum ensemble. and should be set when it is a datum ensemble
deprecated BOOLEAN NOT NULL CHECK (deprecated IN (0, 1)),
CONSTRAINT pk_vertical_datum PRIMARY KEY (auth_name, code)
diff --git a/data/sql/vertical_datum.sql b/data/sql/vertical_datum.sql
index b438a078..e4a587d2 100644
--- a/data/sql/vertical_datum.sql
+++ b/data/sql/vertical_datum.sql
@@ -1,222 +1,222 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
-INSERT INTO "vertical_datum" VALUES('EPSG','1027','EGM2008 geoid',NULL,'2008-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1028','Fao 1979',NULL,'1979-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1030','N2000',NULL,'2000-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1039','New Zealand Vertical Datum 2009',NULL,'2009-09-14',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1040','Dunedin-Bluff 1960',NULL,'1960-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1049','Incheon',NULL,'1963-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1050','Trieste',NULL,'1875-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1051','Genoa',NULL,'1942-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1054','Sri Lanka Vertical Datum',NULL,'1932-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1059','Faroe Islands Vertical Reference 2009',NULL,'2009-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1079','Fehmarnbelt Vertical Reference 2010',NULL,'2010-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1080','Lowest Astronomical Tide',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1082','Highest Astronomical Tide',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1083','Lower Low Water Large Tide',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1084','Higher High Water Large Tide',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1085','Indian Spring Low Water',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1086','Mean Lower Low Water Spring Tides',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1087','Mean Low Water Spring Tides',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1088','Mean High Water Spring Tides',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1089','Mean Lower Low Water',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1090','Mean Higher High Water',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1091','Mean Low Water',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1092','Mean High Water',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1093','Low Water',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1094','High Water',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1096','Norway Normal Null 2000',NULL,'2000-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1097','Grand Cayman Vertical Datum 1954',NULL,'1954-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1098','Little Cayman Vertical Datum 1961',NULL,'1961-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1099','Cayman Brac Vertical Datum 1961',NULL,'1961-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1101','Cais da Pontinha - Funchal',NULL,'1913-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1102','Cais da Vila - Porto Santo',NULL,'1936-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1103','Cais das Velas',NULL,'1937-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1104','Horta',NULL,'1935-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1105','Cais da Madalena',NULL,'1937-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1106','Santa Cruz da Graciosa',NULL,'1938-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1107','Cais da Figueirinha - Angra do Heroismo',NULL,'1951-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1108','Santa Cruz das Flores',NULL,'1965-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1109','Cais da Vila do Porto',NULL,'1965-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1110','Ponta Delgada',NULL,'1991-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1119','Northern Marianas Vertical Datum of 2003',NULL,'2009-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1121','Tutuila Vertical Datum of 1962',NULL,'1962-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1122','Guam Vertical Datum of 1963',NULL,'1963-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1123','Puerto Rico Vertical Datum of 2002',NULL,'2012-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1124','Virgin Islands Vertical Datum of 2009',NULL,'2011-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1125','American Samoa Vertical Datum of 2002',NULL,'2009-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1126','Guam Vertical Datum of 2004',NULL,'2009-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1127','Canadian Geodetic Vertical Datum of 2013 (CGG2013)',NULL,'2013-11-28',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1129','Japanese Standard Levelling Datum 1972',NULL,'1972-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1130','Japanese Geodetic Datum 2000 (vertical)',NULL,'2002-04-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1131','Japanese Geodetic Datum 2011 (vertical)',NULL,'2011-10-21',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1140','Singapore Height Datum',NULL,'2009-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1146','Ras Ghumays',NULL,'1979-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1148','Famagusta 1960',NULL,'1960-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1149','PNG08',NULL,'2011-10-14',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1150','Kumul 34',NULL,'2005-06-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1151','Kiunga',NULL,'1990-10-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1161','Deutsches Haupthoehennetz 1912',NULL,'1912-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1162','Latvian Height System 2000',NULL,'2005-07-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1164','Ordnance Datum Newlyn (Offshore)',NULL,'2016-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1169','New Zealand Vertical Datum 2016',NULL,'2016-06-27',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1170','Deutsches Haupthoehennetz 2016',NULL,'2016-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1171','Port Moresby 1996',NULL,'1996-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1172','Port Moresby 2008',NULL,'2008-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1175','Jamestown 1971',NULL,'1971-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1176','St. Helena Tritan Vertical Datum 2011',NULL,'2011-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1177','St. Helena Vertical Datum 2015',NULL,'2015-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1190','Landshaedarkerfi Islands 2004',NULL,'2004-08-07',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1199','Greenland Vertical Reference 2000',NULL,'2000-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1200','Greenland Vertical Reference 2016',NULL,'2016-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1202','Baltic 1957',NULL,'1957-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1205','EPSG example wellbore vertical datum',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1210','Macao Height Datum',NULL,'1980-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1213','Helsinki 1943',NULL,'1943-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1215','Slovenian Vertical System 2010',NULL,'2010-10-10',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1216','Serbian Vertical Reference System 2012',NULL,'2012-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1219','MOMRA Vertical Geodetic Control',NULL,'1969-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1224','Taiwan Vertical Datum 2001',NULL,'2001-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1226','Datum Altimetrico de Costa Rica 1952',NULL,'1962-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1250','IGN 2008 LD',NULL,'2008-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1255','Nivellement General de Nouvelle Caledonie 2008',NULL,'2008-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1256','Canadian Geodetic Vertical Datum of 2013 (CGG2013a)',NULL,'2015-12-05',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1260','Sistema de Referencia Vertical Nacional 2016',NULL,'2016-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1261','European Vertical Reference Frame 2000 Austria',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1262','South Africa Land Levelling Datum',NULL,'2010-05-11',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1265','HS2 Vertical Reference Frame',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1267','Wiener Null',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1269','Kingdom of Saudi Arabia Vertical Reference Frame Jeddah 2014',NULL,'2014-10-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1270','Mean Sea Level Netherlands',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1274','European Vertical Reference Frame 2019',NULL,'2019-05-22',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1275','Mallorca',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1276','Menorca',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1277','Ibiza',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1278','Lanzarote',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1279','Fuerteventura',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1280','Gran Canaria',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1281','Tenerife',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1282','La Gomera',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1283','La Palma',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1284','El Hierro',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1285','Ceuta 2',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1287','European Vertical Reference Frame 2019 mean tide',NULL,'2019-05-22',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1290','Lowest Astronomical Tide Netherlands',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1292','Australian Vertical Working Surface',NULL,'2020-07-14',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1294','Indonesian Geoid 2020',NULL,'2020-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5100','Mean Sea Level',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5101','Ordnance Datum Newlyn',NULL,'1956-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5102','National Geodetic Vertical Datum 1929',NULL,'1929-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5103','North American Vertical Datum 1988',NULL,'1993-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5104','Yellow Sea 1956',NULL,'1956-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5105','Baltic 1977',NULL,'1977-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5106','Caspian Sea',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5107','Nivellement general de la France',NULL,NULL,NULL,1);
-INSERT INTO "vertical_datum" VALUES('EPSG','5109','Normaal Amsterdams Peil',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5110','Ostend',NULL,'1981-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5111','Australian Height Datum',NULL,'1971-05-05',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5112','Australian Height Datum (Tasmania)',NULL,'1972-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5113','Instantaneous Water Level',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5114','Canadian Geodetic Vertical Datum of 1928',NULL,'1935-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5115','Piraeus Harbour 1986',NULL,'1986-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5116','Helsinki 1960',NULL,'1960-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5117','Rikets hojdsystem 1970',NULL,'1970-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5118','Nivellement General de la France - Lallemand',NULL,'1897-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5119','Nivellement General de la France - IGN69',NULL,'1969-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5120','Nivellement General de la France - IGN78',NULL,'1978-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5121','Maputo',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5122','Japanese Standard Levelling Datum 1969',NULL,'1969-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5123','PDO Height Datum 1993',NULL,'1993-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5124','Fahud Height Datum',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5125','Ha Tien 1960',NULL,'1960-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5126','Hon Dau 1992',NULL,'1992-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5127','Landesnivellement 1902',NULL,'1902-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5128','Landeshohennetz 1995',NULL,'1995-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5129','European Vertical Reference Frame 2000',NULL,'2000-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5130','Malin Head',NULL,'1970-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5131','Belfast Lough',NULL,'1957-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5132','Dansk Normal Nul',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5133','AIOC 1995',NULL,'1995-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5134','Black Sea',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5135','Hong Kong Principal Datum',NULL,'1980-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5136','Hong Kong Chart Datum',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5137','Yellow Sea 1985',NULL,'1985-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5138','Ordnance Datum Newlyn (Orkney Isles)',NULL,'1956-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5139','Fair Isle',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5140','Lerwick',NULL,'1979-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5141','Foula',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5142','Sule Skerry',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5143','North Rona',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5144','Stornoway',NULL,'1977-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5145','St. Kilda',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5146','Flannan Isles',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5147','St. Marys',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5148','Douglas',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5149','Fao',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5150','Bandar Abbas',NULL,'2001-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5151','Nivellement General de Nouvelle Caledonie',NULL,'1969-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5152','Poolbeg',NULL,'1837-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5153','Nivellement General Guyanais 1977',NULL,'1977-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5154','Martinique 1987',NULL,'1987-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5155','Guadeloupe 1988',NULL,'1988-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5156','Reunion 1989',NULL,'1989-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5157','Auckland 1946',NULL,'1945-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5158','Bluff 1955',NULL,'1955-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5159','Dunedin 1958',NULL,'1958-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5160','Gisborne 1926',NULL,'1926-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5161','Lyttelton 1937',NULL,'1937-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5162','Moturiki 1953',NULL,'1953-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5163','Napier 1962',NULL,'1962-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5164','Nelson 1955',NULL,'1955-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5165','One Tree Point 1964',NULL,'1964-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5166','Tararu 1952',NULL,'1952-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5167','Taranaki 1970',NULL,'1970-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5168','Wellington 1953',NULL,'1953-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5169','Waitangi (Chatham Island) 1959',NULL,'1959-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5170','Stewart Island 1977',NULL,'1977-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5171','EGM96 geoid',NULL,'1996-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5172','Nivellement General du Luxembourg',NULL,'1995-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5173','Antalya',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5174','Norway Normal Null 1954',NULL,'1954-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5175','Durres',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5176','Gebrauchshohen ADRIA',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5177','Slovenian Vertical System 2000',NULL,'1999-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5178','Cascais',NULL,'1938-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5179','Constanta',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5180','Alicante',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5181','Deutsches Haupthoehennetz 1992',NULL,'1992-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5182','Deutsches Haupthoehennetz 1985',NULL,'1985-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5183','Staatlichen Nivellementnetzes 1976',NULL,'1976-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5184','Baltic 1982',NULL,'1982-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5185','Baltic 1980',NULL,'1980-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5186','Kuwait PWD',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5187','KOC Well Datum',NULL,'1937-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5188','KOC Construction Datum',NULL,'1952-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5189','Nivellement General de la Corse 1948',NULL,'1948-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5190','Danger 1950',NULL,'1950-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5191','Mayotte 1950',NULL,'1950-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5192','Martinique 1955',NULL,'1955-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5193','Guadeloupe 1951',NULL,'1951-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5194','Lagos 1955',NULL,'1955-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5195','Nivellement General de Polynesie Francaise',NULL,NULL,NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5196','IGN 1966',NULL,'1966-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5197','Moorea SAU 1981',NULL,'1981-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5198','Raiatea SAU 2001',NULL,'2001-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5199','Maupiti SAU 2001',NULL,'2001-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5200','Huahine SAU 2001',NULL,'2001-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5201','Tahaa SAU 2001',NULL,'2001-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5202','Bora Bora SAU 2001',NULL,'2001-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5203','EGM84 geoid',NULL,'1987-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5204','International Great Lakes Datum 1955',NULL,'1955-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5205','International Great Lakes Datum 1985',NULL,'1985-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5206','Dansk Vertikal Reference 1990',NULL,'1990-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5207','Croatian Vertical Reference Datum 1971',NULL,'1971-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5208','Rikets hojdsystem 2000',NULL,'2000-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5209','Rikets hojdsystem 1900',NULL,'1900-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5210','IGN 1988 LS',NULL,'1988-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5211','IGN 1988 MG',NULL,'1988-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5212','IGN 1992 LD',NULL,'1992-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5213','IGN 1988 SB',NULL,'1988-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5214','IGN 1988 SM',NULL,'1988-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','5215','European Vertical Reference Frame 2007',NULL,'2008-01-01',NULL,0);
-INSERT INTO "vertical_datum" VALUES('EPSG','1288','British Isles height ensemble',NULL,NULL,0.4,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1027','EGM2008 geoid',NULL,'2008-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1028','Fao 1979',NULL,'1979-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1030','N2000',NULL,'2000-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1039','New Zealand Vertical Datum 2009',NULL,'2009-09-14',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1040','Dunedin-Bluff 1960',NULL,'1960-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1049','Incheon',NULL,'1963-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1050','Trieste',NULL,'1875-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1051','Genoa',NULL,'1942-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1054','Sri Lanka Vertical Datum',NULL,'1932-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1059','Faroe Islands Vertical Reference 2009',NULL,'2009-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1079','Fehmarnbelt Vertical Reference 2010',NULL,'2010-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1080','Lowest Astronomical Tide',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1082','Highest Astronomical Tide',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1083','Lower Low Water Large Tide',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1084','Higher High Water Large Tide',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1085','Indian Spring Low Water',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1086','Mean Lower Low Water Spring Tides',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1087','Mean Low Water Spring Tides',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1088','Mean High Water Spring Tides',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1089','Mean Lower Low Water',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1090','Mean Higher High Water',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1091','Mean Low Water',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1092','Mean High Water',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1093','Low Water',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1094','High Water',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1096','Norway Normal Null 2000',NULL,'2000-01-01',2000.0,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1097','Grand Cayman Vertical Datum 1954',NULL,'1954-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1098','Little Cayman Vertical Datum 1961',NULL,'1961-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1099','Cayman Brac Vertical Datum 1961',NULL,'1961-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1101','Cais da Pontinha - Funchal',NULL,'1913-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1102','Cais da Vila - Porto Santo',NULL,'1936-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1103','Cais das Velas',NULL,'1937-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1104','Horta',NULL,'1935-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1105','Cais da Madalena',NULL,'1937-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1106','Santa Cruz da Graciosa',NULL,'1938-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1107','Cais da Figueirinha - Angra do Heroismo',NULL,'1951-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1108','Santa Cruz das Flores',NULL,'1965-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1109','Cais da Vila do Porto',NULL,'1965-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1110','Ponta Delgada',NULL,'1991-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1119','Northern Marianas Vertical Datum of 2003',NULL,'2009-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1121','Tutuila Vertical Datum of 1962',NULL,'1962-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1122','Guam Vertical Datum of 1963',NULL,'1963-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1123','Puerto Rico Vertical Datum of 2002',NULL,'2012-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1124','Virgin Islands Vertical Datum of 2009',NULL,'2011-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1125','American Samoa Vertical Datum of 2002',NULL,'2009-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1126','Guam Vertical Datum of 2004',NULL,'2009-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1127','Canadian Geodetic Vertical Datum of 2013 (CGG2013)',NULL,'2013-11-28',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1129','Japanese Standard Levelling Datum 1972',NULL,'1972-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1130','Japanese Geodetic Datum 2000 (vertical)',NULL,'2002-04-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1131','Japanese Geodetic Datum 2011 (vertical)',NULL,'2011-10-21',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1140','Singapore Height Datum',NULL,'2009-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1146','Ras Ghumays',NULL,'1979-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1148','Famagusta 1960',NULL,'1960-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1149','PNG08',NULL,'2011-10-14',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1150','Kumul 34',NULL,'2005-06-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1151','Kiunga',NULL,'1990-10-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1161','Deutsches Haupthoehennetz 1912',NULL,'1912-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1162','Latvian Height System 2000',NULL,'2005-07-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1164','Ordnance Datum Newlyn (Offshore)',NULL,'2016-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1169','New Zealand Vertical Datum 2016',NULL,'2016-06-27',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1170','Deutsches Haupthoehennetz 2016',NULL,'2016-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1171','Port Moresby 1996',NULL,'1996-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1172','Port Moresby 2008',NULL,'2008-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1175','Jamestown 1971',NULL,'1971-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1176','St. Helena Tritan Vertical Datum 2011',NULL,'2011-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1177','St. Helena Vertical Datum 2015',NULL,'2015-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1190','Landshaedarkerfi Islands 2004',NULL,'2004-08-07',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1199','Greenland Vertical Reference 2000',NULL,'2000-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1200','Greenland Vertical Reference 2016',NULL,'2016-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1202','Baltic 1957',NULL,'1957-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1205','EPSG example wellbore vertical datum',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1210','Macao Height Datum',NULL,'1980-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1213','Helsinki 1943',NULL,'1943-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1215','Slovenian Vertical System 2010',NULL,'2010-10-10',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1216','Serbian Vertical Reference System 2012',NULL,'2012-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1219','MOMRA Vertical Geodetic Control',NULL,'1969-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1224','Taiwan Vertical Datum 2001',NULL,'2001-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1226','Datum Altimetrico de Costa Rica 1952',NULL,'1962-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1250','IGN 2008 LD',NULL,'2008-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1255','Nivellement General de Nouvelle Caledonie 2008',NULL,'2008-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1256','Canadian Geodetic Vertical Datum of 2013 (CGG2013a)',NULL,'2015-12-05',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1260','Sistema de Referencia Vertical Nacional 2016',NULL,'2016-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1261','European Vertical Reference Frame 2000 Austria',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1262','South Africa Land Levelling Datum',NULL,'2010-05-11',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1265','HS2 Vertical Reference Frame',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1267','Wiener Null',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1269','Kingdom of Saudi Arabia Vertical Reference Frame Jeddah 2014',NULL,'2014-10-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1270','Mean Sea Level Netherlands',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1274','European Vertical Reference Frame 2019',NULL,'2019-05-22',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1275','Mallorca',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1276','Menorca',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1277','Ibiza',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1278','Lanzarote',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1279','Fuerteventura',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1280','Gran Canaria',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1281','Tenerife',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1282','La Gomera',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1283','La Palma',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1284','El Hierro',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1285','Ceuta 2',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1287','European Vertical Reference Frame 2019 mean tide',NULL,'2019-05-22',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1290','Lowest Astronomical Tide Netherlands',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1292','Australian Vertical Working Surface',NULL,'2020-07-14',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1294','Indonesian Geoid 2020',NULL,'2020-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5100','Mean Sea Level',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5101','Ordnance Datum Newlyn',NULL,'1956-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5102','National Geodetic Vertical Datum 1929',NULL,'1929-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5103','North American Vertical Datum 1988',NULL,'1993-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5104','Yellow Sea 1956',NULL,'1956-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5105','Baltic 1977',NULL,'1977-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5106','Caspian Sea',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5107','Nivellement general de la France',NULL,NULL,NULL,NULL,1);
+INSERT INTO "vertical_datum" VALUES('EPSG','5109','Normaal Amsterdams Peil',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5110','Ostend',NULL,'1981-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5111','Australian Height Datum',NULL,'1971-05-05',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5112','Australian Height Datum (Tasmania)',NULL,'1972-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5113','Instantaneous Water Level',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5114','Canadian Geodetic Vertical Datum of 1928',NULL,'1935-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5115','Piraeus Harbour 1986',NULL,'1986-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5116','Helsinki 1960',NULL,'1960-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5117','Rikets hojdsystem 1970',NULL,'1970-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5118','Nivellement General de la France - Lallemand',NULL,'1897-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5119','Nivellement General de la France - IGN69',NULL,'1969-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5120','Nivellement General de la France - IGN78',NULL,'1978-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5121','Maputo',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5122','Japanese Standard Levelling Datum 1969',NULL,'1969-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5123','PDO Height Datum 1993',NULL,'1993-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5124','Fahud Height Datum',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5125','Ha Tien 1960',NULL,'1960-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5126','Hon Dau 1992',NULL,'1992-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5127','Landesnivellement 1902',NULL,'1902-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5128','Landeshohennetz 1995',NULL,'1995-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5129','European Vertical Reference Frame 2000',NULL,'2000-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5130','Malin Head',NULL,'1970-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5131','Belfast Lough',NULL,'1957-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5132','Dansk Normal Nul',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5133','AIOC 1995',NULL,'1995-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5134','Black Sea',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5135','Hong Kong Principal Datum',NULL,'1980-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5136','Hong Kong Chart Datum',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5137','Yellow Sea 1985',NULL,'1985-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5138','Ordnance Datum Newlyn (Orkney Isles)',NULL,'1956-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5139','Fair Isle',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5140','Lerwick',NULL,'1979-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5141','Foula',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5142','Sule Skerry',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5143','North Rona',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5144','Stornoway',NULL,'1977-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5145','St. Kilda',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5146','Flannan Isles',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5147','St. Marys',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5148','Douglas',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5149','Fao',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5150','Bandar Abbas',NULL,'2001-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5151','Nivellement General de Nouvelle Caledonie',NULL,'1969-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5152','Poolbeg',NULL,'1837-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5153','Nivellement General Guyanais 1977',NULL,'1977-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5154','Martinique 1987',NULL,'1987-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5155','Guadeloupe 1988',NULL,'1988-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5156','Reunion 1989',NULL,'1989-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5157','Auckland 1946',NULL,'1945-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5158','Bluff 1955',NULL,'1955-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5159','Dunedin 1958',NULL,'1958-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5160','Gisborne 1926',NULL,'1926-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5161','Lyttelton 1937',NULL,'1937-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5162','Moturiki 1953',NULL,'1953-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5163','Napier 1962',NULL,'1962-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5164','Nelson 1955',NULL,'1955-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5165','One Tree Point 1964',NULL,'1964-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5166','Tararu 1952',NULL,'1952-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5167','Taranaki 1970',NULL,'1970-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5168','Wellington 1953',NULL,'1953-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5169','Waitangi (Chatham Island) 1959',NULL,'1959-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5170','Stewart Island 1977',NULL,'1977-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5171','EGM96 geoid',NULL,'1996-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5172','Nivellement General du Luxembourg',NULL,'1995-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5173','Antalya',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5174','Norway Normal Null 1954',NULL,'1954-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5175','Durres',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5176','Gebrauchshohen ADRIA',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5177','Slovenian Vertical System 2000',NULL,'1999-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5178','Cascais',NULL,'1938-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5179','Constanta',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5180','Alicante',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5181','Deutsches Haupthoehennetz 1992',NULL,'1992-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5182','Deutsches Haupthoehennetz 1985',NULL,'1985-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5183','Staatlichen Nivellementnetzes 1976',NULL,'1976-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5184','Baltic 1982',NULL,'1982-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5185','Baltic 1980',NULL,'1980-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5186','Kuwait PWD',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5187','KOC Well Datum',NULL,'1937-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5188','KOC Construction Datum',NULL,'1952-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5189','Nivellement General de la Corse 1948',NULL,'1948-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5190','Danger 1950',NULL,'1950-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5191','Mayotte 1950',NULL,'1950-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5192','Martinique 1955',NULL,'1955-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5193','Guadeloupe 1951',NULL,'1951-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5194','Lagos 1955',NULL,'1955-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5195','Nivellement General de Polynesie Francaise',NULL,NULL,NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5196','IGN 1966',NULL,'1966-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5197','Moorea SAU 1981',NULL,'1981-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5198','Raiatea SAU 2001',NULL,'2001-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5199','Maupiti SAU 2001',NULL,'2001-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5200','Huahine SAU 2001',NULL,'2001-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5201','Tahaa SAU 2001',NULL,'2001-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5202','Bora Bora SAU 2001',NULL,'2001-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5203','EGM84 geoid',NULL,'1987-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5204','International Great Lakes Datum 1955',NULL,'1955-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5205','International Great Lakes Datum 1985',NULL,'1985-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5206','Dansk Vertikal Reference 1990',NULL,'1990-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5207','Croatian Vertical Reference Datum 1971',NULL,'1971-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5208','Rikets hojdsystem 2000',NULL,'2000-01-01',2000.0,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5209','Rikets hojdsystem 1900',NULL,'1900-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5210','IGN 1988 LS',NULL,'1988-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5211','IGN 1988 MG',NULL,'1988-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5212','IGN 1992 LD',NULL,'1992-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5213','IGN 1988 SB',NULL,'1988-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5214','IGN 1988 SM',NULL,'1988-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','5215','European Vertical Reference Frame 2007',NULL,'2008-01-01',NULL,NULL,0);
+INSERT INTO "vertical_datum" VALUES('EPSG','1288','British Isles height ensemble',NULL,NULL,NULL,0.4,0);
diff --git a/scripts/build_db.py b/scripts/build_db.py
index 113ee3fd..7346d210 100755
--- a/scripts/build_db.py
+++ b/scripts/build_db.py
@@ -177,7 +177,7 @@ def fill_vertical_datum(proj_db_cursor):
for (datum_code, datum_name, publication_date, frame_reference_epoch, deprecated) in res:
publication_date = compute_publication_date(datum_code, datum_name, frame_reference_epoch, publication_date)
proj_db_cursor.execute(
- "INSERT INTO vertical_datum VALUES (?, ?, ?, NULL, ?, NULL, ?)", (EPSG_AUTHORITY, datum_code, datum_name,publication_date, deprecated))
+ "INSERT INTO vertical_datum VALUES (?, ?, ?, NULL, ?, ?, NULL, ?)", (EPSG_AUTHORITY, datum_code, datum_name, publication_date, frame_reference_epoch, deprecated))
def fill_datumensemble(proj_db_cursor):
@@ -192,7 +192,7 @@ def fill_datumensemble(proj_db_cursor):
datum_type = subrows[0][0]
if datum_type == 'vertical':
datum_ensemble_member_table = 'vertical_datum_ensemble_member'
- proj_db_cursor.execute("INSERT INTO vertical_datum (auth_name, code, name, description, publication_date, ensemble_accuracy, deprecated) VALUES (?, ?, ?, ?, ?, ?, ?)", (EPSG_AUTHORITY, datum_code, datum_name, None, None, ensemble_accuracy, deprecated))
+ proj_db_cursor.execute("INSERT INTO vertical_datum (auth_name, code, name, description, publication_date, frame_reference_epoch, ensemble_accuracy, deprecated) VALUES (?, ?, ?, ?, ?, ?, ?, ?)", (EPSG_AUTHORITY, datum_code, datum_name, None, None, None, ensemble_accuracy, deprecated))
else:
datum_ensemble_member_table = 'geodetic_datum_ensemble_member'
assert datum_type in ('dynamic geodetic', 'geodetic'), datum_code
@@ -201,7 +201,7 @@ def fill_datumensemble(proj_db_cursor):
assert ellipsoid_code, datum_code
assert prime_meridian_code, datum_code
proj_db_cursor.execute(
- "INSERT INTO geodetic_datum (auth_name, code, name, description, ellipsoid_auth_name, ellipsoid_code, prime_meridian_auth_name, prime_meridian_code, publication_date , ensemble_accuracy, deprecated) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", (EPSG_AUTHORITY, datum_code, datum_name, None, EPSG_AUTHORITY, ellipsoid_code, EPSG_AUTHORITY, prime_meridian_code, None, ensemble_accuracy, deprecated))
+ "INSERT INTO geodetic_datum (auth_name, code, name, description, ellipsoid_auth_name, ellipsoid_code, prime_meridian_auth_name, prime_meridian_code, publication_date, frame_reference_epoch, ensemble_accuracy, deprecated) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", (EPSG_AUTHORITY, datum_code, datum_name, None, EPSG_AUTHORITY, ellipsoid_code, EPSG_AUTHORITY, prime_meridian_code, None, None, ensemble_accuracy, deprecated))
proj_db_cursor.execute("SELECT datum_code, datum_sequence FROM epsg.epsg_datumensemblemember WHERE datum_ensemble_code = ? ORDER by datum_sequence", (datum_code,))
for member_code, sequence in proj_db_cursor.fetchall():
diff --git a/scripts/build_db_create_ignf_from_xml.py b/scripts/build_db_create_ignf_from_xml.py
index dcc9cd4c..d908c8e5 100755
--- a/scripts/build_db_create_ignf_from_xml.py
+++ b/scripts/build_db_create_ignf_from_xml.py
@@ -154,7 +154,7 @@ def ingest_datums(root, all_sql, mapEllpsId, mapPmId):
id = node.attrib['id']
names = [_name.text for _name in node.iter('name')]
- sql = """INSERT INTO "vertical_datum" VALUES('IGNF','%s','%s',NULL,NULL,NULL,0);"""% (id, names[0])
+ sql = """INSERT INTO "vertical_datum" VALUES('IGNF','%s','%s',NULL,NULL,NULL,NULL,0);"""% (id, names[0])
all_sql.append(sql)
mapVerticalDatumId[id] = ('IGNF', id)
diff --git a/scripts/build_db_from_esri.py b/scripts/build_db_from_esri.py
index dbef495e..2c1c5883 100755
--- a/scripts/build_db_from_esri.py
+++ b/scripts/build_db_from_esri.py
@@ -1259,7 +1259,7 @@ def import_vertcs():
datum_written.add(datum_code)
p = map_vdatum_esri_to_parameters[datum_code]
- sql = """INSERT INTO "vertical_datum" VALUES('ESRI','%s','%s',NULL,NULL,NULL,%d);""" % (
+ sql = """INSERT INTO "vertical_datum" VALUES('ESRI','%s','%s',NULL,NULL,NULL,NULL,%d);""" % (
datum_code, p['esri_name'], p['deprecated'])
all_sql.append(sql)
sql = """INSERT INTO "usage" VALUES('ESRI', '%s_USAGE','vertical_datum','ESRI','%s','%s','%s','%s','%s');""" % (datum_code, datum_code, extent_auth_name, extent_code, 'EPSG', '1024')
diff --git a/src/iso19111/factory.cpp b/src/iso19111/factory.cpp
index 5f12273d..473aa254 100644
--- a/src/iso19111/factory.cpp
+++ b/src/iso19111/factory.cpp
@@ -2081,7 +2081,8 @@ AuthorityFactory::createGeodeticDatum(const std::string &code) const {
datum::VerticalReferenceFrameNNPtr
AuthorityFactory::createVerticalDatum(const std::string &code) const {
auto res =
- d->runWithCodeParam("SELECT name, deprecated FROM "
+ d->runWithCodeParam("SELECT name, publication_date, "
+ "frame_reference_epoch, deprecated FROM "
"vertical_datum WHERE auth_name = ? AND code = ?",
code);
if (res.empty()) {
@@ -2091,11 +2092,23 @@ AuthorityFactory::createVerticalDatum(const std::string &code) const {
try {
const auto &row = res.front();
const auto &name = row[0];
- const bool deprecated = row[1] == "1";
+ const auto &publication_date = row[1];
+ const auto &frame_reference_epoch = row[2];
+ const bool deprecated = row[3] == "1";
auto props = d->createPropertiesSearchUsages("vertical_datum", code,
name, deprecated);
+ if (!publication_date.empty()) {
+ props.set("PUBLICATION_DATE", publication_date);
+ }
auto anchor = util::optional<std::string>();
- return datum::VerticalReferenceFrame::create(props, anchor);
+ return frame_reference_epoch.empty()
+ ? datum::VerticalReferenceFrame::create(props, anchor)
+ : datum::DynamicVerticalReferenceFrame::create(
+ props, anchor,
+ util::optional<datum::RealizationMethod>(),
+ common::Measure(c_locale_stod(frame_reference_epoch),
+ common::UnitOfMeasure::YEAR),
+ util::optional<std::string>());
} catch (const std::exception &ex) {
throw buildFactoryException("vertical reference frame", code, ex);
}
diff --git a/test/cli/testprojinfo_out.dist b/test/cli/testprojinfo_out.dist
index 4ba7304e..42000716 100644
--- a/test/cli/testprojinfo_out.dist
+++ b/test/cli/testprojinfo_out.dist
@@ -912,6 +912,8 @@ WKT2:2019 string:
COORDINATEOPERATION["Inverse of SWEREF99 to RH2000 height",
SOURCECRS[
VERTCRS["RH2000 height",
+ DYNAMIC[
+ FRAMEEPOCH[2000]],
VDATUM["Rikets hojdsystem 2000"],
CS[vertical,1],
AXIS["gravity-related height (H)",up,
diff --git a/test/unit/test_factory.cpp b/test/unit/test_factory.cpp
index b17a3077..366e3d9b 100644
--- a/test/unit/test_factory.cpp
+++ b/test/unit/test_factory.cpp
@@ -301,6 +301,18 @@ TEST(factory, AuthorityFactory_createVerticalDatum) {
auto extent = domain->domainOfValidity();
ASSERT_TRUE(extent != nullptr);
EXPECT_TRUE(extent->isEquivalentTo(factory->createExtent("1262").get()));
+ EXPECT_TRUE(vrf->publicationDate().has_value());
+ EXPECT_EQ(vrf->publicationDate()->toString(), "2008-01-01");
+}
+
+// ---------------------------------------------------------------------------
+
+TEST(factory, AuthorityFactory_createDynamicVerticalDatum) {
+ auto factory = AuthorityFactory::create(DatabaseContext::create(), "EPSG");
+ auto grf = factory->createVerticalDatum("1096"); // Norway Normal Null 2000
+ auto dvrf = nn_dynamic_pointer_cast<DynamicVerticalReferenceFrame>(grf);
+ ASSERT_TRUE(dvrf != nullptr);
+ EXPECT_EQ(dvrf->frameReferenceEpoch().value(), 2000.0);
}
// ---------------------------------------------------------------------------
@@ -1540,7 +1552,7 @@ class FactoryWithTmpDatabase : public ::testing::Test {
<< last_error();
ASSERT_TRUE(
execute("INSERT INTO vertical_datum VALUES('EPSG','1027','EGM2008 "
- "geoid',NULL,NULL,NULL,0);"))
+ "geoid',NULL,NULL,NULL,NULL,0);"))
<< last_error();
ASSERT_TRUE(execute("INSERT INTO usage VALUES('EPSG',"
"'vertical_datum_1027_usage','vertical_datum',"