CREATE TABLE NATUURLIJKPERSOON ( NATUURLIJKPERSOON_ID INTEGER PRIMARY KEY, AANDUIDINGNAAMGEBRUIK VARCHAR(50), AANHEFAANSCHRIJVING VARCHAR(50), ACADEMISCHETITEL VARCHAR(80), ACHTERNAAM VARCHAR(100), ADELLIJKETITELOFPREDIKAAT VARCHAR(255), ANUMMER VARCHAR(20), BIJZONDERNEDERLANDERSCHAP VARCHAR(50), BURGERSERVICENUMMER VARCHAR(255), DATUMGEBOORTE DATE, DATUMOVERLIJDEN DATE, GEBOORTELAND VARCHAR(255), GEBOORTEPLAATS VARCHAR(200), GESLACHTSAANDUIDING VARCHAR(255), GESLACHTSNAAM VARCHAR(200), GESLACHTSNAAMAANSCHRIJVING VARCHAR(200), HANDLICHTING VARCHAR(50), INDICATIEAFSCHERMINGPERSOONSGEGEVENS BOOLEAN, INDICATIEOVERLEDEN BOOLEAN, LANDOVERLIJDEN VARCHAR(255), MAAKT_ONDERDEEL_UIT_VAN_HUISHOUDEN_ID INTEGER, NATIONALITEIT VARCHAR(100), OVERLIJDENSPLAATS VARCHAR(200), VOORLETTERSAANSCHRIJVING VARCHAR(20), VOORNAMEN VARCHAR(200), VOORNAMENAANSCHRIJVING VARCHAR(200), VOORVOEGSELGESLACHTSNAAM VARCHAR(80) ); CREATE TABLE SLUITINGOFAANGAANHUWELIJKOFGEREGISTREERDPARTNERSCHAP ( SLUITINGOFAANGAANHUWELIJKOFGEREGISTREERDPARTNERSCHAP_ID INTEGER PRIMARY KEY, BUITENLANDSEPLAATSAANVANG VARCHAR(255), BUITENLANDSEREGIOAANVANG VARCHAR(255), DATUMAANVANG DATE, GEMEENTEAANVANG VARCHAR(80), LANDOFGEBIEDAANVANG VARCHAR(255), OMSCHRIJVINGLOCATIEAANVANG VARCHAR(255) ); CREATE TABLE KP_INGSCHRVNPRSN_NTRLJKPRSN ( KP_INGSCHRVNPRSN_NTRLJKPRSN_ID INTEGER PRIMARY KEY, INGESCHREVENPERSOON_ID INTEGER, NATUURLIJKPERSOON_ID INTEGER ); CREATE TABLE HUISHOUDEN ( HUISHOUDEN_ID INTEGER PRIMARY KEY, HEEFT_ALS_ADRES_NUMMERAANDUIDING_ID INTEGER, SOORT VARCHAR(255) ); CREATE TABLE ONTBINDINGHUWELIJK_GEREGISTREERDPARTNERSCHAP ( ONTBINDINGHUWELIJK_GEREGISTREERDPARTNERSCHAP_ID INTEGER PRIMARY KEY, BUITENLANDSEPLAATSEINDE DATE, BUITENLANDSEREGIOEINDE DATE, DATUMEINDE DATE, GEMEENTEEINDE DATE, LANDOFGEBIEDEINDE DATE, OMSCHRIJVINGLOCATIEEINDE DATE, REDENEINDE DATE ); CREATE TABLE KP_CLNT_INGSCHRVNPRSN ( KP_CLNT_INGSCHRVNPRSN_ID INTEGER PRIMARY KEY, CLIENT_ID INTEGER, INGESCHREVENPERSOON_ID INTEGER ); CREATE TABLE INGESCHREVENPERSOON ( NATUURLIJKPERSOON_ID INTEGER PRIMARY KEY, ADRESHERKOMST VARCHAR(255), ANUMMER VARCHAR(20), BESCHRIJVINGLOCATIE VARCHAR(200), BUITENLANDSREISDOCUMENT VARCHAR(80), BURGERLIJKESTAAT VARCHAR(255), DATUMBEGINGELDIGHEIDVERBLIJFPLAATS DATE, DATUMEINDEGELDIGHEIDVERBLIJFSPLAATS DATE, DATUMINSCHRIJVINGGEMEENTE DATE, DATUMOPSCHORTINGBIJHOUDING DATE, DATUMVERTREKUITNEDERLAND DATE, DATUMVESTIGINGNEDERLAND DATE, GEMEENTEVANINSCHRIJVING VARCHAR(80), GEZINSRELATIE VARCHAR(255), HEEFT_ALS_ADRES_NUMMERAANDUIDING_ID INTEGER, INDICATIEGEHEIM BOOLEAN, INGEZETENE BOOLEAN, LANDWAARNAARVERTROKKEN VARCHAR(255), LANDWAARVANDAANINGESCHREVEN VARCHAR(255), OUDER1 VARCHAR(255), OUDER2 VARCHAR(255), OUDER_1_NATUURLIJKPERSOON_ID INTEGER, OUDER_2_NATUURLIJKPERSOON_ID INTEGER, PARTNERID VARCHAR(255), REDENEINDEBEWONING DATE, REDENOPSCHORTINGBIJHOUDING VARCHAR(200), SIGNALERINGREISDOCUMENT BOOLEAN, VERBLIJFSTITEL VARCHAR(255) ); CREATE TABLE CLIENT ( NATUURLIJKPERSOON_ID INTEGER PRIMARY KEY, CODE VARCHAR(80), GEZAGSDRAGERGEKEND BOOLEAN, JURIDISCHESTATUS VARCHAR(80), MAAKT_ONDERDEEL_UIT_VAN_HUISHOUDEN_ID INTEGER, WETTELIJKEVERTEGENWOORDIGING VARCHAR(80) ); CREATE TABLE OPENBARERUIMTE ( OPENBARERUIMTE_ID INTEGER PRIMARY KEY, BEGINGELDIGHEID DATE, DATUMEINDE DATE, DATUMINGANG DATE, DOCUMENTDATUM DATE, DOCUMENTNUMMER INTEGER, EINDGELDIGHEID DATE, GECONSTATEERD BOOLEAN, GEOMETRIE GEOMETRY, HUISNUMMERRANGE_EVEN_EN_ONEVEN_NUMMERS VARCHAR(255), HUISNUMMERRANGE_EVEN_NUMMERS VARCHAR(255), HUISNUMMERRANGE_ONEVEN_NUMMERS VARCHAR(255), IDENTIFICATIE VARCHAR(255), LABELNAAM VARCHAR(80), NAAMOPENBARERUIMTE VARCHAR(80), STATUS VARCHAR(255), STRAATCODE VARCHAR(80), STRAATNAAM VARCHAR(255), TYPEOPENBARERUIMTE VARCHAR(255), VERSIE INTEGER, WEGSEGMENT VARCHAR(255) ); CREATE TABLE NUMMERAANDUIDING ( NUMMERAANDUIDING_ID INTEGER PRIMARY KEY, BEGINGELDIGHEID DATE, DATUMEINDE DATE, DATUMINGANG DATE, DOCUMENTDATUM DATE, DOCUMENTNUMMER INTEGER, EINDEGELDIGHEID DATE, GECONSTATEERD BOOLEAN, GEOMETRIE GEOMETRY, HUISLETTER VARCHAR(255), HUISNUMMER VARCHAR(255), HUISNUMMERTOEVOEGING VARCHAR(255), IDENTIFICATIE VARCHAR(255), LIGT_AAN_OPENBARERUIMTE_ID INTEGER, POSTCODE VARCHAR(255), STATUS VARCHAR(255), TYPEADRESSEERBAAROBJECT VARCHAR(255), VERSIE INTEGER ); ALTER TABLE CLIENT ADD CONSTRAINT FK_CLIENT_GEN_INGESCHREVENPERSOON FOREIGN KEY (NATUURLIJKPERSOON_ID) REFERENCES INGESCHREVENPERSOON (NATUURLIJKPERSOON_ID); -- Generalization to INGESCHREVENPERSOON ALTER TABLE INGESCHREVENPERSOON ADD CONSTRAINT FK_INGESCHREVENPERSOON_GEN_NATUURLIJKPERSOON FOREIGN KEY (NATUURLIJKPERSOON_ID) REFERENCES NATUURLIJKPERSOON (NATUURLIJKPERSOON_ID); -- Generalization to NATUURLIJKPERSOON ALTER TABLE KP_CLNT_INGSCHRVNPRSN ADD CONSTRAINT FK_KP_CLNT_INGSCHRVNPRSN_1 FOREIGN KEY (CLIENT_ID) REFERENCES CLIENT (NATUURLIJKPERSOON_ID); -- CLIENT (many-to-many junction, Connector_ID: 958) ALTER TABLE KP_CLNT_INGSCHRVNPRSN ADD CONSTRAINT FK_KP_CLNT_INGSCHRVNPRSN_2 FOREIGN KEY (INGESCHREVENPERSOON_ID) REFERENCES INGESCHREVENPERSOON (NATUURLIJKPERSOON_ID); -- INGESCHREVENPERSOON (many-to-many junction, Connector_ID: 958) ALTER TABLE KP_INGSCHRVNPRSN_NTRLJKPRSN ADD CONSTRAINT FK_KP_INGSCHRVNPRSN_NTRLJKPRSN_1 FOREIGN KEY (INGESCHREVENPERSOON_ID) REFERENCES INGESCHREVENPERSOON (NATUURLIJKPERSOON_ID); -- INGESCHREVENPERSOON (many-to-many junction, Connector_ID: 1878) ALTER TABLE KP_INGSCHRVNPRSN_NTRLJKPRSN ADD CONSTRAINT FK_KP_INGSCHRVNPRSN_NTRLJKPRSN_2 FOREIGN KEY (NATUURLIJKPERSOON_ID) REFERENCES NATUURLIJKPERSOON (NATUURLIJKPERSOON_ID); -- NATUURLIJKPERSOON (many-to-many junction, Connector_ID: 1878) ALTER TABLE HUISHOUDEN ADD CONSTRAINT FK_HUISHOUDEN_HEEFT_ALS_ADRES FOREIGN KEY (HEEFT_ALS_ADRES_NUMMERAANDUIDING_ID) REFERENCES NUMMERAANDUIDING (NUMMERAANDUIDING_ID); -- HEEFT_ALS_ADRES (0..* to 1, Connector_ID: 931) ALTER TABLE CLIENT ADD CONSTRAINT FK_CLIENT_MAAKT_ONDERDEEL_UIT_VAN FOREIGN KEY (MAAKT_ONDERDEEL_UIT_VAN_HUISHOUDEN_ID) REFERENCES HUISHOUDEN (HUISHOUDEN_ID); -- MAAKT_ONDERDEEL_UIT_VAN (0..* to 1, Connector_ID: 949) ALTER TABLE INGESCHREVENPERSOON ADD CONSTRAINT FK_INGESCHREVENPERSOON_OUDER_1 FOREIGN KEY (OUDER_1_NATUURLIJKPERSOON_ID) REFERENCES NATUURLIJKPERSOON (NATUURLIJKPERSOON_ID); -- OUDER_1 (1 to 1, Connector_ID: 1871) ALTER TABLE INGESCHREVENPERSOON ADD CONSTRAINT FK_INGESCHREVENPERSOON_OUDER_2 FOREIGN KEY (OUDER_2_NATUURLIJKPERSOON_ID) REFERENCES NATUURLIJKPERSOON (NATUURLIJKPERSOON_ID); -- OUDER_2 (1 to 1, Connector_ID: 1873) ALTER TABLE NATUURLIJKPERSOON ADD CONSTRAINT FK_NATUURLIJKPERSOON_MAAKT_ONDERDEEL_UIT_VAN FOREIGN KEY (MAAKT_ONDERDEEL_UIT_VAN_HUISHOUDEN_ID) REFERENCES HUISHOUDEN (HUISHOUDEN_ID); -- MAAKT_ONDERDEEL_UIT_VAN (1..* to 0..1, Connector_ID: 1889) ALTER TABLE INGESCHREVENPERSOON ADD CONSTRAINT FK_INGESCHREVENPERSOON_HEEFT_ALS_ADRES FOREIGN KEY (HEEFT_ALS_ADRES_NUMMERAANDUIDING_ID) REFERENCES NUMMERAANDUIDING (NUMMERAANDUIDING_ID); -- HEEFT_ALS_ADRES (0..* to 0..1, Connector_ID: 2273) ALTER TABLE NUMMERAANDUIDING ADD CONSTRAINT FK_NUMMERAANDUIDING_LIGT_AAN FOREIGN KEY (LIGT_AAN_OPENBARERUIMTE_ID) REFERENCES OPENBARERUIMTE (OPENBARERUIMTE_ID); -- LIGT_AAN (0..* to 1, Connector_ID: 2281)